76. takemikamiʼs note ‒ http://takemikami.com/
協調フィルタリング(ALS)のイメージ
Copyright (C) Takeshi Mikami. All rights reserved. 76
協調フィルタリングのアルゴリズム
ALS(交互最⼩⼆乗法)による協調フィルタリングのイメージを⽰します
やりたいこと: 「評価値⾏列」を使って、ユーザとアイテムをk個の特徴量で表す
A B C D E
1
2
3
4
A B C D E
1
2
3
4
評価値⾏列
アイテムの
特徴量⾏列
ユーザの
特徴量⾏列
ユーザ
「評価値⾏列」から、
ユーザ・アイテムの特徴量⾏列を求める
(k個の因⼦でユーザ・アイテムを説明したい)
アイテム
※ ALS = Alternative Least Squares (交互最⼩⼆乗法)
79. takemikamiʼs note ‒ http://takemikami.com/
協調フィルタリング(ALS)の⼿続き 〜イメージ1
Copyright (C) Takeshi Mikami. All rights reserved. 79
協調フィルタリングのアルゴリズム
ALS(交互最⼩⼆乗法)による協調フィルタリングのイメージ
A B C D E
1
2
3
4
A B C D E
1
2
3
4
評価値⾏列
列数
特徴量の数を決める
アイテムの
特徴量⾏列
⾏数
ユーザの特徴量⾏列
80. takemikamiʼs note ‒ http://takemikami.com/
協調フィルタリング(ALS)の⼿続き 〜イメージ2
Copyright (C) Takeshi Mikami. All rights reserved. 80
協調フィルタリングのアルゴリズム
ALS(交互最⼩⼆乗法)による協調フィルタリングのイメージ
A B C D E
1
2
3
4
A B C D E
1
2
3
4
評価値⾏列
アイテムの
特徴量⾏列
ユーザの特徴量⾏列
アイテム毎の評価値の平均を算出
⼗分に⼩さい値で乱数をふる
81. takemikamiʼs note ‒ http://takemikami.com/
協調フィルタリング(ALS)の⼿続き 〜イメージ3
Copyright (C) Takeshi Mikami. All rights reserved. 81
協調フィルタリングのアルゴリズム
ALS(交互最⼩⼆乗法)による協調フィルタリングのイメージ
A B C D E
1
2
3
4
A B C D E
1
2
3
4
評価値⾏列
アイテムの特徴量⾏列ユーザの特徴量⾏列
=×
線形回帰の例で「a,b」にあたる 線形回帰の例で「x」にあたる 線形回帰の例で「y」にあたる
以下の誤差が最⼩になるようにユーザの特徴量を計算
・「ユーザの特徴量⾏列」と「アイテムの特徴量」の積
・「評価値⾏列」
82. takemikamiʼs note ‒ http://takemikami.com/
協調フィルタリング(ALS)の⼿続き 〜イメージ4
Copyright (C) Takeshi Mikami. All rights reserved. 82
協調フィルタリングのアルゴリズム
ALS(交互最⼩⼆乗法)による協調フィルタリングのイメージ
A B C D E
1
2
3
4
A B C D E
1
2
3
4
評価値⾏列
アイテムの特徴量⾏列ユーザの特徴量⾏列
=×
線形回帰の例で「x」にあたる 線形回帰の例で「a,b」にあたる 線形回帰の例で「y」にあたる
以下の誤差が最⼩になるようにユーザの特徴量を計算
・「ユーザの特徴量⾏列」と「アイテムの特徴量」の積
・「評価値⾏列」
83. takemikamiʼs note ‒ http://takemikami.com/
協調フィルタリング(ALS)の⼿続き 〜イメージ5
Copyright (C) Takeshi Mikami. All rights reserved. 83
協調フィルタリングのアルゴリズム
ALS(交互最⼩⼆乗法)による協調フィルタリングのイメージ
A B C D E
1
2
3
4
A B C D E
1
2
3
4
評価値⾏列
アイテムの特徴量⾏列ユーザの特徴量⾏列
=×
誤差が収束するまで、
これらの特徴量の再計算を繰り返す
誤差が収束するまで、
これらの特徴量の再計算を繰り返す
84. takemikamiʼs note ‒ http://takemikami.com/
レコメンドの周辺知識と実装⽅法
システム構成と周辺知識
ライブラリを⽤いた協調フィルタリングの実装
協調フィルタリングの応⽤例
Copyright (C) Takeshi Mikami. All rights reserved. 84