レコメンドエンジン

レコメンドエンジンとは

レコメンドエンジンとは、データを活用して顧客やユーザーに特定のコンテンツをレコメンド(推奨)する、機械学習の情報フィルタリングアルゴリズムです。
どの選択肢に価値があるかを特定する手助けをし、特にインターネットビジネスにおいてはECサイトや動画視聴サイト、ニュースサイトなどでユーザーの購買意欲をかきたてるような商品やサービスを提案するために用いられます。

レコメンドエンジンの仕組みには3種類あり、

  1. 協調的フィルタリング
  2. コンテンツベースフィルタリング
  3. ハイブリッド(①+②)

があります。

協調的フィルタリングはメモリベースモデルベースに区別されます。
主流の方法である前者では、ユーザーの評価・閲覧履歴・購入履歴を含む、ユーザー及びコンテンツのデータ行列の類似度から特定のコンテンツを推定し、レコメンドします。
よって、商品情報やコンテンツ情報を必要としません。後者ではユーザー及びコンテンツのデータ行列をモデル構築に利用して推定します。

協調的フィルタリングの問題設定は、機械学習の関連技術と比べて、大量の欠損値を含むことを前提にしているのが特徴です。
したがって、目的変数の推定よりも欠損値の推定に重点が置かれています。
協調的フィルタリングの問題点としては、欠損値を埋めるアルゴリズムであるため、新商品や新規ユーザーの場合など、データが少ない場合に有効なレコメンデーションが難しくなることです。

コンテンツベースフィルタリングでは、コンテンツの属性情報とユーザー嗜好との関連性を指標にします。
すなわち、予めカテゴリ化されたコンテンツの属性の中から、ユーザーがどの属性を好んでいるかを指標に、ユーザーのプロファイリングを行います。
ユーザープロファイルからコンテンツの属性や関連性を手がかりに、ユーザーに別のコンテンツをレコメンドします。

ハイブリッド型では、協調的フィルタリングとコンテンツベースフィルタリングの両者の長所を活用します。

例えば、ユーザーが新規で情報がない初期段階では、コンテンツベースフィルタリングを行い、ユーザーの履歴情報が徐々に蓄積した段階で協調的フィルタリングに切り替えるというような具合です。


レコメンドエンジンの評価は、オンライン評価とオフライン評価に分かれます。オンライン評価ではクリック率やコンバージョン率を、オフライン評価ではPR曲線のAUCやF値、カバレッジなどをそれぞれ指標にします。