SlideShare a Scribd company logo
1 of 23
Download to read offline
RecSys 2016 勉強会
リクルートテクノロジーズ
坪坂正志
今⽇紹介する論⽂
• Deeplearningを利⽤したレコメンデーションの論⽂2本
• Deep neural networks for youtube recommendations
• Googleの論⽂
• 候補作成と並び替えの部分で異なるニューラルネットワークを使って動画のレコ
メンデーションを⾏う
• Parallel recurrent neural network architectures for feature-rich
session-based recommendations
• 著者らがICLR 2016で発表したリカレントニューラルネットワークを使ったレコ
メンドを拡張したモデルを提案
• ICLRの⽅法はアイテムのIDしか利⽤していなかったが、本論⽂のモデルはアイ
テムの画像情報やテキスト情報も取り⼊れることができるモデル
Deep neural networks for YouTube
recommendations
• 著者 Paul Covington, Jay Adams, Emre Sargin
• 3⼈とも所属はGoogle
• Google Brain上で10億近くのパラメータを数千億件の事例から
学習したネットワークでYouTubeの動画を推薦するシステムを
構築した
システム概要
• システムは候補⽣成、ランキングの⼆
つから構成される
• 候補⽣成部分は数百万のビデオの候補
集合からユーザに対して適切な数百の
候補を⽣成する
• 特徴量としては視聴したビデオのIDや検
索クエリのtokenなど荒い特徴量を⽤いる
• 他にはユーザがログインしてるかどうか、
デモグラ情報など
• ランキング部分は⽣成された数百の候
補に対して、それぞれスコア付けを⾏
いスコア順に並び替える
候補⽣成モデル
• 候補⽣成は各ビデオを⼀つのクラスと考えて多クラス分類問題
として解く
• 𝑃 𝑤# = 𝑖 𝑈, 𝐶 ∝ 𝑒+,-
• ここで𝑣#は候補ビデオの潜在表現、𝑢はユーザ+コンテキストの潜在表
現
• また正例はユーザがビデオを視聴し終わったかどうかで判断す
る
⼤規模多クラス問題
• 各ビデオをクラスと考えるため数百万のクラスを扱う必要があ
る
• 訓練時は正例に対してimportance weightingつき、負例をサン
プリングするという⽅法を⽤いて、全クラスに対する計算を削
減する
• 参考: On using very large target vocabulary for neural machine
translation, 2014
• 配信時はHashingベースの⽅法を使って、全クラスに対する計
算を⾏わない
• 参考 : Label partitioning for sublinear ranking
Model Architecture
Example Age
• ユーザは通常新しいコンテンツを好
む傾向があり、右の図のようにアッ
プロードされたタイミングが最も選
ばれる確率が⾼くなる
• そのため訓練時にはアップロードさ
れてからの⽇数を⼊⼒とする
• 配信時はこの値を0とおく
Label and context selection
• 学習の際に多くの協調フィルタリングシステムは下の図の(a)の
ように未来の⼊⼒も使って学習をしていることが多い
• しかし実際の配信時の性能は(b)のように学習時も過去の値だけ
を⽤いたほうが性能が⾼くなる
候補⽣成モデルの性能
• 候補⽣成モデルの性能について利⽤す
る特徴量とネットワークの深さを変え
てMean average precisionで評価した
• 特徴量は1MのビデオのID, 1Mの検索トー
クン, ビデオの視聴履歴と検索トークンは
最⼤直近50個までを利⽤
• ネットワークの深さ、特徴量の種類両
⽅とも⼊れるほど精度は⾼くなってい
る
ランキング
• スコアの計算を⾏わなければならないのは数百の候補に対して
のみなので候補⽣成よりも多くのモデルを利⽤する
• 候補⽣成ではユーザがビデオを視聴したかどうかを⽬的変数と
していたが、ランキングでは実際にユーザに表出したレコメン
ド結果をもとにそれがクリックされてどの程度⾒られたかをも
とに学習を⾏う
• ランキングの⽬的変数としてはユーザのそのビデオをクリック
して視聴する時間を⽬的変数とする
ランキングの特徴量について
• Feature engineering
• ユーザがこのチャンネルの動画を過去何回みたかなどの特徴量をもちいてい
く
• また前回レコメンドされたがクリックしなかったかなどの変数も⼊っている
• こういう変数を配信時に利⽤するために動的に更新するには適切なシステムが必要に
なってくるが、それはこの論⽂の範囲を超えるため割愛する
• カテゴリ変数の埋め込み
• ビデオIDなどの値は埋め込みを学習する
• ここでビデオIDは最後に⾒たビデオ、現在視聴しているビデオなど複数の⼊
⼒で出てくるがこれらの⼊⼒間で埋め込み表現は共有する
• 連続変数の正規化
• 連続値𝑥に対して𝑥1 = ∫ 𝑑𝑓
5
67
と累積分布を使って[0,1)に正規化する
• 積分の値は線型補完を⽤いて計算する
ランキングモデルのアーキテクチャ
深さによる性能の変化
まとめ、レビュー
• YoutubeのスケールでNeural networkを使ってレコメンドする
⽅法を提案した
• 学習データの作り⽅や訓練時だけに⼊れる特徴量など実務的な
⼯夫も多く取り⼊れられている
• 新規性・独創性 : 3
• 有効性・重要性 : 5
Parallel recurrent neural network architectures
for feature-rich session-based
recommendations
• Balazs Hidasi (Gravity), Massimo Quadrana (Politecnico di
Milano) , Alexandros Karatzoglou (Telefonica research),
Domonkos Tikk (Gravity)
• 研究⾃体は著者らがTelefonica researchにいる時に⾏われた
• 元の研究としてはICLR 2016の著者らの研究がもととなっている
Session-based recommendationについて
• 従来のMFなどはユーザの潜在表現を学習しているが、実際の
ECサイトではクッキーが消えたり、再度訪問がなく、その訪問
セッションのクリックログなどをもとにレコメンドする必要が
ある
• 著者らの先⾏研究ではrecurrent neural networkを使ってク
リックログから次になにをクリックするかを予測する⽅法を提
案した
Featureの利⽤
• 先⾏研究ではクリックされたアイテムのIDのみを利⽤している
が実際はアイテムには画像やテキストなどの特徴量が付随して
いる
• Featureの利⽤⽅法としては単純にはRNNの⼊⼒でID特徴量に
画像特徴量をつなげるという⽅法があるが、それではうまくい
かない
Parallel Architecture
• 特徴量の種類ごとに異なるGRU
layerで受け、出⼒をつなげたもの
からアイテムのスコアを予測する
• 論⽂では他にもinteraction model,
shared modelなども提案している
がこの⼆つはあまり精度がよくな
い
ItemID
次のItemID
学習⽅法
• 単純にparallel architectureを学習するとアイテムIDの部分と特徴量
の部分がcorrelateしてるためうまくいかない
• そこで学習⽅法を幾つか提案
• 基本はあるsubnetを学習している時には別のsubnetをfixして学習す
る
• Alternating
• epochごとにID subnetを学習してfeature subnetは固定、次のepochでは
feature subnetを学習してID subnetは固定など交互にsubnetを学習する
• Residual
• 10回など⻑いepoch期間で⼀つのsubnetを学習して、残りのsubnetは残差を
学習する
• Interleaving
• Mini-batchごとにAlternatingを⾏う
特徴量について
• 画像
• GoogLeNetのpooling layerから1024次元の特徴量を取り出す
• テキスト
• アイテムのタイトル、詳細からTF-IDFベースのBag-of-wordsベクト
ルを作成
• word2vecなども試したがBag-of-wordsのほうが性能がよかった
• さらに学習時にEmbeddingも学習するという⽅法は性能を悪化させた
実験結果
画像データ
テキストデータ
まとめ、レビュー
• 先⾏研究のRNNベースのレコメンドに画像やテキストの特徴量
を⼊れて学習する⽅法を提案
• 訓練の順番などでうまく特徴量を取り⼊れて学習できるように
している
• 新規性・独創性 : 2
• 有効性・重要性 : 4

