レコメンドシステムとは
レコメンドシステムはAmazon,楽天などのECサイトやYouTubeの広告表示にも使われている。
「利用者の興味がありそうなもの・サービスを提供するシステム」
でありインターネット社会においてページランクと並び最も広く使われているアルゴリズムだと思います。アルゴリズム自体はとてもシンプルなので理解しやすいと思います。
画像引用元
レコメンドとは?マーケティングで活用できるレコメンドシステムを徹底解説
おすすめ度を計算してみよう!
実際に例題を用いて計算しアルゴリズムの全体像をつかみましょう!レコメンドシステムは内容に基づいて推薦を行うもの、訪問者の閲覧履歴や購買履歴などのサイト訪問者固有の情報を利用して推薦を行うもの、2種類があります。
内容に基づいて推薦するタイプ
内容に基づいたリコメンドシステムは、訪問者に関する情報は使用しないで単純に手元にある情報(ニュースサイトなどであれば記事に関する情報)から関連性のある内容を計算によって求めることができます。例えば、熊本にTSMCが進出する記事を読んでいて下のようなキーワードが思い浮かびます。
サイト訪問者がTSMC進出に関する記事を読んでいて次にどういった記事を表示するか問います。
記事a | 記事b | 記事c | 記事d | |
---|---|---|---|---|
熊本 | 1 | 0 | 0 | 1 |
半導体 | 1 | 1 | 1 | 1 |
雇用創出 | 1 | 0 | 1 | 0 |
電子機器 | 0 | 1 | 1 | 1 |
地域活性 | 1 | 0 | 0 | 0 |
経済効果 | 1 | 0 | 0 | 1 |
記事aと記事bの関連性をそれぞれのキーワードのうち共通しているものの割合(2つの記事のキーワードの数のうち、共通して存在するキーワードの数の割合を計算する)によって決定するように決めた場合、記事同士の関連性は総当たりで計算することができます。
記事a | 記事b | 記事c | 記事d | |
---|---|---|---|---|
記事a | 1.000 | 0.167 | 0.333 | 0.500 |
記事b | 0.167 | 1.000 | 0.333 | 0.333 |
記事c | 0.333 | 0.333 | 1.000 | 0.333 |
記事d | 0.500 | 0.333 | 0.333 | 1.000 |
この処理によって、記事aに近い内容の記事を近い順に並べることが可能になります。この場合では、記事aに近いものは順に記事d>記事c>記事bという並びになります。
訪問者固有の情報に基づいて推薦するタイプ
閲覧履歴や購入履歴などのサイト訪問者固有のデータを利用してより訪問者に適した推薦をするために強調フィルタリングというアルゴリズムが利用されます。先述の内容に基づいたリコメンドシステムは、記事間のキーワードの共通性を導き出して関連性を定義することで内容が近いものを抽出していました。
それに対し、訪問者固有の履歴情報と訪問者以外の情報についての共通性を利用して相関分析をすることで個別化された推薦を行います。
ターゲットである、サイト訪問者Xさんと、それ以外のA~Eさんが10ある商品についてその商品ページを閲覧後に購入したかどうかを0、1で示したデータがあるとする。データがないところはハイフンで示しています。ここで「Xさんの購買記録から、次にXさんにお薦めする商品として最もふさわしいのはどれか」という問題を解きます。まずXとその他のA~Eとの相関係数を求めます。ハイフンの部分は無視した商品(2,3,8,9,10) の5つに注目します。
すると、正の相関(同じ購買傾向がある)を持つもので0.5以上の人がC,D,Eの3人とわかります。
Xがまだ発見していない商品は (1,4,5,6,7) の5つあります。C,D,Eで記録があるものについて商品ごとに平均値を計算し、これをおすすめ度とすれば以下の結果となります。
よってXさんにお薦めするものは商品5となります。