Hatena Blog Tags

リコメンデーション

(一般)
りこめんでーしょん

 リコメンデーションとは、対象となる商品・サービス・情報等または対象者を分析し、グループ化を行なうことで、対象者にとって価値があると思われる商品・サービス・情報等のみを取捨選択して提示することを指します。 この定義自体は簡単ですが、リコメンデーションのために商品・サービス・情報等を取捨選択する手法や名称は様々存在しているにも関わらず、体系的にはあまり整理されていません。

 例えば、一般的にリコメンデーションの手法として最もよく知られている「協調フィルタリング」がリコメンデーション・エンジンの全てであると認識されていたり、「協調フィルタリング」「コンテンツベース・フィルタリング」「ルールベース・フィルタリング」といった比較的知られている手法の名称が混同されて使われていたりします。

 これは、「協調フィルタリング」「コンテンツベース・フィルタリング」「ルールベース・フィルタリング」といった手法が、リコメンデーション手法の一部分を切り取っているに過ぎず、一定の軸の基に整理されているものではないことが原因だと考えられます。

【分類軸1:リコメンデーション・ロジック】

どのような考え方に基づいて提示する商品を絞り込むのかによって、リコメンデーションはまず大きく3つに分類できます。

A.モノ属性ベース

(Attribute) 「人はモノの各属性を評価することでモノを総合的に評価している」という考え方に基づき、商品を提示する手法。対象となる全ての商品のスペック/特徴等を格納したデータを使用する。リコメンデーションの精度は商品データベースの精度に依存するため、対象となる商品の主要な属性が、データとして表現し易いもので、かつ、データベース化し易い場合に適している。

C.人ベース

(Consumers) 「似たような特徴を持つ人や、過去の購買履歴が似ている人は同じようなものを好む」という考え方に基づき、提示する商品を決める手法。対象者以外の人々がどのような購買行動をしているかに関するデータが必要となる。本や映画、音楽など同カテゴリの商品が繰り返し購入される場合に適している。ただし、まだ誰も購入していない新商品には適用できない。

K.ナレッジベース

(Knowledge) 対象者の嗜好等との関係有無に関わらず、第三者(専門家や店員に限らない)の知識や経験及び一般常識(ナレッジ)に基づいて、対象者にとって価値があると考えられる商品を提示する手法。一見恣意的とも見られるこの手法では、第三者意見の信頼性・妥当性をどのように担保するかがポイントとなる。

【分類軸2:リコメンデーションに用いるデータ】

リコメンデーションで提示する商品を絞り込むプロセスにおいては、対象となる商品または対象者を分析するために、何かしらのデータを用いることがあります。このときに用いるデータの種類によってもリコメンデーション手法を分類することができます。

■対象者を特定しないデータ

・年齢性別、嗜好、購買履歴など、対象者個人を特定するデータを用いない場合

?アクションなし

対象者の個人の情報に関するデータも、対象者のサイト上でのアクションもリコメンデーションに用いない。どんな訪問者にも一様に同じ商品を提示する。

■対象者を特定するデータ

・対象者の個人を特定する情報をリコメンデーションの直前までに取得し、そのデータを反映して提示する商品を決める場合

?アクションデータ

対象者がサイト上でとるアクションに反応して提示する商品を決める。例えば、ある商品を閲覧または買おうとしている対象者に、関連する商品を提示するなど。ただし、個人の嗜好は考慮する訳ではないので、同じ商品を閲覧していればどんな対象者にも同じ商品が提示される。

?履歴データ

対象者個人のリコメンデーション対象の商品に関する購買履歴データや行動履歴データ(アクションデータが蓄積されたもの)を総合的に学習する。例えばCDのリコメンデーションを行なう場合、過去のCDの購買履歴やチェック履歴、視聴履歴等が履歴データとなる。また、対象者の個別のCDに対する評価データや所有の有無等のデータの場合も、対象者の過去の履歴を表現するデータとして、この履歴データに含めるものとする。各対象者の実際の購買履歴や行動履歴データを使用するため、One to one マーケティングを実現する上でも納得性が高いが、一般的に大規模な購買履歴データベースが必要となる。また、他人のために商品を購入した場合に、その履歴も対象者の嗜好を反映したものとして扱われてしまうため、データの精度が落ちてしまうことにも注意が必要である。

