Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Factorization Machines

Factorization Machines

Collaborative Filteringの概要とFactorization Machinesの説明

fuzyco

May 25, 2017
Tweet

More Decks by fuzyco

Other Decks in Technology

Transcript

  1. 協調フィルタリングの基本モデル a b c d e A 5 1 ?

    3 4 B 1 3 4 5 C 5 5 2 4 D 4 5 2 1 E 4 1 4 2 アイテム ユ ザ ユーザーAとの類似度 4 B -0.5 C 0.9 D -0.9 E 0.7
  2. B -0.5 C 0.9 D -0.9 E 0.7 5 類似度の⾼いユーザーを選択する

    a b c d e A 5 1 ? 3 4 B 1 3 4 5 C 5 5 2 4 D 4 5 2 1 E 4 1 4 2 アイテム ユ ザ ユーザーAとの類似度 協調フィルタリングの基本モデル
  3. 嗜好の似ているユーザーを基に予測する 予測値= (5*0.9+4*0.7)/2=3.65 6 B -0.5 C 0.9 D -0.9

    E 0.7 類似度の⾼いユーザーを選択する a b c d e A 5 1 ? 3 4 B 1 3 4 5 C 5 5 2 4 D 4 5 2 1 E 4 1 4 2 アイテム ユ ザ ユーザーAとの類似度 協調フィルタリングの基本モデル
  4. Matrix Factorization r aj ∧ = f (u a ,v

    j ) 9 予測値 ユーザーとアイテムの嗜好ベクトルを学習し、予測を⾏う ユーザーの 嗜好ベクトル アイテムの 嗜好ベクトル l スパースに⽐較的強い l Netflix Prizeでよく使われたモデル 協調フィルタリングで有名なアルゴリズム
  5. 評価⾏列 = ユーザー⾏列 アイテム⾏列 1 n 1 m user item

    1 r 1 r VT :r × m 10 U : n×r U a ユーザーの 嗜好ベクトル アイテムの 嗜好ベクトル a j V j T ˆ r a, j =U a V j T a j R : n× m ユーザー嗜好ベクトルとアイテム嗜好ベクトルを 学習することによって次元の削減を⾏う パラメータ Matrix Factorization
  6. min b,U,V (r a, j − ˆ r a, j

    )2 + λ(U a 2 + V j 2 + b2 a + b2 j ) (a, j)∈R ∑ ˆ r a, j = µ + b a + b j +U a V j T モデル ⽬的関数 [Y.Koran+ 2009] 11 バイアス ユーザー バイアス アイテム バイアス ユーザー嗜好ベクトル アイテム嗜好ベクトル 評価値のついているユーザーとアイテムのみを学習に使う Matrix Factorization
  7. Factorization Machines 14 Χ(1) Χ(2) Χ(3) Χ(4) Χ(5) V :k

    ×n 1 k 1 n w 0 1 n W :1×(n+1) f j k f f i n i n i j j i n i i i v v x x x w w y , 1 , 1 1 1 0 ) ( ˆ ∑ ∑ ∑ ∑ = = + = = + + = Χ バイアス 特徴量 重み 特徴量同⼠ の相関関係 training data 各パラメータ A B C x y z 特徴量 ユーザー アイテム
  8. 各特徴量の相関関係も学習できる k : 特徴ベクトルの次元 (ハイパーパラメータ) Factorization Machines 15 f j

    k f f i n i n i j j i n i i i v v x x x w w X y , 1 , 1 1 1 0 ) ( ˆ ∑ ∑ ∑ ∑ = = + = = + + =
  9. 計算量 " = & + ( ) ) + (

    ( ) + ( ),. +,. / .01 2 +0)31 2 )01 2 )01 = & + () ) + 1 2 ( (),. ) 2 )01 6 − (),. 6 2 )01 ) 6 / .01 2 )01 ()
  10. 学習(SGD) ⽬的関数 ( " , + ( E 6 EGH

    (I,J)GK " , = " − 6 = − M ME " , + 2E 各パラメータの更新式 損失関数 正規化項 & , ) , ),. E & , O , PQ
  11. 各パラメータの学習(SGD) f j k f f i n i n

    i j j i n i i i v v x x x w w X y , 1 , 1 1 1 0 ) ( ˆ ∑ ∑ ∑ ∑ = = + = = + + = & & =& − M MOR " , + 2& & = & − 2 " − & " + 2& U = 学習率
  12. 各パラメータの学習(SGD) f j k f f i n i n

    i j j i n i i i v v x x x w w X y , 1 , 1 1 1 0 ) ( ˆ ∑ ∑ ∑ ∑ = = + = = + + = ) ) =) − M MOZ " , + 2O ) = ) − 2 " − ) " + 2O ) ( = 0
  13. 各パラメータの学習(SGD) ),. ),. =),. − M MPZ,Q " , +

    2P ),. = ),. − 2 " − ),. " + 2P ),. , ( ( ( , , 0 03 = 0 (, ` " = & + ( ) ) + ( ( ) + ( ),. +,. / .01 2 +0)31 2 )01 2 )01 = & + () ) + 2 )01 ( ) ( + ( ),. +,. / .01 2 +0)31 2 )01
  14. Factorization MachinesとCTR予測 l 似た広告をクリックしたユーザー同⼠の情報を扱える l 新規のクリエイティブも予測できる l 属性情報を扱える Ø メリット

    Ø デメリット l 計算量が多い l ユーザーの数、クリエイティブの数の分だけ特徴量が増える(メモリ)