More Related Content

Similar to Recsys2016勉強会

[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles
[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles
[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with StylesDeep Learning JP
 
Step by Stepで学ぶ自然言語処理における深層学習の勘所
Step by Stepで学ぶ自然言語処理における深層学習の勘所Step by Stepで学ぶ自然言語処理における深層学習の勘所
Step by Stepで学ぶ自然言語処理における深層学習の勘所Ogushi Masaya
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshopDaisuke Sugai
 
Microsoft Azureのビッグデータ基盤とAIテクノロジーを活用しよう
Microsoft Azureのビッグデータ基盤とAIテクノロジーを活用しようMicrosoft Azureのビッグデータ基盤とAIテクノロジーを活用しよう
Microsoft Azureのビッグデータ基盤とAIテクノロジーを活用しようHideo Takagi
 
Chainer on Azure 2 年の歴史
Chainer on Azure 2 年の歴史Chainer on Azure 2 年の歴史
Chainer on Azure 2 年の歴史Hirono Jumpei
 
AIがAIを生み出す?
AIがAIを生み出す?AIがAIを生み出す?
AIがAIを生み出す?Daiki Tsuchiya
 
Trainable Calibration Measures for Neural Networks from Kernel Mean Embeddings
Trainable Calibration Measures for Neural Networks from Kernel Mean EmbeddingsTrainable Calibration Measures for Neural Networks from Kernel Mean Embeddings
Trainable Calibration Measures for Neural Networks from Kernel Mean Embeddingsharmonylab
 
Amazonでのレコメンド生成における深層学習とAWS利用について
Amazonでのレコメンド生成における深層学習とAWS利用についてAmazonでのレコメンド生成における深層学習とAWS利用について
Amazonでのレコメンド生成における深層学習とAWS利用についてAmazon Web Services Japan
 
Power biで気づく!現場機器の異常監視システム on azure
Power biで気づく!現場機器の異常監視システム on azurePower biで気づく!現場機器の異常監視システム on azure
Power biで気づく!現場機器の異常監視システム on azureIoTビジネス共創ラボ
 
Cytoscape Ecosystem Presentation at DBCLS Kashiwa
Cytoscape Ecosystem Presentation at DBCLS KashiwaCytoscape Ecosystem Presentation at DBCLS Kashiwa
Cytoscape Ecosystem Presentation at DBCLS KashiwaKeiichiro Ono
 
AI搭載Bingと最新情報(生成系AI系研究会)
AI搭載Bingと最新情報(生成系AI系研究会)AI搭載Bingと最新情報(生成系AI系研究会)
AI搭載Bingと最新情報(生成系AI系研究会)Tomokazu Kizawa
 
Azure Antenna AI 概要
Azure Antenna AI 概要Azure Antenna AI 概要
Azure Antenna AI 概要Miho Yamamoto
 
Lab-ゼミ資料-5-20150512
Lab-ゼミ資料-5-20150512Lab-ゼミ資料-5-20150512
Lab-ゼミ資料-5-20150512Yuki Ogasawara
 
Azure Stack Hybrid DevOpsデモンストレーション
Azure Stack Hybrid DevOpsデモンストレーションAzure Stack Hybrid DevOpsデモンストレーション
Azure Stack Hybrid DevOpsデモンストレーションMasahiko Ebisuda
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)VirtualTech Japan Inc.
 
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Kazumi IWANAGA
 
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境Kazumi IWANAGA
 
Nulabとawsと私
Nulabとawsと私Nulabとawsと私
Nulabとawsと私ikikko
 
機械学習応用のためのソフトウェアエンジニアリングパターン
機械学習応用のためのソフトウェアエンジニアリングパターン機械学習応用のためのソフトウェアエンジニアリングパターン
機械学習応用のためのソフトウェアエンジニアリングパターンHironoriTAKEUCHI1
 

Similar to Recsys2016勉強会 (20)

[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles
[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles
[DL Hacks 実装]StyleNet: Generating Attractive Visual Captions with Styles
 
Step by Stepで学ぶ自然言語処理における深層学習の勘所
Step by Stepで学ぶ自然言語処理における深層学習の勘所Step by Stepで学ぶ自然言語処理における深層学習の勘所
Step by Stepで学ぶ自然言語処理における深層学習の勘所
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
Microsoft Azureのビッグデータ基盤とAIテクノロジーを活用しよう
Microsoft Azureのビッグデータ基盤とAIテクノロジーを活用しようMicrosoft Azureのビッグデータ基盤とAIテクノロジーを活用しよう
Microsoft Azureのビッグデータ基盤とAIテクノロジーを活用しよう
 
Chainer on Azure 2 年の歴史
Chainer on Azure 2 年の歴史Chainer on Azure 2 年の歴史
Chainer on Azure 2 年の歴史
 
AIがAIを生み出す?
AIがAIを生み出す?AIがAIを生み出す?
AIがAIを生み出す?
 
Trainable Calibration Measures for Neural Networks from Kernel Mean Embeddings
Trainable Calibration Measures for Neural Networks from Kernel Mean EmbeddingsTrainable Calibration Measures for Neural Networks from Kernel Mean Embeddings
Trainable Calibration Measures for Neural Networks from Kernel Mean Embeddings
 
NeurIPS2019参加報告
NeurIPS2019参加報告NeurIPS2019参加報告
NeurIPS2019参加報告
 
Amazonでのレコメンド生成における深層学習とAWS利用について
Amazonでのレコメンド生成における深層学習とAWS利用についてAmazonでのレコメンド生成における深層学習とAWS利用について
Amazonでのレコメンド生成における深層学習とAWS利用について
 
Power biで気づく!現場機器の異常監視システム on azure
Power biで気づく!現場機器の異常監視システム on azurePower biで気づく!現場機器の異常監視システム on azure
Power biで気づく!現場機器の異常監視システム on azure
 
Cytoscape Ecosystem Presentation at DBCLS Kashiwa
Cytoscape Ecosystem Presentation at DBCLS KashiwaCytoscape Ecosystem Presentation at DBCLS Kashiwa
Cytoscape Ecosystem Presentation at DBCLS Kashiwa
 
AI搭載Bingと最新情報(生成系AI系研究会)
AI搭載Bingと最新情報(生成系AI系研究会)AI搭載Bingと最新情報(生成系AI系研究会)
AI搭載Bingと最新情報(生成系AI系研究会)
 
Azure Antenna AI 概要
Azure Antenna AI 概要Azure Antenna AI 概要
Azure Antenna AI 概要
 
Lab-ゼミ資料-5-20150512
Lab-ゼミ資料-5-20150512Lab-ゼミ資料-5-20150512
Lab-ゼミ資料-5-20150512
 
Azure Stack Hybrid DevOpsデモンストレーション
Azure Stack Hybrid DevOpsデモンストレーションAzure Stack Hybrid DevOpsデモンストレーション
Azure Stack Hybrid DevOpsデモンストレーション
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
 
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
Developers Summit 2023 9-D-1「もう悩まされない開発環境、プロジェクトで統一した環境をいつでもどこでも」
 
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
GitHub Codespaces と Azure でつくる、エンタープライズレベルの開発環境
 
Nulabとawsと私
Nulabとawsと私Nulabとawsと私
Nulabとawsと私
 
機械学習応用のためのソフトウェアエンジニアリングパターン
機械学習応用のためのソフトウェアエンジニアリングパターン機械学習応用のためのソフトウェアエンジニアリングパターン
機械学習応用のためのソフトウェアエンジニアリングパターン
 

More from 正志 坪坂

WSDM 2016勉強会 Geographic Segmentation via latent factor model
WSDM 2016勉強会 Geographic Segmentation via latent factor modelWSDM 2016勉強会 Geographic Segmentation via latent factor model
WSDM 2016勉強会 Geographic Segmentation via latent factor model正志 坪坂
 
Deeplearning勉強会20160220
Deeplearning勉強会20160220Deeplearning勉強会20160220
Deeplearning勉強会20160220正志 坪坂
 
OnlineMatching勉強会第一回
OnlineMatching勉強会第一回OnlineMatching勉強会第一回
OnlineMatching勉強会第一回正志 坪坂
 
Tokyowebmining ctr-predict
Tokyowebmining ctr-predictTokyowebmining ctr-predict
Tokyowebmining ctr-predict正志 坪坂
 
Riak Search 2.0を使ったデータ集計
Riak Search 2.0を使ったデータ集計Riak Search 2.0を使ったデータ集計
Riak Search 2.0を使ったデータ集計正志 坪坂
 
Contexual bandit @TokyoWebMining
Contexual bandit @TokyoWebMiningContexual bandit @TokyoWebMining
Contexual bandit @TokyoWebMining正志 坪坂
 
Introduction to contexual bandit
Introduction to contexual banditIntroduction to contexual bandit
Introduction to contexual bandit正志 坪坂
 
確率モデルを使ったグラフクラスタリング
確率モデルを使ったグラフクラスタリング確率モデルを使ったグラフクラスタリング
確率モデルを使ったグラフクラスタリング正志 坪坂
 
Big Data Bootstrap (ICML読み会)
Big Data Bootstrap (ICML読み会)Big Data Bootstrap (ICML読み会)
Big Data Bootstrap (ICML読み会)正志 坪坂
 
static index pruningについて
static index pruningについてstatic index pruningについて
static index pruningについて正志 坪坂
 
WSDM 2012 勉強会資料
WSDM 2012 勉強会資料WSDM 2012 勉強会資料
WSDM 2012 勉強会資料正志 坪坂
 

More from 正志 坪坂 (20)

Recsys2018 unbiased
Recsys2018 unbiasedRecsys2018 unbiased
Recsys2018 unbiased
 
WSDM2018Study
WSDM2018StudyWSDM2018Study
WSDM2018Study
 
WSDM 2016勉強会 Geographic Segmentation via latent factor model
WSDM 2016勉強会 Geographic Segmentation via latent factor modelWSDM 2016勉強会 Geographic Segmentation via latent factor model
WSDM 2016勉強会 Geographic Segmentation via latent factor model
 
Deeplearning勉強会20160220
Deeplearning勉強会20160220Deeplearning勉強会20160220
Deeplearning勉強会20160220
 
OnlineMatching勉強会第一回
OnlineMatching勉強会第一回OnlineMatching勉強会第一回
OnlineMatching勉強会第一回
 
Recsys2015
Recsys2015Recsys2015
Recsys2015
 
KDD 2015読み会
KDD 2015読み会KDD 2015読み会
KDD 2015読み会
 
Recsys2014 recruit
Recsys2014 recruitRecsys2014 recruit
Recsys2014 recruit
 
EMNLP2014_reading
EMNLP2014_readingEMNLP2014_reading
EMNLP2014_reading
 
Tokyowebmining ctr-predict
Tokyowebmining ctr-predictTokyowebmining ctr-predict
Tokyowebmining ctr-predict
 
KDD2014_study
KDD2014_study KDD2014_study
KDD2014_study
 
Riak Search 2.0を使ったデータ集計
Riak Search 2.0を使ったデータ集計Riak Search 2.0を使ったデータ集計
Riak Search 2.0を使ったデータ集計
 
Contexual bandit @TokyoWebMining
Contexual bandit @TokyoWebMiningContexual bandit @TokyoWebMining
Contexual bandit @TokyoWebMining
 
Introduction to contexual bandit
Introduction to contexual banditIntroduction to contexual bandit
Introduction to contexual bandit
 
確率モデルを使ったグラフクラスタリング
確率モデルを使ったグラフクラスタリング確率モデルを使ったグラフクラスタリング
確率モデルを使ったグラフクラスタリング
 
Big Data Bootstrap (ICML読み会)
Big Data Bootstrap (ICML読み会)Big Data Bootstrap (ICML読み会)
Big Data Bootstrap (ICML読み会)
 
Tokyowebmining2012
Tokyowebmining2012Tokyowebmining2012
Tokyowebmining2012
 
static index pruningについて
static index pruningについてstatic index pruningについて
static index pruningについて
 
NIPS 2012 読む会
NIPS 2012 読む会NIPS 2012 読む会
NIPS 2012 読む会
 
WSDM 2012 勉強会資料
WSDM 2012 勉強会資料WSDM 2012 勉強会資料
WSDM 2012 勉強会資料
 

Recsys2016勉強会