推薦システムの参考記事 - Shinichi0713/recommendation-ai GitHub Wiki
推薦システム実践入門の記事
強調フィルタリングを調べてる際にZennで見つけた記事。 https://zenn.dev/tanukinet/articles/135423ceb191d5
実現方法が提示されている。
実現方法としてはクラシックな方法と、ニューラルネットワークを使う方法の2パターン
クラシックな方法
- トピックモデル
- word2vec ユーザーの行動履歴や発言内容をベクトルデータ化して、類似度のような指標で計測して推薦する。
- Item2vec 以下のようなアイテムの視聴/購入といった行動履歴を使います。 User1: [item1, item33, item22, item47, ... ] User2: [item9, item84, item2, item65, ... ] 各アイテムのベクトルを得ることが可能。 (item22を入力として、周囲のitem33やitem47を予測出来るように学習する) これにより、母集団が増えれば、なんとなくitemの特性が出来上がっていくという仕組み
ニューラルネットワーク系な方法
Neural Collaborative Filtering
ユーザーとアイテムのlatent vector(one-hot-vector)を入力して、単純にマッチ率を回帰予測させるスタイル。
ユーザーやアイテムのone-hot-vectorの素性がすべてを決める
ユーザーデータは単純に、過去のアイテムを見た/見てないなどのone-hot-vecorです。
アイテムは通常のidのようなデータだと無限に増えていってしまう。