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部を作って初学者育成した話
Search
Daikon
March 11, 2025
Technology
1
150
社内でKaggle部を作って初学者育成した話
「関西Kaggler会 交流会 in Osaka 2025#1」の登壇資料です
Daikon
March 11, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
User Story Mapping + Inclusive Team
kawaguti
PRO
3
610
4th place solution Eedi - Mining Misconceptions in Mathematics
rist
0
160
OCI Success Journey OCIの何が評価されてる?疑問に答える事例セミナー(2025年2月実施)
oracle4engineer
PRO
2
280
Qiita Organizationを導入したら、アウトプッターが爆増して会社がちょっと有名になった件
minorun365
PRO
1
380
マルチアカウント環境における組織ポリシーについて まとめてみる
nrinetcom
PRO
2
110
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
260
AI-Driven-Development-20250310
yuhattor
3
320
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
12k
結果的にこうなった。から見える メカニズムのようなもの。
recruitengineers
PRO
1
130
30→150人のエンジニア組織拡大に伴うアジャイル文化を醸成する役割と取り組みの変化
nagata03
0
410
アウトカムを最大化させるプロダクトエンジニアの動き
hacomono
PRO
0
120
プロダクト開発者目線での Entra ID 活用
sansantech
PRO
0
200
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Code Review Best Practice
trishagee
67
18k
Designing for humans not robots
tammielis
250
25k
Building an army of robots
kneath
303
45k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Rails Girls Zürich Keynote
gr2m
94
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Music & Morning Musume
bryan
46
6.4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
660
GitHub's CSS Performance
jonrohan
1030
460k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Transcript
社内でKaggle部を作って初学者育成した話 関西Kaggler会 2025#1 だいこん(@daigaku_ikitai)
自己紹介 名前 森田 大貴 出身 好きなAWS サービス Step Functions Kaggler部
卓球部 体操(バク転?)部 フットサル部 フィールドサイエンス部 鳥取
①Python基礎講義
Python基礎講義: 概要 教材を指定し、問題集を作成して週次定例で講義 やったこと – 指定教材の内容に合わせた問題集をColabで作成し、 解いてきてもらう(合計65問) – 週次定例で解説講義を行う 目的
– Python基礎文法の習得 – NumPy, Pandas, Matplotlib等ライブラリの習得 期間 – 週に1回の1時間の定例 × 3回
Python基礎講義: 工夫点 ①Kaggleの経験からコメントを記述する ②変数、配列、dfの定義は書いておく ③Kaggleで使われるかの観点で内容を取捨選択
Python基礎講義: 工夫点 ①Kaggleの経験 からのコメントを書く ①Kaggleの経験からコメントを記述する ②変数、配列、dfの定義は書いておく ③Kaggleで使われるかの観点で内容を取捨選択
Python基礎講義: 工夫点 ②変数, 配列, dfの定義は残し ておくことで、問題を解くときにい ちいち定義しなくていいようにする ①Kaggleの経験 からのコメントを書く ①Kaggleの経験からコメントを記述する
②変数、配列、dfの定義は書いておく ③Kaggleで使われるかの観点で内容を取捨選択
Python基礎講義: 工夫点 ②変数, 配列, dfの定義は残し ておくことで、問題を解くときにい ちいち定義しなくていいようにする ①Kaggleの経験 からのコメントを書く ③リスト内包表記など、
指定教材内で発展扱い されているものでも扱う ①Kaggleの経験からコメントを記述する ②変数、配列、dfの定義は書いておく ③Kaggleで使われるかの観点で内容を取捨選択
Python基礎講義: 振り返りと参加者の声 Kaggleの知見を活かしたコメント・取捨選択が非常に好評だった 良かった点 • 単に問題だけでなく、補足コメントも書いてあっ た点 • 普通に本1冊やると結構大変だが、必要な部 分を経験から抜き出していただいていて、大きな
負荷なく完遂できるようになっていた点 • 難易度順に並んでいるので、不要な部分を飛ば して取り組むことができた。また、解説が分かりや すかった。 • kaggleで必要となる知識を盛り込んでいただき、 理解を深めやすくてありがたかったです。 改善点 • 特になし 良かった点 • Kaggle経験に基づくコメントと取捨選択 - 各問題の重要度が分かり好評 - crosstab, pivot_tableなど使用頻度の 低そうなものは省いた - Seabornを用いた複雑な可視化など、必 要な時に調べればOKなものも省いた • 変数定義を残した - 「いちいち入力する必要がなく学ぶべきことに 集中できた」との声があった 改善点 • 特になし 振り返り 参加者の声(原文)
②初心者向けコンペ伴走支援
初心者向けコンペ伴走支援: 概要 やったこと – KaggleのPlaygroundコンペに参加 – 運営3人をメンバ4人に割り当ててチーム を組み伴走支援 目的 –
Python講義で学んだ内容の実践 – LGBMの使用方法の理解 期間 – 1か月 Kaggleの初心者向けコンペに参加し、学んだ内容の実践
初心者向けコンペ伴走支援: 概要 やったこと – KaggleのPlaygroundコンペに参加 – 運営3人をメンバ4人に割り当ててチーム を組み伴走支援 目的 –
Python講義で学んだ内容の実践 – LGBMの使用方法の理解 期間 – 1か月 Kaggleの初心者向けコンペに参加し、学んだ内容の実践
初心者向けコンペ伴走支援: 課題 コンペ伴走支援するも挫折 ①private sharingを防ぐため、運営・メンバー同士の状況相談ができない ②公開コードの完成度が高くて改善できず、成功体験を得られない
初心者向けコンペ伴走支援: 振り返りと参加者の声 Kaggleのルールを守れたのは良かったが、 やる気のある時期に2週間放置してしまったことは反省 良かった点 • 個別でのサポートになっていたので、質問しやすい 環境が整えられていた • コンペに思うように取り組めていないときに、困って
いる点がないか確認してくださった点。 • 疑問点を質問した際に、簡潔にわかりやすく回答 くださった点。 改善点 →次ページに掲載 良かった点 • 運営を割り振ったチーム支援で、Kaggleのルー ルを守りつつサポートできた 改善点 • 運営サポートが入るまでに時間がかかってしまった - Python講義が終了してやる気のある状 態でコンペに参加してくれたのに2週間も放 置してしまった • Python講義から乖離がありすぎたかも - 「コンペにチャレンジしながら学べばいい」と安 易に考えてしまった - もう少しステップあっても良かった 振り返り 参加者の声(原文)
初心者向けコンペ伴走支援: 振り返りと参加者の声 python問題集とコンペの間に少し距離がある気がしたので、そこを埋める策があるといいと思った。 例えばコンペに出る前に、基本的なコンペの進め方と各フェーズで必要とされる技術の全体像が見えるといいと思った。 必要とされる技術の全体像というのは、↓のようなイメージ ・データの確認(どんなtypeのカラムがあるか、中身がどんなものか、欠損値やはずれ値はあるか) ・色々なモデルがある(その中で、一旦LGBTを使うことが多い) ・モデルに突っ込む前に前処理をする(エンコーディング、欠損値補間、はずれ値削除など) ・特徴量選択・作成 ・バリデーション(クロスバリデーション等)
etc・・・ ※このあたりは〇〇個人としては、「Kaggleで磨く機械学習の実践力」、という本から大まかな流れを理解することができた。 ⇒初学者には結構おすすめ 上記の全体像を理解した上で、実際にコンペを完遂してみるようなカリキュラムになっているといいと思った。 例えば、毎週宿題方式にして、週次定例でやった内容と考察を誰か2人ぐらいが発表&ディスカッション、質問対応 (負荷がかかりすぎないようにするために、資料作成はいらず、kaggleページを見せて口頭説明のイメージ) ※全体像は↑で説明してあるので、隔週でどの技術を使うかなどは指定しすぎず各人に任せる (指定しすぎてしまうと脳死作業になるので、身につかない気がする) 過去コンペとかで やってもいいかも
③プライベートコンペ
プライベートコンペ: コンペ概要 運営のサポート不足・成功体験を得る難しさにより挫折 →自分でコンペ開催すればいいのでは? 自分で身内だけのコンペを 作ればprivate sharing 関係なくサポートできる
プライベートコンペ: コンペ概要 12月に行われたKaggler忘年会コンペのデータ作成コード (Ryushiさん, T88さん作成)を提供していただいた Kaggler忘年会コンペ RyushiさんDM
プライベートコンペ: コンペ概要 ✓モンスター同士のバトル結果を予測するプライベートコンペを開催 ✓メンバーや社長からモンスターの名前を取って親しみやすくした 頂いたコードでデータ作成し、プライベートコンペを開催 メンバーにモンスターとして登場してもらうことコンペに親しみやすく プライベートコンペ モンスターデータ 社長のパラメータは すべてMAX
プライベートコンペ: スターターノートブック コメント付きで理解しやすくあえて改善余地を残した スターターノートブックを作成し、成功体験を得られるように工夫 丁寧なコメント付きで、 あえて改善余地を残したノートブック 週次定例内でのノートブック解説講義
プライベートコンペ: 進め方 進め方 • 週次で進捗確認の定例を30分行う 定例内容 • リーダーボード確認 - 1人ずつ1週間の取り組み内容を発表
- 取り組み内容に関する質疑 - その他疑問点の解消 週次の定例で、全員が自分の取り組み内容を共有
プライベートコンペ: コンペ結果 メンバー全員がベースラインから大幅にスコアアップ!! 20, 30サブするメンバーも
プライベートコンペ: 振り返りと参加者の声 コンペ内容もノートブックも好評 スコア改善のサイクルに入るまでが遅かった点は反省 良かった点 • 難易度としてほど良く、取り組みやすかった • やはり知識が豊富なので、疑問に思ったことに対して参考コ ンペを提示していただけたりと、ググる以上に学びになるこ
とが多かった • 改善の余地が(あえて)たくさん残されている点。 • 毎週定例があり、他者の進捗を確認できる点。 • 他の方のスコア等も見ることでやる気があげることができた。 改善点 • これはどちらかというと生徒側の問題だが、どうしても後半に 作業が集中しているので、なんかうまい策があればいいか も・・・(※最後の定例会の時のようなディスカッションが毎週 できると有意義だなと思った) 良かった点 • 週次定例での進捗共有により、お互いが何をど れくらい頑張ってるか分かるのでやる気になる • 「0.2切り」というスコアの具体的な精度目標を 設定 • 毎朝9時にコンペ終了までのカウントダウン投稿 • 改善点をあえて残した分かりやすいノートブック 改善点 • 最初の1サブまで定例内でサポートすればよ かった - 改善のサイクルに入るまでに時間がかかる - LBに載ればやる気が出るはず 振り返り 参加者の声(原文)
プライベートコンペ: 感想 メンバーの実験メモがすごくてびっくり 今回のコンペの予測ターゲットである勝率が「0.0~1.0の0.1刻みの離散値」 であることに着目してて怖かった… データ分析の勉強始めて3ヵ月なのに Kagglerっぽいこと言い始めた… Google Brainコンペ の後処理みたいなこと
言ってる…
まとめ
まとめ プライベートコンペを開催しKaggleのルールを守りつつ実践演習を行った 来年度は今年度の反省を活かし引き続き人材育成に取り組む 社外交流も楽しそう データサイエンティスト人材育成 • 伴走支援してメダル獲得を目指す データ活用ビジネス人材育成 • 営業さん等AIに馴染みのないビジネスサイドの方々
に知見を展開しリテラシー向上 • データサイエンティスト×ビジネスサイドの連携強化 その他 • グループ間交流、他社交流とか面白そう Python基礎講義 • Kaggle経験を活かした補足, 取捨選択が好評 初心者向けコンペ参加 • サポート不足、成功体験不足で失敗 • やる気のある時期に放置してしまった • もっとステップを踏めばよかった プライベートコンペ • 毎週の定例で自由に議論できた • コードに改善点を残し成功体験を得られるように • 最初の1サブに時間がかかるメンバーが多かった まとめ 今後