Slide 1

Slide 1 text

協調ベース推薦システム 第3回 推薦システム概論 奥 健太

Slide 2

Slide 2 text

シナリオ Aliceはとある寿司屋を訪れました。この寿司屋では、表に示すように、カツオ、マグロ、中 トロ、タイ、ヒラメ、スズキの6種類の寿司を提供しています。この寿司屋にはAlice、 Bruno、Chiara、Dhruv、Emiがよく訪れます。そして、寿司に対する好みを1から5の5段 階で評価しています。Aliceはマグロが好きですが、ヒラメは好きではありません。Brunoも 同じくマグロが好きで、ヒラメはあまり好きではありません。AliceとBrunoは好みが似てい るかもしれませんね。さて、Aliceはカツオとスズキを試したことがありません。果たして、 Aliceはカツオとスズキを好むでしょうか? ユーザ-寿司評価値行列 カツオ マグロ 中トロ タイ ヒラメ スズキ Alice ? 4 3 1 2 ? Bruno 5 5 4 ? 3 3 Chiara 4 ? 5 3 2 ? Dhruv ? 3 ? 2 1 1 Emi 2 1 2 4 ? 3

Slide 3

Slide 3 text

協調ベース推薦システム (collaborative-based recommender system) 協調フィルタリング(collaborative filtering) 近傍ベース協調フィルタリング モデルベース協調フィルタリング 対象ユーザと類似するユーザあるいは対象アイテムと類似するアイテムに関する 評価値を手がかりに、対象アイテムへの評価値を予測 評価値行列を基に学習モデルを構築し、その学習モデルを使って、同じ評価値行 列を対象に欠損している評価値を予測 好みが似ている他者の嗜好を手がかりに、対象ユーザの好き嫌いを予測し、アイ テムを推薦

Slide 4

Slide 4 text

評価値行列 ユーザとアイテムの評価値の関係を表した行列 R ユーザ u アイテム i ユーザ u のアイテム i に対する評価値 欠損値

Slide 5

Slide 5 text

行列補完問題(matrix completion problem) ? ? ? ? ? ? ? ? 不完全な評価値行列から欠損値に入るべき評価値を予測する問題

Slide 6

Slide 6 text

近傍ベース協調フィルタリング (neighborhood-based collaborative filtering)

Slide 7

Slide 7 text

ユーザベース協調フィルタリング (user-based collaborative filtering) 対象ユーザと嗜好が類似するユーザを選定し、そのユーザの評価値を基に 対象アイテムに対する評価値を予測 ? ? ? ? ? ? ? ? 対象ユーザ 類似ユーザ ①類似ユーザの選定 ②評価値の予測

Slide 8

Slide 8 text

アイテムベース協調フィルタリング (item-based collaborative filtering) 対象アイテムの類似アイテムを選定し、 そのアイテムの評価値を基に対象ユーザ の対象アイテムに対する評価値を予測 ? ? ? ? ? ? ? ? 対象 アイテム 類似 アイテム ①類似アイテムの選定 ②評価値の予測

Slide 9

Slide 9 text

推薦システムにおいて扱う全アイテム数、全ユーザ数に対して、評価付け されたアイテム数が少なすぎる問題 疎性問題(sparsity problem) 疎性(sparsity) 疎行列 (sparse matrix)

Slide 10

Slide 10 text

評価値行列の次元削減 評価値行列に対して、次元削減を適用することで評価値行列を密にする ユーザ因子行列 (user factor matrix) アイテム因子行列 (item factor matrix)

Slide 11

Slide 11 text

モデルベース協調フィルタリング (model-based collaborative filtering)

Slide 12

Slide 12 text

シナリオ Aliceはとある焼肉店を訪れました。この焼肉店では、表 に示すように、カルビ、ハラミ、ロース、タン の4種類の焼肉を提供しています。この焼肉店にはAlice、Bruno、Chiara、Dhruv、Emiに加えて、Faye、 Gillesもよく訪れます。そして、焼肉に対する好みを「好き」(+1)か「嫌い」(−1)かの二値で評価し ています。Aliceはカルビが好きですが、ハラミは好きではありません。ロースとタンは試したことがあり ません。カルビが好きなBrunoやChiaraはタンも好むようですね。一方で、ハラミを嫌うChiaraやDhruv はロースも嫌うようですね。果たして、Aliceはロースとタンを好むでしょうか? ユーザ-焼肉評価値行列 カルビ ハラミ ロース タン Alice +1 -1 ? ? Bruno +1 -1 ? +1 Chiara +1 -1 -1 +1 Dhruv ? -1 -1 -1 Emi +1 ? -1 -1 Faye -1 -1 +1 -1 Gilles -1 +1 -1 ?

