2020年に学会コンペに3つ参加したので感想など
Kaggle Advent Calendar 2020 21日の記事です。
今年、以下の3つの国際会議に併設されている分析コンペ(以降、学会コンペ)に参加したので、参加したコンペを振り返りつつ、その感想をまとめます。
- RecSys Challenge 2020
- CIKM2020 AnalytiCup, COVID-19 Retweet Prediction Challenge
- The NeurIPS 2020 Education Challenge
ここに書いていないコンペも含めて、今年もたくさんのコンペでデータに触れて楽しむことができました。 データ提供者、コンペ運営者にとても感謝しております
個人的なコンペを選ぶ基準の話
明確に決めているわけでは無いですが、今年は以下の「解法やコードが共有される機会の有無」「(できるだけ)並列参加しない」で条件付けして「タスクの面白さ」を最優先して、自分にとって一番面白そうなものに参加しました。
タスクの面白さ
タスクの面白さの観点はu++さんのスライドのように人によって色んな観点がありますが、個人的に今年はユーザのログデータを使ったコンペがやりたいなと思って探してました。 また、やってみなきゃ分からないところはありますが、自分の興味やタスク自体のやり込み要素から期間中に最後まで楽しめそうかどうかは考えてました。
解法やコードが共有される機会の有無
Kaggleは参加者が積極的に解法を共有している印象がありますが、その他のコンペであれば共有がほとんどされない可能性もあるので気にしていました。 一生懸命やって、負けた。全く何も分からなかった。終了。は辛いと思い、Workshopが開催されたり、入賞者がコードやレポートの公開することが必須であるかどうかは意識して確認していました。
(できるだけ)並列参加しない
去年は何も考えず並列でも参加してて、全体的に印象が薄くなった気がしたので(自分の脳のキャパの小ささと心持ちが悪い)、今年はできるだけ1つ1つのコンペに集中しながら取り組みたいと考えてました。 とはいえ、気になるタスクがあればデータをダウンロードして手元で簡単触るまで、ベースライン作るまで、早期で心が折れた、とかはたくさんしました。
参加した学会コンペについて
上述の基準にして色々探した結果、今年は3つの学会コンペに参加することになりました。また、COVID-19の影響で各国際会議はオンライン開催になったため、Workshopへの聴講も発表も現地に行かずに参加することができると思ったのでカジュアルに参加できました。(来年もオンライン開催orハイブリッド開催という形が多そうです)
誰かの何らか参考になるかもしれないので、私の参加した範囲の情報のみですが3つのコンペでの流れを共有しようと思います。
なお、前提として基本的には学会や運営担当者によって様々ですので、コンペ毎に確認する必要があります。Kaggleのようにコンペの運営経験がある担当者であることは稀だと思うので、公開情報に不備があると感じたらお互いのためにフォーラム等で事前に確認することが大切だと思います。
RecSys Challenge 2020
- RecSysで毎年開催されており、毎年推薦に関するタスクが設定されています。今年はツイートへのエンゲージメントを予測するタスクでした。コンペのプラットフォームは独自のものを使っていました。
- このコンペの私の成績は8位 (同率含めば実質11位)でした。 RecSys Challenge 2020 備忘録|myaunraitau|note に私の備忘録を書いてます。
- タイムライン
- 3/2 コンペ開始
- 6/15 コンペ終了
- 7/8 レポート提出
- 任意の参加者が提出可能、賞金対象者は提出必須、7ページ。レポートは ACM Digital Libraryで公開されています。
- 8/19 Camera-ready 提出
- 9/22~26 ワークショップ
- 主催者による紹介と9チームの発表とパネルディスカッション
CIKM2020 AnalytiCup - COVID-19 Retweet Prediction Challenge
COVID-19 Retweet Prediction Challenge
- こちらはCOVID-19に関するツイートのリツイート数を予測タスクでした。なお、CIKM2020 AnalytiCupとしてはもう一つ Alibaba-Tsinghua Adversarial Challenge on Object Detectionというコンペも開催されていました。コンペのプラットフォームはcodalabでした。
- このコンペの私の成績は3位でした。code report
- タイムライン
- 7/1 コンペ開始
- 8/30 コンペ終了
- 9/30 レポート提出(対象者)
- 上位6名(semi-finalists)が4ページのレポートを提出するという形式でした。なお、入賞者のコードとレポートはWebサイトで公開されるはずでやりとりがありましたが、途中から音沙汰がなくなりました (そのうち優しく突こうと思ってます)。
- 10/22 ワークショップ
- 主催者による総括と上位4チームの発表がありました。
- その他
- このコンペの3位の賞品が500ユーロまでのnon-cash prizeで、Amazonリンクを送れば、主催者が郵送してくれるという形でした 。
The NeurIPS 2020 Education Challenge
- NeurIPS 2020のCompetition track (今年は16コンペ開催されたようです)として開催されたもので、教育プラットフォームEediにおける数学の問題に対する生徒の回答のデータを用いる4種類のタスクが設定されたコンペでした。コンペのプラットフォームはcodalabでした。
- このコンペの私の成績は、task1 1位、task2 2位、task3 1位(同率)で総合1位でした。code report (task1&2) report (task3)
- タイムライン
Kaggleとの比較の話
- 私が参加した学会コンペはコンペ期間中のディスカッション(フォーラム)はKaggleのように活発ではありませんでした。基本的には、主催者に対するデータやルールの確認であり、手法や特徴量に関する投稿は少なかったです。なのでKaggleのようKernelを参考にしたり、コピペしてから始めることはできず、強制的に自分で0から作る必要があるので訓練になるかもしれません。
- もちろんコンペによりますが、私が参加したコンペに限ってはKaggleに比べて参加者が少ないかったため、リーダーボードの動きも比較的激しくありませんでした。そのため、人によって精神的負荷が小さく取り組みやすいかもしれません。
- Kaggleは全ユーザが利用可能なNotebookを提供したり、それらを使った提出(Code Competition)などをできるシステムとインフラがあり、Kaggle以外の他のプラットフォームや運営では真似するのが難しい、優れたタスク設計ができるのは改めて凄いと感じてます。
終わりに
上述したようなコンペ毎のKaggleとは違う性質の良し悪しは人によると思うので、もちろん好きなものを選べば良いと思ってます。 個人的には、Kaggle上で(自分にとって)面白いタスクのコンペが開催されていたらそれが一番良いと思いますが、自分が興味を持つことができるコンペを探す選択肢の1つとして学会のコンペも覗いていみると良いかもしれません。