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
MOVの機械学習システムを支えるMLOps実践
Search
Takashi Suzuki
March 04, 2020
Technology
0
29
MOVの機械学習システムを支えるMLOps実践
2020/03に行われたDeNA TechConの登壇資料
Takashi Suzuki
March 04, 2020
Tweet
Share
More Decks by Takashi Suzuki
See All by Takashi Suzuki
到着予想時間サービスの特徴量のニアリアルタイム化
t24kc
0
170
Kubernetes超入門
t24kc
0
160
AI予約サービスのMLOps事例紹介
t24kc
0
30
MLプロジェクトのリリースフローを考える
t24kc
0
19
GOの機械学習システムを支えるMLOps事例紹介
t24kc
0
140
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
t24kc
0
40
GOの実験環境について
t24kc
0
25
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
t24kc
0
44
MOV お客さま探索ナビの GCP ML開発フローについて
t24kc
0
20
Other Decks in Technology
See All in Technology
あの夜、私たちは「人間」に戻った。 ── 災害ユートピア、贈与、そしてアジャイルの再構築 / 20260108 Hiromitsu Akiba
shift_evolve
PRO
0
280
AWS Lambda durable functions を使って AWS Lambda の15分の壁を超えてみよう
matsuzawatakeshi
0
120
「リリースファースト」の実感を届けるには 〜停滞するチームに変化を起こすアプローチ〜 #RSGT2026
kintotechdev
0
400
アラフォーおじさん、はじめてre:Inventに行く / A 40-Something Guy’s First re:Invent Adventure
kaminashi
0
210
2025年の医用画像AI/AI×medical_imaging_in_2025_generated_by_AI
tdys13
0
280
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
15
4.8k
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
0
810
re:Invent2025 セッションレポ ~Spec-driven development with Kiro~
nrinetcom
PRO
2
160
TED_modeki_共創ラボ_20251203.pdf
iotcomjpadmin
0
190
Claude Skillsの テスト業務での活用事例
moritamasami
1
130
LayerX QA Night#1
koyaman2
0
300
コールドスタンバイ構成でCDは可能か
hiramax
0
130
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
110
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Typedesign – Prime Four
hannesfritz
42
2.9k
Code Reviewing Like a Champion
maltzj
527
40k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
110
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
64
How to Talk to Developers About Accessibility
jct
1
94
It's Worth the Effort
3n
187
29k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
75
The Language of Interfaces
destraynor
162
26k
Site-Speed That Sticks
csswizardry
13
1k
Transcript
.07ͷػցֶशγεςϜΛࢧ͑Δ .-0QT࣮ફ ློ࢙ ஙࢁকԝ !1
DeNA TechCon 2020 #denatechcon
!3
!4
DeNA TechCon 2020 #denatechcon ✔ ✔ ✔ 5
6
7
8
͜ͷं྆ʹͱͬͯ ࠷దͳߦܦ࿏Կ͔ʁ 9 • • • •
10 々
11
12
• • !13 • •
ຊ൪ڥ • ਪύΠϓϥΠϯ • Ϟσϧਫ਼ࢹ !14 ࣮ݧڥ • ੳ/Ϟσϧ։ൃ •
࣮ݧཧ CI/CD • • • • 々
DeNA TechCon 2020 #denatechcon
!16 BigQuery 々
࣮ݧڥ σʔλαΠΤϯςΟετ !17 BigQuery ୳ࡧతσʔλղੳ લॲཧ ֶश ਪ ධՁ
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon ※
DeNA TechCon 2020 #denatechcon ※
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon ※ ?
DeNA TechCon 2020 #denatechcon ?
DeNA TechCon 2020 #denatechcon 々 々 → 々
DeNA TechCon 2020 #denatechcon ※ #JH2VFSZ
!26 ※
!27 - ⇒ - - -
DeNA TechCon 2020 #denatechcon
!29 CI/CD 々
!30 CI/CD 々 々
DeNA TechCon 2020 #denatechcon 々
DeNA TechCon 2020 #denatechcon 々 ※ "*1MBUGPSN
!33
々 - - - !34
DeNA TechCon 2020 #denatechcon
• ※ ⇒ ※ • → ※ !36
DeNA TechCon 2020 #denatechcon ͔͜͜Βޙ
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon 々※
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon M ! ®lROgňǐkYi々 @ ûÂIJ_jmąƀŰ¯=z?`ÍÌŰ¯^]=é©é\ęÐaŰ¯Qm
@ ƈœĪ`ēÑøħůÄ_jmŐƉ`ąƀÛ ġŁǐƢǜ ƔŁǐƢǜ ijŨƿç Map data ©2019 Google
DeNA TechCon 2020 #denatechcon 々
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon 々 AI Platform Training BigQuery
DeNA TechCon 2020 #denatechcon ($3 ,VCFGMPX1JQFMJOF 々 4JNVMBUJPO
3VOOFS *NBHF 1SFEJDUPS *NBHF $PNQPTFS 1SPGJMF 4JNVMBUPS%BUB 5SBJO #BUDI 1SFEJDUJPO 1SFQSPDFTT #VJME #JH2VFSZ ($4
DeNA TechCon 2020 #denatechcon ($3 1SPEVDUJPO"1* 3PVUF"1* 1SFEJDUPS
*NBHF $PNQPTFS 1SFEJDUJPO 1SFQSPDFTT #JH2VFSZ ($4
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon 々 々 々 々 々 々
DeNA TechCon 2020 #denatechcon 々 々 々 々 々 々
?
DeNA TechCon 2020 #denatechcon 々 々 々 々 々 々
DeNA TechCon 2020 #denatechcon ※ 々 々
DeNA TechCon 2020 #denatechcon ※ 々
DeNA TechCon 2020 #denatechcon def task_fail_slack_alert(context): slack_msg = “Task Failed.”
failed_alert = SlackWebhookOperator( task_id="xxx", http_conn_id="slack", webhook_token=Variable.get("webhook.token"), message=slack_msg, username="airflow", ) return failed_alert.execute(context=context)
DeNA TechCon 2020 #denatechcon <!subteam^ABCDEF123|@user_group>
DeNA TechCon 2020 #denatechcon 々 々 々 々 々 々
DeNA TechCon 2020 #denatechcon 々
DeNA TechCon 2020 #denatechcon ※
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon 々 々
DeNA TechCon 2020 #denatechcon 々
DeNA TechCon 2020 #denatechcon
DeNA TechCon 2020 #denatechcon 々
DeNA TechCon 2020 #denatechcon ※
DeNA TechCon 2020 #denatechcon → 々
DeNA TechCon 2020 #denatechcon 々
DeNA TechCon 2020 #denatechcon ※ @pytest.fixture(scope="session", autouse=True) def setup_teardown(request, test_config):
# setup # ͜͜ʹࡉʑͱͨ͠ॲཧ suffix = uuid.uuid4() create_dataset(suffix) yield # teardown # ͜͜ʹࡉʑͱͨ͠ॲཧ delete_blobs(suffix) delete_dataset(suffix)
DeNA TechCon 2020 #denatechcon @pytest.mark.dependency(depends=[“test_preprocess_a”, “test_preprocess_b”]) def test_trainer(test_config): trainer =
Trainer( test_config[“xxx”].format(test_config[“hash"]), test_config[“yyy”].format(test_config[“hash"]), ) trainer.train() trainer.upload_model()
DeNA TechCon 2020 #denatechcon →
DeNA TechCon 2020 #denatechcon 々 →
• = • = • !73
DeNA TechCon 2020