Slide 13

Slide 13 text

内容ベース推薦システム (モデルベース方式) 内容ベース推薦システムと モデルベース協調フィルタリングの学習と予測の違い ? ? ? ? ? ? ? ? 評価値行列 学習モデル 訓練データ 予測対象データ 学習 学習モデル 学習 予測 モデルベース協調フィルタリング 予測

Slide 14

Slide 14 text

内容ベース推薦システムと モデルベース協調フィルタリングにおける問題設定の違い 訓練 データ 予測対象 データ 内容ベース推薦システムで扱う 訓練データと予測対象データ i xi,1 xi,2 xi,3 xi,4 xi,5 xi,6 r1,i 1 1 0 0 0 1 0 +1 2 0 1 0 0 1 0 +1 : : : : : : : : 10 0 0 1 0 0 1 -1 説明変数 目的変数 ? ? ? ? ? ? ? ? 説明変数?目的変数? 訓練データ? 予測対象データ? モデルベース協調フィルタリング で扱う評価値行列 i xi,1 xi,2 xi,3 xi,4 xi,5 xi,6 11 1 1 0 1 1 0 ? 12 0 0 1 0 1 1 ? 13 0 1 1 1 1 0 ?

Slide 15

Slide 15 text

評価値行列 ユーザ u アイテム i ユーザ u のアイテム i に対する評価値 二値型評価値 -1 ⇒ 嫌い +1 ⇒ 好き ユーザとアイテムの評価値の関係を表した行列 R

Slide 16

Slide 16 text

ルールベース協調フィルタリング (rule-based collaborative filtering) ? ? 学習 予測 学習モデル ルールベース分類器を使って協調フィルタリングの問題を解く

Slide 17

Slide 17 text

単純ベイズ協調フィルタリング (naive Bayes collaborative filtering) ? 学習 予測 学習モデル 単純ベイズ分類器を使って協調フィルタリングの問題を解く

Slide 18

Slide 18 text

決定木に基づく協調フィルタリング カルビ用の決定木 ハラミ用の決定木 ロース用の決定木 タン用の決定木 対象アイテムごとに決定木を学習し、協調フィルタリングの問題を解く

Slide 19

Slide 19 text

潜在因子モデル (latent factor model)

Slide 20

Slide 20 text

潜在因子モデル ユーザ因子行列 評価値行列 R を、ユーザ因子行列 P とアイテム因子行列 Q の積としてモ デル化 アイテム因子行列

Slide 21

Slide 21 text

行列因子分解(matrix factorization) 評価値行列 R に近似するような二つの行列、ユーザ因子行列 P とアイテ ム因子行列 Q を見つける ユーザ因子(user factor) アイテム因子(item factor)

Slide 22

Slide 22 text

各手法の長所と短所

Slide 23

Slide 23 text

ユーザベース vs. アイテムベース協調フィルタリング ユーザベース 協調フィルタリング アイテムベース 協調フィルタリング 正確性 セレンディピティ 説明性 計算効率性

Slide 24

Slide 24 text

近傍ベース vs. モデルベース協調フィルタリング 近傍ベース 協調フィルタリング モデルベース 協調フィルタリング 正確性 シンプルさ 説明性 計算効率性 モデル表現

Slide 25

Slide 25 text

内容ベース vs. 協調ベース推薦システム 内容ベース 推薦システム 協調ベース 推薦システム 新規ユーザ 新規アイテム 特徴量の抽出 正確性 セレンディピティ 説明性

Slide 26

Slide 26 text

コールドスタート問題(cold-start problem) カルビ ハラミ ロース タン イチボ Alice +1 -1 ? ? ? Bruno +1 -1 ? +1 ? Chiara +1 -1 -1 +1 ? Dhruv ? -1 -1 -1 ? Emi +1 ? -1 -1 ? Faye -1 -1 +1 -1 ? Gilles -1 +1 -1 ? ? Howard ? ? ? ? ? 評価値が与えられていない新規ユーザや新規アイテムに対して適切な推薦 が生成できないような問題 ユーザ-焼肉評価値行列 新規ユーザ問題(new user problem) 新規アイテム問題(new item problem)