Public/Private LB と提出選択
Public と Private の違い、shake-up が起きる理由、最終提出の選び方を学びます。
Public と Private の違い#
提出はリーダーボードで採点されますが、見えているのは一部です。
- Public LB:テストの一部で算出され、コンペ中に見えるスコア
- Private LB:残りで算出され、最終順位を決めるスコア(終了まで非公開)
つまり、コンペ中に最適化できるのは Public だけ。最後に効くのは Private です。
shake-up が起きる理由#
シェイクアップは、Public と Private で順位が大きく入れ替わる現象です。主因は次の通り。
- Public への過学習:LB を見ながら合わせ込み、見えない Private で崩れる
- 検証設計の甘さ:CV が本番を反映しておらず、選択を誤る
- Public が小さい/偏り:少数サンプルのスコアを信用しすぎる
注意
Public LB は「もう一つの検証セット」にすぎず、しかも全員がそこへ最適化しています。 手元の交差検証を主軸に判断するのが、shake-up を避ける最大の防御です。
最終提出の選び方#
多くのコンペは最終提出を 2 つ選べます。定番は性質の異なる 2 つを残す戦略です。
- 1 つ目:CV が最良の「手堅い」構成(CV を信頼)
- 2 つ目:CV は同等でより多様な/攻めた構成、または Public 最良
最終提出:
A) CV ベストのアンサンブル(堅実)
B) 多様性重視 or Public ベスト(リスク)ヒント
「Public が高いだけの単体モデル」を最終提出に選ぶのは危険です。CV で裏付けの取れた構成を 少なくとも 1 つは必ず残しましょう。
過学習を避ける運用#
- 提出のたびに Public へ最適化しない(提出回数の上限も意識)
- CV と LB の乖離を監視し、乖離が大きいときは検証設計を見直す
- 怪しいほど高い単一特徴はデータリークを疑う
理解度チェック#
次のステップ#
最後に、Discussion / 公開 Notebook から知見を取り込む方法と引用・倫理を学びます。