(57)【特許請求の範囲】
【請求項１】
サービスの利用者に対して、当該サービスにおけるアイテムの推薦機能に加えて、アイテムの個人化されたメタデータを提示する情報推薦装置であって、
ユーザID、アイテムID、アイテムのメタデータ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースと、
前記アイテム履歴データベースの情報を隣接行列として表す、推薦システム用の隣接行列構築処理部と、
前記隣接行列を用いてユーザに推薦アイテムを予測して、推薦アイテムとそのアイテムに付与されているメタデータを関連メタデータとして、それぞれのユーザとの関連度を出力する推薦アイテム予測処理部と、
前記推薦アイテム予測処理部が予測した推薦アイテムと関連メタデータと、前記推薦システム用の隣接行列提供部から得られる前記隣接行列を用いて、アイテムと同時に提示する個人化されたメタデータを抽出する、提示メタデータ選択処理部と、
前記推薦アイテムと前記個人化されたメタデータを前記利用者に提示する提示処理部と、
を有することを特徴とする情報推薦装置。
【請求項２】
前記提示メタデータ選択処理部は、
前記推薦アイテム予測処理部から得られた前記推薦アイテムおよび関連メタデータの関連度と、
前記推薦システム用の隣接行列構築処理部から得られる前記隣接行列を用いて求められるPageRank値と前記関連メタデータの関連度の比が最大であるものを、関連メタデータの中からアイテムと同時に提示する提示メタデータとして選択する手段を含む、
請求項１に記載の情報推薦装置。
【請求項３】
サービスの利用者に対して、当該サービスにおけるアイテムの推薦機能に加えて、アイテムの個人化されたメタデータを提示する情報推薦方法であって、
隣接行列構築手段が、ユーザID、アイテムID、アイテムのメタデータ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースの情報を隣接行列として表す、推薦システム用の隣接行列構築処理ステップと
推薦アイテム予測処理手段が、前記隣接行列を用いてユーザに推薦アイテムを予測して、推薦アイテムとそのアイテムに付与されているメタデータを関連メタデータとして、それぞれのユーザとの関連度を出力する推薦アイテム予測処理ステップと、
提示メタデータ選択手段が、前記推薦アイテム予測処理ステップにおいて予測された推薦アイテムと関連メタデータと、前記推薦システム用の隣接行列構築処理ステップで得られた前記隣接行列を用いて、アイテムと同時に提示する個人化されたメタデータを抽出する、提示メタデータ選択処理ステップと、
提示処理手段が、前記推薦アイテムと前記個人化されたメタデータを前記利用者に提示する提示処理ステップと、
を行うことを特徴とする情報推薦方法。
【請求項４】
前記提示メタデータ選択処理ステップにおいて、
前記推薦アイテム予測処理ステップで得られた前記推薦アイテムおよび関連メタデータの関連度と、前記推薦システム用の隣接行列構築処理ステップで得られた前記隣接行列を用いて求められるPageRank値と前記関連メタデータの関連度の比が最大であるものを、関連メタデータの中からアイテムと同時に提示する提示メタデータとして選択する
請求項３に記載の情報推薦方法。
【請求項５】
コンピュータを、
請求項１または２記載の情報推薦装置の各手段として機能させるための情報推薦プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報推薦装置及び方法及びプログラムに係り、特に、情報推薦においてアイテムの個人化されたメタデータを同時に提示して推薦を行う情報推薦装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
本発明を実現するための従来技術として、最も出現頻度の多いメタデータを選ぶ方法や、Jaccard係数やカイ二乗値などの統計的な基準によって選ぶ方法が考えられる。出現頻度を用いる方法は、推薦すべきアイテム（以下、推薦アイテム）に付与されたメタデータの中から、全てのアイテムに付与されたメタデータの数をそれぞれカウントして最も付与されているメタデータを選ぶ方法である。また、Jaccard係数やカイ二乗値などの統計的な指標による方法は、ユーザの履歴に含まれるアイテムのメタデータと、推薦アイテムのメタデータの関連度を計算することができ、ユーザの履歴が多い場合は個人化されたメタデータの抽出が可能である。
【０００３】
また、Random Walk with Restart (RWR)と呼ばれるグラフ理論のアプローチによって、推薦アイテムに付与されたメタデータの中から、ユーザとの関連度の高いメタデータを選ぶ方法が考えられる（例えば、非特許文献１参照）。RWRは、ユーザ、アイテム、メタデータをそれぞれグラフのノードとして、その関係をエッジとしてもつグラフにおいて、ユーザとメタデータの関連度を計算する手法であり、その関連度の高いものを個人化されたメタデータとして抽出することができる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Tong, H., Faloutsos, C. and Pan, J.-Y.: Fast random walk with restart and its applications, in Proc. ICDM '06, pp.613-622 (2006).
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、最も出現頻度の多いメタデータを選ぶ方法や、Jaccard係数やカイ二乗値などの統計的な基準によって選ぶ方法は、ユーザが履歴としてもつアイテムが少数の場合にメタデータを抽出できなくなりやすい問題や、階層的に付与されたメタデータの選択がうまくいかないという問題がある。
【０００６】
また、上記非特許文献１の技術を適用することで、統計的な基準と同様の問題を回避することができるものの、大量のアイテムのメタデータとなっているメタデータなど、様々なアイテムと関連付けられているメタデータが選ばれやすいという問題がある。
【０００７】
本発明は、上記の点に鑑みなされたもので、アイテムに付与されたメタデータの中から、推薦を受けるユーザとだけより関連の強いメタデータ(個人化メタデータ)を選択し、推薦アイテムと同時に提示可能な情報推薦装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本発明は、サービスの利用者に対して、当該サービスにおけるアイテムの推薦機能に加えて、アイテムの個人化されたメタデータを提示して推薦可能な推薦装置であって、
ユーザID、アイテムID、アイテムのメタデータ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースと、
前記アイテム履歴データベースの情報を隣接行列として表す、推薦システム用の隣接行列構築処理部と、
前記隣接行列を用いてユーザに推薦アイテムを予測して、推薦アイテムとそのアイテムに付与されているメタデータを関連メタデータとして、それぞれのユーザとの関連度を出力する推薦アイテム予測処理部と、
前記推薦アイテム予測処理部が予測した推薦アイテムと関連メタデータと、前記推薦システム用の隣接行列提供部から得られる隣接行列を用いて、アイテムと同時に提示する個人化されたメタデータを抽出する、提示メタデータ選択処理部と、
推薦するアイテムと個人化されたメタデータの提示処理部と、を有する。
【０００９】
また、前記提示メタデータ選択処理部は、
前記推薦アイテム予測処理部から得られる推薦アイテムおよび関連メタデータの関連度と、
前記推薦システム用の隣接行列構築処理部から得られる隣接行列を用いて求められるPageRank値と前記関連メタデータの関連度の比が最大であるものを、関連メタデータの中からアイテムと同時に提示する提示メタデータとして選択する。
【発明の効果】
【００１０】
上記のように本発明によれば、情報推薦において、推薦アイテムに付与されたメタデータの中からユーザとより関連度の高い個人化メタデータを抽出することができる。
【００１１】
また、推薦アイテムと該個人化メタデータを同時に提示して推薦を行う情報推薦が実現できる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施の形態における情報推薦装置の構成図である。
【図２】本発明の一実施の形態における情報推薦システム用の隣接行列生成のフローチャートである。
【図３】本発明の一実施の形態におけるアイテム履歴データベースのテーブルのイメージである。
【図４】本発明の一実施の形態におけるアイテム履歴データベースの隣接行列による表現例である。
【図５】本発明の一実施の形態における情報推薦装置のフローチャートである。
【発明を実施するための形態】
【００１３】
以下図面と共に、本発明の実施の形態を説明する。
【００１４】
図１は、本発明の一実施の形態における情報推薦装置の構成図である。同図に示す情報推薦装置は、ユーザＩＤ取得部１１０、アイテム履歴データベース１２０、推薦システム用の隣接行列提供部１３０、推薦アイテム予測処理部１４０、提示メタデータ選択処理部１５０、提示部１６０から構成される。
【００１５】
ユーザID取得部１１０は、推薦を受けるユーザIDを取得し、推薦アイテム予測処理部１４０に出力する。
【００１６】
アイテム履歴データベース１２０は、ユーザID、アイテムID、アイテムのメタデータ、ユーザのアイテムへの評価値についての情報を格納する。
【００１７】
図３は、本発明の一実施の形態におけるアイテム履歴データベース１２０のテーブルのイメージである。ユーザＩＤ、アイテムＩＤ、メタデータＩＤ、アイテムへの評価値がそれぞれ参照できるようなデータベースとなっている。
【００１８】
推薦システム用の隣接行列提供部１３０は、後述する方法により、アイテム履歴データベース１２０の情報を隣接行列として表す処理を行う。
【００１９】
推薦アイテム予測処理部１４０は、推薦システム用の隣接行列提供部１３０から取得した隣接行列を用いてユーザに推薦アイテムを予測して、提示処理部１６０に出力すると共に、推薦システムとそのアイテムに付与されているメタデータを関連メタデータとして、それぞれのユーザの関連度を提示メタデータ選択処理部１５０に出力する。
【００２０】
提示メタデータ選択処理部１５０は、推薦アイテム予測処理部１４０から取得した関連メタデータの関連度と推薦システム用の隣接行列提供部１３０から取得した隣接行列を用いて、アイテムと同時に提示するユーザ毎のメタデータを選択する。
【００２１】
提示処理部１６０は、推薦アイテム予測処理部１４０から取得した推薦アイテムと提示メタデータ選択処理部１５０から取得した提示メタデータをユーザに提示する。
【００２２】
次に、図２のフローチャートを用いて、推薦システム用の隣接行列提供部１３０において、図３の様にユーザＩＤ、アイテムＩＤ、メタデータＩＤ、評価値からなるデータベースであるアイテム履歴データベース１２０から隣接行列を構築する方法について説明する。
【００２３】
ここでの隣接行列とは、アイテム履歴データベース１２０を参照して得られるアイテムとユーザの関係と、アイテムとメタデータの関係を、図４に示すような一つの行列として表現したものであり、その隣接行列をA、その行列と要素の関係をA＝(ai,j) と表すとき、次の手順で構築される。
【００２４】
ステップ２１０）  推薦システム用の隣接行列提供部１３０は、アイテム履歴データベース１２０より、全ユーザ集合
【００２５】
【数１】
0005528388.tif 000002
全アイテム集合
【００２６】
【数２】
0005528388.tif 000003
全メタデータ集合
【００２７】
【数３】
0005528388.tif 000004
を収集する。
【００２８】
ステップ２２０）  |U|+|I|+|M|の大きさの行列A=(aj,k)を用意する。jは、1≦j≦|U|のときはユーザを表し、jがアイテムを表すのは|U|+1≦j≦|U|+|I|のとき、また、jがメタデータを表すのは|U|+|I|+1≦j≦|U|+|I|+|M|のときであるとし、kも同様とする。例えば、aj,k=1 (|U|+1≦j≦|U|+|I|,|U|+|I|+1≦k≦|U|+|I|+|M|)は、行列中のアイテムjとメタデータkとを表す値が1であることを表す。
【００２９】
ステップ２３１〜２３５）  全てのアイテムと全てのメタデータについて、アイテム履歴データベース１２０上で、関連付けられる組合せを表す行列の値aj,kに１を代入する（Ｓ２３３）。関連付けのない場合は０を代入する（Ｓ２３４）。アイテム履歴データベース１２０上での関連付けは、図４の様なデータベース構造の場合、アイテムＩＤの列とメタデータＩＤの列を参照して同一エントリにそれぞれのＩＤが存在することを表す。
【００３０】
ステップ２３６〜２４２）  全てのアイテムと全てのユーザについて、アイテム履歴データベース１２０上で、関連付けられる組合せを表す行列の値aj,kに値を代入する。値は、そのサービスにおいてユーザがアイテムに評価値を与えるようなデータの場合は、あるユーザuのそのアイテムiの評価値を、ユーザuがアイテムへ付与した全ての評価値の最大値で除した値を代入する（Ｓ２４１）。データベース上に評価値が存在せず、例えば、POSデータのようなユーザがアイテムを購入したか否かが記録されたデータの場合は、対応する値に１を代入する（Ｓ２４０）。関連付けのない場合は０を代入する（Ｓ２３９）。
【００３１】
ステップ２５０〜２７０）  行列Aを、行列の列の値の和が1になるように正規化処理を行う。具体的には、式（１）に示すように、列の値の和で値を除した値に更新し、全ての列について行ったものを、出力する隣接行列Aとする。
【００３２】
【数４】
0005528388.tif 000005
次に、図５のフローチャートに沿って、ユーザにアイテムの履歴をもとにアイテムを推薦し、また、そのアイテムに付与されたメタデータの中から同時に提示するメタデータを選択して同時に提示する処理について、図１の構成図を用いて説明する。
【００３３】
ステップ５１０）  まず、推薦を受けるユーザのユーザＩＤ取得処理として、ユーザＩＤ取得部１１０は、推薦を受けるユーザのＩＤを取得し、アイテム履歴データベース１２０に出力する。この処理は、例えば、ユーザが利用するサービスやシステムにログイン処理と同時に行う。
【００３４】
ステップ５２０）  推薦アイテム予測処理部１４０として、ユーザＩＤ取得部１１０から入力される推薦を受けるユーザのユーザＩＤと、前記推薦システム用の隣接行列提供部１３０から得られる隣接行列を受け取る。
【００３５】
ステップ５３０）  推薦アイテム予測処理部１４０は、Random Walk with Restart (RWR)によって、ユーザＩＤを取得したユーザと各アイテムとの関連度を計算する。その関連度の高いアイテムが推薦されるアイテムとなる。
【００３６】
RWRの計算式は、p(t) を計算のステップtにおけるアイテムの関連度のベクトル、定数α(0＜α＜1)を起点ノードに戻る確率、Aを前記隣接行列、qを推薦を受けるユーザを表す起点ノードのみが1であるベクトルとすると、式（２）のように表される。
【００３７】
p(t+1) = (1−α)Ap(t)+ αq                      式（２）
RWRの計算は、隣接行列A上でt回繰り返してp(t)が更新され、p(t)のベクトルからアイテムを表すノードの関連度の高いものを、推薦アイテムとして出力する。ここでのtは100回とする。なお、この実施回数は100回に限定されることなく、十分に大きな値であればよい。
【００３８】
ステップ５４０）  また、推薦アイテム予測処理部１４０は、RWRの計算により推薦アイテムを決定したのち、そのアイテムＩＤをキーとしてアイテム履歴データベース１２０を参照してそのアイテムに関連付けられているメタデータの集合を取得する。
【００３９】
ステップ５５０）  そのメタデータ集合の一つ一つについて、関連メタデータmの関連度としてRWRの計算のp(t)の該当する値
【００４０】
【数５】
0005528388.tif 000006
を取得し、メタデータと共に提示メタデータ選択処理部１５０へ出力する。
【００４１】
ステップ５６０）  提示メタデータ選択処理として、提示メタデータ選択処理部１５０は、推薦システム用の隣接行列提供部１３０から出力された隣接行列を受け取り、各ノードのPageRankを計算する。PageRankの計算は前記隣接行列Aの最大固有値に対する固有ベクトルrを求めることで得られる。一般には式（３）のグーグル行列と呼ばれる行列Gを導入して、その行列Gに対する固有方程式（４）を解くことで計算する。隣接行列Aをn次の正方行列とし、βは0＜β＜1を満たす定数とするとき、それぞれ次式となる。βの値は通常PageRankの計算には0.85を用いることが多いが、別の値でも構わない。
【００４２】
【数６】
0005528388.tif 000007
ステップ５６０）  また、提示メタデータ選択処理部１５０は、推薦アイテム予測処理部１４０から関連メタデータmの関連度
【００４３】
【数７】
0005528388.tif 000008
を受け取り、その値とその関連メタデータmのPageRankの値をｒmとするとき、その比である
【００４４】
【数８】
0005528388.tif 000009
を最大にする関連メタデータmを、提示メタデータとして出力する。
【００４５】
ステップ５８０）  推薦アイテム提示処理として提示部１６０は、推薦アイテム予測処理部１４０の出力である推薦アイテムと、提示メタデータ選択処理部１５０の出力である前記提示メタデータを同時に提示し、推薦が完了する。
【００４６】
なお、上記の図１に示す情報推薦装置の各構成要素の動作をプログラムとして構築し、情報推薦装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００４７】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【００４８】
１１０  ユーザID取得部
１２０  アイテム履歴データベース
１３０  推薦システム用の隣接行列提供部
１４０  推薦アイテム予測処理部
１５０  提示メタデータ選択処理部
１６０  提示部
【図１】
0005528388.tif 000010
【図２】
0005528388.tif 000011
【図３】
0005528388.tif 000012
【図４】
0005528388.tif 000013
【図５】
0005528388.tif 000014