次に、本発明の実施の形態を説明する前に、本発明の原理について説明する。
なお、本明細書において、アイテムとは、ユーザに提供可能なソフトウエアまたはハードウエア(物品)をいう。例えば、いわゆるコンテンツ、即ち、テレビジョン放送番組、映画、写真、楽曲等(動画像、静止画像、若しくは音声、または、それらの組合せ等)といったソフトウエアも、本明細書でいうアイテムである。また、例えば、ワイン等の物品(ハードウエア)も、本明細書でいうアイテムである。その他、例えば、文章や会話等も、本明細書でいうアイテムである。
ただし、本発明の理解を容易なものとするために、以下、アイテムの具体例を挙げる必要がある場合、所定の容器(例えば750mlの瓶等)に詰められたワイン(葡萄酒)が採用されているとする。
はじめに、従来から一般的に行われているアイテムを推薦するまでの一連の処理(以下、単に推薦処理と称する)の一例について、その概略を説明する。
ただし、説明の簡略上、1台の情報処理装置が推薦処理の全てを実行するとする。
はじめに、従来の情報処理装置は、とあるアイテムの特徴を示すN個(Nは、1以上の整数値)の情報のそれぞれを基底ベクトルとして、そのアイテムをベクトル化する。その際、従来の情報処理装置は、必要に応じて、そのベクトルの各成分のそれぞれに対して、所定の重み付け手法を利用して重み付けを行う(重み値を与える)。
このようにしてアイテムがベクトル化された結果得られるベクトルが、上述したアイテム特徴ベクトルになる。なお、以下、アイテムの特徴を示す情報を属性情報と称し、属性情報の種類を、属性と称する。即ち、所定のアイテムに対して、N個の属性のそれぞれの属性情報が対応付けられている場合、N個の属性情報が数値化され(重み付けが行われ)、その結果得られるN個の数値を成分値として有するベクトルが、アイテム特徴ベクトルである。
なお、N個の属性のうちの所定の属性について、属性情報がアイテムに対応付けられていない場合、そのアイテムのアイテム特徴ベクトルのうちのその所定の属性に対応する成分には、0が代入されるとする。
従来の情報処理装置は、このようなアイテム特徴ベクトルを各アイテム毎にそれぞれ生成し、蓄積する。即ち、このようにして蓄積された各アイテム特徴ベクトルのそれぞれに対応するアイテムが、推薦候補の対象となる。
一方、従来の情報処理装置は、ユーザの過去の操作履歴や、ユーザ自身により入力された各種情報を利用して、ユーザの嗜好を示すベクトルを生成する。係るベクトルが、上述したユーザ嗜好ベクトルである。なお、以下、ユーザ嗜好ベクトルを、UPV(User Preference Vector)と適宜称する。
そして、従来の情報処理装置は、このUPVと、蓄積された複数のアイテム特徴ベクトルのそれぞれとの余弦相関などの類似度をそれぞれ求め(マッチング処理を行い)、例えば、類似度が閾値以上であるアイテム特徴ベクトルに対応するアイテムを、ユーザに推薦すべき推薦アイテムとしてユーザに呈示する。
以上、従来の推薦システムにおける推薦処理の概略について説明した。
ところで、推薦候補の対象となる複数のアイテムが複数の種類や分野にまたがっている場合、同一ユーザであっても、そのユーザの嗜好傾向は、アイテムの種類や分野に応じて自ずと変わってくることが多い。
例えば、アイテムがワインである場合、ワインというものは、赤ワイン、白ワイン、および、スパークリングワインといった3種類に分類できる。なお、より正確には、ロゼワイン(赤ワインに含めてもよい)や酒精強化ワイン等その他の種類も存在することから、実際には3種類よりも多い種類にワインは分類されるが、ここでは、説明の簡略上、3種類のみに言及する。この場合、一般的には、赤ワイン、白ワイン、およびスパークリングワインの3種類全てについて同一の嗜好傾向を示すユーザの数は少なく、3種類のそれぞれ毎に異なる嗜好傾向を示すユーザの数が多い。
具体的には例えば、同一ユーザであっても、その嗜好傾向は、「赤ワインならば、フルボディの渋めのブルゴーニュ」、「白ワインならば、甘めのドイツワイン」、および「スパークリングワインならば、辛口のシャンパーニュ」のそれぞれといったように全く異なる傾向になることが多い。即ち、「味」の属性だけに着目すると、このユーザの嗜好傾向は、赤ワインについては「フルボディの渋め」であり、白ワインについては「甘め」であり、またスパークリングワインについては「辛口」であるといったように、赤ワイン、白ワイン、およびスパークリングワインの3種類でまちまちである。同様に、「産地」の属性だけに着目すると、赤ワインについてはフランスの「ブルゴーニュ」地方であり、白ワインについては「ドイツ」であり、またスパークリングワインについてはフランスの「シャンパーニュ」地方であるといったように、赤ワイン、白ワイン、およびスパークリングワインの3種類でまちまちである。
しかしながら、従来の推薦システムでは、ワインの推薦を行う場合、赤ワイン、白ワイン、およびスパークリングワインの3種類のそれぞれについて、このように同一ユーザでも全く異なる嗜好傾向を示すにも関わらず、これらの3種類についてのユーザの嗜好の違いを考慮できていなかった、という上述した従来の課題が生じてしまう。即ち、従来の推薦システムでは、これらの3種類を1つにまとめた単なる「ワイン」についてのユーザ嗜好ベクトルを生成して、そのユーザ嗜好ベクトルを利用して推薦ワインを決定するだけであった、という従来の課題が生じてしまう。従って、このようにして決定された推薦ワインが、ユーザにとって必ずしも適切なワインでないという問題が生じることは自明である。
そこで、本発明人は、次のような手法を発明した。
即ち、例えばワインの推薦を行う場合には、赤ワインについてのユーザ嗜好ベクトル、白ワインについてのユーザ嗜好ベクトル、および、スパークリングワインについてのユーザ嗜好ベクトルのそれぞれを生成して、蓄積および管理を行う。そして、必要に応じて、赤ワインについてのユーザ嗜好ベクトルと、赤ワインのアイテム特徴ベクトルとの類似度を演算し、その類似度が所定の条件を満たすアイテム特徴ベクトルに対応する赤ワインを、推薦アイテムとして決定する。同様に、必要に応じて、白ワインについてのユーザ嗜好ベクトルと、白ワインのアイテム特徴ベクトルとの類似度を演算し、その類似度が所定の条件を満たすアイテム特徴ベクトルに対応する白ワインを、推薦アイテムとして決定する。必要に応じて、スパークリングワインについてのユーザ嗜好ベクトルと、スパークリングワインのアイテム特徴ベクトルとの類似度を演算し、その類似度が所定の条件を満たす特徴ベクトルに対応するスパークリングワインを、推薦アイテムとして決定する。以上の一連の処理に対応する手法が、本発明人により新たに発明された手法である。
より一般的な表現に改めると、本発明の手法とは、結局、次の第1の処理と第2の処理とを実現可能な手法である。
即ち、第1の処理とは、アイテムが取り得る複数の性質毎に、対応する性質を有する1以上のアイテムのそれぞれに関するユーザの過去の操作履歴を利用して、ユーザ嗜好ベクトルのそれぞれを生成する、といった処理である。
なお、対応する性質を有するアイテムに関するユーザの過去の操作履歴とは、例えばアイテムがワインであり、かつ、対応する性質が赤ワインの場合には、ユーザが、情報処理装置を利用して行う操作のうちの、所定の赤ワイン(例えばシャトー○○という名称の赤ワイン)を購入するまでに行った操作、シャトー○○の試飲結果(評価)の入力操作、インターネット上等に存在するシャトー○○の情報を入手するまでの操作、或いは、シャトー○○といった特定の1つの赤ワインではなく、赤ワイン全体についての左記の各種操作等をいう。さらに、アイテムが、ワインのような物品ではなく、コンテンツのように情報処理装置を利用して使用可能なソフトウエアである場合には、そのソフトウエアそのものの操作も、対応する性質を有するアイテムに関するユーザの過去の操作履歴の一例である。
また、上述したように、特許文献1には、ジャンルや出演者毎の正履歴ベクトルや負履歴ベクトルを生成することが記述されているが、ジャンルや出演者毎の正履歴ベクトルや負履歴ベクトルは、ユーザによる各性質の嗜好傾向の違いを必ずしも考慮できていない(反映していない)。即ち、特許文献1では、ただ単に、ジャンル自体または出演者自体の好き嫌いがあるという点から、ジャンルや出演者毎の正履歴ベクトルや負履歴ベクトルを生成することが提案されている。従って、例えば、特許文献1の手法に従って生成されたドラマの正履歴ベクトルでは、特許文献1にも記載されているように、特に好きな俳優でもないに関わらず、ただ単にドラマに頻繁に登場する出演者Bのポイント(成分値)が高ポイントになってしまう。しかしながら、ドラマが好きと一口にいっても、その好きな理由(嗜好傾向)は、出演者Bがドラマに頻繁に登場しているからではなく他の理由からであるが、この「他の理由」がドラマの正履歴ベクトルに必ずしも反映されない。従って、ただ単に特許文献1を参照しただけでは、赤ワイン、白ワイン、およびスパークリングワインの3種類の性質といった、ユーザの嗜好傾向の違いが考慮された(その違いが明確になる)各性質について個別にユーザ嗜好ベクトルを生成することを容易に思想することはできない。即ち、ここで言うアイテムの性質とは、ただ単に一般的に分類された性質を指すのではなく、ユーザの嗜好傾向の違いを考慮して分類し直した或いは選抜した性質を指す。即ち、ワインには、後述するように、その他の様々な性質、例えば、産地や価格等様々な性質が存在するが、これらの性質の全てについて個別にユーザ嗜好ベクトルを生成すればよいのではなく、ユーザの嗜好傾向の違いが考慮された(その違いが明確になる)各性質についてユーザ嗜好ベクトルを生成するとよい。
第2の処理とは、アイテムが取り得る各性質のうちの推薦対象の性質を決定し、推薦対象の性質についてのユーザ嗜好ベクトルと、推薦対象の性質を有する1以上のアイテムのアイテム特徴ベクトルのそれぞれとの類似度を演算し、演算された類似度が所定の条件を満たすアイテム特徴ベクトルに対応するアイテムを、推薦対象の性質を有する推薦アイテムとして決定する、という処理である。
この推薦対象として、複数の性質が決定された場合、第2の処理の結果、推薦対象となった複数の性質毎に、推薦アイテムが1以上決定されることになる。例えばアイテムがワインの場合であって、赤ワイン、白ワイン、およびスパークリングワインの全てが推薦対象とされた場合には、推薦アイテム(推薦ワイン)として、1以上の赤ワイン、1以上の白ワイン、および、1以上のスパークリングワインがそれぞれ決定されることになる。この場合、推薦アイテムを全てユーザに呈示することは、当然ながら可能であるが、その総数があまりにも多いとき、または、ユーザに推薦アイテムを画像として呈示するための表示画面が小型のとき(例えばユーザが携帯型端末を利用しているとき)等では不適である。
そこで、このようなとき、全ての推薦アイテムのうちの、幾つかの推薦アイテを選抜して、ユーザに呈示することが必要になる。この際の選抜手法は、特に限定されず、推薦対象とされた複数の性質の全てについて一律に、推薦度が上位m個(mは、1以上の任意の数)の推薦アイテムを選抜するという手法、即ち、推薦対象の全性質とも呈示数の比率を一律にするという手法を採用してもよい。しかしながら、ユーザにとって、推薦対象とされた複数の性質は全て同一の重要度を持っているとは限らず、この手法を採用した場合、その呈示数の比率はユーザにとって必ずしも適切ではない、という新たな課題が発生してしまう。
そこで、本発明人は、この新たな課題も解決すべく、上述した本発明の手法に加えて、推薦アイテムをユーザに呈示する場合、第1の条件に従って呈示数の比率を決定する、という手法も発明した。この手法が適用されると、推薦対象の各性質毎に、対応する性質を有する複数の推薦アイテムの中から、対応する性質についての呈示数の比率と呈示総数とで決定される個数(この個数は、1以上の任意の整数値であり、性質毎に異なる値となることが多い)の推薦アイテムを、第2の条件に従ってそれぞれ選抜し、各性質毎にそれぞれ選抜された幾つかの個数の推薦アイテムをユーザに呈示することが可能になる。即ち、各性質毎に個数がまちまちの(配分比が異なることが多いため)推薦アイテムをユーザに呈示することが可能になる。
第1の条件は、特に限定されず、様々な条件を適用することができる。具体的には例えば、アイテムがワインとして、操作履歴として購入操作履歴に着目すると、赤ワイン、白ワイン、およびスパークリングワインのそれぞれを、7:2:1の比率で購入しているユーザに対しては、その購入数(操作履歴数)の比率を呈示数の比率とする条件を、第1の条件として適用することが可能である。この場合、呈示の配分比も7:2:1となる。即ち、赤ワインの呈示数の比率が70%、白ワインの呈示数の比率が20%、および、スパークリングワインの呈示数の比率が10%となる。従って、10本の推薦ワインが呈示可能であるとすると、7本の赤ワイン、2本の白ワイン、および、1本のスパークリングワインのそれぞれが推薦ワインとして、ユーザに呈示されることになる。なお、第1の条件のその他の具体例については、図2乃至図5を参照して後述する。
第2の条件も、特に限定されず、例えば、所定の性質についての呈示数がn(nは、0以上の任意の数である。ただし、nは、各性質毎に異なる値であることが多い)である場合、その所定の性質を有する推薦アイテムのうちの、推薦度が上位n番目までの推薦アイテムを選抜する、という条件を採用してもよい。
なお、呈示数の比率の決定タイミングが、上述した例では、推薦アイテム決定後とされたため、所定の性質を有する複数の推薦アイテムの中から、例えばn個の推薦アイテムが選抜された。ただし、呈示数の比率の決定タイミングは、当然ながら、推薦アイテム決定前でもよい。この場合、所定の性質についての呈示数がn個であることが先に決定されていれば、所定の性質を有する複数のアイテム(推薦アイテムの候補)の中から、n個丁度の推薦アイテムを単に決定すればよいことになる。
以上、本発明の原理(手法)について説明した。
次に、図面を参照して、本発明の実施の形態について説明する。
図1は、上述した本発明の手法が適用される推薦システム、即ち、本発明が適用される推薦システムの機能的構成例を表している。即ち、図1の推薦システムは、複数のアイテムの中からユーザに推薦すべき推薦アイテムを検索し、その検索結果をユーザに呈示する。
図1の例では、推薦システムは、推薦サーバ1、アプリケーションサーバ2、および、ユーザ機器3から構成されている。
なお、推薦サーバ1、アプリケーションサーバ2、および、ユーザ機器3のそれぞれは、図1の例では1台ずつ図示されているが、それらの台数は図1の例に限定されず任意の台数でよい。例えば、複数のユーザが存在する場合、複数のユーザのそれぞれが使用するユーザ機器3が存在することになり、当然ながら、ユーザ機器3の台数は必ずしも1台とはならない。
推薦サーバ1は、アプリケーションサーバ2との間で通信を行う。なお、その通信の形態は、特に限定されず、例えば、図1には図示していないが、1以上のネットワークを介在する形態でもよい。アプリケーションサーバ2は、推薦サーバ1の他、ユーザ機器3との間で通信を行う。なお、その通信の形態は、特に限定されず、図1の例ではネットワーク4を介在する形態とされているが、図1の例に限定されず、例えばネットワーク4を介在せずに直接通信を行う形態でもよい。また、ネットワーク4の形態も特に限定されない。ただし、本実施の形態では、ネットワーク4は、例えばインターネットであるとする。
推薦サーバ1は、上述した本発明の手法に対応する処理を主に実行する。このため、推薦サーバ1には、操作履歴管理部11乃至推薦リスト生成部14が設けられている。
操作履歴管理部11は、ユーザがユーザ機器3の操作部31を操作した場合、その操作内容をアプリケーションサーバ2を介して取得して、操作履歴として管理する。
ここで注目すべき点は、操作履歴管理部11は、その操作内容を、アイテムの各性質毎に個別に管理する点である。具体的には例えば、本実施の形態ではアイテムは上述したようにワインとされているので、その性質として、上述した赤ワイン、白ワイン、および、スパークリングワインの3種類に着目した場合には、操作履歴管理部11は、赤ワインについての操作内容、白ワインについての操作内容、および、スパークリングワインについての操作内容のそれぞれを個別に管理する。
操作履歴管理部11の管理手法は、特に限定されないが、ここでは、各性質毎のユーザ嗜好ベクトル(UPV)の生成および更新、並びに、UPV管理表の生成および更新を行う手法が採用されているとする。
なお、操作履歴管理部11は、UPVの生成または更新を行う場合、基本的に、アプリケーションサーバ2の操作履歴取得部21から供給される情報(ユーザの操作履歴情報)を利用するが、この情報に特定のワインが含まれる場合、例えば、ユーザが特定のワインの詳細情報を見たといった操作内容や、ワインを購入したといった操作内容がこの情報に含まれる場合、アイテム特徴ベクトル記憶部13に記憶されているアイテム特徴ベクトルのうちの、その特定のワインのアイテム特徴ベクトルも利用する。
この各性質毎のUPVとUPV管理表とが、UPV/UPV管理表記憶部12にユーザ毎に個別に記憶されている。
具体的には例えば、本実施の形態ではアイテムは上述したようにワインとされているので、その性質として、上述した赤ワイン、白ワイン、および、スパークリングワインの3種類に着目した場合には、赤ワインについてのUPV、白ワインについてのUPV、および、スパークリングワインについてのUPVのそれぞれが、UPV/UPV管理表記憶部12に記憶されて管理されることになる。
また、UPV/UPV管理表記憶部12に記憶されて管理されるUPV管理表とは、上述した推薦アイテムの呈示数の比率を決定するために利用される表であって、各ユーザ毎に個別に作成されて管理される表のことを言う。即ち、上述したように呈示数の比率は第1の条件に従って決定されるが、この第1の条件にとって適切なUPV管理表が、UPV/UPV管理表記憶部12に記憶されて管理されることになる。
このようなUPV管理表の具体例が図2乃至図4に示されている。そこで、以下、図2乃至図4を参照して、UPV管理表のそれぞれの具体例について、その順番で個別に説明していく。
図2は、UPVの更新(アクセス)頻度に応じて呈示数の比率が決定される場合に利用されるUPV管理表の具体例を示している。
即ち、例えばいま、アプリケーションサーバ2が、物品やコンテンツといったアイテム(本実施の形態ではワイン)を提供(販売等)するサービスを行うためのホームページ等(以下、サイトと称する)をインターネット4上で管理しているとする。そして、ユーザは、このサイトを見て(ユーザ機器3の表示部32に表示させ)、個々のアイテムやそれらが属するカテゴリに対するアクセス操作(いわゆるクリック操作等)や購入手続き操作を行う(操作部31の対応する操作を行う)とする。また、この操作が行われる毎に、対応する性質のUPVも更新されるとする。なお、この仮定は、後述する図3と図4との説明においても成立するとする。
この場合、各性質についてのUPV毎に、更新の回数またはアクセスの回数を蓄積することで、UPVの更新(アクセス)頻度に応じた呈示数の比率の決定が可能になる。このUPVの更新の回数またはアクセスの回数が記述される表の一具体例が、図2のUPV管理表である。
図2のUPV管理表において、第1列目の各行には、上から順に、UPVの名称が記述されており、最後に「各期間合計」が記述されている。ここで注目すべき点は、第1列目の各行に記述されている各UPVは何れも、とある一人のユーザについてのUPVであるという点である。即ち、とある一人のユーザについての、アイテムの各性質毎のUPVがUPV管理表に含まれているという点である。
なお、以下、説明の簡略上、「UPV1」は、赤ワインについてのUPVとされ、「UPV2」は、白ワインについてのUPVとされているとする。
第2列目以降の各列には、各期間のそれぞれにおける、各UPVの更新の回数またはアクセスの回数が記述され、最後の列には、全期間にわたっての各UPVの更新の回数またはアクセスの回数が記述される。従って、現時点を含む期間に対応する列と、全期間に対応する列とが更新の対象になる。なお、各期間は、特に限定されず、任意の期間でよく、他の期間と同一の長さである必要も特にない。さらに、各期間は、他の期間にまたがってもよい。例えば、「期間1」を、1セッション(ユーザがサイトを開いてから閉じるまで)として、「期間2」を、本日中(例えば午前6時から翌日午前6時まで)としてもよい。
例えば、「期間1」においては、「UPV1」の更新の回数またはアクセスの回数、即ち、赤ワインについてのユーザの操作回数は「3回」であり、「UPV2」の更新の回数またはアクセスの回数、即ち、白ワインについてのユーザの操作回数は「1回」であったことがわかる。なお、「期間1」が例えば過去の期間(先週等)である場合には、「期間1」についての第2列目の記述内容は更新されない。
また例えば、「期間2」においては、「UPV1」の更新の回数またはアクセスの回数、即ち、赤ワインについてのユーザの操作回数は「10回」であり、「UPV2」の更新の回数またはアクセスの回数、即ち、白ワインについてのユーザの操作回数は「5回」であったことがわかる。なお、「期間2」が例えば現時点を含む期間(今週等)である場合には、「期間2」についての第3列目は更新対象になる。即ち、例えば、その後、赤ワインについてのユーザ操作が行われると、「期間2」である第3列目の、「UPV1」である第2行目の記述内容が「10回」から「11回」に更新されることになる。なお、その際、「期間2」である第3列目の、「各期間合計」である最後の行の記述内容が「18回」から「19回」に更新されるとともに、「全期間」である最後の列の、「UPV1」である第2行目の記述内容が「58回」から「59回」に更新される
この図2の例のようなUPV管理表がUPV/UPV管理表記憶部12に記憶され、操作履歴管理部11により管理されることで、後述する推薦リスト生成部14は、このUPV管理表を使用して、UPVの更新(アクセス)頻度に応じて呈示数の比率を容易に決定することが可能になる。なお、推薦リスト生成部14による呈示数の比率の具体的な演算手法については後述する。
図3は、UPVの更新(アクセス)頻度に対してアクセス内容に応じた重み付けが行われ、重み付け後のUPVの更新(アクセス)頻度に応じて呈示数の比率が決定される場合に利用されるUPV管理表の具体例を示している。
上述したように、図3におていも図2と同様の仮定が成立しているとすると、UPVの更新またはアクセスの度に、アクセス内容に応じた重み(荷重)を積算し、その積算結果を蓄積することで、重み付け後のUPVの更新(アクセス)頻度に応じた呈示数の比率の決定が可能になる。この積算結果(重み付け後のUPVの更新の回数またはアクセスの回数)が記述される表の一具体例が、図3のUPV管理表である。
図3のUPV管理表において、第1列目の各行には、上から順に、UPVの名称が記述されており、最後に「合計」が記述されている。なお、以下、説明の簡略上、「UPV1」は、図2と同一の「UPV1」、即ち、同一ユーザの赤ワインについてのUPVとされ、「UPV2」は、図2と同一の「UPV2」、即ち、同一ユーザの白ワインについてのUPVとされているとする。
第2列目乃至第5列目のそれぞれには、「大カテゴリ」、「小カテゴリ」、「商品詳細」、および「商品購入」のそれぞれにおける、各UPVの更新の回数またはアクセスの回数そのものが記述される。
「大カテゴリ」、「小カテゴリ」、「商品詳細」、および「商品購入」のそれぞれは、アクセス内容を示している。即ち、一般的に、商品の販売サイトの構造は、カテゴリの大小に応じて階層化され、各階層毎のページが作成されていることが多い。このため、ユーザは、購入希望商品を見つけ出す場合、大きなカテゴリのページから小さなカテゴリのページに順次アクセスして対象を絞っていくことで、購入希望商品を特定することが多い。従って、大カテゴリのページへのアクセスが「大カテゴリ」に分類され、小カテゴリのページへのアクセスが「小カテゴリ」に分類され、購入希望商品を含む各商品の詳細内容が呈示されるページへのアクセスが「商品詳細」に分類され、かつ、購入希望商品の購入操作に伴うアクセスが「商品購入」に分類されることになる。
具体的には、例えばワインの販売サイトでは、その産地がカテゴリとされていることが多く、ユーザが例えばフランスのボルドー地方のシャトー○○という名称のワインを購入したいと考えた場合、次のような操作を行うことが多い。即ち、例えばはじめに、ユーザは、各国の名称等が呈示される第1のページ(例えばトップページ等)にアクセスする。例えば次に、ユーザは、第1のページの中からフランスを指定する操作を行うことで、フランスの各地方(ボルドー、ブルゴーニュ等)の名称等が呈示される第2のページにアクセスする。例えば次に、ユーザは、第2のページの中からボルドーを指定する操作を行うことで、ボルドー産のワインの詳細(名称、値段、コメント等)が呈示されている第3のページにアクセスする。そして例えば、ユーザが、第3のページのうちシャトー○○の購入に必要な各種操作を行う。この場合、第1のページへのアクセスが「大カテゴリ」に分類され、第2のページへのアクセスが「小カテゴリ」に分類され、第3のページへのアクセスが「商品詳細」に分類され、かつ、シャトー○○の購入に必要な各種操作に伴うアクセスが「商品購入」に分類されることになる。
この場合、ユーザにとってのアクセスの重要度は、一般的に、「大カテゴリ」、「小カテゴリ」、「商品詳細」、および「商品購入」の順に順次高くなっていく。即ち、ユーザが、所定の性質のアイテムについて、「大カテゴリ」までの操作を行った場合と、「商品詳細」までの操作を行った場合とでは、後者の場合の方が、所定の性質に対してより重要である(興味を持っている等)とユーザが捉えているとみなすことができる。
そこで、図3の例では、「大カテゴリ」、「小カテゴリ」、「商品詳細」、および「商品購入」のそれぞれに対して、荷重(重要度)として、1,2,3,5のそれぞれを与えているのである。これにより、UPVの更新(アクセス)頻度をアクセス内容に応じて重み付けを行うことが可能になる。
即ち、「積算ポイント」である第6列目のそれぞれには、アクセス内容に応じた重み付けがなされた後の各UPVの更新の回数またはアクセスの回数が記述されるのである。なお、以下、アクセス内容に応じた重み付けがなされた後の各UPVの更新の回数またはアクセスの回数を、図3の記載にあわせて、「積算ポイント」と称する。
具体的には例えば、「UPV1」の「積算ポイント」は、「44」(=3(回)×1(荷重)+8(回)×2(荷重)+5(回)×3(荷重)+2(回)×5(荷重))となる。同様に例えば、「UPV2」の「積算ポイント」は、「18」(=1(回)×1(荷重)+3(回)×2(荷重)+2(回)×3(荷重)+1(回)×5(荷重))となる。
この図3の例のようなUPV管理表がUPV/UPV管理表記憶部12に記憶され、操作履歴管理部11により管理されることで、後述する推薦リスト生成部14は、このUPV管理表を使用して、「積算ポイント」に応じて呈示数の比率を容易に決定することが可能になる。なお、推薦リスト生成部14による呈示数の比率の具体的な演算手法については後述する。
図4は、ユーザの過去の操作傾向に応じて呈示数の比率が決定される場合におけるUPV管理表の具体例を示している。
上述したように、図4におていも図2や図3と同様の仮定が成立しているとすると、ユーザの操作履歴の傾向を分析することで、類似度の演算に利用されるUPVが第1のUPVから第2のUPVへ遷移する遷移確率や、2以上のUPVが同時に類似度の演算に利用される確率を計算し、それらの確率に応じた呈示数の比率の決定することが可能になる。これにより、例えば、ユーザの購買の遷移傾向(操作傾向)に追従して、アイテムの推薦を適切に行うことが可能になる。このような確率のうちの遷移確率が記述される表の一具体例が、図4のUPV管理表である。
図4のUPV管理表において、第1列目の各行には、上から順に、UPVの名称が記述されており、最後に「合計」が記述されている。なお、以下、説明の簡略上、「UPV1」は、図2と同一の「UPV1」、即ち、同一ユーザの赤ワインについてのUPVとされ、「UPV2」は、図2と同一の「UPV2」、即ち、同一ユーザの白ワインについてのUPVとされているとする。また、「UPV3」は、同一ユーザのスパークリングワインについてのUPVとされているとする。
第2列目と第3列目とのそれぞれには、短期間と長期間のそれぞれについての、各UPVの「積算ポイント」が記述される。
第4列目乃至第6列目のそれぞれには、各UPVから「UPV1への遷移確率」、各UPVから「UPV2への遷移確率」、各UPVから「UPV3への遷移確率」のそれぞれが記述される。具体的には例えば、「UPV2」に対応する第3行目に着目すると、「UPV2」から「UPV1への遷移確率」は「0.01」であり、「UPV2」から「UPV2への遷移確率」は「0.24」であり、「UPV2」から「UPV3への遷移確率」は「0.45」である。従って、「UPV2」から「UPV3への遷移確率」が最も高いことから、このユーザの操作傾向としては、白ワインについての操作(購入操作等)後、スパークリングワインについての操作(購入操作)を行うことが多いことがわかる。
以上、図2乃至図4を参照して、UPV管理表のそれぞれの具体例について説明した。
図1に戻り、アイテム特徴ベクトル記憶部13には、1以上のアイテム(本実施の形態ではワイン)のそれぞれについてのアイテム特徴ベクトルが記憶されている。
推薦リスト生成部14は、UPV選択部41、推薦選択部42、および、表示配分決定部43を含むように構成されている。
UPV選択部41は、アプリケーションサーバ2の推薦取得部2から推薦リクエストを受け取ると、推薦ワインの呈示先であるユーザの各UPV(各性質毎のUPV)の中から、推薦対象の性質についてのUPVを、UPV/UPV管理表記憶部12から選択して取得する。なお、推薦対象の性質の決定手法は、特に限定されないが、ここでは、例えば、推薦リクエストの内容や現在の状況(ユーザの操作状況や、ユーザに呈示されているサイトのページ等)に基づいて、推薦対象の性質を決定する手法が採用されているとする。
推薦選択部42は、UPV選択部41により選択された推薦対象の性質についてのUPVと、アイテム特徴ベクトル記憶部13に記憶された複数のアイテム特徴ベクトルのうちの推薦対象の性質を有するものとの類似度をそれぞれ求める。次に、推薦選択部42は、それらの類似度に基づいて、対応するアイテムの推薦度を演算する。推薦度の演算手法は、特に限定されないが、ここでは説明の簡略上、類似度がそのまま推薦度となるとする。次に、推薦選択部42は、例えば、推薦度が閾値以上のアイテム特徴ベクトルが示す1以上のアイテムを、推薦対象の性質を有する推薦アイテムとして決定する。
換言すると、推薦リスト生成部14は、推薦対象の性質についてのUPVを使用して、推薦対象の性質を有するアイテムの中からユーザにとって適切なアイテムを推薦する機能を有している。この機能を実現するために、推薦リスト生成部14には、UPV選択部41と推薦選択部42とが設けられているのである。
さらに、推薦リスト生成部14は、推薦アイテムの各性質毎の呈示の比率を決定する機能を有している。この機能を実現するために、推薦リスト生成部14にはさらに、表示配分決定部43が設けられているのである。
即ち、表示配分決定部43は、UPV/UPV管理表記憶部12に記憶されているUPV管理表を参照して、推薦対象の1以上の性質毎にそれぞれ呈示の比率を演算(決定)する。
すると、推薦選択部42は、推薦対象の1以上の性質毎にそれぞれ、表示配分決定部43により決定された呈示の比率に基づく個数(この個数は、各性質毎に異なることが多い)の推薦アイテムを選抜し、選抜された各性質毎のアイテムのそれぞれを含むリスト(以下、推薦リスト)を生成し、アプリケーションサーバ2の推薦取得部23に供給する。
なお、実際には、推薦リストとは、1以上の推薦アイテムのそれぞれを特定可能な情報を、例えば推薦度の高い順にソートしたリストのことをいう。推薦アイテムを特定可能な情報とは、例えば本実施の形態のようにアイテムがワインである場合には、個々のワインに固有の識別子(ID)、あるいはワインの名称、産地、生産者(ドメーヌやワイナリー)等をいう。また、推薦リストの中に、その他の情報、例えば、ワインの価格や、そのワインの推薦理由等を含ませることも当然ながら可能である。
ところで、表示配分決定部43による呈示の比率の演算手法は、特に限定されないが、上述したように、参照先のUPV管理表を利用可能な演算手法である必要がある。そこで、以下、上述した図2乃至図4のそれぞれの例のUPV管理表を利用する、呈示の比率の演算手法の一例について説明していく。
はじめに、図2の例のUPV管理表を利用可能な呈示の比率の演算手法の一例について説明する。
即ち、推薦の場面(ページ等)に応じて、対象期間を決定し、換言すると、図2の例のUPV管理表のうちの対象列を決定し、当該期間中の期間合計回数(決定した列の最終行である「各期間合計」の記述値)を、各UPVの更新(アクセス)回数(決定した列の、各UPVを示す行の記述値)で除算することで、各UPV毎の表示配分を決定するといった演算手法が、図2の例のUPV管理表を利用可能な呈示の比率の演算手法の一例である。なお、以下、係る手法を、他の手法と区別するために、第1の比率演算手法と称する。
具体的には例えばいま、図2の例のUPV管理表において、「期間1」が1セッションとされ、「期間1」中の赤ワインと白ワインとのそれぞれのアクセス頻度に応じて、配分比率が決定されるとする。この場合、赤ワインについての「UPV1」の「期間1」(1セッション)中の更新回数は「3回」とされ、「期間1」の「各期間合計」が4回とされているので、赤ワインの呈示の比率(配分比)は、3/4になる。同様に、白ワインについての「UPV2」の「期間1」(1セッション)中の更新回数は「1回」とされ、「期間1」の「各期間合計」が「4回」とされているので、白ワインの呈示の比率(配分比)は、1/4になる。従って、推薦ワインとして4本のワインをユーザに呈示できるとすると、赤ワイン3本と白ワイン1本とが推薦ワインとしてユーザに呈示されることになる。
次に、図3の例のUPV管理表を利用可能な呈示の比率の演算手法の一例について説明する。
即ち、ユーザの各ページへのアクセスの状況に応じて、各UPV毎の表示配分を決定するといった演算手法が、図3の例のUPV管理表を利用可能な呈示の比率の演算手法の一例である。換言すると、図3の例のUPV管理表において、各UPVの「積算ポイント」を、「積算ポイント」の「合計」で除算することで、各UPV毎の表示配分を決定するといった演算手法が、図3の例のUPV管理表を利用可能な呈示の比率の演算手法の一例である。なお、以下、係る手法を、他の手法と区別するために、第2の比率演算手法と称する。
具体的には例えばいま、図3の例のUPV管理表において、赤ワインについての「UPV1」の「積算ポイント」は「44」とされ、「積算ポイント」の「合計」が「80」とされているので、赤ワインの呈示の比率(配分比)は44/80=約0.6になる。同様に、白ワインについての「UPV2」の「積算ポイント」は「18」とされ、「積算ポイント」の「合計」が「80」とされているので、白ワインの呈示の比率(配分比)は、18/80=約0.2になる。従って、推薦ワインとして10本のワインをユーザに呈示できるとすると、赤ワイン6本、白ワイン2本、その他のワイン(スパークリングワイン等)2本が推薦ワインとしてユーザに呈示されることになる。
さらに、図2の例のUPV管理表と図3の例のUPV管理表とを組み合わせて、各期間毎に「積算ポイント」を蓄積した結果を記述するUPV管理表を生成し、それを採用することができる。即ち、上述した図4の例の第2列目と第3列目のような情報を有するUPV管理表を採用することもできる。このようなUPV管理表が採用されている場合には、各期毎に蓄積した「積算ポイント」を用いて、場面にあった推薦比率を決定する、という手法を採用することもできる。例えば、サイトのトップページでは、全期間の「積算ポイント」を使って推薦比率を決定し、決済ページやバスケット(買い物籠)の内容確認ページといった下位のページでは短期(1セッションまたは一日)の「積算ポイント」を使って推薦比率を決定する、という手法を採用することもできる。なお、以下、係る手法を、他の手法と区別するために、第3の比率演算手法と称する。
次に、図4の例のUPV管理表を利用可能な呈示の比率の演算手法の一例について説明する。
即ち、各遷移確率に基づいてユーザの次の操作を推測し、その推測結果に基づいて各UPV毎の表示配分を決定するといった演算手法が、図4の例のUPV管理表を利用可能な呈示の比率の演算手法の一例である。なお、以下、係る手法を、他の手法と区別するために、第4の比率演算手法と称する。
具体的には例えば、図4の例のUPV管理表では、白ワインについての「UPV2」から、スパークリングワインについての「UPV3への遷移確率」が「0.45」と最も高いので、このユーザの操作傾向は、白ワインの購入操作後に、スパークリングワインの購入操作をすることが最も多いことになる。そこで、図1の表示配分決定部43は、この第4の比率演算手法を適用することで、例えば所定の白ワインについての購入決定キーの押下操作が行われた場合、その後に、例えばスパークリングワインの配分比が高くなるように、各種類(赤ワイン、白ワイン、およびスパークリングワイン)の呈示の比率を変更することが可能になる。
また例えば、図4の例のUPV管理表では、スパークリングワインについての「UPV3」から、白ワインについての「UPV2への遷移確率」も「0.32」と他に比べて比較的高いので、このユーザは、結局、1セッション等の所定の期間で見ると、白ワインとスパークリングワインとを同時に購入していることが多い(そのような操作をしていることが多い)と言える。そこで、表示配分決定部43は、この第4の比率演算手法を適用することで、例えば所定のスパークリングワインをバスケット(買い物籠)に入れる操作がなされた時点で、例えば白ワインの配分比が高くなるように、各種類の呈示の比率を変更することも可能になる。
なお、遷移確率は、上述した例では、呈示の比率を算出するために利用されたが、次の推薦処理の対象となるUPVを決定するために利用することも可能である。具体的には例えば、所定の白ワインについての購入決定キーの押下操作が行われた後に、図1のUPV選択部41は、例えばスパークリングワインについての「UPV3」を選択することが可能になる。同様に例えば、所定のスパークリングワインをバスケット(買い物籠)に入れる操作がなされた時点で、UPV選択部41は、白ワインを示す「UPV2」を選択することが可能になる。
その他、例えば、月ごとに、UPVの利用頻度を蓄積したUPV管理表を採用することで、季節による推薦内容の変化を演出するように呈示の比率を決定する、という手法を採用することもできる。例えば、12月(クリスマス)においては、スパークリングワインの「UPV3」の利用頻度が高いことがそのUPV管理表から判断できたとすると、12月のワイン推薦においては、スパークリングワインがより多く推薦されるように各種類(赤ワイン、白ワイン、および、スパークリングワイン)の呈示の比率を変更する、といった手法を採用することもできる。なお、以下、係る手法を、他の手法と区別するために、第5の比率演算手法と称する。
ところで、図1の操作履歴管理部11は、アイテムの各性質毎のユーザの操作履歴を、例えば本実施の形態ではUPVという形態で管理しているとしたが、その管理形態は本実施の形態に特に限定されない。例えば、操作履歴管理部11は、操作履歴情報のまま管理し、即ち、操作履歴情報をUPV/UPV管理表記憶部12に記憶させ、必要なときに必要な操作履歴情報だけを利用してUPVを生成することも可能である。これにより、例えば、操作履歴管理部11は、短期と長期とに分けて別々に操作履歴情報をUPV/UPV管理表記憶部12に蓄積して管理することが可能になり、その結果、短期の操作履歴情報だけに基づくUPV(以下、短期UPVと称する)、および、長期の操作履歴情報だけに基づくUPV(以下、長期UPVと称する)のそれぞれを個別に生成することが可能になる。この場合、推薦リスト生成部14は、この短期UPVと長期UPVとを併用することで、現状況により相応しい推薦アイテムを決定することが容易にできる。
具体的には例えば、バスケット(買い物籠)のページでは、操作履歴管理部11は、1セッション中のユーザの操作履歴情報だけを使用して、アイテムの各性質毎のUPV(例えば、赤ワイン、白ワイン、およびスパークリングワインのそれぞれについてのUPV)を生成し、推薦リスト生成部14は、それらの各性質毎のUPVを用いて、各性質毎のアイテムのそれぞれを推薦アイテムとして決定することができる。そして、推薦リスト生成部14は、対象となるセッション中の各性質毎のUPVへのアクセス頻度(または状況)から各性質毎の呈示の比率を決定することができる。
また例えば、サイトのトップページでは、操作履歴管理部11は、そのユーザの過去の操作履歴情報の全てを使用して、アイテムの各性質毎のUPVを生成し、推薦リスト生成部14は、それらの各性質毎のUPVを用いて、各性質毎のアイテムのそれぞれを推薦アイテムとして決定することができる。そして、推薦リスト生成部14は、過去の全期間にわたる各性質毎のUPVへのアクセス頻度(または状況)から各性質毎の呈示の比率を決定することができる。
また例えば、購入後のページでは、推薦リスト生成部14は、過去の操作履歴情報の全てから生成されたUPVを利用して推薦アイテムを再度決定し、対象となるセッション中の各性質毎のUPVへのアクセス頻度(または状況)から各性質毎の呈示の比率を決定することができる。その結果、推薦リスト生成部14は、過去の購入内容とその日の購入配分とを加味した上で、追加注文の可能性を拡大させるようなアイテムを、推薦アイテムとして決定することができる。
以上、図1の推薦システムのうちの、推薦サーバ1の機能的構成例について説明した。次に、アプリケーションサーバ2と、ユーザ機器3とのそれぞれの機能的構成例について説明する。
アプリケーションサーバ2は、操作履歴取得部21乃至表示内容生成部24を含むように構成されている。
操作履歴取得部21は、ユーザ機器3の操作部31の操作内容をネットワーク4を介して取得し、推薦サーバ1に供給する。
サービス提供部22は、各種サービスを表示内容生成部24に提供する。具体的には例えば、上述したアイテムの提供(販売等)を行うためのサイトが、サービス提供部22が提供するサービスの一例である。
推薦取得部23は、アイテムの推薦の処理に利用される操作部31の操作内容や、アイテムの推薦リクエスト等を推薦サーバ1の推薦リスト生成部14に供給する。また、推薦取得部23は、その推薦リクエストを受けた推薦リスト生成部14により生成された推薦リストを取得して、表示内容生成部24に供給する。
表示内容生成部24は、ユーザ機器32の表示部32の表示内容となる画像(データ)を生成し、ユーザ機器3の表示部32にネットワーク4を介して提供する。ユーザ機器32の表示部32の表示内容となる画像(データ)とは、例えば、サービス提供部22から提供されるサイトの画像や、推薦取得部23から供給される推薦リストの画像のことをいう。
ユーザ機器3は、操作部31と表示部32とを少なくとも含むように構成される。
即ち、ユーザは、表示部32に表示される表示内容(アイテムの販売サイトや、アイテムの推薦リスト)を見ながら、操作部31を操作して各種操作を行う。なお、ユーザの操作については、幾つかの具体例を既に上述しているので、ここでは省略する。
次に、図5のフローチャートを参照して、図1の推薦システムのうちの推薦サーバ1の処理の一例について説明する。
ステップS1において、推薦サーバ1の操作履歴管理部11は、ユーザの操作がなされたか否かを判定する。
アプリケーションサーバ2の操作履歴取得部21から特に何の情報も供給されてこない場合、ステップS1において、ユーザの操作がなされていないと判定されて、処理はステップS3に進む。
これに対して、アプリケーションサーバ2の操作履歴取得部21から所定のユーザについての操作履歴情報(操作内容)が供給されてきた場合、操作履歴管理部11は、ステップS1において、ユーザの操作がなされたと判定して、ステップS2において、UPV/UPV管理表記憶部12に記憶されている対象ユーザのUPVおよびUPV管理表の生成または更新を行う。これにより、処理はステップS3に進む。
なお、上述したように、操作履歴管理部11は、ステップS2の処理の時点では、UPVの生成または更新を行わずに、アプリケーションサーバ2から供給された操作履歴情報をそのままUPV/UPV管理表記憶部12に記憶して管理し、後述するステップS3の処理で推薦リクエストがなされたと判定された時点で、その操作履歴情報を利用してUPVの生成または更新を行ってもよい。
ステップS3において、推薦サーバ1の推薦リスト生成部14は、アプリケーションサーバ2の推薦取得部23から推薦リクエストがなされたか否かを判定する。
ステップS3において、推薦リクエストがなされていないと判定された場合、ステップS4の処理は実行されずに、処理はステップS5に進む。
これに対して、ステップS3において、推薦リクエストがなされたと判定された場合、処理はステップS4に進む。ステップS4において、推薦リスト生成部14は、上述した推薦リストを生成して、アプリケーションサーバ2の推薦取得部23に供給する。係るステップS4の処理を、以下、「推薦リスト生成処理」と称する。「推薦リスト生成処理」の詳細については、図6のフローチャートを参照して後述する。
ステップS4の「推薦リスト生成処理」が終了すると、処理はステップS5に進む。ステップS5において、推薦サーバ1は、処理の終了が指示されたか否かを判定する。
ステップS5において、処理の終了が指示されたと判定された場合、推薦サーバ1の処理は終了となる。
これに対して、処理の終了がまだ指示されていないと判定された場合、処理はステップS1に戻され、それ以降の処理が繰り返し実行される。
なお、図5の処理例では、ステップS4の「推薦リスト生成処理」が行われている最中に、ユーザの操作が行われた場合には、ステップS2の処理、即ち、UPVおよびUPV管理表の生成または更新の処理は行われない。ただし、上述したように、操作履歴管理部11と推薦リスト生成部14とのそれぞれは、相互に独立して処理を実行することが可能である。即ち、実際には、ステップS1とS2との処理、および、ステップS3とS4との処理は、相互に独立して並列実行される。
ここで、図6のフローチャートを参照して、ステップS4の「推薦リスト生成処理」の詳細例について説明する。
ステップS21において、図1の推薦リスト生成部14のUPV選択部41は、対象ユーザのUPVを1以上選択する。
詳細には、ステップS21において、UPV選択部41は、推薦リクエストを分析することで推薦対象の性質を決定して、推薦対象の性質についてのUPVを、UPV/UPV管理表記憶部12から選択して取得し、推薦選択部42に供給する。なお、その際、UPV選択部41は、上述した短期履歴情報や長期履歴情報を考慮したUPVの選択を行うことも当然ながらできる。
ステップS22において、推薦選択部42は、選択されたUPV毎に、推薦アイテムを決定する。即ち、ステップS22の処理で、推薦対象の性質毎に、1以上の推薦アイテムがそれぞれ個別に決定される。
ステップS23において、表示配分決定部43は、UPV/UPV管理表記憶部12に記憶されている対象ユーザのUPV管理表を参照して、推薦対象の性質毎に、呈示の比率(配分比)をそれぞれ決定する。
ステップS24において、推薦選択部42は、UPV毎(推薦対象の性質毎)に、推薦リストに含める推薦アイテムをそれぞれ個別に決定する。即ち、ステップS24の処理で、推薦対象の性質毎に、ステップS23の処理で決定された呈示の比率(配分比)に基づく個数(この個数は、各性質毎に異なることが多い)の推薦アイテムがそれぞれ個別に決定されることになる。
ステップS25において、推薦選択部42は、ステップS24の処理で決定された各性質毎の推薦アイテムのそれぞれを、おすすめ度(即ち、推薦度であり、ここでは類似度そのもの)順にソートすることで、推薦リストを生成する。
ステップS26において、推薦選択部42は、推薦リストを、アプリケーションサーバ2の推薦取得部23に送信する。
これにより、「推薦リスト生成処理」は終了となる。即ち、図5のステップS4の処理が終了し、処理はステップS5に進むことになる。
以上、推薦サーバ1の処理の一例について説明した。
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることができる。
この場合、図1の推薦システムの推薦サーバ1、アプリケーションサーバ2、ユーザ機器3のそれぞれは、例えば、図7に示されるパーソナルコンピュータで構成することができる。
図7において、CPU(Central Processing Unit)101は、ROM(Read Only Memory)102に記録されているプログラム、または記憶部108からRAM(Random Access Memory)103にロードされたプログラムに従って各種の処理を実行する。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU101、ROM102、およびRAM103は、バス104を介して相互に接続されている。このバス104にはまた、入出力インタフェース105も接続されている。
入出力インタフェース105には、キーボード、マウスなどよりなる入力部106、ディスプレイなどよりなる出力部107、ハードディスクなどより構成される記憶部108、および、モデム、ターミナルアダプタなどより構成される通信部109が接続されている。通信部109は、インターネットを含むネットワークを介して他の装置(図示せず)との間で行う通信を制御する。
入出力インタフェース105にはまた、必要に応じてドライブ110が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブル記録媒体111が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部108にインストールされる。
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
このようなプログラムを含む記録媒体は、図7に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フロッピディスクを含む)、光ディスク(CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD(Mini-Disk)を含む)、もしくは半導体メモリなどよりなるリムーバブル記録媒体(パッケージメディア)111により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM102や、記憶部108に含まれるハードディスクなどで構成される。
なお、アイテムの性質は、上述した例では、赤ワイン、白ワイン、および、スパークリングワインといった3種類の性質が利用されたが、当然ながら、この例に限定されず、2種類以上にアイテムを分類可能である各種性質を利用することができる。即ち、任意の性質のUPVを採用することができる。具体的には例えば、アイテムがワインである場合、価格帯別のUPV(例えば、1万円未満のUPVと1万円以上のUPV等)、葡萄の品種別のUPV(例えば、カベルネソービニヨン種のUPV、メルロ種のUPV、ピノノワール種のUPV等)、産地別のUPV(例えば、フランスワインであれば、ボルドー地方のUPV、ブルゴーニュ地方のUPV、ロワール地方のUPV、コートデュローヌ地方のUPV、シャンパーニュ地方のUPV等、各地方毎のUPV)、生産者別のUPV(例えば、ブルゴーニュワインであれば、ドメーヌやメゾン毎のUPVであり、カリフォルニアワイン等であれば、ワイナリー毎のUPVである)、年代別のUPV(例えば、古酒のUPVとそれ以外のUPV等)、および、甘さ度別のUPV(例えばドイツワインであれば、シュぺトレーゼのUPV、アウスレーゼのUPV等、ドイツのワイン法で規定されている各種類毎のUPV)、といった様々な性質のUPVを採用することが可能である。
ただし、これらの様々な性質のUPVの全てを利用するのではなく、上述したように、ユーザの嗜好傾向の違いを考慮した性質のUPVを利用するとよい。即ち、各性質毎のUPVの間に明らかな差(違い)ができるような、各性質のUPVを利用するとよい。この場合、その差を計る尺度としては、統計的な優位差、情報工学的な情報量(エントロピー)などを利用することができる。これらの尺度は、例えば、事前に実験によって得たデータや実際のサービスより得たデータなどから、複数ユーザのデータを抽出して計算することで得られる。従って、設計者等は、事前にこれらの尺度を求めておき、明らかな差が期待できる各性質のUPVを採用するとよい。
さらに、所定の性質を階層化して、各階層毎のそれぞれに属する種類毎にUPVを生成して、それらのUPVを使用することも可能である。具体的には例えば、産地別のUPVであれば、フランスワインの場合、フランスのワイン法であるA.C(Appellation Controlee)法(即ち、原産地統制名称法)で規定されているA.O.C(Appellation d'Origine Controlee)に則った階層、即ち、第1層として地方レベルを定義し、第2層として地区レベルを定義し、かつ、第3層として村レベルを定義し、第1層乃至第3層のそれぞれについて、複数種類のUPVを生成して、使用することが可能である。
即ち、例えば、第1層のUPVとしては、上述したボルドー地方のUPV等を生成して、使用することが可能である。また例えば、ボルドー地方についての第2層のUPVとしては、メドック地区のUPV、グラーブ(ぺサックレオニャン)地区のUPV、サンテミリオン地区のUPV、ポムロル地区のUPV、ソーテルヌ地区のUPV、およびその他のUPVのそれぞれを生成して、使用することが可能である。さらに例えば、メドック地区についての第3層のUPVとしては、サンテステフ村のUPV、ポイヤック村のUPV、サンジュリアン村のUPV、マルゴー村のUPV、および、その他のUPVのそれぞれを生成して、使用することが可能である。
なお、階層化する場合も、各性質毎のUPVの間に明らかな差(違い)ができる階層までのUPVを利用するとよい。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置や処理部により構成される装置全体を表すものである。
1 推薦サーバ, 2 アプリケーションサーバ, 3 ユーザ機器, 4 ネットワーク, 11 操作履歴管理部, 12 UPV/UPV管理表記憶部, 13 アイテム特徴ベクトル記憶部, 14 推薦リスト生成部, 41 UPV選択部, 42 推薦選択部, 43 表示配分決定部, 101 CPU, 102 ROM, 103 RAM, 108 記憶部, 111 リムーバブル記録媒体