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
460
社内でKaggle部を作って初学者育成した話
「関西Kaggler会 交流会 in Osaka 2025#1」の登壇資料です
Daikon
March 11, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
SREの視点で考えるSIEM活用術 〜AWS環境でのセキュリティ強化〜
coconala_engineer
1
280
Amazon CloudWatch を使って NW 監視を行うには
o11yfes2023
0
140
Goの組織でバックエンドTypeScriptを採用してどうだったか / How was adopting backend TypeScript in a Golang company
kaminashi
3
910
Running JavaScript within Ruby
hmsk
1
240
クォータ監視、AWS Organizations環境でも楽勝です✌️
iwamot
PRO
1
270
Classmethod AI Talks(CATs) #20 司会進行スライド(2025.04.10) / classmethod-ai-talks-aka-cats_moderator-slides_vol20_2025-04-10
shinyaa31
0
150
Lightdashの利活用状況 ー導入から2年経った現在地_20250409
hirokiigeta
2
280
[2025年4月版] Databricks Academy ラボ環境 利用開始手順 / Databricks Academy Labs Onboarding
databricksjapan
0
130
LLM とプロンプトエンジニアリング/チューターをビルドする / LLM, Prompt Engineering and Building Tutors
ks91
PRO
1
250
いつも初心者向けの記事に助けられているので得意分野では初心者向けの記事を書きます
toru_kubota
2
300
NLP2025 参加報告会 / NLP2025
sansan_randd
4
560
LangfuseでAIエージェントの 可観測性を高めよう!/Enhancing AI Agent Observability with Langfuse!
jnymyk
1
210
Featured
See All Featured
Unsuck your backbone
ammeep
670
57k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
135
33k
Designing Experiences People Love
moore
141
24k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
104
19k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
KATA
mclloyd
29
14k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.5k
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サブに時間がかかるメンバーが多かった まとめ 今後