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
続・小さく始めて大きく育てるMLOps2020 / Start small and grow big MLOps2020
Search
chck
August 28, 2020
Programming
3
2.9k
続・小さく始めて大きく育てるMLOps2020 / Start small and grow big MLOps2020
PyConJP2020
での発表資料です
chck
August 28, 2020
Tweet
Share
More Decks by chck
See All by chck
CyberAgent AI事業本部MLOps研修Container編 / Container for MLOps
chck
2
4.1k
機械学習開発のためのコンテナ入門 / Container for ML
chck
0
700
Web系企業研究所における研究開発を加速させるエコシステム / Ecosystem accelerates our R&D in CyberAgent AI Lab
chck
0
98
CyberAgent AI Labを支えるCloud実験環境 / ML Experiment Management via Cloud Computing Platform in CyberAgent AI Lab
chck
7
3.9k
Other Decks in Programming
See All in Programming
CA.swift19 恋するAIアプリ開発の裏側
oskmr
0
340
ログラスを支える設計標準について / loglass-design-standards
urmot
10
2.1k
二郎系ラーメンのコールで学ぶ AST 解析
memory1994
PRO
7
1.6k
Blue/Greenデプロイの導入による 運用フローの改善
kudoas
1
350
[技育CAMPアカデミア]アイディアを形に!【超入門】スマホアプリ開発〜リリースまでの流れをご紹介
teamlab
PRO
0
350
What We Can Learn From OSS
inouehi
0
400
ゆるい個人開発のススメ
kuroppe1819
10
940
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
3
220
Folding Cheat Sheet #1
philipschwarz
PRO
0
210
チーム力を高めるスクラム実践法:カンバン公開と課題攻略について - ニフティのスクラムトーク Vol. 2 - NIFTY Tech Talk #18
niftycorp
PRO
1
110
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
220
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
280
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
15
2.6k
Design by the Numbers
sachag
274
18k
GraphQLとの向き合い方2022年版
quramy
31
12k
How to name files
jennybc
64
92k
Optimising Largest Contentful Paint
csswizardry
7
2.3k
How to Ace a Technical Interview
jacobian
272
22k
Adopting Sorbet at Scale
ufuk
67
8.6k
RailsConf 2023
tenderlove
2
530
Done Done
chrislema
178
15k
Facilitating Awesome Meetings
lara
41
5.6k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
We Have a Design System, Now What?
morganepeng
42
6.7k
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