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
150
[論文紹介] 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
1.9k
[論文紹介] A Method to Anonymize Business Metrics to Publishing Implicit Feedback Datasets (Recsys2020) / recsys20-reading-gunosy-datapub
ysekky
3
2.5k
JSAI2020 OS-12 広告とAI オープニング / JSAI2020-OS-12-ads-and-ai-opening
ysekky
0
1.9k
JSAI2020インダストリアルセッション - Gunosyにおける研究開発 / jsai2020-gunosy-rd-examples
ysekky
1
730
ウェブサービス事業者における研究開発インターン[株式会社Gunosy] - テキストアナリティクスシンポジウム2019 / research-intern-case-study-at-gunosy
ysekky
0
2.6k
Gunosyにおけるニュース記事推薦/ news-recommendation-in-gunosy-webdbf2019
ysekky
1
1.4k
DEIM2019技術報告セッション - Gunosyの研究開発 / deim-2019-sponsor-session-gunosy-research
ysekky
0
980
Analysis of Bias in Gathering Information Between User Attributes in News Application (ABCCS 2018)
ysekky
1
2.2k
世代による政治ニュース記事の閲覧傾向の違いの分析 - JSAI2018 / Analysis of differences in viewing behavior of politics news by age
ysekky
0
3.8k
Other Decks in Research
See All in Research
MIRU2024チュートリアル「様々なセンサやモダリティを用いたシーン状態推定」
miso2024
4
2.2k
ニュースメディアにおける事前学習済みモデルの可能性と課題 / IBIS2024
upura
3
510
EBPMにおける生成AI活用について
daimoriwaki
0
180
論文読み会 SNLP2024 Instruction-tuned Language Models are Better Knowledge Learners. In: ACL 2024
s_mizuki_nlp
1
350
Introducing Research Units of Matsuo-Iwasawa Laboratory
matsuolab
0
920
FOSS4G 山陰 Meetup 2024@砂丘 はじめの挨拶
wata909
1
110
Human-Informed Machine Learning Models and Interactions
hiromu1996
2
470
大規模言語モデルのバイアス
yukinobaba
PRO
4
700
Matching 2D Images in 3D: Metric Relative Pose from Metric Correspondences
sgk
1
320
snlp2024_multiheadMoE
takase
0
430
[CV勉強会@関東 CVPR2024] Visual Layout Composer: Image-Vector Dual Diffusion Model for Design Layout Generation / kantocv 61th CVPR 2024
shunk031
1
450
さんかくのテスト.pdf
sankaku0724
0
340
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Statistics for Hackers
jakevdp
796
220k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Docker and Python
trallard
40
3.1k
Embracing the Ebb and Flow
colly
84
4.5k
4 Signs Your Business is Dying
shpigford
180
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
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 •