RichContext、国産オプソレコメンデーションエンジン

ちょっと調べた。コードリーディング力が低いため効率悪いなー。がんばろう。
http://www.richcontext.jp/rss/richcontext.jsp

  • おまえらブクマしすぎ
  • C++で書いてある
  • 一応ソースは公開されてるが、チュートリアルとかgetting startedの類はついてない。Doxygenによるドキュメントは付属していてけっこう丁寧だが、これらのライブラリをどう使うかに関する情報は特にないみたい。使うのがちょっと面倒だなという印象。
  • 対応DBはpostgre SQLMySQLらしい。
  • これが何をするものなのかというと、ふつうの協調フィルタ、だと思う。
  • Engine、Common-lib含めて150kBくらいのソース。小規模。
  • メインロジックはRCEngine/SimilalityEngineおよびその基底クラスのEngineBase。ISimilarityStrategyのサブクラスが類似度計算(ユークリッド距離/内積)。
  • RCEngineとSimilalityEngineの違いがわかってないです。人-アイテムの推薦とアイテム-アイテムの推薦とかそんなのだと思う
  • データ構造。行と列があり、それぞれにCategoryがついてる。行はVectorItemの集合。
    • VectorItemは行ID、行カテゴリ、列ID、列カテゴリ、Valueを持ってる。
    • まあなんとなくわかる気はする(未調査)
  • いま公開されてるものだけでは、実際に動かすの大変そう。Web ApplicationからRC-Engineを利用するためのRC-APIなるものが見当たらないのだがどこだ。

結論

  • Tasteのほうが資料多いしとっつきやすいとおもいます。

関連リンク