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
840
atmaCup#15と実世界のレコメンドの比較(の一例)
nadare
August 07, 2023
Tweet
Share
More Decks by nadare
See All by nadare
DMMTVにおけるデータ蓄積とモデル改善
nadare881
0
270
DMMのあちこちをパーソナライズする推薦システム
nadare881
2
850
embeddingを用いた分析・検索・推薦の技術
nadare881
0
3.7k
Other Decks in Programming
See All in Programming
Rustではじめる負荷試験
skanehira
5
1.2k
What we keep in mind when migrating from Serverless Framework to AWS CDK and AWS SAM
kasacchiful
1
130
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
230
複雑さに立ち向かうための ソフトウェア開発入門
shiz
3
660
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
7
2.2k
実践 Advanced CallKit 〜快適な通話の実現に向けて〜
mot_techtalk
3
120
ECMAScript、Web標準の型はどう管理されているか / How ECMAScript and Web standards types are maintained
petamoriken
3
380
GraphQL あるいは React における自律的なデータ取得について
quramy
8
2.2k
The Sequel to a Dream of Ruby Parser's Grammar
ydah
1
200
Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
230
Swift Concurrencyとレースコンディション
objectiveaudio
1
400
LR で JSON パーサーを作る / Coding LR JSON Parser
junk0612
2
180
Featured
See All Featured
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
103
47k
KATA
mclloyd
27
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Atom: Resistance is Futile
akmur
261
25k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
58k
Building Better People: How to give real-time feedback that sticks.
wjessup
359
18k
Done Done
chrislema
180
16k
For a Future-Friendly Web
brad_frost
174
9.3k
The Pragmatic Product Professional
lauravandoore
30
6.2k
What's new in Ruby 2.0
geeforr
340
31k
Become a Pro
speakerdeck
PRO
22
4.9k
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