Closed nogawanogawa closed 1 year ago
協調フィルタリングに関する近年の改良の多くは、DNNアプローチをもとにしたものである。 ただし、コンピュータビジョンのような分野とは異なり、推薦では少数の隠れ層で高い精度を達成することがわかった。
この事実を極端にして、隠れ層を持たない線形モデルを定義することで、高い精度を達成できる見込みがある。
推薦の暗黙的フィードバックデータに適した線形モデルを定義する
S: score X: 評価値行列 B: アイテム-アイテム weight matrix
|| ||Fはフロべニウスノルムを表す。
ロスに関しては、対数損失や平方損失で学習するよりランキング精度が向上することが、他の文献で観察されているため、そちらのほうが精度が上がるかもしれない。 ランクに関するロスをそのまま取っても向上する可能性はあるが、計算コストが増大する恐れはある。
正則化にはL2正規化を使用し、このときのモデルは単一のハイパーパラメータだけになる。
Bの対角成分はすべて0になっている(アイテムに関して自身への類似性を完全に排除する)
Pythonを使った擬似コードは下記のようになる。
EASEの学習では、アイテムーアイテム行列のG(=XT X)を入力とする。
比較対象
データセット
指標
モデルのシンプルさに関わらず、ML-20Mは2番目、それ以外は最も良い結果になっている。
データセットにおいて、類似度は正だけでなく負の類似度も存在することがわかる。 アイテム-アイテム weight matrixに関してはL1正規化は除いたほうが良い。
上の結果の表でも、EASE>=0の結果はEASEより悪くなっていることが、数字としても現れている。
パラメータ (λ) は,ML-20M で約 500,Netflix で約 1,000,MSD で約 200 であった. Slimで使用されるパラメータよりはるかに大きいほうが良かった。
Slimと比較してeaseの学習時間は数桁小さい。
64GB RAM、16vCPUのAWSインスタンスで、Netflixデータでのイーザーの学習は2分未満、MSDデータでは20分未満で終わる。
slimは2週間とかかかっているので、計算時間も段違いに早いことがわかる。
ML-20Mだけ負けているが、これは人気順での推薦が強いデータセットであったからと考えられる。
実際、単純に人気順にしただけでもML-20MはMSDやNetflixと比べてスコアが高い。 人気順の影響が強いデータセットに対して、まんべんなく推薦した結果ややVAEに劣ったというように解釈している。
実際EASEのほうがロングテールで推薦できていることがわかる。
論文URL
https://arxiv.org/abs/1905.03375
著者
Harald Steck
会議
WWW'19
背景
協調フィルタリングに関する近年の改良の多くは、DNNアプローチをもとにしたものである。 ただし、コンピュータビジョンのような分野とは異なり、推薦では少数の隠れ層で高い精度を達成することがわかった。
この事実を極端にして、隠れ層を持たない線形モデルを定義することで、高い精度を達成できる見込みがある。
目的
推薦の暗黙的フィードバックデータに適した線形モデルを定義する
アプローチ
ひとことメモ
EASE