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
Vision Language Modelを活用した メルカリの類似画像レコメンドの性能改善
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yuki Yada
March 28, 2025
Technology
2.2k
11
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vision Language Modelを活用した メルカリの類似画像レコメンドの性能改善
Yuki Yada
March 28, 2025
More Decks by Yuki Yada
See All by Yuki Yada
DEIM2024 / 大規模言語モデルを用いたカテゴリ説明文付与によるニュース推薦の性能向上
yadayuki
1
210
【情報科学若手の会 2023秋 軽井沢】大規模言語モデル(BERT)を用いたニュース推薦のPyTorchによる実装と評価
yadayuki
1
950
技育展登壇資料 Omochi
yadayuki
0
590
インターン成果発表資料 / サイボウズ・フロントエンドエキスパートコース
yadayuki
0
1.9k
クックパッド・インターン成果発表
yadayuki
0
570
Other Decks in Technology
See All in Technology
Chainlitで作るお手軽チャットUI
ynt0485
0
280
コミュニティの有益性 ~JAWS Days 2026 での体験を通して~ / The Benefits of a Community ~Through My Experience at JAWS Days 2026~
seike460
PRO
0
190
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
2k
Android の公式 Skill / Android skills
yanzm
0
160
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
170
SONiCの統計情報を取得したい
sonic
0
230
自宅LLMの話
jacopen
1
670
脆弱性対応、どこで線を引くか
rymiyamoto
1
420
新しいUbuntu/GNOMEが使いたいからXからWaylandへ移行頑張ってるの巻 2026-06-20
nobutomurata
0
150
アンオフィシャルな、オフィシャルからのお願い
wyamazak_devrel
0
140
【Snowflake Summit 2026 Recap!!】Snowflake Summit Deep Dive: Security & Governance
civitaspo
1
270
就職⽀援サービスにおけるキャリアアドバイザーのシフトスケジューリング
recruitengineers
PRO
1
150
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Abbi's Birthday
coloredviolet
2
8.1k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
210
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Thoughts on Productivity
jonyablonski
76
5.2k
Bash Introduction
62gerente
615
220k
Transcript
1 Confidential Vision Language Modelを活用した メルカリの類似画像レコメンドの性能改善 第50回 MLOps勉強会 Yuki Yada
/ arr0w 2025.03.26
2 株式会社メルカリ 2024年新卒入社 Souzoh -> 生成AIチーム -> メルカリ ハロ(今ここ) 矢田宙生
/ arr0w
3 国内最大のC2Cマーケットプレイス 月間利用者数: 2251万人 (FY2025.6時点) メルカリについて
4 グループミッション あらゆる価値を循環させ、あらゆる人の可能性を広げる “Circulate all forms of value to unleash
the potential in all people”
5 会社概要 Japan Region Mercari Group Fintech メルカリグループは、株式会社メルカリと、その連結子会社で構成されています。 Marketplace 株式会社メルカリ
◼設立 ◼事業内容 ◼所在地 ◼拠点 ◼代表取締役 CEO ◼CEO Marketplace 2013年2月1日 スマートフォン向けフリマアプリ 「メルカリ」の企画・開発・運営 〒106-6118 東京都港区六本木6-10-1 六本木ヒルズ森タワー 東京、福岡、大阪 山田進太郎 山本真人 ①2017年11月20日 ②金融事業 ③永沢岳志 株式会社メルペイ ①2014年1月 ②US版メルカリの企画・開発・運営 ③John Lagerling ④Palo Alto, California Mercari, Inc.(US) ①1991年10月1日 ②フットボールクラブ運営 ③小泉文明 ④茨城県立カシマサッカースタジアム 指定管理茨城県鹿嶋市 粟生東山2887番地 株式会社鹿島 アントラーズ・エフ・シー インド開発拠点 ①2022年6月 ②インターネットサービス開発 ③Carlos Donderis(取締役 Managing Director) ④Bangalore, Karnataka, India Mercari Software Technologies India Private Limited ①2021年4月28日 ②暗号資産・ブロックチェーン ③中村奎太 株式会社メルコイン
事業展開 ビットコイン 取引サービス 「メルコイン」 スマホ決済サービス 「メルペイ」 フリマアプリ 「メルカリ」 事業者向けEコマース
プラットフォーム 「メルカリ Shops」 US版フリマアプリ 「mercari」 スポットワーク サービス 「メルカリ ハロ」
7 Confidential 商品詳細画面の「見た目が近い商品」 Outline SigLIPを用いた類似画像推薦モデルの構築 本番環境へのデプロイ A/Bテストによる検証結果 02 03 04
01
8 Confidential 商品詳細画面の「見た目が近い商品」 Outline SigLIPを用いた類似画像推薦モデルの構築 本番環境へのデプロイ A/Bテストによる検証結果 02 03 04
01
9 Confidential 商品詳細ページの「見た目が近い商品」 • テキスト情報の限界 C2Cマーケットプレイスでは出品者自身が商品情報を入力するた め、キーワードやカテゴリなどのテキスト情報にばらつきが生じ、 類似商品の検索精度に影響 •
画像主導の購買行動 「このデザインが気に入った」「この見た目に似た商品を探してい る」といった、ブランドやスペックよりも視覚的類似性を重視する ユーザーニーズへの対応 実装の背景 • 商品の見た目が似ている度合い(視覚的類似性)に基づく推薦 見た目が近い商品
10 Confidential • ファインチューニングなしのMobileNet (+PCA)から得られる128次元の商品画像 Embeddingを用いて近傍検索(ANN) 「見た目が近い商品」 version 1.0 見た目が近い商品
version 1.0 • MobileNetはCNNベースのモデルで表現力の面で不足感 • 自社データでの学習ができておらず、ドメインへの適応という観点で不十分 課題
11 Confidential • ファインチューニングなしのMobileNet (+PCA)から得られる128次元の商品画像 Embeddingを用いて近傍検索(ANN) 「見た目が近い商品」 version 1.0 見た目が近い商品
version 1.0 • MobileNetはCNNベースのモデルで表現力の面で不足感 • 自社データでの学習ができておらず、ドメインへの適応という観点で不十分 課題 → より表現力の高いモデル を自社データでファインチューニング し、新たな画像 Embeddingモデルを構築
12 Confidential 商品詳細画面の「見た目が近い商品」 Outline SigLIPを用いた類似画像推薦モデルの構築 本番環境へのデプロイ A/Bテストによる検証結果 02 03 04
01
13 Confidential • Vision Language ModelのSigLIPをメルカリの商品データ 100万件程度でファ インチューニングし、画像Embeddingモデルを構築 • オフライン評価:
◦ 定量評価: 「見た目が近い商品」v 1.0の行動ログを使って検索指標で評価 ◦ 定性評価: クエリ画像と似ているとして推薦された商品画像を目視で確認 • 新たなEmbeddingモデルが最も高い性能をオフラインで示した SigLIPによるEmbeddingモデルの構築
14 Confidential • 大規模な画像とテキストのペアのデータセットで事前学習されたモデル (CLIP, ALIGN… etc) → ゼロショット画像分類や検索等のタスクで高い性能 •
SigLIP ◦ Loss関数にSigmoid Lossを使用 (CLIPはSoftmax Loss) ◦ ImageNet を使用した画像分類タスクを含む複数のベンチマークで、 SigLIPは既存手法と比べてパフォーマンスが大幅に向上 • Pretrained SigLIP: google/siglip-base-patch16-256-multilingual SigLIP
15 Confidential 自社データによるファインチューニング • Pretrained SigLIPをメルカリの商品 データでFine Tuning • データセット
◦ 商品画像と商品名のペア ◦ 件数: 1,000,000件 • 事前学習の方法と同じく Sigmoid Lossにより対照学習
16 Confidential 自社データによるファインチューニング • 実験環境: L4 GPU x 1, Vertex
AI Custom Job, • Dataset: GCS, BigQuery • Libraries: PyTorch, transformers, WebDataset • 実験管理: wandb
17 Confidential オフライン評価 (定量評価) • 「見た目が近い商品」version 1.0で得られたTapログを用いて定量評価 • 評価指標: nDCG@K,
Precision@K, session_id | query_item_id | similar_item_id | clicked | ----------------|----------------|-----------------|---------| 0003e191… | m826773… | m634631… | 0 | 0003e191… | m826773… | m659824… | 1 | 0003e191… | m826773… | m742172… | 1 | 0003e191… | m826773… | m839148… | 0 | 0003e191… | m826773… | m758586… | 0 | 0003e191… | m826773… | m808515… | 1 | ...
18 Confidential オフライン評価 (定量評価) 手法 nDCG@5 Precision@1 Precision@3 Random 0.525
0.256 0.501 MobileNet 0.607 0.356 0.601 SigLIP + PCA 0.647 0.406 0.658 SigLIP 0.662 0.412 0.660
19 Confidential オフライン評価 (定性評価 on Spreadsheets)
20 Confidential その他試したこと : Matryoshka Representation Learning • 後述するストレージにかかるコストの観点からベクトルの次元圧縮は必須 →
次元数削減のためにMatryoshka Representation Learning(MRL)を 検討. • Matryoshka Representation Learning(MRL): 指定した次元の高品質なEmbeddingモデル(複数)を一度の学習で構築でき る表現学習の手法 ◦ E.g. 128, 256, 512次元の画像Embeddingモデルを一度の学習で構築 できる ◦ Popular use case: OpenAI Text Embedding • 詳しい理論は省くが、気になる人は 論文か、hppさんの資料 がおすすめ
21 Confidential その他試したこと : Matryoshka Representation Learning • SigLIPのMRL事前学習モデルの visheratin/nllb-siglip-mrl-large
を用い てファインチューニングしたが、オフライン評価指標が PCAによる次元圧縮よ り低くなってしまい、あまりうまくいかず ... 😢 • visheratin/nllb-siglip-mrl-large の内部実装を見たところ、指定した次元 数のEmbeddingに単純に線形変換しており、MRLとはいえなさそうなので Pretrained modelに問題...? • A/Bテストでは最終的に 「SigLIP + PCAによる次元圧縮」 をデプロイすることに決定
22 Confidential 商品詳細画面の「見た目が近い商品」 Outline SigLIPを用いた類似画像推薦モデルの構築 本番環境へのデプロイ A/Bテストによる検証結果 02 03 04
01
23 Confidential アーキテクチャ • Google Cloud/Vertex AIフル活用 • モデルの推論は「商品の出品」をtriggerに非同期で実行。リアルタイムの推 論は行わない
24 Confidential Embedding Worker • 「お客さまによる出品」をTriggerに発行されるPub/Sub Eventを Subscribe. • Embedding
Workerはk8s上で動作する単一の L4 GPU
25 Confidential Embedding Worker • GCSから学習済みのSigLIPモデルとPCAモデルを読み込み、非同期に推 論。128次元の商品画像のEmbeddingを獲得する。 • 獲得したEmbeddingをVertex AI
Vector Search内に保存
26 Confidential Vertex AI Vector Search • Embeddingを用いた近傍検索(ANN)にはVertex AI Vector
Searchを 使用し、数千万件程度の商品画像 Embeddingを格納。
27 Confidential Vertex AI Vector Search • Item IDからEmbeddingを取得する機能が提供されている。商品詳細画面 からクエリとなる商品のIDを取得した上で、その機能を活用することで、リアル
タイムの推論は行っていない。
28 Confidential Index Deletion Job • 削除された商品や売却済みの商品のEmbeddingをVector Search上から 削除する •
Cloud Composer (Apache Airflow)を使用し、CronでBatch Jobが動 作
29 Confidential Tips: TensorRTによるモデル効率化 • TensorRT: ◦ 学習済みのMLモデルをPrecision CalibrationやLayer Fusion等
で NVIDIA GPU上で高速かつ効率的に実行 できるように最適化 • 毎秒大量の出品が生成され、高速に推論を行う必要がある → SigLIPのImage Encoderをtorch2trt を用いて、 TensorRT 形式に変換 • 推論時間が 約5倍高速化
30 Confidential Tips: PCAを用いた次元圧縮によるコスト削減 • Vertex AIのVector Searchは、データサイズやノード数、QPSといった要素 により課金される •
コストの最適化のため古典的なPCAによる次元圧縮を実施 ◦ 768(original) to 128 • データサイズによるコスト : 80%程度削減 ◦ 元々の次元数の 97%程度の性能を維持 • 古典的な手法でありながらかなりコスト削減にインパクト があった 手法 nDCG@5 Precision@1 Precision@3 SigLIP 0.662 0.412 0.660 SigLIP + PCA 0.647 0.406 0.658
31 Confidential 商品詳細画面の「見た目が近い商品」 Outline SigLIPを用いた類似画像推薦モデルの構築 本番環境へのデプロイ A/Bテストによる検証結果 02 03 04
01
32 Confidential A/Bテスト • 「見た目が近い商品」でA/Bテスト ◦ Control: 見た目が近い商品 by MobileNet(v1.0)
◦ Treatment: 見た目が近い商品 by SigLIP • A/Bテストの結果: ◦ クリック率: + 50% ◦ 詳細ページ経由のCVR(購買率): +14% • 新しいモデルは無事採用 & 100% Release 🎉
33 Confidential 画像Embeddingモデルは画像検索機能でも活躍 💪💪💪
34 Confidential まとめ • Vision Language Modelを活用し、メルカリの商品詳細ページの類似 画像レコメンドの「見た目が近い商品」の性能を改善 • SigLIPモデルを100万件のメルカリの商品データでファインチューニン
グ。 • オフライン評価を行い、性能改善を確認したため, A/Bテストを実施 → タップ率 +50%, 詳細経由の購買率 + 14% • 構築したモデルは推薦のみならず, 画像検索等、至る箇所で使われてい る。今後も継続的に改善予定
35 Confidential Thank you for listening !!