Writeup

Will they pit on the next lap?

×

The problem

Each row is a lap. The label is PitNextLap, yes or no. AUC is the score, a number from 0.5, a coin flip, to 1.0, perfect ranking. You want the cars that will pit near the top of your list.

Three trees vote

I concatenated an extra F1 strategy table onto the official train file when it was attached, dropped the exact duplicate rows, and treated Year and PitStop as categories. Then n-grams: I glued pairs of category columns together so the trees could see driver-and-compound as one thing, not two lonely columns.

Will they stop next lap. Yes or no.

  1. 01Lap tableplus the extra strategy rows
  2. 02Pair the columnsdriver × compound as one thing
  3. 03Three trees voteCatBoost, XGBoost, LightGBM
Lap table, paired categories, three trees, a probability.

The score

Three models, same 10-fold split: CatBoost, XGBoost, LightGBM. They vote. That is the ensemble. Two accepted csvs both came back 0.94962 public and 0.95000 private. Rank 1090 of 3022. Upper third, not a win.

Close to the top of the scale. Not the top of the board.

0.950
0.50 · coin flip1.00 · perfect
Private AUC 0.950. A perfect model would sit on 1.0.

The number I wanted

I named the kernel P1 F1 PitStop Ensemble v1.0 because I wanted 0.95372, the number at the top when I started. I did not get there. 0.950 is what the file says.

What I won't pretend

What I would not claim. This is playground tabular, the kind of contest you use as a gym. The extra rows help only if they are the same sport. The n-grams are a cheap trick. The mix of three trees is the default that usually works, and this time it did, a little.

The files

I put the files under the writeup. Take one, or take the zip.

writeup.md · 23 lines

# Will they pit on the next lap?
## The problem
Each row is a lap. The label is PitNextLap, yes or no. AUC is the score, a number from 0.5, a coin flip, to 1.0, perfect ranking. You want the cars that will pit near the top of your list.
## Three trees vote
I concatenated an extra F1 strategy table onto the official train file when it was attached, dropped the exact duplicate rows, and treated Year and PitStop as categories. Then n-grams: I glued pairs of category columns together so the trees could see driver-and-compound as one thing, not two lonely columns.
## The score
Three models, same 10-fold split: CatBoost, XGBoost, LightGBM. They vote. That is the ensemble. Two accepted csvs both came back 0.94962 public and 0.95000 private. Rank 1090 of 3022. Upper third, not a win.
### The number I wanted
I named the kernel P1 F1 PitStop Ensemble v1.0 because I wanted 0.95372, the number at the top when I started. I did not get there. 0.950 is what the file says.
## What I won't pretend
What I would not claim. This is playground tabular, the kind of contest you use as a gym. The extra rows help only if they are the same sport. The n-grams are a cheap trick. The mix of three trees is the default that usually works, and this time it did, a little.

Credits

KindWriteup
DateMay 2026
TagsKaggle, Tabular, F1