SNSボタン
記事分割(js記載用)

AIコンペティションで通算3枚目の金メダル。独学で世界のトップデータサイエンティストへ

AIコンペティションで通算3枚目の金メダル。独学で世界のトップデータサイエンティストへ

世界最大のAIコンペティションプラットフォーム「Kaggle(カグル)」が開催する「Feedback Prize - English Language Learning(以下、コンペティション)」で、仲村勇輝が金メダルを獲得しました。2023年7月には通算3枚目の金メダルを取得し、Kaggleに参加する20万人超のうち上位0.2%にランクインする仲村に、コンペティション挑戦の取り組みや、データサイエンティストとしての経験や活動について聞きました。

仲村勇輝(なかむら・ゆうき)

ソフトバンク株式会社 IT統括 AI戦略室 データサイエンス部

仲村 勇輝(なかむら・ゆうき)

2020年にソフトバンク株式会社入社。主に社内のAIモデルの構築業務を担当。2023年6月よりソフトバンクグループ株式会社へ出向中。

大学院時代に飛び込んだデータサイエンスへの道。Kaggleを通して広がる世界

Kaggleは、データサイエンスと機械学習の分野で世界的に権威のあるプラットフォームです。企業や研究機関と世界中のデータサイエンティストをつなげ、提示された実際のデータセットに対する最適モデルの開発を競うことで、問題解決を目指します。学術研究や業界イノベーションにも貢献するほか、実データを使ってスキルを磨く教育の場としても高く評価されています。

仲村は現在入社4年目で、2023年7月まで所属していたソフトバンク株式会社のAI戦略室 データサイエンス部で業務するかたわら、Kaggleのコンペティションに21回参加し、通算3つの金メダルと1つの銀メダル、4つの銅メダルを獲得しています。1つのコンペに2カ月かかるため、常に何かのコンペに取り組んでいる状況。若手ながら順調に成果を積み重ねてきたように見えますが、1年ほどペースダウンしてしまった時期もあったそうです。

3つの金メダルを獲得するまで、どんな経過をたどってきたのですか?

入社して2年目の2021年に初めてチャレンジしました。一番よい結果だったのは、実は1回目。5位の成績で1つ目の金メダルを獲得しました。初回でモチベーションが非常に高かったこともあり、友人とテーマパークに行った日も、アトラクションに並んでる合間に取り組んでいました(笑) 全力を注ぎ過ぎたのか、その後しばらくは燃え尽きてしまった期間が…。成績に応じてExpert、Master、Grandmasterといった称号が与えられるのですが、Masterの条件である残り銀メダル2つを目指していたところ、銅メダルで終わってしまう時期がしばらく続きました。気を引き締め直し、2023年5月にMasterに昇格し、その後3つめの金メダルの獲得に至ります。

仕事がある中、どのように時間を捻出し、取り組んでいたのですか?

コンペ期間中は自身の暫定順位が公開され、毎日そこでステータスが確認できます。朝起きて真っ先に順位を確認するのが日課になりますし、順位が大幅に上がった夢を見るくらい、Kaggleのことが頭の中の多くを占めていましたね。やはり挑戦するからには本気で、時間を捻出して取り組む姿勢が欠かせません。日々の仕事を効率よく終わらせてKaggleに取り組む、ということを心がけていました。また、職場もそれを応援してくれています。

大学院時代に飛び込んだデータサイエンスへの道。Kaggleを通して広がる世界

Kaggleへの挑戦を後押ししてくれる職場環境があったのですね。

現在はソフトバンクグループ株式会社の社長室で勤務していますが、異動前に所属していた部では、優秀な先輩や同僚がみな参加しており、自然とチャレンジする環境がありました。中でも当時直属の上司だった丸一雄大さんは、Kaggle参加の常連で毎回優秀な成績を収めている方。1on1(定期的な個人面談)のたびにKaggleの話をしてくれていましたし、同期のメンバーとの会話もKaggleの話題で持ちきりでしたね。

学生時代からデータサイエンスを専攻していたのですか?

