atma-inc__blog

atma株式会社の公式ブログです。

主催者から見た #atmaCup 5 は、データ分析のお祭りのようなコンペでした。

atma株式会社で取締役(あとデータサイエンティストとかエンジニアとかもろもろ)をしています、山口(@nyker_goto)です。 先日 5/29 ~ 6/6 にかけて atmaCup#5 を開催しました。コンペの雰囲気は twitterhashtag #atmaCup や参加者さんの素敵な参加レポなど見ていただけると雰囲気を感じてもらえると思っています。

upura.hatenablog.com takaito0423.hatenablog.com agtn.hatenablog.com amalog.hateblo.jp nonbiri-tereka.hatenablog.com

公式の振り返りは atmaCup#5 開催レポート #atmaCup - atma-inc__blog こちらから。

このエントリでは運営とコンペ設計にかかわらせてもらっている nyker_goto の立場から今回のコンペ atmaCup#5 について振り返っていきたいと思います(データについては秘密保持の関係上細かいことは述べられないので、ふわっとした記述になることご容赦ください)。

atmaCup とは

そもそも atmaCup は atma 株式会社が主催する、オンサイトデータコンペです。

オンサイトデータコンペとは 実際に会場に集まり、準備されたデータをテーマに沿って分析・予測を行い、 その精度を競うイベントです。全員で一斉にスタートし、短い時間で決着するため 参加者のスキルがオンラインのデータコンペより強く結果に表れます。 実際に顔を合わせて分析を行うため、コンペ終了後に上位者に直接質問できることも特徴です。 atmaCup用コンペサイトぐるぐる https://www.guruguru.ml/ より引用

Kaggle など他のコンペティションでは期間が数カ月ですが atmaCup では比較的時間が短い (1日あるいは一週間) ため、素早い分析と実装能力が求められます。また通常は実際に同じ場所に集まって分析をしてもらうので、終わったあとに参加者同士で集まって解法について話をできるのも特徴です。

今回はじめてだったことが2つあります。1つがテーマが学術業界からの出題であったこと、もうひとつが完全オンライン開催であったことです。

初の学術業界からの出題

今回はじめて学術系テーマからの出題でした。若干大げさですが、産学連携なコンペティションだったと言えるかもしれません。

僕自信、データ分析は実際に応用し価値を出してこそはじめて意味があると思っています。その文脈で言えば、今回の課題は学術的・ひいては社会的にインパクトを与えられる課題でしたから、これを多数のデータ分析者が解いて良いモデルや予測のための知見が貯まることは非常に価値が高いことですし、その場を atmaCup が提供できたことをとてもうれしく思っています。

今後もっとこのような機会が広がってくれれば良いなと感じていますし、もちろん atmaCup でも引き続き取り組んでいきたいと思っています。とはいえ課題もあり、産の側からするとどうしても予算の問題が出てきてしまう (今回は手弁当的に開催となりましたが、持続可能性を考えるとずっとそうしてられないのも事実なのが世知辛いところです。特に弊社のような小さい会社だと特に。) ので、このあたりうまく解決できるスキームができれば良いなと模索しているところです。

初の完全オンライン開催

