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
Mercari ML Platform
Search
Hirofumi Nakagawa/中河 宏文
November 02, 2018
Technology
1
17k
Mercari ML Platform
Hirofumi Nakagawa/中河 宏文
November 02, 2018
Tweet
Share
More Decks by Hirofumi Nakagawa/中河 宏文
See All by Hirofumi Nakagawa/中河 宏文
IoTデバイスでMLモデルを動かす技術
hnakagawa
0
150
Kanazawa_AI.pdf
hnakagawa
0
160
メルカリ写真検索における Amazon EKS の活用事例と プロダクトにおけるEdgeAI technologyの展望
hnakagawa
5
8.8k
メルカリの写真検索を支えるバックエンド CCSE 2019 version
hnakagawa
0
290
メルカリ写真検索における Amazon EKS の活用事例
hnakagawa
6
29k
メルカリの写真検索を支えるバックエンド
hnakagawa
1
1.1k
mlct.pdf
hnakagawa
2
2k
機械学習によるマーケット健全化施策を支える技術
hnakagawa
0
220
メルカリのマーケット健全化施策を支えるML基盤
hnakagawa
10
8.9k
Other Decks in Technology
See All in Technology
Goで作って学ぶWebSocket
ryuichi1208
3
2.8k
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
730
クラウド関連のインシデントケースを収集して見えてきたもの
lhazy
8
1.1k
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
120
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
130
AIエージェント入門
minorun365
PRO
31
18k
Pwned Labsのすゝめ
ken5scal
2
440
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
290
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
100
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
5k
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
1.2k
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Code Reviewing Like a Champion
maltzj
521
39k
Why Our Code Smells
bkeepers
PRO
336
57k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
990
Being A Developer After 40
akosma
89
590k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
Designing Experiences People Love
moore
140
23k
4 Signs Your Business is Dying
shpigford
182
22k
Music & Morning Musume
bryan
46
6.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
Mercari ML Platform
自己紹介 • Hirofumi Nakagawa(hnakagawa) • 2017年7月入社 • 所属はSRE • デバイスドライバ開発からフロントエ
ンド開発までやる何でも屋 • NOT MLエンジニア
Kubernetes CLI Image builder Cluster Pipeline Engine Dashboard Metrics Runner
Component Mercari ML Component ML platform architecture
Kubernetes CLI Image builder Cluster Pipeline Engine Dashboard Metrics Runner
Component Mercari ML Component
Container imageを自動でbuild。利用者がDockerfileを 書く必要は極力無いようにしてある Cluster Pipeline Engine CLI/Image builder Metrics Clusterリソースを管理し、container化されたData
Pipelineを実行する Prometheus使用している。ML modelに関するmetrics を取得
Kubernetes CLI Image builder Cluster Pipeline Engine Dashboard Metrics Runner
Component Mercari ML Component
前処理や分類器をContainer Pipelineで実行できるよう にコンポーネント化したもの Runner ML Component Mercari ML Component Training/Serving環境でcluster環境とlocal環境の差を
埋める データ・ソースやitem分類等、社内利用に特化したコン ポーネント
Container Based Pipeline
DataSource Image Text Preprocessing Image PV Picture Preprocessing Image PV
PV Estimator Image 全ての出力はPVに保存されキャッ シュとしても利用できる
Model Training & Serving Workflow
CI Training Cluster Job ・・・ Model Repository Job Job Serving
Cluster REST API TF Serving Faiss ・・・ 全てのModelが version管理 & image化されている
Serving Architecture
Mercari API Flask SK Model SK Model SK Model TensorFlow
Serving TF Model TF Model TF Model Virtual Service Basic serving API architecture
Streaming serving API architecture Flask SK Model SK Model SK
Model TensorFlow Serving TF Model TF Model TF Model Virtual Service Proxy
A/B Test Architecture
Model Service A Virtual Service Model Service B Mercari API
90% 10% Model API is activated by Istio
Common Problems of Model Serving
Huge model file vs container image • 巨大なMLモデルファイルをimageに含めるか否か • 含めないのであれば何処に配置するのか
• ポータビリティとロード時間のトレードオフ
Effective memory usage • 数GB程度のメモリを使用するのは普通 • プロセス毎にモデルをロードする必要がある環境は辛い • Copy on
Write(CoW)を利かす工夫が必要
In Progress
モデル評価と ReTrainingの自動化 モデル生成の 自動化 本番環境への自動 Deploy Architecture searchやHyper parameter optimization
によって簡単なモデル生成を自動化・簡素化 生成されたモデルを本番環境へ自動Deployし、最も良 いモデルが自動選択される 高度な自動化 運用中のモデルの評価/可視化、Re-Trainingを高度化・ 自動化する
ML Continuous Deployment Deploy Monitoring Evaluation Hyper parameter optimization Re-Training
リリース後も 精度監視・Hyper parameterチューニング・Re-training・Deployを自 動で行う
AutoFlow Feature Extraction Components Concatenation Components Classification Components Model Builder
Component Repository
In Future
Edge Device Democratization of AI Further Automation Future Plans
Edge Device • TensorFlow LiteやCore ML等Edgeサイドでpredictionを行える環 境が整ってきた • EdgeでのpredictionはUX上大きなメリットがあると考えている •
調査・研究を進めているので今後に乞うご期待?
Democratization of AI • 多くのモデルが求められている • MLエンジニア以外もモデルを作れるようにする • DataPlatformと合せて環境を整備する必要
Further Automation • 近い将来、数千〜のモデル運用を行う必要がある • さらなる高度な自動化が不可欠
None