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
もしKagglerがスクラムを学んだら_関東Kaggler会#2
Search
sue124
August 01, 2024
Technology
4
2.1k
もしKagglerがスクラムを学んだら_関東Kaggler会#2
以下のイベントのLTで使用したスライドです。
https://connpass.com/event/321748/
sue124
August 01, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
大規模組織にAIエージェントを迅速に導入するためのセキュリティの勘所 / AI agents for large-scale organizations
i35_267
6
200
ClaudeCode_vs_GeminiCLI_Terraformで比較してみた
tkikuchi
1
4.5k
怖くない!GritQLでBiomeプラグインを作ろうよ
pal4de
1
120
Data Engineering Study#30 LT資料
tetsuroito
1
540
Recoil脱却の現状と挑戦
kirik
2
140
地図と生成AI
nakasho
0
630
振り返りTransit Gateway ~VPCをいい感じでつなげるために~
masakiokuda
4
230
MCP とマネージド PaaS で実現する大規模 AI アプリケーションの高速開発
nahokoxxx
1
1.3k
SRE with AI:実践から学ぶ、運用課題解決と未来への展望
yoshiiryo1
1
680
今日からあなたもGeminiを好きになる
subaruhello
1
540
Microsoft Defender XDRで疲弊しないためのインシデント対応
sophiakunii
3
400
Amazon SNSサブスクリプションの誤解除を防ぐ
y_sakata
3
200
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Unsuck your backbone
ammeep
671
58k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Statistics for Hackers
jakevdp
799
220k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.3k
RailsConf 2023
tenderlove
30
1.2k
Transcript
もしKagglerが スクラムを学んだら 2024/08/03 すえ
自己紹介 すえ • 某コンサルの データサイエンティスト • コンペは画像系とかNLPとか • 二児のパパ •
ゴルフは最近全然行けてない
Kaggleの取り組み方 Before After
スクラムを知る前は行き当たりバッタリで計画性なくKaggleに取り組んでいた 残り2週間であとどれだけ できるか見通しが立たない 具体的にどういうタスクをやっ ていったらいいか…… 作業の進捗がこのペースで いいかわからない あと何をすればいい? コンペ終了間際に学習コードを 変更し始めたら、コンペ終了
までに間に合わなかった ……
スクラムのやり方をKaggleに取り込むと、順調に進められるようになった 残り2週間で これだけできそう すぐ着手できるレベルまで タスクを細かく切り分けておこう 今週はここまで終わって いれば計画通り 〇〇がわからないから、一旦 調査するタスクを入れよう 今やろうとしていることを全部
やろうとするとコンペ終了に間に 合わないから、優先順位をつけよう
スクラムとは?
スクラムはアジャイル開発の手法の1つ アジャイル:短い期間ごとに、一部の機能を完成させていく デプロイ 設計 実装 テスト ウォーターフォール:最初に仕様を決めて、順番に進める デプロイ 設計 実装
テスト 機能1 機能2 デプロイ 設計 実装 テスト デプロイ 設計 実装 テスト 機能3
スクラムの概要 機能A ・タスク1 ・タスク2 : : プロダクト バックログ 機能A ・タスク1
・タスク2 : : スプリント バックログ スプリント プランニング スプリント インクリメント (製品増分) デイリー スクラム スプリント レビュー レトロスペクティブ (振り返り) 1スプリントを1週間〜1カ月とし、繰り返す
スクラムをKaggleに 当てはめると……
スクラムをKaggleに当てはめると…… ※これまで1人で参加してきたので、スクラムにおける役割の話(プロダクトオーナー、スクラムマスター、開発者)の話は除外します 機能A ・タスク1 ・タスク2 : : プロダクト バックログ 機能A
・タスク1 ・タスク2 : : スプリント バックログ スプリント プランニング スプリント インクリメント (製品増分) デイリー スクラム スプリント レビュー レトロスペクティブ (振り返り) 「機能」に以下のようなものを当てはめて、 スプリントごとに優先順位を決める ・EDA ・Baselineモデル作成 ・推論パイプライン構築 ひとりで振り返る 以下のようなものが 「インクリメント」になる ・EDAの結果 ・新しいモデルのCV / LB スコア ・推論パイプライン構築のコード 期間を区切って(1週間など)、スプリント最初に作ると決 めた機能を作りきれるようにタスクを こなしていく
スクラムのどういうところがKaggleの役に立つのか • 1スプリント(1週間)ごとに目標を定める習慣がつく (スプリントプランニング) • 決まった期間で振り返る習慣がつく (レトロスペクティブ) • 「残タスクの作業量」と「これからできる作業量」の見通しがよくなる (ストーリーポイント)
スプリントプランニングとは? 機能A ・タスク1 ・タスク2 : : プロダクト バックログ 機能A ・タスク1
・タスク2 : : スプリント バックログ スプリント プランニング スプリント インクリメント (製品増分) デイリー スクラム スプリント レビュー レトロスペクティブ (振り返り) 「機能」に以下のようなものを当てはめて、 スプリントごとに優先順位を決める ・EDA ・Baselineモデル作成 ・推論パイプライン構築 ひとりで振り返る 以下のようなものが 「インクリメント」になる ・EDAの結果 ・新しいモデルのCV / LB スコア ・推論パイプライン構築のコード 期間を区切って(1週間など)、スプリント最初に作ると決 めた機能を作りきれるようにタスクを こなしていく
スプリントプランニングでやること バックログに タスクを 並べておく 優先順位を考慮して 次のスプリントで やるタスクを決める 上記の要領で次のスプリントのタスクを決めると「直近 1週間でやるべきこと」が明確になる
レトロスペクティブ 機能A ・タスク1 ・タスク2 : : プロダクト バックログ 機能A ・タスク1
・タスク2 : : スプリント バックログ スプリント プランニング スプリント インクリメント (製品増分) デイリー スクラム スプリント レビュー レトロスペクティブ (振り返り) 「機能」に以下のようなものを当てはめて、 スプリントごとに優先順位を決める ・EDA ・Baselineモデル作成 ・推論パイプライン構築 ひとりで振り返る 以下のようなものが 「インクリメント」になる ・EDAの結果 ・新しいモデルのCV / LB スコア ・推論パイプライン構築のコード 期間を区切って(1週間など)、スプリント最初に作ると決 めた機能を作りきれるようにタスクを こなしていく
レトロスペクティブでやること Keep Problem Try 「良かったこと」「続けたいこと」を書く 「悪かったこと」「要改善点」を書く Keep, Problemを受けて 「どう改善するか」「試したいこと」を書く スクラムでよく使う以下の枠組みで書き出すと、Kaggleの取り組み方がよくなっていく。
ストーリーポイントとは? 機能A ・タスク1 ・タスク2 : : プロダクト バックログ 機能A ・タスク1
・タスク2 : : スプリント バックログ スプリント プランニング スプリント インクリメント (製品増分) デイリー スクラム スプリント レビュー レトロスペクティブ (振り返り) 「機能」に以下のようなものを当てはめて、 スプリントごとに優先順位を決める ・EDA ・Baselineモデル作成 ・推論パイプライン構築 ひとりで振り返る 以下のようなものが 「インクリメント」になる ・EDAの結果 ・新しいモデルのCV / LB スコア ・推論パイプライン構築のコード 期間を区切って(1週間など)、スプリント最初に作ると決 めた機能を作りきれるようにタスクを こなしていく 作業量の見積もりに 「ストーリーポイント」を使う
ストーリーポイントとは? ストーリーポイント(SP)での作業量見積もりは、基準を決めて相対的に行う。 基準 SP: 3 SP: 1 SP: 5 基準より小さい
基準より大きい
ストーリーポイント スクラムで使われるツール(JIRAなど)には、各タスクにSPを入力する欄がある SP大のタスクは手が止まったり 進捗が悪くなる元なので、 SP小のタスクに分解するのが吉。 (現在の知識で分解しきれない 時は、そのための「調査タスク」を置 く)
ストーリーポイント スプリントをある数回こなすと「1スプリント当たり消化できるSP」(ベロシティ)が見える。 →「コンペ終盤の残り⚪週間のタイミングで、あとどこまでできるか」の見通しが立てやすくなる。
さいごに Kaggleの取り組み方を迷っている方は、ぜひスクラムの要素を取り入れてみてください! スクラムはチームでやる手法なのにほぼずっと一人なので、チームを組んでくれる方募集中