今回はコロナウィルスの影響もあり、完全オンラインでの開催となりました。過去開催ではオンライン推奨(atmaCup#4)はあったものの、基本的にはオフライン会場をメインとして進行していました。実際僕も会場に行って司会進行など行っていました。

atmaCupは時間と場所が決められているコンペで、それゆえに終わったあとの懇親会で参加者同士で実際に何をやったかを熱量(と記憶)があるうちに対面で議論できるのが面白いところの一つだと考えています。 これは自分が kaggle days tokyo に参加したときの経験やその他オンサイトのコンペに参加した方からのヒアリングでも楽しい要素の一つとして挙げられることが多い項目です。ゆえに今回完全オンラインになり、オフラインだったからよかった要素が完全オンラインでなくなってしまわないかという不安がありつつの開催でした。

f:id:atma_inc:20200616170637p:plain
300人を超える方に応募いただきました!!(漏れてしまった方ごめんなさい…)

しかしこれは良い意味で裏切られました。告知の段階で予想を大きく上回る300人以上の応募をいただき、またデータの不備でご迷惑をお掛けしたのにもかかわらず、開催期間中のディスカッション上での活発な議論や twitter での緑の画面報告*1など、客観的に見ても過去最大規模に盛り上がったコンペだったと思います。

とくに twitter でのハッシュタグ投稿がとても活発で、過去最もお祭りな感じがあったコンペでした。 これは運営だけでは作れない空気感であって、ひとえに参加者さんのコンペを楽しもうという思いによって作られたものだなと感じています。本当にありがとうございました。

🎉 ディスカッションの盛り上がり

f:id:atma_inc:20200616185239p:plain
最終的にディスカッションの数は最多の78個になり、最多いいねはなんと100を超えました🎉 / 情報はシェアしようという気持ちが伝わってきてとても素敵だなと思います。

ぐるぐるには Kaggle などと同じくディスカッションの機能があります。ディスカッションとは参加者さん同士でコンペのデータや分析手法などについて議論する掲示板のようなものです。今回合計で 78 件のディスカッションが作成され過去最大となりました。 データの機密性ゆえ参加者さん以外にお見せできないのが残念ですが、基礎的な分析をするコードを共有したものから、運営が唸るような波形に関するドメイン知識を満載に盛り込んだディスカッションなどなどバラエティに富んでいて僕も毎日新しいディスカッションを見るのが楽しみでした。

🎉 過去最大の Submission 数

(残り時間19時間での tweet。 このとき3000submitを超えて喜んでいるがここから更に1600増える。)

submission 数は 4000 超 (#4602)でした。初回の total submission が 114 だったのを考えると遠くに来たものだなあと考えさせられます。

特に最終日の submission 数は本当に多くて、ぐるぐるの AWS Metrics を見るとその様子が露骨にわかって面白いです。submission 〆切後にはしばらくAPIがダウンするという事態も発生してしまいました、申し訳ありませんmm どうやら僕の設定が悪くてスケーリングが間に合わなかったようです。

f:id:atma_inc:20200616170539p:plain
最終日にいくに連れて増えていくCPU使用率

submission はちゃんと課題に取り組まないと増えないゆえ、課題に取り組むモチベーションが最も表れる数字であると考えています。 コンペ中の僕の目標の一つは submission を増やすことで、特に 0 submit のコンペに慣れていない方が submit できるためにはどうしたら良いかなーということを考えつつチュートリアルを作っていたりします。

今回は完全オンラインで、オフラインに比べるとコミットメントがゆるいにもかかわらず 188 / 218 (85%以上! 100% まであとちょっと👊) のチームに submit していただきました。また特に上位チームを始めとしてチームの submit 上限まで submit しているチームも多く参加者さんの熱い思いを感じられました。ありがとうございました!!

🤔 今後のオンライン対応について

完全オンラインになったことで、大阪・東京から離れたところに住んでいる方も参加できるようになり (なんとアメリカからも!参加いただきました)、多数の応募をいただけたことで盛り上がりが加速したようにも感じていて、オンライン開催は悪いところばかりではないなと重う次第です。

とはいえ閉会式などしているとやはり最後の懇親会ぐらいはやりたいなー(もうちょっと気軽に解法を共有できる場がほしい)とも思えたので、次回以降はリアルとオンラインのバランスを考えつつ決めていければなと思っています。

個人的感想: ぐるぐるのリアルタイム更新について

ぐるぐるは atmaCupではコンペ用のサイト(submissionなどを行なうシステムを含んだウェブアプリケーション) のことです。このサイトは主に僕が開発を担当しています。今回開催に先立っていろいろと準備が間に合わなかったこともあり、ひじょーによろしくないのですが開催途中にコンペサイトの更新をバンバンやっていました(もちろん検証環境でテストなどやったうえでではありますが、よくはない)。普通ならお叱りを受けるところだと思うのですが特に苦情もなくみなさん優しくてありがとうという気持ちです……

あと更新した部分を twitter などで報告してくれるのも開発者としてとてもモチベーションが上がりました、本当にありがとうございますmm 今後も使って楽しいシステムになるように更新していきますのでよろしくお願いいたします😆 こうしてほしいなど意見があれば気軽に twitter で @nyker_goto 宛に reply をいただければ、爆速で実装したいと思います。

最後に

次回 atmaCup#6 も企画中です!! 参加したことある方は是非リピート参加を、気になってるけど出たことない〜という人も気軽に参加してください! ;) (次回もデータ分析経験がない方でも submission まで出来るようなチュートリアルを行う予定です。分析コンペに出たことがない・分析経験があまりない方も気軽に参加いただけると嬉しいです。)

募集は connpass の atmaのページatma twitter アカウント で告知をする予定です。良ければフォローしてください!
(僕のアカウント @nyker_goto も事実上会社の告知アカウントなのでこっちでも大丈夫です)

おまけ

コンペ中、チーム名大喜利が自然発生していたのですが、どのチームもセンスがあってとても楽しかったです! こういうのもなんだかお祭りな感じがあって素敵ですね。

*1:スコアアップした時だけに現れる画面のことです。中毒性があるとの噂