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
48
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MOVの機械学習システムを支えるMLOps実践
2020/03に行われたDeNA TechConの登壇資料
Takashi Suzuki
March 04, 2020
More Decks by Takashi Suzuki
See All by Takashi Suzuki
到着予想時間サービスの特徴量のニアリアルタイム化
t24kc
0
200
Kubernetes超入門
t24kc
0
240
AI予約サービスのMLOps事例紹介
t24kc
0
44
MLプロジェクトのリリースフローを考える
t24kc
0
24
GOの機械学習システムを支えるMLOps事例紹介
t24kc
0
160
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
t24kc
0
56
GOの実験環境について
t24kc
0
43
タクシー×AIを支えるKubernetesとAIデータパイプラインの信頼性の取り組みについて
t24kc
0
56
MOV お客さま探索ナビの GCP ML開発フローについて
t24kc
0
29
Other Decks in Technology
See All in Technology
新規ゲーム開発におけるAI駆動開発のリアル
202409e2
0
2.9k
LLMと共に進化するプロセスを目指して
ymatsuwitter
12
3.6k
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
3k
Rancherの紹介&Update情報(RancherJP Online Meetup #09)
yoshiyuki_kono
0
130
生成 AI × MCP で切り拓く次世代 SRE!自律型運用への挑戦と開発者体験の進化
_awache
0
170
非定型業務をAI slackbotで自動化する ~ 社内要望を自動壁打ちするbotを作った ~/automating-ad-hoc-work-with-ai-slackbot
shibayu36
0
430
protovalidate-es を導入してみた
bengo4com
0
160
AI Testing Talks: Challenges of Applying AI in Software Testing: From Hype to Practical Use
exactpro
PRO
1
140
非エンジニアがClaudeと挑んだ「1ヶ月間プロダクト30本ノック」
askokc
0
130
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
270
実装は速くなった、レビューはどうする? ― 自身のレビューをAIで再現させるサーヴァントエンジニアリングのすゝめ / Implementation got faster. So what about reviews? — An invitation to Servant Engineering: Recreating your own code reviews with AI
nrslib
7
4.2k
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
2
210
Featured
See All Featured
From π to Pie charts
rasagy
0
200
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
140
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
Speed Design
sergeychernyshev
33
1.8k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
550
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Facilitating Awesome Meetings
lara
57
6.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Cost Of JavaScript in 2023
addyosmani
55
10k
The browser strikes back
jonoalderson
0
1.2k
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