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
atmaCup#15と実世界のレコメンドの比較(の一例)
Search
nadare
August 07, 2023
Programming
1
990
atmaCup#15と実世界のレコメンドの比較(の一例)
nadare
August 07, 2023
Tweet
Share
More Decks by nadare
See All by nadare
DMMTVにおけるデータ蓄積とモデル改善
nadare881
0
390
DMMのあちこちをパーソナライズする推薦システム
nadare881
2
1.3k
embeddingを用いた分析・検索・推薦の技術
nadare881
0
3.9k
Other Decks in Programming
See All in Programming
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
170
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
1.7k
Benchmark
sysong
0
280
Team operations that are not burdened by SRE
kazatohiei
1
290
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
260
ruby.wasmで多人数リアルタイム通信ゲームを作ろう
lnit
2
330
エラーって何種類あるの?
kajitack
5
330
RailsGirls IZUMO スポンサーLT
16bitidol
0
130
CursorはMCPを使った方が良いぞ
taigakono
1
210
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
660
datadog dash 2025 LLM observability for reliability and stability
ivry_presentationmaterials
0
420
WebViewの現在地 - SwiftUI時代のWebKit - / The Current State Of WebView
marcy731
0
110
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Facilitating Awesome Meetings
lara
54
6.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
GitHub's CSS Performance
jonrohan
1031
460k
How to Ace a Technical Interview
jacobian
277
23k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Why Our Code Smells
bkeepers
PRO
337
57k
How STYLIGHT went responsive
nonsquared
100
5.6k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Transcript
© DMM.com CONFIDENTIAL atmaCup#15と実世界のレコメンドの比 較(の一例) レコメンドgrowthチーム 金子剛士 (nadare)
© DMM.com 自己紹介 金子 剛士 (nadare) DMM データサイエンスグループ レコメンドGrowthチーム所属 2022年10月中途入社 複数のサービスでレコメンドエンジン開発 atmaCup#14
3rd Kaggle Master : 4sq金、Riiid、H&Mソロ銀 2
© DMM.com DMMグループにおけるレコメンド DMMグループでは各サービスにおいてドメインに合わせレコメンドエンジンを作成しています。 レコメンド・パーソナライズの種類の代表例 - user2item レコメンド: ユーザー一人一人にパーソナライズした「あなたへのおすすめ作品」 -
item2item レコメンド: 商品ごとの「この作品を買った人はこんな作品も買っています」 - reranking: 検索結果をユーザーごとにパーソナライズし並び替えを行う 上記以外でも様々なアルゴリズム・MLによるUX最適化を行っています。 今回はDMMブックスとatmaCup#15の比較を行います。 3
© DMM.com atmaCup#15とDMMブックスの比較 ユーザー数・アイテム数によるデータの違い - ユーザー1998人、アイテム2000種類 - DMMブックス: 年間3400万以上のユーザー(※1)、98万冊以上の商品、20年以上のデータ →
使えるモデルが全然違う!! 業務ならではの最適化指標の違い - 業務ではARPU(平均売上金額)を目的に最適化(≠レコメンドしたもののクリック・購入率) → ユーザーにとって自明なレコメンドは除去、セレンディピティも重視しています。 ※1: 2022年における年間訪問デバイス数 4
© DMM.com ユーザー数・アイテム数によるデータの違い DMMブックス: 年間3400万ユーザー、98万冊以上の商品、20年以上のデータ → 2-towerモデルを採用して対応! 2-towerモデル: 2段階で絞り込み・ランキングを行うモデル -
retrieval: 近似近傍探索を用いたretrievalによる商品の高速な絞り込み - ranking: ビジネス知見や多様性を考慮した精度の高いrankingモデル データが多いとメタデータなしでも”それなり”のembeddingができます - タグや説明文をメタデータとして活用 - atmaCup#15 で改めてメタデータの重要性を確認 - メンテのしやすさと、競合に差をつける精度のバランス 5
© DMM.com 業務ならではの最適化指標の違い ユーザー体験の向上+ARPUの増加 ≠ その作品をクリック・購入するかの予測 コンペによっては同じものを繰り返し推薦するのがinteractionの予測には有効ですが... - あるマンガの1巻を買った人に2巻をレコメンドする? -
同じ作者の作品を改めてレコメンドとしても表示する? → 他の面も考慮し、購入済みの除外・シリーズごとの予測など自明なレコメンドを除いています セレンディピティ・多様性の重視 - ユーザーの購入済みのジャンルから少し離れた作品もレコメンド - レコメンドが一度に一つのジャンルへ偏りすぎないように - 毎日同じレコメンドで固定されないように →上記を考慮し、ABテストを通じてユーザー体験の向上を測定しています 6
© DMM.com アルゴリズム以外の最適化 データ分析を通じて、レコメンドアルゴリズム改善以外に表示方法の改善も行っています - 表示件数・商品の画像サイズのAB - 画面のファセットを工夫 - 検索の高性能化
何でもありな総合格闘技と思っています ABテストで実際に◦◦円の効果!と出ると楽しいです 7
© DMM.com まとめ コンペのレコメンドとDMMでのレコメンドでは以下の違いがありました - データの規模 - 最適化の目標 コンペと実務は異なるのですが様々な点で勉強になりました -
メタデータの扱いやテキストによる名寄せ - anime2vec・GNNの活用等 レコメンド業務に興味のある方はDMMのMLエンジニアへの応募を検討していただければ幸いです (アニメに興味を持った方はぜひDMM TVもおねがいします。30日無料体験あり) 8