トム・フォーリーが語る、レコメンドエンジンのいま 前編 – 高精度なレコメンドを簡単に実現するための技術
シルバーエッグ・テクノロジーのCEO トム・フォーリーは、20年以上前からパーソナライズド・マーケティング(当時はOne to Oneマーケティングと呼ばれました)を実現するレコメンドエンジンの開発のために、人工知能研究によって生まれた技術を取り入れてきました。
2010年代末から、機械学習技術の一般化によって様々なパーソナライゼーション・ツールが市場をにぎわせるようになりました。企業のマーケターが自社の目的に適ったパーソナライゼーション・ツールを導入するためには、それらのサービスが、どのような方法論で、どのような技術を用いて開発されているかを知ることが重要です。
今回、トム・フォーリーが前後編に分けて、レコメンデーションやパーソナライゼーションで使われる技術と、押さえておかなければならないパーソナライゼーションの鉄則についてお伝えします。
前編は、『高精度なレコメンドを簡単に実現する技術』についてお届けします。鍵となるのは、人の潜在的な心理状態を捉えるデータの利用と、異なる分野の機械学習技術を用いた高精度化・高速化です。ご覧ください。
シルバーエッグ・テクノロジー株式会社
代表取締役社長 & CEO
トーマス・アクイナス・フォーリー
御社のサイト上で、ユーザー(顧客)はアイテム(商品やコンテンツ)を見たり探したりしています。カテゴリーリストやサイト内検索はナビゲーションの助けになりますが、少し面倒です。ユーザーが欲しいものをもっと簡単に見つけられる方法があるでしょうか? より価値があり、ロイヤルティを高めるユーザー体験を提供するにはどうすればよいでしょうか?
アイテムがどのアイテムと似ているかを理解していれば、レコメンド(おすすめ)をすることができます。しかし、アイテムのレコメンデーションは、見かけほど簡単ではありません。
コンテンツベース・レコメンデーションの技術と課題
アイテムの本質的な類似性に基づくレコメンドは、コンテンツベース・レコメンデーションとして知られています。たとえば、同じカテゴリーの別アイテムをレコメンドすることは、コンテンツベース・レコメンデーションの非常に単純な形です。
しかし実際のユーザーは、明示的なカテゴリーには紐づかない潜在的な特徴に反応していることが多くあります。たとえば、「縞模様」と言ったカテゴリーはあまりお目にかからないですよね。もともと自然言語の処理と検索のために開発された技術は、商品説明に基づいてアイテムをクラスター化し、事実上、新しいカテゴリーを識別することができます。今では、ディープラーニングを使用して、写真からアイテムの視覚的特徴を見つけることもできるようになりました。
各アイテムは、上記のような分析で得られた潜在的な特徴のベクトルで表現することができます。ベクトルは、各次元が各特徴に対応している特徴空間 (Feature space)のどこにアイテムが存在するかを示します。簡単に言えば、この特徴空間で現在のアイテムの近くにいるアイテムが、そのアイテムと潜在的に似たアイテムということになり、レコメンドの対象となります。
ただし、このようなコンテンツベース・レコメンデーションは、ユーザーの好みを完全に無視しています。アイテムの特徴とユーザーの興味の関連付けができていないからです。したがって、アイテムの類似性に加え(またはその代替として)、ユーザーどうしの類似性も活用する必要が出てきます。アイテムの特徴と同様に、ユーザー1人ひとりの特徴を見つけていかなければなりません。
ユーザーの特徴を見つける技術
例えば、ユーザーのデモグラフィック情報(年齢や性別といった属性)や、ユーザーの現在地といった情報は、特徴付けに使えます。データ・マイニングにより潜在的なユーザーセグメントを発見・抽出することで、更に多くの特徴データを扱うこともできます。従来のマーケティングでは、ターゲティング技術を使用して、これらのユーザーセグメントとアイテムを関連付けてきました。ティーンエイジャーと大人に対して異なるレコメンドをするように、セグメントごとにカスタマーエクスペリエンスを選別するのです。
しかし、ユーザーのセグメント情報だけでは、個人の特徴を十分に理解することはできません。各々のユーザーは、お互いに似通っているところよりも異なっているところの方がはるかに多いからです。
ユーザーのアイテムに対する“反応”をデータとして取得できれば、そのユーザーの特徴をもっと知ることができ、他のユーザーの分析にも役立てることができるようになります。具体的には、アイテムの評価、「いいね」、カスタマー レビュー、フォークソノミーと呼ばれるユーザーによるタグ付けなどです。これらのデータにより多くのユーザーが関与することで、データの質が高まり、ユーザー全体のためにより高い価値をもたらすことができるようになります。
究極のユーザー情報
ユーザーのアイテムに対する評価以上に、ユーザーの好みを簡明に推測できるデータはなんでしょうか? つきつめれば、個々のユーザーのオーガニックな行動データであると言えます。特に、「閲覧データ」と「購入データ」は、各ユーザーが何を望んでいるのかを明確に教えてくれます。
アクセスログから事後的に取得したか、リアルタイムでキャプチャしたかにかかわらず、「購入」と「閲覧」はユーザーの暗黙の評価と考えられます。これは、各閲覧または購入が、アイテムに対するユーザーの好みの暗黙の表現と解釈できるためです。
機械学習技術を使用することで、この暗黙的な評価からユーザーの好みの予測モデルを開発し、パーソナライズされたレコメンデーションを行うことができます。パーソナライズされたレコメンデーションは、個々のユーザーから期待されるエンゲージメントを最適化します。
機械学習のテクニックで、高度なレコメンドをより簡単に
パーソナライズド・レコメンデーションには多くのテクニックがあります。得られる結果はかなり異なりますが、基礎概念はほぼ同じで、協調フィルタリングと呼ばれるものです。「Xを購入したユーザーは、きっとYも購入する」、つまり、ある種のアイテムに関して似通った行動をするユーザーは、別のアイテムに対しても同じように行動すると想定されるため、それに基づいたレコメンドが可能になるのです。過去のユーザー行動から推論された機械学習のモデルは、アイテムを相互に関連付け、ユーザーが将来選択するアイテムを予測します。この予測が、レコメンドとして使われるのです。
次にどんなアイテムが選択されるかを予測することは、言語モデルの単語シークエンスを予測することによく似ています。そのため、最先端の協調フィルタリングは、NLP (自然言語処理) のために最初に開発された機械学習技術の一つであるBEHAVIOR EMBEDDINGS(行動エンべディング)を大いに活用しています。
行動エンベディングの技術を使うと、あるアイテムの特徴ベクトルと他のアイテムの類似性は、アイテムの本質的な特徴からではなく、閲覧・購買の行動情報によって求めることができます。類似したアイテムは同時に発現する傾向があるため、特徴空間上でも互いに近くに存在することになります。
この行動エンベディングのしくみを使えば、行動情報に基づくレコメンドはコンテンツベース・レコメンデーションと同じような簡明さで実現できます。ユーザーの好みのアイテムはユーザーが最近閲覧(または購入)したアイテムに近い位置にあるという仮定にもとづき、近くにある別のアイテムを提案すればよいのです。
このように、より信頼性の高いデータを使い、より簡単に(つまり短時間で、コストをかけず)レコメンドを行うテクニックは、いまも急速に進化しています。しかし、有効なレコメンデーションを実現するためには、いくつか頭に叩き込んでおかなければならない鉄則があります。後編ではそれを紹介しましょう。
11 Recommendation Gotchas (Part 1)
You have customers interacting with items of some sort. Categories and site search support navigation, but they are cumbersome. Can you do better? How can you help customers more easily discover the relevant corners of your offering? How can you offer more valuable, loyalty-inducing customer experiences?
Well, if you know which items are similar, you can make recommendations. But making item recommendations is not as simple as it seems. Recommendations that are based on the intrinsic similarity of items are known as CONTENT-BASED RECOMMENDATIONS. For example, recommending items from the same category is a very simple form of content-based recommendation because categories are a characteristic of the items.
But, real users are often responding to LATENT FEATURES for which you may not have any explicit categorization. For example, do you have a category for items with stripes? Probably not. Technologies originally developed for natural language processing and search can CLUSTER items based on their descriptions and, in effect, identify new categories for you. Now you can even use DEEP LEARNING to find visual features of items from their photos. Each item can then be described with a vector of this enriched set of features. The vector says where the item exists in a FEATURE SPACE where each dimension corresponds to a feature. To recommend items similar to the current item, you need simply find its neighbors in feature space.
However, content-based recommendations like these completely neglect customer preference. We don’t know which item features are relevant to users. So, in addition to or as an alternative to item similarity, you also want to exploit customer similarity. Analogous to item features, you do this by finding features intrinsic to customers/users. For instance, you may already know demographics or customer location. If you need more customer features, DATA MINING can help discover and differentiate latent customer SEGMENTS. Traditional marketing uses TARGETING to exploit the item affinities of these customer segments. You can also curate customer experiences for each segment – for example make different recommendations for teenagers and adults.
Yet, customer segmentation won’t get you far, either. Individual customers are far more different than they are similar. You can get a better understanding of each individual by enticing them to interact with items and add information useful to other customers. Support for item ratings, “likes”, customer reviews and folksonomic tagging can yield significant network benefits. The more customers engage, the greater value for all.
But, it is ultimately the ORGANIC behavior of individual customers from which individual customer preferences are most easily inferred. Browses and purchases, in particular, tell us what each customer wants. Whether obtained after-the-fact from access logs, or captured on-the-fly, purchases and browses are considered IMPLICIT RATINGS because each browse or purchase can be construed as an implied expression of a user preference for an item. Using machine learning on implicit ratings, you can develop predictive models of customer preference with which you can make PERSONALIZED recommendations. Personalized recommendations optimize the expected engagement of each individual customer.
There are many techniques for personalized recommendations. Although mileage varies considerably, conceptually they are much alike. “Customers who purchased X also purchased Y” is the essence of COLLABORATIVE FILTERING. Users who behave similarly with respect to some items are expected to behave similarly toward others and receive recommendations accordingly. Machine learning MODELS inferred from historical user behavior relate items to one another. These models are then used to predict future item selections. These predictions become recommendations.
Predicting the next item is a lot like predicting word sequences in language models. So, state-of-the-art collaborative filtering borrows heavily from BEHAVIOR EMBEDDINGS, a MACHINE LEARNING technology first developed for NLP (natural language processing). With behavior embeddings, the feature vector of an item encodes its similarity to other items in terms of browsing or purchasing behavior rather than in terms of intrinsic features. Items that are similar tend to occur together and are positioned close to one another. To make recommendations, we first estimate the customer’s preferences as a position close to the items he/she has recently browsed (or purchased). We then propose other, nearby items – much as is done for content-based recommendations.
>> Part 2 will be released on Late June