Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
Search
wakama1994
July 11, 2025
Science
0
62
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
関西Kaggler 交流会 in Osaka 2025#2の登壇資料
https://kansaikaggler.connpass.com/event/341899/
wakama1994
July 11, 2025
Tweet
Share
More Decks by wakama1994
See All by wakama1994
Kaggleの歩き方-関西Kaggler会に参加してみて-
wakamatsu_takumu
2
500
BQで天気基盤をつくって、役立つ情報を可視化してみた!
wakamatsu_takumu
4
1.1k
「データモデリング実践入門」は20年経っても色あせない
wakamatsu_takumu
3
1k
いろんな可視化ツールあるけどggplotて何がいいの?- 複数ツールで比較してみた!-
wakamatsu_takumu
1
1.4k
文系出身でも「アルゴリズム×数学」はスッキリ理解できた!話
wakamatsu_takumu
0
500
ChatGPTにどんなときRを使えばいいか聞いてみた!
wakamatsu_takumu
0
690
A/Bテスト実践ガイド ~真のデータドリブンへ至る信用できる実験とは~
wakamatsu_takumu
1
1.3k
EBImageを用いたVR画像の変化域抽出と生態系への活用.pdf
wakamatsu_takumu
0
370
データサイエンス100本ノック(構造化データ加工編) No1~40までをSQLで書いてみて
wakamatsu_takumu
0
150
Other Decks in Science
See All in Science
研究って何だっけ / What is Research?
ks91
PRO
1
100
Transport information Geometry: Current and Future II
lwc2017
0
160
Factorized Diffusion: Perceptual Illusions by Noise Decomposition
tomoaki0705
0
390
高校生就活へのDA導入の提案
shunyanoda
0
430
データベース09: 実体関連モデル上の一貫性制約
trycycle
PRO
0
720
Lean4による汎化誤差評価の形式化
milano0017
1
250
ガウス過程回帰とベイズ最適化
nearme_tech
PRO
1
450
Online Feedback Optimization
floriandoerfler
0
2.4k
3次元点群を利用した植物の葉の自動セグメンテーションについて
kentaitakura
2
1.3k
テンソル分解による糖尿病の組織特異的遺伝子発現の統合解析を用いた関連疾患の予測
tagtag
2
200
地質研究者が苦労しながら運用する情報公開システムの実例
naito2000
0
220
Introd_Img_Process_2_Frequ
hachama
0
560
Featured
See All Featured
Bash Introduction
62gerente
613
210k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
A Tale of Four Properties
chriscoyier
160
23k
How to train your dragon (web standard)
notwaldorf
95
6.1k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
How GitHub (no longer) Works
holman
314
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
How STYLIGHT went responsive
nonsquared
100
5.6k
Building Adaptive Systems
keathley
43
2.7k
Transcript
@ wakama1994 | Takumu Wakamatsu ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで 関西Kaggler会 2025#2
自己紹介 primeNumber.Inc (2023.10-): ダッシュボード構築 , データ基盤構築 , DataOps, データカタログ Takumu
Wakamatsu 若松 拓夢 その前 ウェザーニューズ (2020-2023): データサイエンス , 気候変動のサービス開発 その前 北海道大学 法学部 → 同大学院 農学院 (2014-2020) : 学部でデータ分析を知り、理系の道へ • 普段の活動 : DS協会コンペ部 ◦ DS協会が主催するデータサイエンティスト養成講座の修了生が入部可能 ▪ kaggle masterの講師の方と、いつも参加するメンバー 6-7人 (Kaggle Expertが3人) ◦ チーム組んでコンペ出場や、月次定例でコンぺの解法や DS周りの知見共有 コンペ暦5年 : 国内コンペ3年弱, kaggle2年(TEAM4, SOLO2)
発表の構成 • 第1部 (約10分) ◦ 2025年3月に行われたNCAAコンペでソロ金が取れた話をします! ▪ 直前に会社の人と出場した別のコンぺの教訓が生きました • 第2部
(約5分) ◦ これからメダルを取っていきたい方向けに、私のこれまでの経験を話します ▪ Kaggle歴は浅いものの、これまでの積み重ねが多く関係していると改めて実感 ※第1部の内容は、 2025年4月開催の「湘南Kaggler会」の内容を一部改変したもの
皆さん、コンペとはどのように向き合って いますか?
私は、今年に入って土日 Kaggleを始めました ....!! • 会社のメンバーとKaggleのCIBMTRのコンペに、土日でフルコミット! ◦ 2年前からKaggleはやってたが、仕事と並行して取り組む難しさを感じていた .... ◦ 会社の同僚からコンペの誘いがあり、土日に有料のコワーキングスペースを借りてトラ
イ..!! ▪ 平日は仕事で忙しいため、リフレッシュも兼ねて • CIBMTRでは、メダルは取れなかったものの、次はメダル取りたいと考えていたとこ ろ....
すぐに、 ソロ金が取れました .!! https://x.com/Wakama1994/status/1910941644884763111
1週間後に参加した NCAAコンペでソロ金 ! • チーム内外からも多くの反 応が! • 各種メディア媒体の投稿で も反応がすごい...!!
非常に運(宝くじ)要素が強いコンペでした ...!! https://x.com/charmq00/status/1902763796155994418 https://x.com/ToastUz/status/1909600956934926358
でも、土日に取り組んでいたコンペが生きました ! • 土日にkaggleと真摯に向き合ったことで、Discussionやリーダーボードの向き合い方 など課題があることがわかりました • 普段から接する会社の人と出ることで、コンペの取り組み方も変わりました • その結果、(運要素もありましたが)ソロ金に繋がったと思います
第1部のお話し 土日に頑張った CIBMTRのおかげで、 NCAAバスケコンベで、ソロ金が取れた話 をします!
CIBMTRでのしくじり https://www.kaggle.com/organizations/CIBMTR
そもそもなんで CIBMTRでたの? • 11月に入社したエンジニアが、「kaggleやったことないけど、一緒にチーム組んでメダルとり たい!」 • ちょうどDS協会コンペ部でCIBMTRに参加する流れがあったので、彼と別チームで参加を決 意 ◦ 彼の熱量がすごかったのと、初心者と組むことで、業務外の時間
kaggleにフルコミットしたい ◦ コンペ部側とでることも考えたが、上手い人と組むと妥協してしまう可能性も 普段参加しているコンペ部の方達は銅メダルを獲得し、 Expertに昇格.....
コンペの概要 • 患者の身体的情報から、患者の生存予測確率をするコンペ • C-indexはAUCと似た概念 https://www.kaggle.com/competitions/equity-post-HCT-survival-predictions をGoogle自動翻訳、一部抜粋
評価指標C-indexを算出するためのプロセス 1. efs(Event-free survival) • カテゴリカル変数 • 値の意味: イベントが発生または打ち切りを指す ▪
0: 治療が必要な状態が発生せず、無イベント生存を達成したケース ▪ 1: 治療が必要なイベント(再発、進行、死亡など)が発生したケース 2. efs_time(Time to event-free survival) • 連続変数 • 値の意味:無イベント生存までの時間(月単位) 3. 1と2を組み合わせて、予測対象 yを作成 • 生存時間解析に近い考え方
私のアプローチ • 右のNotebookをベースラインとした ◦ 生存関数オプション(カンプラマイヤー関数と CoX比例ハザード関数)をモデルアンサンブルした モ デル • ベースラインに対し、特徴量作成に注力
◦ efs_timeの平均値 を変数の項目ごとに算出し、カラムとして追加 ◦ efsの0/1をカウント し、1が多い場合は0が多い場合は0とし、カラムを追加 ▪ 35あるカテゴリ変数と、 23の連続値ごとで算出する • 各作成した特徴量に対し、5つのモデルで異なる特徴量加工を 実施 a. カンプラマイヤー関数 i. CatBoost/LightGBM/XGBoost b. Cox比例ハザード関数 i. CatBoost/XGBoost
しくじりポイント 01 LBへの過小な期待 Testデータ3つだったこともあり、手元の CVだけを あげれば良いと勝手に判断 理由: 過去に出た、Kaggle ICR(同じ医療コンペ)も TESTデータが数個で、少なく手元の
CVだけを信じ、 shakeupして、銀メダルも狙えたという謎根拠から .... 今回: 合成データという特性上、PVととprivate test はある程度は相関する可能性も高い (とコンペ終了後にわかる) NN系の公開コードLB: 0.6904(最終0.6904) CVって俺らの方がよ くない?
しくじりポイント 02 Discussionの読みこみ不足 • コンペの中盤でDiscussion で特徴量 加工が効かない or 議論されてないこと がわかる
◦ そもそもCVを信じまくっていたので、 ほぼスルー • 前頁で記載したNotebookは全く特徴 量加工してないものだった..... • DS協会コンペ部チームはこの議論を しっかり理解してた......涙 https://www.kaggle.com/competitions/equity-post-HCT-survival-predictions/discussion/561842
NCAAでの勝因 https://www.kaggle.com/competitions/march-machine-learning-mania-2025
NCAA(March Machine Learning Mania) を知ったきっかけ • CIBMTR終了後、Kaggleプラットフォームをあさってると、NCAAが開催中だとわかる • 過去の解法が充実していることがわかったので、もしかしたら銅メダル位はいけるか もな...と思い、終了1週間前に参加を決意
NCAAの概要 https://www.kaggle.com/competitions/march-machine-learning-mania-2025/overview をGoogle自動翻訳、一部抜粋 • 米国の大学バスケリーグの過去の試合結果から、 2025年のNCAAの結果を予測する • 評価指標はブライアースコアを使用 ◦ 勝率と勝敗の差で算出
◦ LBはリアルタイムで 3/20-4/8の期間随時更新され、順位の変動が激しい ▪ 私のスコアも、銀圏と金圏を行き来した
NCAAでの戦略 -2つに絞る- 1. 過去NCAAに参加したことのあるTierのNotebookをベースライン a. 過去のトーナメントのシード情報・シード情報を予測したもの・ ELO rate を特徴量に入れる 2.
ベースラインに、「ブライアスコアに基づく最適リスク戦略」を追加 https://www.kaggle.com/code/kaito510/updated-goto-conversion-winning-solution/notebook の一部抜粋 https://www.kaggle.com/code/kaito510/goto-conversion-winning-solution をGoogle自動翻訳 https://www.kaggle.com/code/raddar/vilnius-ncaaを一部抜粋・改変 NotebookのAUC情報と経年比較 • Seed AUC: 実際の勝敗と、シード情報と のスコア • Quality AUC:実際の勝敗と、シード情報 を予測したものスコア
おまけ NCAAの賞金受賞までの道のり • 7位は入賞の対象だったため、Winner’s Information Gatheringの提出が必要 ◦ アーキテクチャ、前処理、損失関数、トレーニングの詳細、ハイパーパラメータの詳細な 説明を、2週間以内に事務局に提出 •
公開Notebookを組み合わせた解法のため、LLMを駆使し読み解きを実施 ◦ 1週間で理解し、提出したものは無事に受領されました! ◦ 7th place solution 🥇 : The very simple method ! に解法とNotebookを記載 • 無事に賞金を獲得できたが、日本口座への振り込みにかなり時間を要した ....
第2部のお話し ソロ金を取れたのには、 長年の積み重ねも寄与してます...!
数学が苦手 →ちょっとできる、そして楽しい! • 大学受験で数学に対して苦手意識が払拭できたことで、機械学習周りの土台がある 程度あったと実感 • 文系学部在学中に、データ分析に出会い、基礎をしっかり学べたことも起因 • 社会人になって、データコンペと出会い、仕事外でも取り組むくらい面白いと感じた 2014年
2025年 ソロ金 2020年 2010年 大学受験の数学 データ分析と出会い、理転 社会人で始めたデータ分析コンペ
大学受験の数学 • 数学は苦手だったが、国公立大学の文系学部を目指すことに ◦ 数学が原因で高校受験を失敗した経験もあり、「ゼロからスタート」という気持ちで本格 的に取り組む ◦ 「どこで躓いているか?」を丁寧に追いかけた結果、受験時には得意教科まで発展 • このおかげで、データサイエンスに関する「数式に対する抵抗感」が無くなった!
データ分析との出会い、理転 • 政治の授業の中で「統計学を用いた政治分析」と出会い、この分野を極めたい!と感 じる ◦ 分野に囚われずに探した結果、データ分析を用いた「都市計画」を学びたいと判明 ◦ 将来的なことを考え、理科系の作法を学ぶ必要があると思い、理系の大学院へ • 大学院で、実験で使う統計学やデータ分析の基本を学習し、データサイエンティスト
になる
社会人で始めたデータ分析コンペ • SIGNATEと出会い、データ分析コンペを始める! ◦ データサイエンスの基礎固めとして、コンペ形式の研修 AI Quest2020に参加 ▪ 公開コードやDiscussionの大切さを学ぶ ▪
上記2つを対象としたPrize(コミュニティ貢献賞)を受賞し、コンペで自分を高める面 白さを実感 • データサイエンティスト養成講座で、チームで出る楽しさを知る! ◦ 養成講座が、チームで SIGNATEの練習問題コンペを競うもの ▪ 2回コンペがあり、どちらも見事優勝 ◦ 修了生が対象のコンペ部で、継続してチームを組む楽しさを覚える ▪ 月1の定例で、データサイエンスの知見、開催中のコンペの共有がある ▪ その中で、SIGNATEで銀1銅1 、Kaggleで銀1を奪取!
これから始める人は どうしたら良いと思いますか ....?
私の記事をまず読みましょう .. 笑 https://qiita.com/wakama1994/items/9fd3dde307fd54dd6c87 (中略) 先ほど話した経歴系の話が書いてます
短期間でやるには①目標を定め、継続的にやる • その目標が達成したら、自分はどうなっているか?を想像する ◦ 例えば、Kaggle Expertになるために、今足りないのはメダル何枚で ...そのためにはチー ムで組んで解法共有できる環境がいいな ... •
その中でモチベーションを維持する方法を模索し、継続的に取り組む ◦ 例えば、気心知れてる仲間で Kaggleに出て、メダルを目指す ◦ 周りにいない場合は、モチベーションを維持してくれる組織や仲間を探す ◦ 1人が好きな場合は、時間を決めて、家以外の場所で取り組む ...など
短時間でやるには②本質の理解を怠らない • Kaggleはデータサイエンスコンペなので、数式の理解は必要 ◦ 全く知らなくても途中までなんとかなりそうだが、ハイレベルな議論についていけない可 能性 • 「どうしてダメだったのか?」「より良くするためにはどうしたら良いか?」を常に心がけ る ◦
今回のソロ金でも、DS協会コンペ部のCIBMTRの振り返りが生きる部分もあった ◦ 本質的な理解を心がけていたからこそ、振り返りを素直に受け入れた節も大きい
まとめ • NCAAコンペのソロ金では、直前のCIBMTRでは多くの知見が得られました! ◦ LB向上のDiscussionの見方、 公開Notebookへのアプローチを見直す ◦ 普段参加しているDS協会コンペ部の存在と、すぐに別コンペで生かしたいという気持ち • ソロ金を取るまでの「データサイエンスにまつわる私の経験」も、間接的に起因してる
と思っています ◦ その中でのエッセンスとして「目的を定める」と「本質を怠らない」の 2つを重視したことが 成功の要因だなと改めて実感