Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
続・小さく始めて大きく育てるMLOps2020 / Start small and grow ...
Search
chck
August 28, 2020
Programming
3.9k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
続・小さく始めて大きく育てるMLOps2020 / Start small and grow big MLOps2020
PyConJP2020
での発表資料です
chck
August 28, 2020
More Decks by chck
See All by chck
Research Engineerという仕事 / Research Engineering: Bridging Research and Business
chck
1
370
CyberAgent AI Lab研修 / Social Implementation Anti-Patterns in AI Lab
chck
7
5.1k
CyberAgent AI Lab研修 / Container for Research
chck
1
2.4k
CyberAgent AI Lab研修 / Code Review in a Team
chck
3
2.6k
論文読み会 / Socio-Technical Anti-Patterns in Building ML-Enabled Software: Insights from Leaders on the Forefront
chck
0
170
CyberAgent AI事業本部MLOps研修Container編 / Container for MLOps
chck
3
6.3k
論文読み会 / GLAZE: Protecting Artists from Style Mimicry by Text-to-Image Models
chck
0
120
論文読み会 / On the Factory Floor: ML Engineering for Industrial-Scale Ads Recommendation Models
chck
0
96
論文読み会 / GUIGAN: Learning to Generate GUI Designs Using Generative Adversarial Networks
chck
0
84
Other Decks in Programming
See All in Programming
R8 の設定見直しでアプリサイズ削減
andpad
0
210
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
550
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
160
The Rails Doctrine Decade
koic
2
560
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
760
パスワード再設定メールのURLについて知っておこう
uyuki234
0
130
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
970
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.7k
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
180
JRuby: Past, Present, and Future
headius
0
230
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
140
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
520
Optimizing for Happiness
mojombo
378
71k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Exploring anti-patterns in Rails
aemeredith
4
530
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
210
Build your cross-platform service in a week with App Engine
jlugia
234
19k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Typedesign – Prime Four
hannesfritz
42
3.2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The Limits of Empathy - UXLibs8
cassininazir
2
710
Transcript
続・小さく始めて大きく育てる MLOps2020 Yuki IWAZAKI
I am Yuki Iwazaki Research Engineer at CyberAgent, AI Lab
You can find me at @chck 2014- Back/Frontend Engineer (Ruby, Scala, JavaScript) 2016- Data Scientist (Python) 2017- Research Engineer (Python) Hello! 2
What is MLOps? ML lifecycleを運用・管理 するためのPractice 3
What is ML Lifecycle? DS Projectにおける周期的なProcess - Fetch Data -
Preprocessing - Training - Reporting - Deployment https://www.slideshare.net/databricks/mlflow-infrastructure-for-a-complete-machine-learning-life-cycle 4
Fetch Data 5
Preprocessing 6
Training 7
Reporting 8
ML Lifecycleに潜む罠 9
乱立するJupyter Notebook 10
身元不明なデータ 11
再現しない学習結果 12
引き継ぎできない実験コード 13
14 実験管理 できてますか
ブログ記事: 小さく始めて大きく育てるMLOps2020 15
今日から始められる決定版を紹介したい 16
Hydra 17
Hydra 設定パラメータ管理ツール - pip install hydra-core - 複数のYamlを継承 - 順次読込
- Parameter探索にも 18
Hydra 19
Hydra 20
Hydra 21
Hydra defaults: lightgbm_a.yamlをload 22
Hydra defaults: lightgbm_a.yamlをload lightgbm_b.yamlをload 23
Hydra defaults: lightgbm_a.yamlをload lightgbm_b.yamlをload argsでparamsをoverwrite 24
Hydra Multirun Optionによる順次実行 25
MLflow Tracking 26
MLflow Tracking 実験ログの管理ツール - pip install mlflow - clientからserverに送信し たログが保存され、
UIから可視化できる 27
MLflow Tracking Tracking Server Tracking Client User 28
MLflow Tracking Tracking Serverの起動コマンド 内部でgunicornが動いている 29
MLflow Tracking 30
MLflow Tracking 実験一覧 実験結果 31
MLflow Tracking 32
MLflow Tracking before after (with mlflow) 33
MLflow Tracking before after (with mlflow) 34
MLflow Tracking before after (with mlflow) 35
MLflow Tracking 36
MLflow Tracking 37
MLflow Tracking 38
Tracking Serverのすすめ Tracking Server Tracking Client User MLflow or 実験管理系SaaS
39
Kedro 40
Kedro Workflowの管理ツール - pip install kedro - Fetch Data ->
Preprocessing -> Training -> Reporting の流れをPipeline化 41
Kedro Pipeline 42
Kedro Pipeline Data Catalog Pipeline内で共有したいDataを yamlに定義 Data Connectorとその引数を記述 built-inのCSV, SQL,
S3,,, Custom実装も可能 43
Kedro Pipeline Parameters Pipeline内で共有したいParameterを yamlに定義 Hydraとの連携やMLflowに渡す例も 44
Kedro Pipeline Node Pipelineを組み立てる処理の一単位. Python関数で記述 45
Kedro Pipeline Pipeline Data Catalog, Parameterが共有された NodeのChain 46
47
node: preprocessの実行 48
node: train_modelの実行 49
node: report_accuracyの実行 50
Summary 51
今日のまとめ Parameters Track experiments Workflow 52
おわりに 使い回しを意識した健全なML Lifecycleで 未来の自分やProjectの皆を幸せにしましょう まずは1ツールから. 53
References - 小さく始めて大きく育てるMLOps2020 - https://github.com/chck/ml-management-tools/ - ハイパラ管理のすすめ - ハイパーパラメータをHydra+MLflowで管理しよう -
MLFlowと他ツールの組み合わせ 54
You can find me at ◉ speakerdeck.com/chck ◉ github.com/chck ◉
facebook.com/chck1245 Thanks! 55 ←この発表資料
Appendix 56
Deploymentまで管理するには - こんなのがあります - library依存 - TensorFlow Serving - TorchServe
... - Cloud依存 - SageMaker - AI Platform ... 57
MLOps Yes/No Chart 58