第2章 内容ベース推薦システム~近傍ベース方式~

View the Project on GitHub

Home

第2章 内容ベース推薦システム~近傍ベース方式~

表2.aはカレーデータベースとBruno(\(u = 2\))の評価履歴である。各行はアイテム\(i\)に関するデータを表す。\(x_{i,k} \in \{1, 2, \ldots, 10\}\)はアイテム\(i\)の属性\(k\)の特徴量を表し、アイテム\(i\)の特徴ベクトルは\(\boldsymbol{x}_{i} = [x_{i,1}, x_{i,2}]^{\mathsf{T}}\)と表す。\(r_{2,i} \in \{-1, +1\}\)はBrunoのアイテム\(i\)に対する評価値を表す。ただし、\(r_{2,i}\)が\(?\)となっているアイテムは未評価であることを表す。ここで、\(r_{2,i}\)が与えられている事例集合をBrunoの訓練データ\(D_{2}^{L}\)とし、未評価である事例集合をBruno向けの予測対象データ\(D_{2}^{U}\)とする。このとき、次の問いに答えなさい。

表2.a カレーデータベースとBrunoの評価履歴

アイテムID \(i\) アイテム名 辛さ\(x_{i,1}\) 甘さ\(x_{i,2}\) 評価値\(r_{2,i}\)
1 5辛3甘 5 3 ?
2 6辛2甘 6 2 +1
3 4辛1甘 4 1 ?
4 8辛5甘 8 5 +1
5 2辛4甘 2 4 -1
6 3辛6甘 3 6 -1
7 7辛6甘 7 6 ?
8 4辛2甘 4 2 ?
9 5辛1甘 5 1 +1
10 8辛6甘 8 6 +1
11 3辛4甘 3 4 -1
12 4辛7甘 4 7 -1
13 4辛4甘 4 4 ?

1. 類似度に基づく推薦と適合性フィードバック

演習問題1

ユーザがこれまで好んできたアイテムの特徴ベクトルの平均をユーザプロファイルとする。このとき、Brunoのユーザプロファイル\(\boldsymbol{p}_{2}\)をベクトルで求めなさい。

演習問題2

ユーザプロファイル\(\boldsymbol{p}_{2}\)と次の各アイテムの特徴ベクトルとのコサイン類似度を求めなさい。

(1) アイテム1の特徴ベクトル\(\boldsymbol{x}_{1}\)

(2) アイテム7の特徴ベクトル\(\boldsymbol{x}_{7}\)

(3) アイテム8の特徴ベクトル\(\boldsymbol{x}_{8}\)

演習問題3

\(K = 3\)とするとき、Brunoへの上位\(K\)推薦リストを求めなさい。

演習問題4

演習問題3で提示された推薦リストに対して、Brunoがアイテム1が嫌い、アイテム7が嫌い、アイテム8が好きとフィードバックしたとき、Rocchioの式による更新後のBrunoのユーザプロファイル\(\boldsymbol{p}'_{2}\)をベクトルで求めなさい。ただし、Rocchioの式におけるパラメタは、それぞれ\(\alpha = 1, \beta = 2, \gamma = 0.5\)とする。

2. \(k\)近傍法

演習問題5

次に示す各アイテム対のユークリッド距離を求めなさい。

(1) アイテム1 \(\boldsymbol{x}_{1}\)とアイテム11 \(\boldsymbol{x}_{11}\)

(2) アイテム3 \(\boldsymbol{x}_{3}\)とアイテム9 \(\boldsymbol{x}_{9}\)

(3) アイテム7 \(\boldsymbol{x}_{7}\)とアイテム12 \(\boldsymbol{x}_{12}\)

演習問題6

\(k = 3\)とするとき、アイテム1の近傍アイテム集合を求めなさい。

演習問題7

アイテム1のスコアを次の各方式により求めなさい。

(1) 多数決方式

(2) 平均方式

3. 次元削減

カレーデータベースが表2.bのとおりであるとする。各行はアイテム\(i\)に関するデータを表す。\(x_{i,k} \in \{1, 2, \ldots, 10\}\)はアイテム\(i\)の属性\(k\)の特徴量を表し、アイテム\(i\)の特徴ベクトルは\(\boldsymbol{x}_{i} = [x_{i,1}, x_{i,2}, x_{i,3}]^{\mathsf{T}}\)と表す。このとき、次の問いに答えなさい。

表2.b 3次元のカレーデータベース

アイテムID \(i\) アイテム名 辛さ\(x_{i,1}\) 甘さ\(x_{i,2}\) スパイシー\(x_{i,3}\)
1 5辛3甘 5 3 3
3 4辛1甘 4 1 5
5 2辛4甘 2 4 2
7 7辛6甘 7 6 8
9 5辛1甘 5 1 8
11 3辛4甘 3 4 2
13 4辛4甘 4 4 4

演習問題8

辛さ(\(k = 1\))の特徴量の分散を求めなさい。

演習問題9

次の各特徴量を標準化した値を求めなさい。

(1) アイテム1の辛さの特徴量\(x_{1,1}\)

(2) アイテム3の甘さ(\(k = 2\))の特徴量\(x_{3,2}\)

(3) アイテム7のスパイシー(\(k = 3\))の特徴量\(x_{7,3}\)

演習問題10

辛さと甘さの共分散を求めなさい。ただし、共分散の計算には標準化された特徴量を用いること。

演習問題11

表2.bのカレーの特徴ベクトルで張られる3次元特徴空間を主成分分析により2次元特徴空間に縮約したとき、アイテム1の第1および第2主成分得点を求めなさい。ただし、分散共分散行列

\[\boldsymbol{S} = \left[ \begin{array}{rrr} 1.000 & 0.198 & 0.802 \\ 0.198 & 1.000 & -0.113 \\ 0.802 & -0.113 & 1.000 \end{array} \right]\]

の固有値・固有ベクトルは

\[\lambda_{1} = 1.807, \;\;\;\; \boldsymbol{v}_{1} = [0.712, 0.077, 0.698]^{\mathsf{T}} \\ \lambda_{2} = 1.052, \;\;\;\; \boldsymbol{v}_{2} = [ -0.121, -0.965, 0.230]^{\mathsf{T}} \\ \lambda_{3} = 0.141, \;\;\;\; \boldsymbol{v}_{3} = [-0.691, 0.249, 0.678]^{\mathsf{T}}\]

とする。

演習問題12

第1主成分の寄与率を求めなさい。

演習問題13

第2主成分までの累積寄与率を求めなさい。