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
1.5k
もしKagglerがスクラムを学んだら_関東Kaggler会#2
以下のイベントのLTで使用したスライドです。
https://connpass.com/event/321748/
sue124
August 01, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
20241214_WACATE2024冬_テスト設計技法をチョット俯瞰してみよう
kzsuzuki
3
370
目玉アップデート!のSageMaker LakehouseとUnified Studioは何たるかを見てみよう!
nayuts
0
230
KnowledgeBaseDocuments APIでベクトルインデックス管理を自動化する
iidaxs
1
160
PR TIMESにおけるNext.jsとcacheの付き合い方
apple_yagi
3
370
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
lana2548
0
190
Oracle Database Release and Support Timelines 2024/12/11
wmo6hash
0
300
GPTsで模擬問題生成して資格対策してみる
hsg_alf
2
120
Classmethod_regrowth_2024_tokyo_security_identity_governance_summary
hiashisan
0
970
OpenAIの蒸留機能(Model Distillation)を使用して運用中のLLMのコストを削減する取り組み
pharma_x_tech
3
400
Amazon SageMaker Unified Studio(Preview)、Lakehouse と Amazon S3 Tables
ishikawa_satoru
0
140
うちにも入れたいDatadog
recruitengineers
PRO
2
190
OCI Oracle Database Services新機能アップデート(2024/09-2024/11)
oracle4engineer
PRO
0
120
Featured
See All Featured
Fireside Chat
paigeccino
34
3.1k
Building Your Own Lightsaber
phodgson
103
6.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
How to Think Like a Performance Engineer
csswizardry
21
1.2k
Six Lessons from altMBA
skipperchong
27
3.5k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Faster Mobile Websites
deanohume
305
30k
How GitHub (no longer) Works
holman
311
140k
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の取り組み方を迷っている方は、ぜひスクラムの要素を取り入れてみてください! スクラムはチームでやる手法なのにほぼずっと一人なので、チームを組んでくれる方募集中