実は全く違うんです。大学院では私たちが生活する家屋や道路、橋梁(きょうりょう)などを支える地盤の研究をして材料力学を学んでいました。一方でデータ分析に興味があり、インターンシップ先のヤフー株式会社(当時社名)でAIに関する論文を出しました。そこから本を読んで自分で手を動かしてみて… と、ほぼ独学で習得してきました。そのため実は、エンジニアの人が持っているコンピューターやシステムの基礎知識に関して、いまだにあやふやな部分があります。

独学なんですか! それでもこれほどの成績を収められるのですから、何かデータ分析に関わっていたのですか?

もともとは競馬が好きだったんです。競走馬の資質やコンディション、競馬場の特徴、気象条件など、さまざまなファクターが結果に影響を与えるところに魅力があるんですよね。馬券を買えないくらいの年齢の頃から、新聞を片手に独自に分析していました。びっくりするぐらい外していましたが(笑)

ご自身の興味をきっかけに、多くの努力をして今の成果があるんですね。Kaggleへの挑戦にはどんな意義があると思いますか?

データサイエンスという新しい分野における資格に近いと考えています。その分野における技術力があると示せるものというか。ただ、高いスキルを持っている先輩でもKaggleに参加していないこともあるので、それが全てではないと思います。それでも、自身の力だけを頼りに世界中のエキスパートと競えるという醍醐味(だいごみ)があり、純粋に自分のアイデアだけで勝負できる点が魅力です。

また、Kaggleでの成果をきっかけに、内外のセミナーの講演依頼がくるなど、チャンスも広がりました。他にも、あるコンペで1位になったフランス人のデータサイエンティストとチャットを通じて知り合い、その縁で、来日時に社内のエンジニア勉強会であるテクシバで登壇してもらえることに。同じく「Kaggle Master」であるソフトバンクの荻野さんや仕事で知り合った仲間も集め、大きなイベントを企画しています。Kaggleを通じてそうした出会いや機会にも恵まれるなんて、とてもエキサイティングですよね。

大学院時代に飛び込んだデータサイエンスへの道。Kaggleを通して広がる世界

わずかな精度向上にも全力を尽くす。世界のトップデータサイエンティストと競う面白さ

Kaggleのコンペは、表形式データ、LLM(大規模言語モデル)、画像データなどの分野に分かれており、いずれかの分野で常にコンペが開催されています。参加者は開催されているコンペの中から課題を自由に選ぶことができ、仲村は、自身の得意な表形式データの分野を中心に参加しているといいます。

3つ目の金メダルを獲得した2023年のコンペでは、どのような課題が出ましたか?

今回の課題は、ある団体が制作している子ども向けの教育ゲームで、学習ユーザーの成績を予測し、教育方法の改善を研究する目的で行われました。ゲーム教材はロールプレーイングの要領で、ブラウザ上に現れた人物やモノなどをクリックしてヒントを収集していき、全18問の質問に回答するもの。イベントや所要時間、画面上に表示されたテキストデータなどの行動履歴が提供され、ユーザーの正答率を正確に予測することが求められます。使用するデータと状況が提示される、シンプルなものです。

わずかな精度向上にも全力を尽くす。世界のトップデータサイエンティストと競う面白さ

えっ、課題として提示される情報はその程度なんですか?

そうです。なので、主催者の意図をくみ取ることが重要になります。今回は成績が良いユーザーの行動を明らかにすることで、コンテンツを改善したいという目的があると想定しました。そこで、1時間程度のゲームを実際に5回ほど繰り返してみることで、良い成績を出すユーザーの行動パターンをイメージしました。例えば、画面に出てくる情報を的確に取捨選択できる子はクリックの間隔が一定にならない、といった気付きを得ることができました。

どう取り組むかも含め、全て参加者にゆだねられるんですね。

はい。ソースの取得方法、データ処理方法なども全て参加者が組み立てます。アプローチ方法は千差万別で、私のように実際にプレーしてみた人は恐らく全体の2割くらいではないかなと思います。ディスカッションパートでは、コンペティション終了後にソリューションを共有する場があり、上位者が公開したものを見ることができます。例えばアンサンブルという数百のAIモデルを組み合わせる手法を使い、精度を0.1高める工夫をしているものもありました。

