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
[論文紹介] Using Navigation to Improve Recommendati...
Search
ysekky
June 13, 2017
Research
1
160
[論文紹介] Using Navigation to Improve Recommendations in Real time / recsys-2016-netflix
ysekky
June 13, 2017
Tweet
Share
More Decks by ysekky
See All by ysekky
スタートアップの開発サイクルに学ぶ 研究活動の進め方 / research practices inspired by startup business strategy
ysekky
0
2.2k
[論文紹介] A Method to Anonymize Business Metrics to Publishing Implicit Feedback Datasets (Recsys2020) / recsys20-reading-gunosy-datapub
ysekky
3
2.7k
JSAI2020 OS-12 広告とAI オープニング / JSAI2020-OS-12-ads-and-ai-opening
ysekky
0
2.1k
JSAI2020インダストリアルセッション - Gunosyにおける研究開発 / jsai2020-gunosy-rd-examples
ysekky
1
770
ウェブサービス事業者における研究開発インターン[株式会社Gunosy] - テキストアナリティクスシンポジウム2019 / research-intern-case-study-at-gunosy
ysekky
0
2.8k
Gunosyにおけるニュース記事推薦/ news-recommendation-in-gunosy-webdbf2019
ysekky
1
1.5k
DEIM2019技術報告セッション - Gunosyの研究開発 / deim-2019-sponsor-session-gunosy-research
ysekky
0
1.1k
Analysis of Bias in Gathering Information Between User Attributes in News Application (ABCCS 2018)
ysekky
1
2.3k
世代による政治ニュース記事の閲覧傾向の違いの分析 - JSAI2018 / Analysis of differences in viewing behavior of politics news by age
ysekky
0
3.9k
Other Decks in Research
See All in Research
Trust No Bot? Forging Confidence in AI for Software Engineering
tomzimmermann
1
250
AI エージェントを活用した研究再現性の自動定量評価 / scisci2025
upura
1
130
LLM-as-a-Judge: 文章をLLMで評価する@教育機関DXシンポ
k141303
3
840
20250624_熊本経済同友会6月例会講演
trafficbrain
1
510
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
0
100
最適決定木を用いた処方的価格最適化
mickey_kubo
4
1.8k
EarthMarker: A Visual Prompting Multimodal Large Language Model for Remote Sensing
satai
3
380
SSII2025 [TS1] 光学・物理原理に基づく深層画像生成
ssii
PRO
4
4k
SSII2025 [SS2] 横浜DeNAベイスターズの躍進を支えたAIプロダクト
ssii
PRO
7
3.7k
GeoCLIP: Clip-Inspired Alignment between Locations and Images for Effective Worldwide Geo-localization
satai
3
270
Generative Models 2025
takahashihiroshi
21
12k
診断前の病歴テキストを対象としたLLMによるエンティティリンキング精度検証
hagino3000
1
110
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Fireside Chat
paigeccino
37
3.5k
Designing Experiences People Love
moore
142
24k
Being A Developer After 40
akosma
90
590k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
YesSQL, Process and Tooling at Scale
rocio
173
14k
What's in a price? How to price your products and services
michaelherold
246
12k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Transcript
Using Navigation to Improve Recommendations in Real time Chao-Yuan Wu@UT
Austin Christopher V. Alvino@Netflix Alexander J. Smola@CMU Justin Basilico@Netflix Recsys’16 Yoshifumi Seki@Gunosy Inc. GunosyDM研究会 2017.06.13
自己紹介 • 関 喜史 ◦ Gunosy 共同創業者 ◦ データ分析部研究開発チーム (仮)
◦ 東大松尾研, 工学博士(2017年3月卒) • 研究テーマ: ニュース推薦システムのサービス応用について • 関心領域 ◦ 推薦システム, ユーザ行動分析 • 趣味 ◦ アイドル、日本酒、将棋
概要 • Netflixのリアルタイムな推薦システムの仕組み • オンライン機械学習 • 利用におけるcontextは様々 ◦ 一人で使う、二人で使う、家族と使う ◦
複数人でアカウントを共有している ◦ 感情とか • ユーザのスクロールの情報を元に、どの列を見せるかを逐次決める •
Model • r: row • s: session • i: i-th
video • S: scrolled or not {0, 1} • C: played or not {0, 1} • I: interested or not {0, 1}
この事後確率を最大化するパラメータを作りたい
この事後確率を最大化するパラメータを作りたい セッションと行に分解する
この事後確率を最大化するパラメータを作りたい セッションと行に分解する
この事後確率を最大化するパラメータを作りたい セッションと行に分解する 興味関心変数を導入
この事後確率を最大化するパラメータを作りたい セッションと行に分解する
Play prediction • 劣モジュラ関数で推定する • <>は何らかの関数: コサイン類似度でも、FMでもよい ◦ f_tiはビデオiの特徴ベクトル •
qの各次元はf_tiのその次元の総和を凸関数にかけたもの • パラメータはshared, user-specific, row-specific, {row-user}-specificの4種を分け てる
User Intentの導入 • User intentの導入をする ◦ 先程の定義と同様 • I_s,rが0のときは, C=1の確率は0になるという仮定を置く
この事後確率を最大化するパラメータを作りたい セッションと行に分解する
User Intentの推定 • セッションとrowに対する興味関心 • vとwはplay prediction同様にshared, user-specific, session-specificで校正され る
• v_ρはvの潜在変数
この事後確率を最大化するパラメータを作りたい セッションと行に分解する
Scroll prediction • I_s,r=1のとき、δ_ρにのみ依存するロジスティック関数になる • I_s,r=0のときはS_s,r=1の確率は0になる
Online Page Adaptation • 目的はコンテンツ行の並びと、行内のビデオの並びを最適化すること • 足した時の閲覧率が最も高くなる行/ビデオをえらんでいく
Impression Fatigue and Repeated Plays • 式(2)に加える • x_tはユーザが再生した回数 •
何度も再生する動画もある ◦ Binaryなindicatorを追加する ◦ Repeated play
Inference • EMアルゴリズムで推定 • E-step: I_s,rの事後確率を計算する • M-step: S, Cの事後確率が最大になるパラメータを計算する
None
Online-Update • Session中に学習して、パラメータを更新していきたい ◦ つまり上部をみたユーザの行動から、下部の行を生成する • EMアルゴリズムのM-stepでセッションのパラメータだけを更新する
Experiment • Playstation 3のセッション ◦ 同一の国 • 2015/4 ~ 2015/5
• 294k sessions • Testデータは2015/6, 59k sessions • 40 rows, max 75 videos
Evaluation • 10行のデータが与えられたときに残りの行を生成する • 再生されてたビデオが含まれる行が生成できたら、positive ◦ Mean Reciprocal Rank(MRR) ▪
平均逆順位 ▪ 初めて正解がでた順位の逆数を足し合わせて平均化する ◦ Precision at 5(P@5) • ベースラインはユーザと行のFactorization Machine(libFM) • オフラインモデルからのgain値で比較する
• FMより強い • 観測が増えるに連れて、改善している
• 過去のSessionが無いユーザにおいて強い -> Cold startで成果を上げている
Fatigue Effect and repeated plays
まとめ • セッション内での動きから推薦結果を徐々に改善していく ◦ Cold-startでも強い ◦ ただ、これ本当にアプリで実装できんの???無理じゃね??? • スクロールや再生をモデリングする方法として参考になった •
ただ特徴量の設計がわかんないので、うーん • オンラインで実験してほしかった感 • Factorization Machineとの比較って、相手弱すぎない? •
References • Slide: https://www.cs.utexas.edu/~cywu/RecSys2016_slides.pdf • Youtube: https://www.youtube.com/watch?v=rYinLmOWRtM •