Closed nogawanogawa closed 2 years ago
推薦システムにおいて、CTR予測は重要な要素になっており、多くの推薦システムではクリック数を最大化することであり、推定されたCTRによって順位付けされたランキングを返す。収益を最大化することについても同様で、クリック✕利益に置き換えて考えるだけである。
CTRを予測するタスクではユーザーのクリック行動の背後にある特徴量の交錯を学習することが非常に重要な要素となる。 例えば、フードデリバリーのアプリは食事時にダウンロードされやすいが、これはアプリのカテゴリとタイムスタンプの組み合わせが有効な特徴量となると考えられる。 また、10代の男性はシューティングゲームやRPGのゲームを好むが、これは性別と年齢、ゲームのカテゴリの3つの相互作用が有効な特徴量であると考えられる。
一般にユーザーのクリック行動の背後にある特徴の相互作用は低次〜高次のものが使用され、それらを同時に考慮することでどちらか一方を考慮するより高い性能を発揮することができるとされている。 しかし、この特徴量の相互作用を効果的にモデリングすることは非常に難しい。FMなどでは、原理的には高次の特徴量の相互作用を考慮可能であるが、実際には2次の相互作用のみが考慮される。
低次・高次の特徴量相互作用を考慮した、学習モデルを導出する
DeepFMでは、同じ入力を共有するFMコンポーネントとDNNコンポーネントの2つから構成されます。
FMコンポーネントでは、スパースな特徴量のベクトルからembeddingを計算して使用している。 それらのembeddingを使用して特徴量の相互作用を行列の内積で特徴量の相互作用を計算する。
スパースなベクトルではあまり登場しない特徴量は学習されにくいが、これによりほとんど登場しないような特徴量の相互作用も効率よく学習できる様になる。
数式で表現すると下記のような形で表される。
Deepコンポーネントでは、NNによって高次の相互作用を計算する。 スパースな特徴量は扱いにくいので、特徴量をこちらもEmbeddingに直す。(nn.embeddingみたいなもの?)
今回のDeepFMが先行研究と違うところを示す。
FMMでは(左)、事前学習されたFMによって埋め込みパラメータが作成される。 (いまいちよくわかってないが、事前学習が必要で、これによる影響やオーバーヘッドが入ってしまう)
PNNは高次の相互作用を学習しようとした構造になっており、ベクトルの内積と外積を組み合わせて計算されている。
Wide & Deepは低次・高次両方の相互作用を使用する仕組みになっている。 しかし、Wideの部分では専門的なFEが必要になる。
これらの点で、先行研究とは異なる構造になっている。
-> 先行研究と比べて、計算効率は悪く無さそう
-> 先行研究より良い値を出せているので良さそう
DCNV2 > DeepFM >= DCN
論文URL
https://arxiv.org/abs/1703.04247
著者
Huifeng Guo, Ruiming Tang, Yunming Ye, Zhenguo Li, Xiuqiang He
会議
IJICAI2017
背景
一般にユーザーのクリック行動の背後にある特徴の相互作用は低次〜高次のものが使用され、それらを同時に考慮することでどちらか一方を考慮するより高い性能を発揮することができるとされている。 しかし、この特徴量の相互作用を効果的にモデリングすることは非常に難しい。 FMなどでは、原理的には高次の特徴量の相互作用を考慮可能であるが、実際には2次の相互作用のみが考慮される。
目的
低次・高次の特徴量相互作用を考慮した、学習モデルを導出する
アプローチ