Pythonで購入履歴の共起分析(アイテム間類似度取得・クラスタリング)

Pythonで購入履歴の共起分析(アイテム間類似度取得・クラスタリング)

商品購入ログから商品間の類似度取得・クラスタリング

商品購入ログを使って商品の共起分析。
以前行った実験と同じデータを使ってより高度な前処理を行う。

前回の実験↓

今回は下記の図に示すようにデータを加工していく。



ログデータのクロス集計までは前回と一緒。

その後、

  • 共起行列
  • PPMI
  • SVD

と続く。

成果物として、

  • アイテム間のコサイン類似度表
  • アイテムのクラスタリングリスト

が得られる。

Pythonで購入履歴の共起分析による推薦システム開発

Pythonで購入履歴の共起分析による推薦システム開発

商品購入ログを使って商品の推薦システムを作る

商品購入ログから商品の推薦を行う。
「この商品を買った人はこれも買ってます」というやつ。

これは共起分析によって簡単に実現できる。
共起分析とは「共に起こる」の通り、同時に発生したかどうかを特徴として分析する手法。

具体的に今回の購入ログの例でいうと、
「あるユーザーが商品Aと商品Bを両方購入している」とか、
「ある商品をユーザーAとユーザーBが両方購入している」とか、
そういった情報を特徴として分析に使用する。

これによってある商品を買った人が一緒に何を買いがちか分かる、
この結果を任意の商品を買ったユーザーに伝えることで他の商品を推薦できる。
今回はPythonで実験する。

Pythonで購入履歴から商品のクラスタリング(3パターン)

Pythonで購入履歴から商品のクラスタリング(3パターン)

商品購入ログを使って商品のクラスタリング

商品購入ログから商品のクラスタリングをしたい。
Pythonの最強ライブラリscikit-learnを使って行う。

  • 最もメジャーなK-means
  • 疎行列に強いらしいSpectralClustering
  • 階層型クラスタリングのウォード法

同一データに対して、上記3種のクラスタリングを行う。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×