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

Spark MLlib でやってみる協調フィルタリング

soonraah
November 20, 2014

Spark MLlib でやってみる協調フィルタリング

2014-11-20 Machine Learning with Apache Spark の発表資料です。

soonraah

November 20, 2014
Tweet

More Decks by soonraah

Other Decks in Technology

Transcript

  1. ALS-‐‑‒WR •  ALS  with  Weighted  λ  Regularization •  Spark  1.1.0

     から •  Tikhonov  の正則化の導⼊入 •  Over-‐‑‒fitting  を防ぐのが⽬目的
  2. 使⽤用データ •  MovieLens  1M •  http://grouplens.org/datasets/movielens/ •  ユーザが映画を5段階評価 •  データ数

    •  ユーザ数:  6,040 •  映画数:  3,883 •  評価件数:  1,000,209 •  疎性:  0.957
  3. 実験⼿手順 Cross  Validation  (Shuffle  &  Split) ※以下を繰り返し 1.  データセットをランダムに分割し、⼀一⽅方を学習⽤用、他⽅方 を評価⽤用とする

    2.  学習⽤用データを使って⾏行行列列因⼦子分解モデルを学習 3.  学習されたモデルで評価⽤用データに含まれる ユーザ・映画の組み合わせについて評価値を予測 4.  予測された評価値と実際の評価値から  MAE  を計算
  4. システム適⽤用時の課題 •  EMR  で最新版  Spark  を使うための設定 •  Bootstrap  スクリプトを⾃自分で⽤用意 • 

    ハイパーパラメータの実験的な決定 •  速度度の問題 •  推薦対象のユーザ、商品の数が多いと… •  MLlib  が提供している⾏行行列列因⼦子分解モデルの メソッドでは無理理がある
  5. 参考 •  MLlib  –  Collaborative  Filtering http://spark.apache.org/docs/latest/mllib-‐‑‒collaborative-‐‑‒ filtering.html •  MovieLens

    http://www.grouplens.org/datasets/movielens/ •  Y.  Zhou  et  al.,  “Large-‐‑‒Scale  Parallel  Collaborative   Filtering  for  the  Netflix  Prize,”  Proc.  4th  Intʼ’l  Conf.   Algorithmic  Aspects  in  Information  and  Management,   LNCS  5034,  Springer,  2008,  pp.  337-‐‑‒348