こんにちは。ウォンテッドリーでデータサイエンティストをしている合田です。2022年10月28、29日にスペイン・バルセロナにて開催された Kaggle Days Championship Final Event に招待されて参加してきました。オフラインでKagglerたちと交流し、またコンペで競い合うことができて非常に有意義な時間を過ごすことができました。今回はこのイベントについて紹介しようと思います。なおイベントは業務として参加することができました。国際学会やKaggle Daysといったイベントへの参加を推進してくれる弊社ウォンテッドリーに感謝します。
Kaggle Days Championship Final Evnet とは
Kaggle Days Championship Final EventはLogicAIとKaggleが主催するイベントです。普段はオンライン上でKaggleのコンペに参加しているKagglerたちがオフラインで交流して競い合う場を提供してくれます。このイベントは参加条件が設定されており、2021年11月から2022年7月の間でオンラインで実施された計12回の予選イベントのいずれかで上位入賞する必要があります。私が所属するチームは2022年1月に開催された3回目の予選にて3位となり、出場権を得ることができました。
FINAL EVENTでは非常に面白いコンペ形式が採用されました。チームの条件人数は4人、コンペ期間は11時間であり、時間内に2種類のコンペを取り組む必要がありました。2種類のコンペはそれぞれ異なる特徴を持っており、1つ目のコンペである「Starry Starry Night!(以降コンペ1と呼称)」は Time Series + 欠損データ + NLP、2つ目のコンペである「Time isn't the main thing, it's the only thing(以降コンペ2と呼称)」は NLP + Regression という特徴を持っていました。
コンペ Time isn't the main thing, it's the only thingは、Kaggle の公開notebookの情報が与えられ、そのnotebookの総実行時間を予測するというタスクです。与えられたデータセットはnotebookのセルごとのコードと実行時間、そしてnotebookごとの入出力ファイル情報(ファイルのカラム数やレコード数、サイズや拡張子など)があります。評価指標はRMSEで、ターゲットとなる総実行時間の分布は値が小さい領域に鋭いピークを持ち、少数の総実行時間の大きいサンプルを正しく予測できるかどうかでスコアが大きく変動します。
次に予実の乖離が大きいサンプルを定性的に評価し、有効なアプローチを探してみました。今回のコンペのKaggle notebookのデータは普段Kaggleを取り組んでいる私達にとって非常に馴染み深いものであり、予測を大きく外していたサンプルの中にはチームメンバーが作成したnotebook(もしくはその公開されたnotebookをforkして作成されたもの)もあったりして、総実行時間の予測は直感的には簡単そうに思えました。例えば Random Forestモデルを学習しているnotebookであれば実行時間は短そうですし、逆にDeep Learningモデルの学習を行っているnotebookであれば実行時間は非常に長くなりそうです。そこで試しにnotebookにおけるmodule名(例えば、torchやtensorflowなど)の登場回数を特徴量に採用してgbdtモデルで学習してみたところ、スコアを大きく改善できました。
最終結果ですが、期待に反して私達のチームは最終順位3位以内には入れませんでした。コンペ2ではPublic 3位からPrivate 11位と大きくshake downしてしまいました。少数の総実行時間の大きいサンプルの影響が強く、他のチームと比べてPrivate Test Datasetでいくつかのサンプルの予測を外してしまったことが原因だと考えています。また結果論ではありますが、より安定性が高かったコンペ1にリソースを多く割くべきでした。
現地の様子
最後に現地での様子をいくつか紹介します。Kaggle Days Championship はHPの広大なオフィスで実施され、そこで多くのKagglerと交流をしたりコンペしたりと充実した時間を送ることができました。また初めてのバルセロナ滞在を経験し、多くの日本との違いを味わうことができました。
画像は2日目のコンペの様子
バルセロナ滞在中はひたすらパエリアを食べました
最後に
Kaggleのオフラインイベントは2019年以来の参加となりました。やはりオフラインでの交流は何者にも代えがたいものだと感じましたし、Kaggleや英語のモチベーションを大きく上げることができました。Kaggle Days Championshipは来年以降も開催を検討しているみたいなので、ぜひ次回以降も参加して今回のリベンジを果たしたいと思っています。