みなさん、こんにちは! (大きな声) 2018年4月より新卒でRCOに入社した鹿野です。 去る1月23-25日に、新人エンジニア8名 (japlj、後、翁、鹿野、桑原、柴田、松田、若月) が中心となってPIGICONという新しいタイプのコンテストをリクルートグループ横断で開催しました。本記事ではこのPIGICONについてご紹介いたします!
PIGICONを簡単にまとめると以下の様になります。
今回は、リクルートグループ各社から合計17チームに参加していただきました!
やあ、私はピギネイターです。有名な生体高分子を思い浮かべて。
機械学習がどれでも当てて見せよう。機械学習は何でもお見通しさ。
今回のPIGICONでは、「アキネイター」から着想を得て「最初はレコードの特徴量が隠されていて、質問によって好きな特徴量を教えてもらうことができる」という問題設定を考えました。そして、この設定の下で「ユーザへの質問を繰り返しながら生体高分子に関する多クラス分類問題の予測を行うAPIサーバ “piginator” を実装せよ」 という問題を出題しました。ここで、学習などに用いることができる訓練用データ (特徴量は11コ、ラベルは30通り) は与えられます。さらに、以下の3つを採点対象とすることで、高速かつ高精度なAPIサーバを実装できたときのみ高得点となるようにしました。
今回の設定では、以下のような三すくみの関係が生じています。
従って、スコアを最大限に伸ばすためには既存のWeb・機械学習ツールをただ使うだけではなく、PIGICONに最適な手法を自ら考えてそれを時間内に実装する力が必要です。
PIGICONで求められるスキルのうち、従来のコンテストとは大きく異なるものが2つあります。
Webと機械学習の双方において深い理解が求められる、まさに「知の総合格闘技」だと言えます。
コンテストは以下のようなスケジュールで行われました。
また、提出したコードに対する得点はリアルタイムに順位表に反映され、自分の順位を知ることができます。 ただし、コンテスト中の順位表はテスト用データに対する得点で最終順位とは関係のない参考値であって、 最終順位は別の最終評価用データのみによって決まります。
どのチームも問題と仕様の理解を進めている中、
さっそく「team_yonagurt」が頭一つ抜け、好調なスタートを切りました!
どのチームも順調にスコアを伸ばすものの、
依然として「team_yonagurt」の独走が続いています!
「卍池田組卍」が現時点での最高得点を叩き出しています!
非常に活気が良くなり、白熱した戦いの様子が伺えます!
気になる最終結果の前に…
RCOアドテク部では優秀なエンジニアを募集しています。
こちらからご応募ください。お待ちしております!
いよいよお待ちかねの結果発表です!
第3位から順に発表いたします!
それでは、第3位は…ドコドコドコ…┗(^o^;)┓ ジャン!
「卍池田組卍」です!おめでとうございます 🎉
このチームは予測精度 (画像中の平均精度ロス、小さい方が良い) が非常に高いのが特徴的でした!
続いて第2位は…ドコドコドコ…┏(;^o^)┛ ジャン!
「team_yonagurt」です!おめでとうございます 🎉🎉
このチームは予測精度と実行時間のバランスの取り方が非常に良かったです!
さあ栄えある第1位は…ドコドコドコ…┗(^o^)┛…┏(^o^)┓ ジャン!
「すか2をどうかよろしく頼みます」です!本当におめでとうございます 🎉🎉🎉
このチームは運営も驚愕の非常に特徴的なスゴイ解き方をしていました!
ロジックに関しては、機械学習で広く用いられているscikit-learn等のライブラリを一切用いずに、今回のデータセットに対応したアドホックな予測ロジックを独自に作り上げていました。APIサーバはCrystalというプログラミング言語で実装されており、非常に速い実行時間を実現していました。
まさに、予測精度だけでなく実行時間も問われるPIGICONならではといえる解答でした!
TOP10の最終結果は以下の通りになりました!(ちなみに「PIGICON運営」は運営による参考スコアです💪) 運営チームを除くと予測精度が1位の「卍池田組卍」であっても、総合順位では第3位になってしまいます。知識の活用と探索のバランスを取りつつ処理時間の高速化が要求されるコンテストの性質が如実に反映された最終結果となりました!
コンテスト終了後には打ち上げと解説を開催し、寿司🍣やピザ🍕が振る舞われました!
RCOアドテク部では寿司🍣の写真を撮り忘れない優秀なエンジニアを募集しています。
こちらからご応募ください。お待ちしております!