糞糞糞ネット弁慶

読んだ論文についてメモを書きます.趣味の話は http://repose.hatenablog.com

Learning Hierarchical Representation Model for Next Basket Recommendation (SIGIR 2015) 読んだ

概要

系列性のある商品購買情報を入力に,次にユーザが何を買うのかを予測する.
その際,流行りの representation learning というか,潜在表現を作って階層化する.

問題設定はFactorizing Personalized Markov Chains for Next-Basket Recommendation (WWW 2010) 読んだ - 糞ネット弁慶と一緒.

モデル

まず,予測に重要なのはユーザごとの嗜好と,そのユーザがこれまでに何を買ってきたか,特に,あるタイミングでの購買について,その前の購買で何を買っていたかが重要である,とする.
そこで,u が t 回目の購買機会で購買した商品集合 を予測する際に,入力として t - 1 回目の購買機会に購買した商品集合 を入力とする.
その上で,次のようなモデルを作る.

この時, はユーザ固有, は商品固有の潜在表現.どちらも長さ n で,提案手法ではこの潜在表現を学習する.
最終的には, とする.
その上で商品の潜在表現をもう一度持ってきて とする.
途中で使っている関数は averge pooling,max pooling を提案している.

推定

推定は,各購買機会で購買された商品とされていない商品について,前者を得る確率が後者を得る確率より高くなるように学習する.
でもこれでは負例側が多すぎて重いので negative sampling する.ついでに潜在表現にもL2正則化を加えつつ, dropout もする.

他のモデルとの関係性

マルコフ連鎖,行列分解,FPMCと大体似た事をやっているのがわかる.

実験

実験内容はさておき,オープンな購買データにリンクが貼られているのでメモしておく.

実験結果については,ネガティブサンプリングの数が気になる.
Ta-Feng データではサンプリング数 k = 1 で F1-score が 0.04 ちょい,k = 25 で 0.06 ちょい.
BeiRen データでは k = 10 で 0.08 ちょい,k = 50 で 0.1 ちょい.