Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DEIM 2019 楽天技術研究所の研究とケーススタディ(推薦システム)/deim2019_rakuten

DEIM 2019 楽天技術研究所の研究とケーススタディ(推薦システム)/deim2019_rakuten

DEIMでの発表資料です。

Sho Nakamura

March 05, 2019
Tweet

More Decks by Sho Nakamura

Other Decks in Technology

Transcript

  1. 2 About me… 中村 翔 (なかむら しょう) 2018年10⽉ – :

    楽天技術研究所 インテリジェンスドメイン 応⽤⾏動分析チーム 2012年 – : ビッグデータ部 検索プラットフォームの開発(社内複数サービスに共通の基盤を提供) 特に⾔語処理やクエリ周り、ランキングなどの精度改善 ⼤学・⼤学院時代:東⼤ 航空宇宙⼯学 超⼩型⼈⼯衛星(まだ⾶んでない)を作ったり、 ローバー⾛らせたり 研究室OGの⼭崎直⼦宇宙⾶⾏⼠
  2. 3

  3. 10 拡⼤する楽天経済圏 楽天のサービス 楽天経済圏 <拡⼤を続けるビッグデータ> 購買データ (楽天市場, カード, Edy, …)

    メンバーシップデータ (年齢, 性別, ) 製品データ (タイトル, ジャンル, 価格, ブランド, …) ⾦融資産データ (銀⾏, 証券, …) 位置情報データ (カード, Edy, R-Pay, …) 閲覧履歴データ (楽天市場, トラベル, …) など
  4. 11 Rakuten Institute of Technology (楽天技術研究所) • Established in 2006.

    森正弥 Global Head of RIT 楽天グループにおける戦略的R&D組織
  5. 13 楽天技術研究所の研究分野 インターネットの成⻑に合わせて構成された 3つの研究ドメイン Reality Intelligence Power • HCI •

    VR / AR / MixedReality • 画像処理 • ロボティクス • HPC • プログラミング言語 • 機械学習 • 深層学習 • 自然言語処理 • データマイニング
  6. 14 楽天技術研究所の研究分野 インターネットの成⻑に合わせて構成された 3つの研究ドメイン Reality Intelligence Power • HCI •

    VR / AR / MixedReality • 画像処理 • ロボティクス • HPC • プログラミング言語 • 機械学習 • 深層学習 • 自然言語処理 • データマイニング
  7. 19 Recommender Challenge for Viki (動画サービス) 2015’ Rakuten Viki, https://www.viki.com/videos/219471v-alice-in-wonderland,

    2019/2/28 ユーザ Gradient Boosting Decision Tree レコメンデーションスコア 動画 特徴量 ~500
  8. 20 分散表現による推薦アルゴリズム The Quick Brown Fox Jumps Over The Lazy

    Dog … Embedding ⽂書の 単語列 購買履歴の 商品ID列 アナロジー 0.2 0.4 0.0 … 0.8 0.7 0.0 0.1 … 0.2 単語の 分散表現 0.3 0.8 1.0 … 0.2 0.9 0.0 0.1 … 1.0 商品IDの 分散表現 オリジナルの Word2Vec t ⽂⽅向
  9. 21 位置情報を利⽤した推薦 Centroid Shop coordinates Boundary Step 1 : 利⽤した店舗の散布図

    Step 4 : 推薦店舗の作成 Step 2 : 重⼼推定、 境界線描画 Step 3 : 域内全店舗の取得
  10. 23 様々な推薦システム コンテンツ(内容) ベース コンテンツのメタデータとそれに対するユーザの 好みの情報を利⽤して推薦候補を作成 協調 フィルタ リング モデルベース

    ⾏列分解などにより、評価値⾏列の 未知の値を予測 メモリ (近傍) ベース ユーザベース ユーザの評価値や ⾏動履歴を利⽤し て推薦候補を作成 ユーザの類似度を元に計算 アイテムベース アイテムの類似度を元に計算 問題設定:あるユーザに対してn個の購買につながりそうなアイテムを推薦する
  11. 24 協調フィルタリングとコンテンツベースのアルゴリズム 協調フィルタリングの⼊⼒(評価値⾏列) コンテンツベースの⼊⼒(メタデータ) 2 5 3 3 2 4

    ? 2 0 0 1 0 1 1 0 1 1 0 0 1 0 1 1 0 ⾷品 果物・ スイーツ 0-1000円 1000円 以上 ジャンル 価格 ユーザ アイテム アイテム コンテンツ属性データ
  12. 25 協調フィルタリングとコンテンツベースのアルゴリズム 協調フィルタリングの⼊⼒(評価値⾏列) コンテンツベースの⼊⼒(メタデータ) 2 5 3 3 2 4

    ? 2 0 0 1 0 1 1 0 1 1 0 0 1 0 1 1 0 ⾷品 果物・ スイーツ 0-1000円 1000円 以上 ジャンル 価格 ユーザ アイテム コンテンツ属性データ アイテム
  13. 26 協調フィルタリングとコンテンツベースのアルゴリズム 協調フィルタリングの⼊⼒(評価値⾏列) コンテンツベースの⼊⼒(メタデータ) 2 5 3 3 2 4

    ? 2 0 0 1 0 1 1 0 1 1 0 0 1 0 1 1 0 ⾷品 果物・ スイーツ 0-1000円 1000円 以上 ジャンル 価格 ユーザ アイテム コンテンツ属性データ アイテム
  14. 27 サービスの事例 1 1 1 1 ユーザ アイテム デジタルコンテンツサービス 新規アイテム

    数100件/⽇ 新規アイテムの売上の⽐率: ⼤ 対象: 特徴: AKB 48 ⽇向坂 46 乃⽊坂 46 欅坂 46
  15. 28 サービスの事例 デジタルコンテンツサービス 新規アイテム 数100件/⽇ 新規アイテムの売上の⽐率: ⼤ 協調フィルタリング: 1 1

    1 1 推薦に 含められない 全アイテムデータ: 96520件 教師データ中のアイテム: 59497件 ユーザとアイテムのインタラクションが必要 対象: 特徴: ユーザ アイテム 新規アイテムやインタラクションのないアイテムが そのままでは推薦できない 精度の⾯で不利 コンテンツベース: AKB 48 ⽇向坂 46 乃⽊坂 46 欅坂 46
  16. 29 サービスの事例 1 1 1 1 推薦に 含められない コールドスタート問題として知られる 全アイテムデータ:

    96520件 教師データ中のアイテム: 59497件 AKB 48 ⽇向坂 46 乃⽊坂 46 欅坂 46 ユーザ アイテム デジタルコンテンツサービス 新規アイテム 数100件/⽇ 新規アイテムの売上の⽐率: ⼤ 対象: 特徴:
  17. 30 コールドスタート問題への対応 コンテンツ(内容) ベース コンテンツのメタデータとそれに対するユーザの 好みの情報を利⽤して推薦候補を作成 協調 フィルタ リング モデルベース

    ⾏列分解などにより、評価値⾏列の 未知の値を予測 メモリ (近傍) ベース ユーザベース ユーザの評価値や ⾏動履歴を利⽤し て推薦候補を作成 ユーザの類似度を元に計算 アイテムベース アイテムの類似度を元に計算
  18. 31 コールドスタート問題への対応 協調 フィルタ リング モデルベース ⾏列分解などにより、評価値⾏列の 未知の値を予測 メモリ (近傍)

    ベース ユーザベース ユーザの評価値や ⾏動履歴を利⽤し て推薦候補を作成 ユーザの類似度を元に計算 アイテムベース アイテムの類似度を元に計算 コンテンツ(内容) ベース コンテンツのメタデータとそれに対するユーザの 好みの情報を利⽤して推薦候補を作成 ハイブリッドアルゴリズム (e.g. 協調+コンテンツ)
  19. 32 いくつかの⼿法 – Collaborative Topic Regression (CTR) [Wang+ 2011] 協調フィルタ

    リング: コンテンツ ベース: r u v I J σr σu σv w N M K z θ φ MF LDA α β r u v I J w K z φ θ N λu λv β α ⾏列因⼦分解 Matrix Factorization (MF) Latent Dirichlet Allocation (LDA) アイテムのメタデータを考慮して ⾏列因⼦分解(MF)を⼀般化 LDAと同様EMベースで計算が遅い 計算速度を改善したものに Collaborative Topic Poisson Factorization (CTPF)など CTR (Collaborative Topic Regression)
  20. 33 いくつかの⼿法 – Content-aware CF with DNN DNNの結果を⾏列因⼦分解(MF)のPriorとして利⽤ [Liang+ 2015]

    論⽂では⾳楽に対するネットワークの事例 当然、画像やテキストなどあらゆる⼊⼒に対するDNNに対して応⽤できるはず 近年、ディープラーニング(DNN)の推薦システムへの応⽤が盛り上がっている 例えば… DNNの最終隠れ層 正則化項
  21. 35 最後の疑問として… どうやって新規や未購買のアイテムが含まれるコールドスタートの評価をするか? 単純にRecallを計算するのでは、既存・新規どちらが改善したかわからない 1 1 1 1 In-Matrix Out-of-

    Matrix テストデータを分割 Recall@10 In-Matrix Out-of-Matrix 協調フィルタリング (item-based) 0.0272 0.0000 コンテンツベース 0.0215 0.0079 Our Hybrid 0.0306 0.0078 アイテムが 教師データにもある ない Hybridが協調フィルタリングとコンテンツ ベースのいいとこ取りになっている だが、評価はこれで⼗分か? AKB 48 ⽇向坂 46 乃⽊坂 46 欅坂 46
  22. 36 最後の疑問として… どうやって新規や未購買のアイテムが含まれるコールドスタートの評価をするか? 単純にRecallを計算するのでは、既存・新規どちらが改善したかわからない 1 1 ? 1 1 ?

    Kis-My- Ft2 King& Prince Sexy Zone 嵐 In-Matrix Out-of- Matrix テストデータを分割 Recall@10 In-Matrix Out-of-Matrix 協調フィルタリング (item-based) 0.0272 0.0000 コンテンツベース 0.0215 0.0079 Our Hybrid 0.0306 0.0078 Hybridが協調フィルタリングとコンテンツ ベースのいいとこ取りになっている だが、評価はこれで⼗分か? ABテスト ↑研究所ロジック
  23. 42 様々な未解決問題 • ワナ1 ユーザがアカウントを家族でシェア する • ワナ2 Bot •

    ワナ3 貰ったデータが間違っている と、ここまではきれいな結果をお⾒せしましたが・・・ 仕事で扱うデータには⾊々なワナが潜んでいます