Pythonでコンテンツベースのレコメンドを作ったときに参考にしたURL

  • 21 Nov 2015

とある経緯でPythonでコンテンツベースのレコメンドを習作として軽く作ってみました。その際に参考にしたURLをまとめておきます。

レコメンドについての説明で参考にしたURL

レコメンドには様々な種類がありますが、その辺りを理解する上で役にたったサイトや書籍はこちらです。

【レコメンド】内容ベースと協調フィルタリングの長所と短所・実装方法まとめ

こちらは協調フィルタリングの説明がメインのため今回の実装方法と異なりますが、非常にわかりやすく説明されておりおススメ。

プログラマのための文書推薦入門

コンテンツベースでの推薦についてまとめられています。今回のテーマだとこの資料がかなり有用でした。

『簡単・高速』なAmazonっぽいレコメンドcf_recommenderを開発して公開
協調フィルタリング(レコメンド)をredisとpythonで実装してみた

こちらも同じ人の投稿。勉強になります。

協調フィルタリングを利用した推薦システム構築

これも協調フィルタリングがメインですが、推薦システムの概論もあり必読。

協調フィルタリングでアイテムの推薦をする

これも協調フィルタリング。Rubyでコードがあるので参考にできます。

レコメンデーション(協調フィルタリング)の基礎

技術的な話には踏み込んでませんでしたが、一応。

あと書籍としては以下がおススメ。

データサイエンティスト養成読本
実践 機械学習システム

TFIDF・コサイン類似度について参考にしたURL

今回、私は文字列コンテンツを対象としたレコメンドを作ったのでそこでtfidfを用いました。参考になったのは下記。

Pythonでtf-idf法を実装してみた

こちらはPythonでTFIDFを実装しているページです。TFIDFはロジックは平易であり、ソースもそこまで煩雑ではありません。一回流してみておくとよいです。

TF-IDF Cos類似度推定法

TFIDFとコサイン類似推定法の説明が非常にわかりやすく書いてあります。

scikit-learnでtf-idfを計算する

TFIDFを自前で作るのは若干手間だと感じるならscikit-learnを利用するとよいと思います。その上で上記ページは非常にわかりやすく解説してくれています。

Pythonで実装する類似度計算

コサイン類似度、ジャカード係数、シンプソン係数の実装コードが記載されており参考になります。

文書ベクトルの次元削減に基づく有効な類似文書判定

kmeansなどクラスタリングについて参考にしたURL

今回はTFIDF->コサイン類似推定法を採用したのでkmeansは利用しませんでしたが、一応調べたので。

クラスタリング (クラスター分析)

クラスタリングについて知りたい人は読んでおきたいページ。クラスタリングの分類やデメリットなど大枠を知ることができます。

共起性尺度

こちらは共起の尺度について説明しています。解りやすい。

Jaccard指数を使ったリコメンドシステムをPythonで書いてみた

タイトルままですが、多分どこかで使う。

K-meansクラスタリングで何かつくる