前回は、ECサイトのレコメンド技術の種類として、ルールベース方式、コンテンツベースフィルタリング方式、協調フィルタリング方式、ベイジアンネットワーク方式の4つを紹介した。今回は、これらのレコメンド方式をより細分化した上で、協調フィルタリングのロジックについて解説したい。
4つのレコメンド方式は、「レコメンドするために必要な情報は何なのか」、「何をもってレコメンドするためのルールとするか」という切り口で分類していると解説した。それぞれのレコメンド方式は、さらに「どの判別属性を軸にレコメンドアイテムを決定しているのか」という切り口によって細分化できる。その判別属性とは、アイテムベース、ユーザーベース、ユーザー提示情報ベースの3つだ。
例えば、データマイニングや統計解析を得意とするブレインパッドの「Rtoaster」は、ウェブアクセス履歴を基に同社がデータマイニングを行い、独自のルール設定をするルールベース方式である。あらかじめ設定しているルールに加え、ウェブアクセス履歴でユーザーがどこから流入したか、どのページをよく見ているかといったユーザー行動を判断材料とし、レコメンドアイテムを決定している。つまり、「ブログサイトから来た人にはこの商品」といった、特定のユーザー行動に対して特定のアイテムをレコメンドする、ルールベース方式とユーザーベースを組み合わせたレコメンド機能である。
また、アルベルトの「Bull's eye」は、アイテムごとの情報をデータベース化して、ユーザーが直接入力した情報に近いアイテムを表示する。これは、コンテンツベースフィルタリング方式とユーザー提示情報ベースを組み合わせたレコメンド機能だ。ユーザーのあいまいなニーズを、店員とやりとりしていくように入力し、理想に近い商品を表示する。この手法は、アルベルトの運営する消費者支援サイト「教えて!家電」で使用されている。
このように4つのレコメンド方式は、3つ判別属性によって分けられる。ただし、コンテンツフィルタリング方式は、ユーザーが選んだアイテム情報もしくはユーザーが入力したアイテム情報を利用するため、ユーザーベースの判別属性は利用しない。また、協調フィルタリング方式は、ユーザーの暗黙的なユーザー行動履歴情報を利用するため、ユーザー提示情報ベースの判別属性は利用しないことになる。
一方、ここで本題となる協調フィルタリングは、アイテムベースおよびユーザーベースという判別属性によって細分化できることがわかる。協調フィルタリング×アイテムベースは、ユーザーの行動履歴を基にアイテム間の関連性を分析し、あるアイテムを表示した時に関連性の高いアイテムを表示する方式だ。もうひとつの協調フィルタリング×ユーザーベースは、ユーザーの行動履歴を基にユーザーごとの嗜好の類似値を分析し、嗜好の似たユーザーがチェックした他のアイテムを推薦する方式である。