CFML-papers icon indicating copy to clipboard operation
CFML-papers copied to clipboard

Causal Embeddings for Recommendation

Open usaito opened this issue 6 years ago • 0 comments

0. 論文概要

Stephen Bonner and Flavian Vasile. 2017. Causal Embeddings for Recommendation. In The Twelfth ACM Conference on Recommender Systems (RecSys'18), Vol. 1706. ACM, Vancouver, 9.

**1 図表は全て本論文からの引用です.

**2 以前勉強会で発表した資料. https://www.slideshare.net/YutaSaito3/181117-recsys

1. 要約

  • Missing-Not-At-Random (MNAR) データを用いた真の推薦報酬最適化アルゴリズムを提案.

  • 過去の推薦方策によって集められた観測報酬を用いてナイーブに設計した損失関数はbiasを持ってしまう.

  • 観測報酬ではなく真の報酬を最適化する問題を定式化し, Matrix Factorizationの損失関数に新たな正則化項を加えたCausEを提案.

2. 背景

  • 過去の推薦方策によって集められた報酬(観測報酬)は, 一般に一様な分布に従っていない.

  • その推薦方策で推薦されやすいアイテムとユーザーのペアがより観測されやすい.

  • よって得られたデータは過去の推薦方策に依存して重み付けサンプリングされた形になっていて, そのデータを用いてナイーブに計算されたlossは意図せず重み付けlossになってしまっている. (観測されやすかったユーザーとアイテムの予測がうまくいくように最適化が進んでしまう.)

  • 多くの場合, 観測されやすいアイテムは人気のアイテムである. よって, よく推薦における問題として取り上げられるpopularity biasは損失関数の設計がまずいことが原因の1つだと考えられる.

  • 上述のようなbiasの例は関連論文のtoy exampleがわかりやすい.

3. 手法

  • 2で述べた問題点を解決するため, 真の報酬を最適化するような損失関数を持つ新たなアルゴリズムを導く.
  • 真の報酬を最適化するような方策は以下のような方策である.

2018-12-17 12 37 57

ここで, r_{i, j}がユーザーiと商品jのペアについての真の報酬. 上の定式化における最適な方策は, あるユーザーiに対して, 真の報酬が最大となるような商品jをdeterministicに提示する方策であることが示される. (至極直感的)

2018-12-17 12 44 10

ここで, 上の最適な方策を観測報酬y_{i, j}から求めたい.データが集められた際に走っていた方策をcontrol方策として\pi_cとすると, 真の報酬と観測報酬には以下の関係式が成り立つ.

2018-12-17 12 44 21

よって, 最適な方策は以下のように変形することができる.

2018-12-17 12 38 06

この変形により, 式の発端である真の報酬に対して最適な方策は, 離散一様分布に従うランダムな方策によって集められた観測報酬を最適化する問題と同値であることがわかる.

よって, 本論文の提案手法は, なんらかのコントロール方策に従って得られた観測報酬を用いて, ランダム方策によって集められた観測報酬に対するlossにできるだけ近いlossを得ることと言える.

この問題に対して本論文は非常にシンプルな方法をとる. 提案手法は, 少量のrandom方策によって集められたデータ(randomデータと呼ぶ)と任意のcontrol方策によって集められたデータ(controlデータと呼ぶ)を用いて以下のようなlossを持つ.

2018-12-17 12 38 19 このlossは,

  1. 観測報酬に対するloss
  2. 潜在行列に対する正則化
  3. controlデータを用いて得られる潜在行列と, randomデータを用いた時のそれとの乖離に対する正則化.

3 (regularization between tasks) がこの提案手法に固有のアイデアであり, randomデータを用いた時とより近い行列解を得たいという気持ちが読み取れる. (コメント欄にも書いたが, このlossが正当である理論的基礎づけは特に出てこない.)

ここで定義したlossを以下のように解くのが提案手法のCausEである. (実験ではmomentumを使ったらしい)

2018-12-17 12 38 31

controlデータで計算される勾配でcontrolデータに対応する行列を, randomデータで計算される勾配でrandomデータに対応する行列を更新している.

4. 実験

  1. 精度の検証 MovieLensデータとNetflixデータ(報酬を2値に変更)を使って提案手法の性能を検証する. ただし, 事前に商品の人気度に応じて重みづけサンプリングすることで擬似的なrandomデータを作り, これをテストデータとした.

比較手法は以下の通り.

  1. 通常のmatrix factorization (SP2V)
  2. Bayesian Personalized Ranking (BPR)
  3. control方策による重みつけmatrix factorization (WS2V) [関連論文]
  4. Bandit Net (BN)
  5. CausE (トレーニングデータのうち, 約15%がrandomデータ)

結果は以下の通り. MSE, NLL, AUC全ての項目で提案手法が最良の結果.

2018-12-17 12 38 43

  1. randomデータの必要量に対する考察 次に, トレーニングデータ中のrandomデータの割合を増やした時の性能変化を見る. 提案手法のみが, randomデータが増加するにつれて性能も向上している様子が見て取れる. これは, randomデータのlossから得られる潜在行列が正確になことで, 新たに入れた正則化項が正確に効いてくるからだと考えられる.

2018-12-17 12 38 49

5. コメント

  • 元々因果推論にdomain adaptation的な考え方を応用したいという分野の論文を読んできていたので, lossの上界などを与えることなく, 損失関数はこれです!と出てきて終わった時は驚いだ.

  • 少量でもrandomデータが必要な部分が提案手法のネック. 全てcontrolデータとした上で, CausEと同等の性能を示す手法を作れないだろうか...

6. 関連論文ピックアップ

usaito avatar Dec 17 '18 01:12 usaito