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.2k
もしKagglerがスクラムを学んだら_関東Kaggler会#2
以下のイベントのLTで使用したスライドです。
https://connpass.com/event/321748/
sue124
August 01, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
サポートエンジニアから見たRancher運用の現場
masap
0
110
見てわかるテスト駆動開発
recruitengineers
PRO
6
2.3k
「魔法少女まどか☆マギカ Magia Exedra」のグローバル展開を支える、開発チームと翻訳チームの「意識しない協創」を実現するローカライズシステム
gree_tech
PRO
0
420
AIとTDDによるNext.js「隙間ツール」開発の実践
makotot
6
800
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
2
500
PRDの正しい使い方 ~AI時代にも効く思考・対話・成長ツールとして~
techtekt
PRO
0
230
ヒューリスティック評価を用いたゲームQA実践事例
gree_tech
PRO
0
410
異業種出身エンジニアが気づいた、転向して十数年経っても変わらない自分の武器とは
macnekoayu
0
250
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
100
まだ間に合う! StrandsとBedrock AgentCoreでAIエージェント構築に入門しよう
minorun365
PRO
10
680
個人CLAUDE.md紹介と設定から学んだこと/introduce-my-claude-md
shibayu36
0
140
VPC Latticeのサービスエンドポイント機能を使用した複数VPCアクセス
duelist2020jp
0
350
Featured
See All Featured
For a Future-Friendly Web
brad_frost
179
9.9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Balancing Empowerment & Direction
lara
3
600
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Rails Girls Zürich Keynote
gr2m
95
14k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Fireside Chat
paigeccino
39
3.6k
Embracing the Ebb and Flow
colly
87
4.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Art, The Web, and Tiny UX
lynnandtonic
302
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
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の取り組み方を迷っている方は、ぜひスクラムの要素を取り入れてみてください! スクラムはチームでやる手法なのにほぼずっと一人なので、チームを組んでくれる方募集中