ユーザに対して自動的に何らかのおすすめを提示すること。レコメンデーションを行うソフトウェアのことをレコメンドエンジンという
- ユーザ: システムを使う人間。利用者
- アイテム: ユーザにおすすめするもの、サービス、商品etc
Point
- 何(誰)に対して
- 何(誰)をおすすめするのか
Pattern
- ユーザに対してアイテムをレコメンドする
- アイテムに対してアイテムをレコメンドする
- アイテムに対してユーザをレコメンドする
- ユーザに対してユーザをレコメンドする
http://www.albert2005.co.jp/technology/marketing/c_filtering.html
ある対象者が商品をチェックまたは購入したデータと、対象者以外がチェックまたは購入したデータの両方を用い、 その購入パターンから人同士の類似性、または商品間の共起性をアソシエーション分析(相関分析)で解析し、 対象者個人の行動履歴を関連づけることでパーソナライズされた商品を提示することができる手法です。
協調フィルタリングはユーザの行動データを利用する
- コンテンツデータ
アイテムそのものから得られる情報。
コンテンツデータの場合、ユーザに関する情報が無いので、各ユーザ向けにパーソナライズされたレコメンデーションは行えない
- メタデータ
アイテムそのものではなく、ユーザの行動などに付随して得られる情報。
- ルールベース
サービスの提供者が予めユーザの行動を想定してルールを作成しておき、そのルールに従ってレコメンデーションを行う
サービス提供者、ユーザ双方の納得感があるレコメンデーションが行いやすい
ルールを作成する、メンテナンスコストが発生する
- 機械学習・統計ベース
予め正解となるデータを作って置くか、もしくはアイテム間の何らかの類似度を見ることで、自動でレコメンデーションを行う手法
あるデータの1部を利用する
データの集合を部分集合(クラスタ)に切り分けて、それぞれの部分集合に含まれるデータがある共通の特徴を持つようにする。この特徴は多くの場合、類似性や、ある程度定められた距離尺度に基づく近さで示される。
クラスタの平均を用い、与えられたクラスタ数k個に分類する
- 各データに対してランダムにクラスタを割り振る
- 割り振ったデータを元に各クラスタの中心を計算する。計算は通常通り割り当てられたデータの各要素の算術平均が使用されるが、必須ではない
- 各 xi と各 V_j との距離を求め x_i を最も近い中心のクラスタに割り当て直す。
- 上記の処理で全ての x_i のクラスタの割り当てが変化しなかった場合、あるいは変化量が事前に設定した一定の閾値を下回った場合に、収束したと判断して処理を終了する。そうでない場合は新しく割り振られたクラスタから {\displaystyle V_{j}} V_j を再計算して上記の処理を繰り返す。