penguin46の精進記録

気まぐれで何かを書きます

2021年の振り返りと2022年の目標

はじめに

 年末なので、今年1年間の振り返りをして、来年の目標を立てようと思います。振り返りは具体的なsolutionとかは書かず、当時のお気持ちを思い出として残す感じにしようと思います。(なので特に有用なことはないと思います。)
f:id:penguin46:20211231105221p:plain

AtCoderで青色になる(~1/23)

 今年の初めに、AtCoderで目標にしてた青色になれました。この時の振り返りは以前別の記事にまとめました。色変したコンテストではA~E問題をまとめて提出したのですが、5問とも一発でAcceptedされ、脳汁ドパーだったのが一番記憶に残ってます。
f:id:penguin46:20211231073158p:plain
penguin46.hatenablog.com

Indoorコンペ参加(~5/17)

 競プロ以外にもいろんなことをしたいと思い、競プロを中断してKaggleを始めました。このコンペでの目標はとりあえずメダルを取ることだったのですが、序盤~中盤は本当になにもわからず、公開notebookを弄って銅と銀のボーダーくらいにいました。1か月くらいひたすらEDAをするも、独自のアイデアで精度を伸ばせておらず、辛すぎて撤退してしまいそうにもなりました。

 その数日後、ふと思いついたアイデアを試してみると50cmくらい精度が上がりました。やったことはパラメータを調整しながら後処理を繰り返しただけなのですが、順位が48→13位まで一気に上がって、競プロでACしたような嬉しさがありました。

 その後、コッコさん、tuboさん、ころんびあさんの3人とチームマージをしていただけることになり、4人で残り期間を走りました。3人が機械学習パートをやってくださり、僕はずっと後処理芸人をしていました。知識量に差がありすぎて、後処理でも貢献できなかったらどうしようと震えていたのですが、その後もいくつかのアイデアが当たってくれたのでなんとか耐えました。

 最終的にprivate 15位(銀メダル)でfinishしました。金メダルには届かなかったのですが、そばで皆さんがどんな風にモデルを作っているのかを勉強させていただき、とても貴重な機会をいただけたと思っています。Kaggleの楽しさを感じることができたコンペでした。

Outdoorコンペ参加(~8/4)

 Indoorが終わるとほぼ同時に位置推定コンペが来たので参加しました。序盤からIndoorでのチームメイトのtuboさんところんびあさんとマージしました。コンペ終盤にChrisさん、Saitoさんとチームマージをしていただき、private5位(金メダル)でfinishしました。

 序盤から衛星測位に取り組んではいたのですが上手くいかず、簡単に精度が伸びる後処理に多くの時間を使ってしまいました。蓋を開けてみればドメイン知識が非常に重要なコンペで、戦略を見誤ったことを反省しています。このようなよく研究されたタスクでは、一般的な手法をきちんと調査するべきでした。

 ころんびあさんが追実験をしてくださったのですが、ホストのベースラインに対して3人(penguin, ころんびあ, tubo)の後処理をしただけでは13位相当のスコアだったようです。私たちの後処理ではドメイン知識を一切用いず、kNNやLightGBMを使い機械学習ベースの外れ値判定などを実装したのですが、金圏のスコアを出すにはドメイン知識が必須でした。ChrisさんとSaitoさんのおこぼれで取れた金メダルでした。

NFLコンペ参加(~11/2)

 ラスト1か月で同級生のTK、ラスト2週間でAriyasuさんとチームマージをしていただき、private12位(銀メダル)でfinishしました。

 競プロで学んだAffine変換やハンガリアン法の知識があったので、序盤からラスト1か月まではソロで金圏上位に居座れたのですが、終盤アイデアが尽きて失速してしまいました。金メダルに届かなかった敗因は、機械学習の知識が乏しかったことと、スコアの評価が甘かったことだと思っています。特にスコアの評価に関しては、序盤から終盤までを通して、大量の実験をしたことで偶然CVが微増したアイデアをいくつか使ってしまったのがまずかったのだと考えています。(多重比較問題というらしい?)



休憩&精進(~12/31)

 特に参加したいコンペがなかったので、一旦ペースを落としてゆっくり機械学習の勉強をしていました。次の本を読んだ後、過去コンペの勉強をしました。

  • Kaggleで勝つデータ分析の技術(読み直し)
  • Kaggle Grandmasterに学ぶ機械学習実線アプローチ
  • PyTorch実践入門(第1部のみ)
  • PyTorchによる発展ディープラーニング

 

振り返りまとめと来年の目標

 IndoorとNFLであと少し金メダルに届かなかったり、Outdoorでは(少なくとも金メダルを貰うに値するほどには)貢献できなかったなど、たくさん悔しい思いをし、反省しないといけないことばかりの1年間でした。
 それでも、AtCoderで青色になれたり、チームを組んでくださった皆さんのおかげでKaggle Masterになれたり、ころんびあさんやtuboさんとはコンペ後も数理最適化の輪読会をしたりと、沢山嬉しいことや楽しいことがありました。ありがとうございました!

 来年の予定ですが、諸事情で2月ごろまではまとまった時間が取れそうにないので、3月からKaggleに集中できるよう、それまではTOEIC、卒論、過去コンペの復習(直近2~3年分)に取り組もうと思います。来年の目標はKaggleで金メダルを2枚取ることです。来年もよろしくお願いします!