?申告データ

対象者個人の属性やニーズ・購入時等に関するプロフィールデータを使用する。会員登録時やリコメンデーションの直前に質問する年齢・性別・職業・趣味関心事や、商品選択時の重視点のデータなどがここに含まれる。対象者のリコメンデーション対象商品群に関する過去の購買履歴等はここに含まない。


ここまでで紹介した「リコメンデーション・ロジック」と「リコメンデーションに用いるデータ」の種類を組み合わせることで、ALBERTではリコメンデーション手法を下図のような12種類に分類しています。この分類により、扱う商材やデータの取得状況に応じて最適なリコメンデーション手法を検討することが可能となっています。(ただし、ここでの分類はあくまで基本的な考え方の類型化に過ぎず、実際には複数の類型を組み合わせたハイブリッド式のリコメンデーション手法を設計することもできます)

以下は代表的なリコメンデーションの方法を12分類で説明したものです。

A−?.コンテンツベース・フィルタリング(A.モノ属性ベースで?履歴データを使用)

【概要】

対象者が過去に購買・チェックした商品リストから、対象者が好む商品の特徴を抽出し、商品データベースから同種の特徴を持つ商品を抽出して提示する方法。

〜参考:コンテンツベース・フィルタリングのアルゴリズムの一例〜

ある顧客が、オンラインブックショップA店で過去に購入した商品を表しているとする。このリストを見るだけで、この顧客は基本的には経済に関する本に興味があり、●●という作家に興味があり、その次に▲▲という作家に興味がある。また出版社ではあまりこだわりはないが、強いて言えばB社に興味がありそう・・・などと推測ができる。

このような推測に基づいて、この顧客にとってのそれぞれのジャンル・作家・出版社がどれほど価値を持っているかをスコア化し、スコアの高い商品を提示する。例えば、「作家●●」が書いた「経済」に関する本が他にあれば、それが提示される商品となる。

【特徴】

対象者が好む商品の特徴をヒントに新商品であってもリコメンデーションすることが可能である一方で、商品の特徴をデータ化することが可能であること、対象者個人の十分な購買履歴データがあることが前提となる。また、他人のために何かを購買した場合であってもそれが対象者の嗜好を反映したものとして扱われることや、対象者個人の購買履歴のみを推薦の根拠とするため、好みが絞り込まれすぎてしまい、対象者にとって新鮮な出会いが少なくなってしまうという短所なども知られている。

C−?.マーケットバスケット型(C.人ベースで?アクションデータを使用)

【概要】

ある対象者が商品をチェックまたは購買した際に、その商品を過去にチェックまたは購買した人が、他にチェックまたは購買した商品を提示する手法。「この商品を買った人は、こんな商品も買っています」は、このマーケットバスケット型に含まれる。ただし、このマーケット分析型では、どんな対象者であっても同じ商品をチェックまたは購買すれば同じ商品が提示されるという点で、個人の過去の購買履歴を全て学習し、パーソナライズされていく協調フィルタリングとは異なることには注意が必要。

【特徴】

同じ商品カテゴリ内で何度も購入される商品に適している一方、耐久消費財には適用できるシーンが限られる(「この本を買った人は、この本も買っています」には意味があるが、「この冷蔵庫を買った人はこの冷蔵庫も買っています」には意味がないと考えられるため)

C−?.協調フィルタリング(C.人ベースで?履歴データを使用)

【概要】

対象者の購買履歴や行動履歴と似たような購買履歴や行動履歴を持つ人々を抽出し、その人々が買っている商品や興味を持っている商品で対象者がまだ出会っていないと考えられる商品を提示する方法。同じような購買履歴や好みを持っている人は同じようなものが好きであるという発想に基づく。代表的な協調フィルタリングのシステムとしてはアメリカのGroupLensなどがある。

〜参考:協調フィルタリングのアルゴリズムの一例〜

下表は、あるオンラインショップにおいて、各顧客と商品の購買履歴を示しているものとする。データは、各顧客が商品を買った場合を1、商品画面が顧客に表示されたが、顧客が買っていない場合を0、商品が顧客に表示されていない場合を空欄として表している。顧客Fに対して、次にどの商品を推奨するべきかを決めたい。

