レコメンデーション
2008年07月18日
「レコメンデーション(Recommendation)」というものをご存知ですか?
一言で説明すれば、ユーザの興味を惹きそうなものや、ユーザにとって有益そうなものを推測して推薦(レコメンド)する技術で、CRM(Customer Relationship Management)の一手法です。
すべてのユーザに同じ情報(新着商品、ランキング)を提示するのもレコメンデーションの一つと言えるかもしれませんが、ユーザの好みやアクションによってオススメするものが変化する手法を指すことが多いです。
ユーザ一人ひとりに対してきめの細かいサービスを行い、オススメしたものがユーザの関心を引くことで、アクセス数の増加や商品の売り上げ向上につながるというメリットがあります。
レコメンデーションが使われている例として、Amazon.co.jpがあります。
ユーザが閲覧・購入した商品をもとに、その人が関心を持っている商品をオススメしてくれたり、オススメ商品を絞り込んだりする機能は、他のECサイトと比べても非常に優れていると思います。
このようなレコメンデーションを行う仕組みは、「レコメンドエンジン」と呼ばれているのですが、このレコメンドエンジンはどのような仕組みで動いていて、どうやってオススメを決めているのでしょう?
1.まずは相手のことを知ろう
スーパーの特売品のように、誰にでも無条件に同じオススメを出しても、すべてのユーザが「その商品が欲しい!」と感じるとは限りません。かといって、ただやみくもに「あなたへのオススメはこれです!」といっても誰も見向きはしません。
やはりユーザの関心を惹くものをオススメとして出してあげた方が、見てくれる可能性は高くなります。そして、その提示する商品を決める基準となるのがユーザ情報です。
・どんなユーザが利用しているか?(年齢、性別、居住地、家族構成、職業、趣味など)
・いつシステムを利用しているか?(朝/昼/夜、休日/平日)
・どれくらい利用しているか?(利用頻度:毎日、週1回、月1回)
・何のサービスを利用しているか?(ニュース、日記、天気、音楽など)
・どこで利用しているか、どこからアクセスしているか?(自宅/学校/職場、PC/携帯電話など)
これらの情報の多くは、登録制のサイトであれば、会員登録情報やアクセスログから取得することが可能でしょう。そして、これらのデータを分析してユーザの嗜好や行動パターンを見出し、行動を予測するための付加価値を持った情報にするのです。
2.相手が喜びそうなことを考えよう
ユーザが興味を持っている物事がわかれば、それに関係するアイテムを提示すればユーザが関心を持って見てくれるかもしれません。
また、ユーザが取りそうな行動が推測できていれば、「ユーザがこんな行動を取った場合に、こんなアイテムを提示する」というルールを作っておき、そのルールに合う行動をとったユーザに対してオススメとしてアイテムを提示すると、ユーザが「なかなか気が利いているな」と喜んでくれるかもしれません。
前者はコンテンツベース、後者はルールベースと呼ばれるレコメンデーション手法です。
3.「ルイトモ」を探せ!
ショッピングサイトで、「この商品を買った人は、以下の商品も買っています」というのを見たことはありませんか?
個々のユーザに対するレコメンドに、他のユーザの行動履歴を利用しようというものです。これは、「この商品を買った人は、以下の商品も買っています」という文字通り、自分が買う商品と同じ商品を買った他のユーザが過去に買った商品をオススメとして提示します。
(もちろん、ユーザから他のユーザの履歴そのものが見えるわけではありませんので、誤解のないように。。)
「商品を買った」という履歴だけでなく、「その商品に対する評価」も利用して、更に付加価値の高いサービスを提供しているシステムもあります。
この手法は協調フィルタリングと呼ばれ、「同じ商品を買った人同士は似た嗜好を持っており、共通する購入商品が多い人ほど相関が高いのではないか」という考えに基づいて行われています。
ただし、この技術を利用するためには多くの履歴データを必要とします。
ですから、サービス提供時にシステムにこの技術を組み込んでもユーザにとって有用なレコメンド結果は出せないでしょう。多くのサービス利用者と履歴データが蓄積されてから、この技術をシステムに組み込むのが有効ではないかと思われます。
4.相手の反応を見よう
オススメしたものに関心を持ってもらえたのかどうか、ユーザに気に入られたかどうかという評価情報は、そのユーザに次のレコメンデーションを行う上で非常に有用な情報です。
また、あまり関心が高くない商品、すでに持っている商品をオススメの対象から外すことができれば、より精度の高いレコメンデーションを行うことができます。ユーザからのフィードバックはレコメンデーションの精度を上げるための重要な情報と言えるでしょう。
5.継続的に使われるようにしよう
レコメンドエンジンがユーザのことを知るためには、やはり長いお付き合いが大事です。レコメンドエンジンは、利用されればされるほど学習し、精度の高いオススメができるようになります。
これはどんなシステムにも言えることですが、使い勝手が悪かったり、見た目がイマイチだったりすると、せっかくの技術が活かしきれませんので、ユーザに使い続けたいと思われるようなサービスというのが最も大事ではないでしょうか。
まとめ
1.相手のことを知る(履歴の蓄積と解析)
2.相手の喜びそうなことを考える(コンテンツベース、ルールベースによるレコメンデーション)
3.嗜好の似ている人の情報を利用する(協調フィルタリング)
4.相手の評価をもらう(レコメンド結果のフィードバック)
5.継続利用してもらう(サービス性)
レコメンデーションで気の利いたサービス、始めてみませんか?