わずかな精度向上にも全力を尽くす。世界のトップデータサイエンティストと競う面白さ

細かい仕組みの話になりますが、課題に使用するデータは大きく2つに分けられており、暫定順位の評価に使用されるパブリックデータと、最終的な順位を確定するためのプライベートデータがあります。そのため、暫定の成績が良くても、最終的な評価がガラッと変わってしまうこともあるのだそう。

最後まで結果が読めない、ハードな競争ですね。

暫定順位を参考にしながら、プライベートデータの内容も予測してモデルを作る必要があります。5,000人くらいの参加者がいるコンペティションで、4,000位台から1位になった例もあるんです。私は逆に、パブリックデータでは5位だったところ、10位で終了したことが。でも、そこがコンペティションの面白さでもあると思ってます。

今回の推移や最終成績はどのような状況でしたか?

ゲーム正答率の予測に対して精度レベルの向上と分析の高速化を目的とした2つのカテゴリで競われ、精度分野では10位、スピード分野では6位の成績でした。最終結果では、それぞれの分野で3位と1位の成績を収めた人がいました。スピード分野においては、私だと6時間くらいで完了するところ、1位の人はなんと4分。コードの書き方でものすごい違いを出せると、とても勉強になりました。

精度向上と高速化を実現するためにどのような工夫をしたのですか?

精度向上面では、実際にプレーして得た知見を生かしました。適当に進めてしまうユーザーは「はい、はい、はい…」と、どんどん先に進めてしまうのに対し、成績の良いユーザーは表示される情報に濃淡をつけて閲覧する。それがクリックの間隔の違いに現れるのではと想定したんです。そうした行動を「特徴量」という、AIに学習させる情報として定めました。また、kNN(k-Nearest Neighbor、k近傍法)系アルゴリズムというものを使い、プレーのログからグループ分けをし(=クラスタリング)、成績の良いユーザーを特定。これらにより、18問中何問正解できるか、という予測を行えるようにしました。

高速化の面では、GBDT(Gradient Boosting Decision Tree)モデルに対してTreeliteを採用しました。GBDTの計算をより効率的に行うために、モデルを計算しやすい形式に変換することで、処理速度を向上させることができます。高速化については、さまざまな手法を試した結果、Treeliteが有効と分かった、ということです。

手法をいくつも検討するために、毎回アイデアシートというものを作成しています。納得のいく成果にたどり着くまでに、多いときは100~150くらいのシートを作って試しています。

データサイエンスを武器に、経営の視点も持つT字型人材を目指して

データサイエンスを武器に、経営の視点も持つT字型人材を目指して

今後はどんな分野に力を入れ、活動をしていきたいと考えていますか?

直近の課題としては、LLM(大規模言語モデル)も使いこなせるようになること。また、2023年4月からは、ソフトバンクアカデミアに入校して経営の勉強もしています。さまざまなバックグラウンドを持った人との交流は刺激的で、徐々に幅を広げていき、データサイエンスを軸に相乗効果を発揮できるような「T字型人材」を目指しています。テクノロジーと経営の両軸を磨き、いつかCTOの役割に就きたいという目標を持っています。

少し話は変わりますが、大学・大学院生時代に行ったボランティアを通じ、小学生から高校生までの子どもたちと接する機会がありました。彼らと将来について話し、データサイエンス・AIのことを伝えるうちに、「技術を持つ人こそハートフルであるべき」と考えるようになりました。職場でも社内外の活動の場でも、自身の技術で貢献すると同時に、チームに笑顔をもたらせる存在でありたいですね。

Kaggleに参加するまでは、雲の上のことのようにとらえていました。でもさまざまな出会いがあって、こうした結果を残せるように。自分の強みは周囲を巻き込んでつながりを広めていける勢いだと考えていますので、よい相乗効果をもたらせるよう精力的に活動していきたいと思います。

関連記事

関連プレスリリース

ソフトバンクのデータサイエンティストが世界最大のAIコンペティションで通算3枚目の金メダルを獲得(2023年7月28日 ソフトバンク株式会社)

(掲載日:2024年1月11日)
文:ソフトバンクニュース編集部