まず、顧客Fに近い好みを持つ顧客を探す必要がある。ここでは、類似性を「相関係数」という尺度を用いて表現することとする。例えば、顧客Fと顧客Aの「近さ」は、顧客Fにも顧客Aにも表示されている商品(顧客Aの行にも、顧客Fの行にも共通して数字が入っている列)の0・1データに対する相関係数とする。ここでは0.167となったが、この「相関係数」は、顧客Aと顧客Fが同じ商品を買っていたり、あるいは同じ商品を表示されたのに買っていなかったりする傾向が強ければより高い値となる。

さて、顧客Fとの相関係数を見ると、顧客C・顧客D・顧客Eの三人で相関係数が高いことが分かった。仮に相関係数が上位の3人の平均値(空欄の場合は計算から除外する)で顧客Fへの推薦度合いを決めるとすると、「商品5」が顧客Dも顧客Eも購入している商品として、平均値1と最も推薦度合いが高い。よって、顧客Fに次に推薦すべき商品は、「商品5」である。

【特徴】

商品データベースがなくても対象者と対象者以外の購買履歴データのみがあれば実行可能なことがメリット。しかし、商品数が非常に多い場合では対象者の購買履歴と似た購買履歴を持つ顧客を探すことが困難であるため、大規模な購買履歴データがあることが前提となること、また、まだ他の誰も使っていない新商品を推奨することができないこと、同じカテゴリの中で繰り返し購入されない商品では適用しづらいこと、他人のために何かを購買した場合であってもそれが対象者の嗜好を反映したものとして扱われてしまうことなどが短所として知られている。

C−?.アンケートベース型(C.人ベースで?申告データを使用)

【概要】

予め対象者が申告していた対象者属性(性別・年齢・職業・興味関心事など)から、対象者と同じ属性あるいは近い属性を持つ人々や同じクラスターに属する人々が多く購入している商品を提示するリコメンデーション。それぞれの属性の消費者がどの商品を購買しているか、あるいはどの商品に興味を持っているかに関して別途データを分析する必要がある。

【特徴】

会員登録を要するサイト等であれば、一般的な対象者属性は取得できている場合が多い。この場合、過去の購買データの分析などから、属性別の購買行動の傾向を抽出することができる。また、過去の購買データが存在しない場合でも、別途アンケート調査等を行なうことにより、属性別の傾向を抽出し、そこから各属性に対して提示する商品を決めることも可能である。

参考:リコメンデーションに関する用語の定義

◎ルールベース・フィルタリング

過去の購買データの集計や、一般的な消費者調査の結果、店員の暗黙知等により、「20代には、このクルマを推奨する」「ビールを買った人はオムツも買う」というような「●●な人には▲▲を推奨」という形式のリコメンデーション・ルールを予め設定しておくリコメンデーション方法。非常に広い概念であり、上記の12分類においては、A-3、C-3以外全てにあてはまることに注意。

◎リアルタイム・リコメンデーション

顧客がある商品を購入、もしくは閲覧などをすると、その行動の結果がリコメンデーション・ロジックのアップデートに用いられ、常にリコメンデーションが進化していく(学習していく)仕組みとなっているリコメンデーション方法。ほぼ全ての手法において、リアルタイムのリコメンデーションとすることが可能であり、リアルタイムとしないことも可能。

◎フィルタリング

「協調フィルタリング」「コンテンツベース・フィルタリング」「ルールベース・フィルタリング」等のように用いられるフィルタリングとは、商品・サービス・情報等の取捨選択を行なうというリコメンデーションのプロセスのこと。本章の冒頭にも表記している通り、フィルタリングとは、リコメンデーション対象者または対象となる商品・サービス・情報等の分析に基づいて、対象となる商品・サービス・情報等をグループ化して取捨選択を行なうことを指す。

このタグの解説についてこの解説文は、すでに終了したサービス「はてなキーワード」内で有志のユーザーが作成・編集した内容に基づいています。その正確性や網羅性をはてなが保証するものではありません。問題のある記述を発見した場合には、お問い合わせフォームよりご連絡ください。

ネットで話題

もっと見る

関連ブログ