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.4k
もしKagglerがスクラムを学んだら_関東Kaggler会#2
以下のイベントのLTで使用したスライドです。
https://connpass.com/event/321748/
sue124
August 01, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
re:Invent2025 事前勉強会 歴史と愉しみ方10分LT編
toshi_atsumi
0
190
Perlの生きのこり - YAPC::Fukuoka 2025
kfly8
0
320
AI エージェントを評価するための温故知新と Spec Driven Evaluation
icoxfog417
PRO
1
410
LINEヤフー バックエンド組織・体制の紹介
lycorptech_jp
PRO
0
820
なぜThrottleではなくDebounceだったのか? 700並列リクエストと戦うサーバーサイド実装のすべて
yoshiori
13
4.8k
国産クラウドを支える設計とチームの変遷 “技術・組織・ミッション”
kazeburo
4
4.9k
社内外から"使ってもらえる"データ基盤を支えるアーキテクチャの秘訣/登壇資料(飯塚 大地・高橋 一貴)
hacobu
PRO
0
3.1k
Bedrock のコスト監視設計
fohte
2
200
Axon Frameworkのイベントストアを独自拡張した話
zozotech
PRO
0
220
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
1.1k
明日から真似してOk!NOT A HOTELで実践している入社手続きの自動化
nkajihara
1
870
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
5.9k
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
670
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Designing for humans not robots
tammielis
254
26k
Practical Orchestrator
shlominoach
190
11k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
The Invisible Side of Design
smashingmag
302
51k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
330
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の取り組み方を迷っている方は、ぜひスクラムの要素を取り入れてみてください! スクラムはチームでやる手法なのにほぼずっと一人なので、チームを組んでくれる方募集中