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
感動出品の起案からリリースまで
Search
Takuma Yamaguchi
May 23, 2018
Technology
34k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
感動出品の起案からリリースまで
感動出品の起案からリリースまで (Mercari ML Ops Night Vol.1)
Takuma Yamaguchi
May 23, 2018
More Decks by Takuma Yamaguchi
See All by Takuma Yamaguchi
[CVPR 2020 Tutorial] A Large-Scale Visual Search System in the C2C Marketplace App Mercari
kumon
0
2.1k
マイクロサービスアプリケーションとしての機械学習
kumon
14
14k
フリマアプリ「メルカリ」の多様なデータと機械学習 @TECH PLAY Conference 2017
kumon
5
11k
Other Decks in Technology
See All in Technology
Kiroで書いた 設計書 が AI レビューの 採点基準 になる
ezaki
0
140
データレイクの「見えない問題」を可視化する
sansantech
PRO
1
140
サイバーエージェントにおけるAI推進戦略と変革への取り組み
shotatsuge
0
300
iAEONの段階的リアーキテクト戦略 / iAEON's_Gradual_Re-architecture_Strategy
aeonpeople
0
230
SONiCの統計情報を取得したい
sonic
0
260
Bucharest Tech Week 2026 - Guardians of the Cloud-Native Galaxy
edeandrea
PRO
0
130
“詰む”前に仕組みを作れ 〜技術の波に溺れないためのキャッチアップ術〜
takasyou
5
1.9k
MUSUBI 田中裕一『AIと共に行う「しごとのリデザイン」- スモールバックオフィス編』AI Ops Lab #4
musubi
0
280
Bucharest Tech Week 2026 - Reinventing testing practices in the AI era
edeandrea
PRO
1
170
AI-DLCを “そのまま導入しなかった”話 ~組織に合わせてアジャストした 私たちの実践共有~
hiroramos4
PRO
1
280
手塩にかけりゃいいってもんじゃない
ming_ayami
0
620
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
170
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
The Spectacular Lies of Maps
axbom
PRO
1
820
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
240
Google's AI Overviews - The New Search
badams
0
1k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
The browser strikes back
jonoalderson
0
1.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
The Invisible Side of Design
smashingmag
301
52k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
330
The untapped power of vector embeddings
frankvandijk
2
1.8k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
240
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Transcript
感動出品の起案からリリースまで Mercari ML Ops Night Vol.1 Takuma Yamaguchi Machine Learning
Engineer
My Background 2001年〜 • 画像認識および機械学習アルゴリズム研究 • 博士(工学) • その他,コンピュータビジョン /
オペレーションズリサーチ分野での研究 • CUDA 1.0の頃から GPGPU を利用 2012年〜 • データエンジニア • Hadoop や Spark を中心としたデータ分析基盤の開発・運用 • ユーザ行動トラッキング,LTV 推定等のアルゴリズム開発 2016年〜 • 株式会社メルカリ • 画像認識を中心とした機械学習に基づく機能開発 • 2017年: 出品時の画像認識機能をリリース (on Kubernetes) 2
Agenda 3 • 感動出品の歴史 • 感動出品のシステム側の紹介 • 内容は大いに被ります。。。 • https://speakerdeck.com/kumon/maikurosabisuapurikesiyontositefalseji-jie-xue-xi
4 メルカリの画像認識機能 • 出品時の作業効率化が目的 • 撮影した商品画像を認識 • 商品名 / カテゴリ
/ ブランド の自動入力 • 内部的には色識別も行っており,商品検索時の色フィルターに利用
5
6
7 US版メルカリでもリリース USのデータを利用して一部再学習しただけでロジック自体は日本版と全く同じ
8 プロジェクトのはじまり いつの間にか設定されていたブレスト
9 画像による出品という最高の体験についてブレスト (2017/07/19) お客様を感動させたいんですよ。画像撮影する だけで、自動入力されて出品とか。 精度20%くらいでもいいんで。 いいですね〜 カテゴリとブランドは、わりとすぐにできるとおも います。タイトルについても、なんとなくのアイ デアはあります。
色も欲しいですね〜 色は、実はわりと難しい課題なんですよね。 リリース目標っていつ頃でしょうか? えっと〜、今Q中ですね あらら やってみます! (†) 今Q中: 2017年9月末がデッドライン (‡) 課題も開発期間も難易度高いのでリリースできればラッキーくらいの感覚 (†) (‡)
10 画像による出品という最高の体験についてブレスト (2017/07/19) お客様を感動させたいんですよ。画像撮影する だけで、自動入力されて出品とか。 精度20%くらいでもいいんで。 いいですね〜 カテゴリとブランドは、わりとすぐにできるとおも います。タイトルについても、なんとなくのアイ デアはあります。
色も欲しいですね〜 色は、実はわりと難しい課題なんですよね。 リリース目標っていつ頃でしょうか? えっと〜、今Q中ですね あらら やってみます! (†) 今Q中: 2017年9月末がデッドライン (‡) 課題も開発期間も難易度高いのでリリースできればラッキーくらいの感覚 (†) (‡) プロジェクト名: 感動出品
11 タイトル生成: なんとなくのアイデアを形に (2017/07末) • 画像のタイトル・説明文の生成は知識も経験もない • なんとなくのアイデアの方向性が悪くないかサーベイ • Bernardi,
Raffaella, et al. Automatic Description Generation from Images. • プロトタイプの実装 (( )内は当時の自分用メモへの独り言 ) • 関連ワードとスコア • データは100万商品程度 (だったはず) (うん、悪くない) (まさに感動出品) (これが感動出品) (日差しも結果も眩しい) (ブランドへの感度を高めたい)
12 タイトル生成: なんとなくのアイデアを形に (2017/07末) • 画像のタイトル・説明文の生成は知識も経験もない • なんとなくのアイデアの方向性が悪くないかサーベイ • Bernardi,
Raffaella, et al. Automatic Description Generation from Images. • プロトタイプの実装 (( )内は当時の自分用メモへの独り言 ) • 関連ワードとスコア • データは100万商品程度 (だったはず) (うん、悪くない) (まさに感動出品) (これが感動出品) (日差しも結果も眩しい) (ブランドへの感度を高めたい) プロトタイプから • いけそうな予感 • 季節性や商品の多様性を考慮するとデータは100万商品では足りない • ブランドへの感度を高めたい • 変なタイトルが生成されるのが不安 • カテゴリ認識・ブランド認識は、過去の経験からたぶん大丈夫
13 モデル洗練 (8月) サマーインターンも貢献
14 ※ 価格推定は、興味本位で実装したも ので、本番では使われていない 間違えることもあるものの、本 番運用に耐えられそうなモデ ルはできた
15 メルカリアプリへの実装 (9月) のこり1ヶ月
メルカリアプリに実装されるまでの残タスク 16 • 機械学習エンジニア • APIの実装 • システム設計 • SRE
• システム構築 • データサイエンティスト • ログ / KPI設計 • バックエンドエンジニア • Mercari-API 改修 • デザイナー • UI / UX設計 • クライアントエンジニア • iOS / Androidアプリの改修 • QAエンジニア • QA
メルカリアプリに実装されるまでの残タスク 17 • 機械学習エンジニア • APIの実装 • システム設計 • SRE
• システム構築 • データサイエンティスト • ログ / KPI設計 • バックエンドエンジニア • Mercari-API 改修 • デザイナー • UI / UX設計 • クライアントエンジニア • iOS / Androidアプリの改修 • QAエンジニア • QA 機械学習エンジニア 1人では、 API実装、システム設計、 SREとのシステム構築 で、手一杯で、この期間はモデルには一切触れず
実際の環境構築依頼 18 • 機械学習を使った新機能をリリースしたい • 1サーバで 4リクエスト/秒ほど処理できる • API (Gunicorn
+ Django) + Queue + Worker (TensorFlow) • Worker では,常時 25GB のメモリが必要で起動に10分かかる • 機械学習モデルのファイルサイズは 15GB 超 • モデルは定期的に更新し GPU が必要 機械学習を使った機能追加の相談
実際の環境構築依頼 19 • 機械学習を使った新機能をリリースしたい • 1サーバで 4リクエスト/秒ほど処理できる • API (Gunicorn
+ Django) + Queue + Worker (TensorFlow) • Worker では,常時 25GB のメモリが必要で起動に10分かかる • 機械学習モデルのファイルサイズは 15GB 超 • モデルは定期的に更新し GPU が必要 機械学習を使った機能追加の相談 とりあえずDockerfile用意してください なんとかします
20 1週間後
21 System Architecture
メルカリアプリに実装されるまでの残タスク 22 • 機械学習エンジニア • APIの実装 • システム設計 • SRE
• システム構築 • データサイエンティスト • ログ / KPI設計 • バックエンドエンジニア • Mercari-API 改修 • デザイナー • UI / UX設計 • クライアントエンジニア • iOS / Androidアプリの改修 • QAエンジニア • QA 機械学習エンジニア 1人では、 API実装、システム設計、 SREとのシステム構築 で、手一杯で、この期間はモデルには一切触れず 短期間でリリースできたのは • USを中心にMicroservicesへシフト中だった • 協力的なSRE ◦ Dockerfile渡して ◦ 1週間で ◦ 全て構築されてた ▪ デプロイ ▪ モニタリング ▪ etc...
23 System Architecture 機械学習エンジニア の担当部分 画像がS3に保存されていることと GPUの利用のため,バッチサーバはAWSに.
24 System Architecture 通常の運用で見る部分
25 Monitoring & Deployment 通常の運用では,Datadog でのモニタリングと Spinnaker でのデプロイ・リソース管理のみ
26 System Architecture
Blue-Green Deployment 27 機械学習モデルはファイルサイズ(10GB+)の都合で Docker Image に含まれないものの, Persistent Volume(ReadOnlyMany)によって,Imutable Infrastructure
を実現 モデル更新のたびに Persistent Volumeを生成 コードの更新だけの場合は そのまま (Redisは共通)
28 感動出品リリース (2017/10/03〜) KPIや世論の反応を見ながら段階的に解放
29
30
31
まとめ 32 • 感動出品の起案からリリースまでを紹介 • Microservices化の流れのおかげもあり短期間でリリース • 雛形や指針が整っていれば機械学習エンジニアでもサービス運用は可能 • 機械学習のシステム面を見る専任チームを用意するのが理想的
• 機械学習エンジニアが専門領域で力を発揮 • モデリングだけしかできないという意味ではない モデリングとリリースをシームレスにつなげて 魅力的な機能を素早くリリースしていきたい
Create value in a global marketplace where anyone can buy
& sell