Kaggle の 30 Days of ML という機械学習初心者向けオンラインコース、後半二週間は専用のコンペに参加するのだけど、Leaderboard に Kaggle Master や Grandmaster など、場違いでは?と思うユーザが散見されて若干やる気を削がれていたら、Discussions で同様の指摘をしてる人がいた。
— Kensuke Nagae (@kyanny) 2021年8月20日
ちまちまとやっている。グリッドサーチという手法でモデルに与える最適なパラメータを探索することを(ググって)学び、それを自前でコーディングしなくてもやってくれるモジュールの存在も知り、RandomForestRegressor と XGBoostRegressor でやってみて、みたいな。最適なパラメータを使ってもスコアは伸びなかった。
Discussion を眺めていたら、「これってどのモデルを選ぶか勝負になってないか?」という指摘を見かけたりもした。トレーニングデータの列名が全て cat1 cat2 みたいに匿名化されているので Feature Engineering とかもやりようがないように見えるので(初心者には特に)、とりわけそういう傾向が強いのかもしれない。
自分は Leaderboard の上位を目指すのは早々に諦めて*1、学んだことを実際に試しつつ新しいことを調べてまた適用し、というサイクルを回すことに重きを置くことにしたので、別にいいんだけど、初心者向けを謳って参加者も 30 Days of ML コースの応募者に限定しているコンペに Kaggle Masetr とか Grandmaster のような、どうみても初心者ではない人たちがやってきて、学習コンテンツでは全く触れられていないモデルの使い方や Tensorflow がどうのとかいう話をしだして、流石に本気ではないのだろうけど Leaderboard を「荒らし」てるのを見るのは、正直言って気分の良いものではない。
*1:上位も下位も同一スコアに何十人も並ぶ傾向から、スコアに与える影響が大きい少数の選択肢のどれを選ぶかが支配的で、それ以外の小さい選択肢はそもそも少ない、と考えると、やはりモデルの選択が勝敗を左右して、それ以外の要素で向上させる余地が少ない、と思われる