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
2k
[論文紹介] A Method to Anonymize Business Metrics to Publishing Implicit Feedback Datasets (Recsys2020) / recsys20-reading-gunosy-datapub
ysekky
3
2.6k
JSAI2020 OS-12 広告とAI オープニング / JSAI2020-OS-12-ads-and-ai-opening
ysekky
0
2k
JSAI2020インダストリアルセッション - Gunosyにおける研究開発 / jsai2020-gunosy-rd-examples
ysekky
1
750
ウェブサービス事業者における研究開発インターン[株式会社Gunosy] - テキストアナリティクスシンポジウム2019 / research-intern-case-study-at-gunosy
ysekky
0
2.7k
Gunosyにおけるニュース記事推薦/ news-recommendation-in-gunosy-webdbf2019
ysekky
1
1.4k
DEIM2019技術報告セッション - Gunosyの研究開発 / deim-2019-sponsor-session-gunosy-research
ysekky
0
1k
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.9k
Other Decks in Research
See All in Research
ソフトウェア研究における脅威モデリング
laysakura
0
1.6k
CUNY DHI_Lightning Talks_2024
digitalfellow
0
440
アプリケーションから知るモデルマージ
maguro27
0
260
LLM 시대의 Compliance: Safety & Security
huffon
0
590
Gemini と Looker で営業DX をドライブする / Driving Sales DX with Gemini and Looker
sansan_randd
0
120
非ガウス性と非線形性に基づく統計的因果探索
sshimizu2006
0
540
サーブレシーブ成功率は勝敗に影響するか?
vball_panda
0
530
セミコン地域における総合交通戦略
trafficbrain
0
110
言語と数理の交差点:テキストの埋め込みと構造のモデル化 (IBIS 2024 チュートリアル)
yukiar
5
1.1k
The Economics of Platforms 輪読会 第1章
tomonatu8
0
140
VisFocus: Prompt-Guided Vision Encoders for OCR-Free Dense Document Understanding
sansan_randd
1
460
A Segment Anything Model based weakly supervised learning method for crop mapping using Sentinel-2 time series images
satai
2
130
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
A Modern Web Designer's Workflow
chriscoyier
693
190k
BBQ
matthewcrist
87
9.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building Adaptive Systems
keathley
40
2.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
How to train your dragon (web standard)
notwaldorf
91
5.8k
Adopting Sorbet at Scale
ufuk
74
9.2k
GitHub's CSS Performance
jonrohan
1030
460k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Git: the NoSQL Database
bkeepers
PRO
427
64k
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 •