レコメンデーションとは、対象者にとって価値があると思われるコンテンツ(商品や情報)をより個別的に提示することです。必ずしもインターネットの世界だけではなく、初めて店頭に訪れた顧客に「今日はサンマが旨いよ!」という行為も、マクドナルドで「ご一緒にポテトもいかがですか?」という店頭でのおすすめもALBERTではレコメンデーションの1つと考え、より広く網羅的な解釈をしています。なぜならレコメンデーションの原点は、店頭での顧客対応にあると考えており、行きつけの魚屋さんや地域家電店が、なぜ顧客に最適な商品をお薦めできるのかをマーケティングサイエンス的視点で分析しています。
一方、レコメンドエンジンという場合は、主にWEB上で用いられるレコメンデーションを指す場合が多く、たとえば新商品の案内や単純な売れ筋ランキングの提示はレコメンデーションですが、「レコメンドエンジン」とはいいません。レコメンドエンジンは、一般的には対象者の何らかのアクションに対して、判断し予測するステップを経てコンテンツをリアルタイムに提示する場合が多いといえます。
レコメンデーションは必ずしも個別化(パーソナライズ)されているわけではありません。ユーザーに受動的にコンテンツを発見させることもできる技術であり、場合によってはユーザーがサイトを訪れた瞬間に、一切アクションを起こさずとも、最適な商品やサービスを推薦することも可能です。
身近な例を挙げると、様々なECサイトで見られる「売れ筋ランキング」などは、多くのユーザーに受け入れられている商品を紹介することで、当該商品がそのユーザーにとっても、価値が高い商品であるということを明示し、「レコメンド」しているといえるのですが、ユーザーごとに個別化されているわけではありません。ユーザーごとに個別化されているレコメンデーションは、より高度な推薦技術ということになります。
レコメンデーションは、能動的にユーザーにアクションを求める場合もあるのですが、完全な受動でも完全な能動でもなく、「ユーザー(またはそれに紐づく属性情報)とのインタラクション」によって推薦されるものもあります。例を挙げれば、ドメインやCookieを用いて何らかの個別化された情報を提示する場合、ユーザーには能動的にアクションを起こしたという意識はないですが、何らかの個別化された情報がサイトに送られている訳です。
個別化されたレコメンデーションは、個別化の程度によって「一時的個別化」と「永続的個別化」の2つに分類できます。一時的個別化は、ユーザーの過去の履歴を使うのではなく、最長でもそのセッションのアクション履歴しか使わないことにあります。永続的個別化は、Cookieに蓄積するかサーバーに蓄積するかに関わらず、過去の履歴を何らかの形でデータ処理をし、レコメンドに利用します。
ユーザーから何らかの情報を取得するパターンの場合で重要なことは、ユーザーの起こしたアクションを「判断し予測する」というプロセスを挟むという点です。例えば、「接待に使える雰囲気のよいレストランに行きたい」「子供の運動会の撮影に使えるカメラが欲しい」などのユーザーのインプット(アクション)に対して、何らかの「根拠に基づいた判断」を経て、コンテンツを推薦することを指します。
レコメンデーションの分類方法や名称は様々存在しているにも関わらず、体系的にはあまり整理されていません。例えば、一般的にレコメンド手法として最もよく知られている「協調フィルタリング」がレコメンドエンジンの全てかのごとく認識されていたり、レコメンド手法には「協調フィルタリング」と「コンテンツベースフィルタリング」の2種類であるとか、「ベイジアンネット」といった一般的分析、解析手法の名称が混同されて使われていたりします。しかし、実際にECサイトで採用され実績を上げているほとんどのシステムは、このどれにも当てはまらない方法が主流です。
なぜこの様な誤解が多いのかは、「協調フィルタリング」「コンテンツベースフィルタリング」「ベイジアンネット」といった手法が、レコメンド手法の一部分を切り取っていたり、解析手法を示しているに過ぎず、一定の軸の基に同じレイヤーで整理されていたりしていないことが原因だと考えられます。