(57)【要約】【課題】  被推薦ユーザの利用傾向を分析して被推薦ユーザ毎にハイパーパラメータを設定可能にする。【解決手段】  本発明は、ユーザＩＤ、アイテムＩＤ、アイテムのメタデータＩＤ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースの情報を隣接行列として表し、隣接行列と被推薦ユーザＩＤとを受け取って、該被推薦ユーザＩＤ毎にハイパーパラメータを推定する。被推薦ユーザＩＤと隣接行列とハイパーパラメータを用いて、該被推薦ユーザＩＤと推薦すべきアイテムの関連度を求め、該関連度が高いものを推薦アイテムとする。【選択図】  図１
2014067181.tif 000002
【特許請求の範囲】
【請求項１】
利用者に対してアイテムを高精度に推薦する情報推薦装置であって、
ユーザＩＤ、アイテムＩＤ、アイテムのメタデータＩＤ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースと、
前記アイテム履歴データベースの情報を隣接行列として表す隣接行列提供手段と、
前記隣接行列と被推薦ユーザＩＤとを受け取って、該被推薦ユーザＩＤ毎にユーザの好みの傾向を制御するためのハイパーパラメータを推定するハイパーパラメータ推定手段と、
前記被推薦ユーザＩＤと前記隣接行列と前記ハイパーパラメータを用いて、該被推薦ユーザＩＤと推薦すべきアイテムの関連度を求め、該関連度が高いものを推薦アイテムとする推薦アイテム予測値処理手段と、
を有することを特徴とする情報推薦装置。
【請求項２】
前記ハイパーパラメータ推定手段は、
前記ハイパーパラメータを、前記隣接行列を用いた交差検定法によって推定する手段を含む
請求項１記載の情報推薦装置。
【請求項３】
利用者に対してアイテムを高精度に推薦する情報推薦方法であって、
ユーザＩＤ、アイテムＩＤ、アイテムのメタデータＩＤ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースと、隣接行列提供手段と、ハイパーパラメータ推定手段と、推薦アイテム予測値処理手段と、を有する装置において、
前記隣接行列提供手段が、前記アイテム履歴データベースの情報を隣接行列として表す隣接行列提供ステップと、
前記ハイパーパラメータ推定手段が、入力された被推薦ユーザＩＤと、前記隣接行列とを取得し、該被推薦ユーザＩＤ毎にハイパーパラメータを推定するハイパーパラメータ推定ステップと、
前記推薦アイテム予測値処理手段が、前記被推薦ユーザＩＤと前記隣接行列と前記ハイパーパラメータを用いて、該被推薦ユーザＩＤと推薦すべきアイテムの関連度を求め、該関連度が高いものを推薦アイテムとする推薦アイテム予測値処理ステップと、
を行うことを特徴とする情報推薦方法。
【請求項４】
前記ハイパーパラメータ推定ステップにおいて、
前記ハイパーパラメータを、前記隣接行列を用いた交差検定法によって推定する
請求項３記載の情報推薦方法。
【請求項５】
コンピュータを、
請求項１または２に記載の情報推薦装置の各手段として機能させるための情報推薦プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報推薦装置及び方法及びプログラムに係り、特に、コンテンツやアイテム（以下、「アイテム」と記す）をユーザに提示するための情報推薦装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
従来技術として、ユーザ、アイテム、メタデータをノードとするグラフをRandom Walk with Restart(RWR)と呼ばれるグラフ理論のアプローチによって探索し、推薦を受けるユーザ（以下、「被推薦ユーザ」と記す）へ推薦するアイテム（以下、「推薦アイテム」と記す）を決定する方法がある（例えば、非特許文献1、２参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Konstas, I., Stathopoulos, V. and Jose, J. M.: On social networks and collaborative recommendation, in Proc. SIGIR '09, pp. 195-202 (2009).
【非特許文献２】堤田恭太, 中辻真, 内山俊郎, 藤村考.: ソーシャルメディア上のアイテム共起を用いたサービス横断推薦, 第3回データ工学と情報マネジメントに関するフォーラム, DEIM '11, 2011年3月.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の非特許文献１および非特許文献２の方法を用いることで、ユーザ、アイテム、メタデータのそれぞれの関係性をグラフ上で扱った情報推薦を高精度に行うことができるようになる。
【０００５】
しかしながら、非特許文献１および非特許文献２の方法は、被推薦ユーザが多くのユーザに支持されたアイテムを好む傾向があるか、あまり知名度の高くないマイナーなアイテムを好む傾向があるかを制御するハイパーパラメータを、推薦システムの利用者が経験に基づいて人手で与えなければならず、誤ったハイパーパラメータを与えるとパフォーマンスが著しく低下することがあった。また、そのハイパーパラメータは人手で与えなければならないため、被推薦ユーザの個人毎に異なるパラメータを設定することが困難だった。
【０００６】
本発明は、上記の点に鑑みなされたもので、被推薦ユーザの利用傾向を分析して被推薦ユーザ毎にハイパーパラメータを設定可能な情報推薦装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するため、本発明（請求項１）は、利用者に対してアイテムを高精度に推薦する情報推薦装置であって、
ユーザＩＤ、アイテムＩＤ、アイテムのメタデータＩＤ、ユーザのアイテムへの評価値についての情報を格納したアイテム履歴データベースと、
前記アイテム履歴データベースの情報を隣接行列として表す隣接行列提供手段と、
入力された被推薦ユーザＩＤと、前記隣接行列とを取得し、該被推薦ユーザＩＤ毎に、ユーザの好みの傾向を制御するためのハイパーパラメータを推定するハイパーパラメータ推定手段と、
前記被推薦ユーザＩＤと前記隣接行列と前記ハイパーパラメータを用いて、該被推薦ユーザＩＤと推薦すべきアイテムの関連度を求め、該関連度が高いものを推薦アイテムとする推薦アイテム予測値処理手段と、を有する。
【０００８】
また、本発明（請求項２）は、前記ハイパーパラメータ推定手段において、
前記ハイパーパラメータを、前記隣接行列を用いた交差検定法によって推定する手段を含む。
【発明の効果】
【０００９】
上記のように本発明によれば、情報推薦において、被推薦ユーザが多くのユーザに支持されたアイテムを好む傾向があるか、あまり知名度の高くないマイナーなアイテムを好む傾向があるかを制御するハイパーパラメータを、被推薦ユーザのこれまでの利用傾向から自動で推定することにより、被推薦ユーザの個人毎に異なるパラメータを設定することが可能な情報推薦装置が実現できるようになる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施の形態における情報推薦装置の構成図である。
【図２】本発明の一実施の形態におけるアイテム履歴データベースのイメージである。
【図３】本発明の一実施の形態における隣接行列を構築する処理のフローチャートである。
【図４】本発明の一実施の形態におけるアイテム履歴データベースの隣接行列による表現例である。
【図５】本発明の一実施の形態における情報推薦装置の処理のフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面と共に本発明の実施の形態を説明する。
【００１２】
図１は、本発明の一実施の形態における情報推薦装置の構成図である。
【００１３】
同図に示す情報推薦装置は、被推薦ユーザＩＤ取得部１１０、アイテム履歴データベース１２０、隣接行列提供部１３０、推薦アイテム予測処理部１４０、ハイパーパラメータ推定部１５０、アイテム提示部１６０を有する。
【００１４】
また、図２は、本発明の一実施の形態におけるアイテム履歴データベースのテーブルのイメージである。アイテム履歴データベース１２０は、ユーザＩＤ、アイテムＩＤ、メタデータＩＤ、アイテムへの評価値がそれぞれ参照できるようなデータベースとなっている。
【００１５】
図３は、本発明の一実施の形態における隣接行列を構築する処理のフローチャートである。図３のフローチャートを用いて、隣接行列提供部１３０において、図２のアイテム履歴データベース１２０から、隣接行列を構築する処理について説明する。
【００１６】
ここでの隣接行列とは、アイテム履歴データベース１２０を参照して得られる各サービスのアイテムとユーザとメタデータの関係を、図４に示すような一つの行列として表現したものであり、その隣接行列をA、その行列と要素の関係をA＝(ai,j) と表すとき、次の手順で構築される。
【００１７】
ステップ２１０）  隣接行列提供部１３０は、アイテム履歴データベース１２０より、全ユーザ集合
【００１８】
【数１】
2014067181.tif 000003
全アイテム集合
【００１９】
【数２】
2014067181.tif 000004
全メタデータ集合
【００２０】
【数３】
2014067181.tif 000005
を収集する。
【００２１】
ステップ２２０）  |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であることを表す。
【００２２】
ステップ２３１〜２３５）  全てのアイテム（i=1,…,｜I|）と全てのメタデータ（ｍ＝1,…,|M|）について、アイテム履歴データベース１２０上で、アイテムｉとメタデータｍが関連付けられている場合（ステップ２３２,Yes）は、関連付けられる組合せを表す行列の値aj,kに１を代入する（ステップ２３３）。
【００２３】
【数４】
2014067181.tif 000006
関連付けのない場合（ステップ２３２,No）は０を代入する（ステップ２３４）。
【００２４】
【数５】
2014067181.tif 000007
アイテム履歴データベース１２０上での関連付けは、図４の様なデータベース構造の場合、アイテムＩＤの列とメタデータＩＤの列を参照して同一エントリにそれぞれのＩＤが存在することを表す。
【００２５】
ステップ２３６〜２４２）  全てのアイテム（i=1,…,｜I|）と全てのユーザ(u=1,…,|U|)について、アイテム履歴データベース１２０上で、関連付けられる組合せを表す行列の値aj,kに値を代入する。値は、ユーザがアイテムに評価値を与えるようなデータの場合は（ステップ２３７,Yes、ステップ２３８,Yes）、あるユーザuのそのアイテムiの評価値を、ユーザuがアイテムへ付けた全ての評価値の最大値で除した値を代入する（ステップ２４１）。
【００２６】
【数６】
2014067181.tif 000008
アイテム履歴データベース１２０上に評価値が存在しない場合（ステップ２３７,Yes、ステップ２３８,No）は、例えば，POSデータのようなユーザがアイテムを購入したか否かが記録されたデータの場合は、対応する値に１を代入する（ステップ２４０）。
【００２７】
【数７】
2014067181.tif 000009
ユーザｕとアイテムｉが関連付けのない場合は（ステップ２３７,No）、０を代入する（ステップ２３９）。
【００２８】
【数８】
2014067181.tif 000010
ステップ２５０〜２７０）  行列Aを、行列の列の値の和が1になるように正規化処理を行う。具体的には、式（１）に示すように、列の値の和で値を除した値に更新し、全ての列について行ったものを、出力する隣接行列Aとする。
【００２９】
【数９】
2014067181.tif 000011
次に、図５のフローチャートに沿って、被推薦ユーザに対して推薦アイテムを提示する処理について、図１の構成図を用いて説明する。図５は、本発明の位置実施の形態における情報推薦装置の処理のフローチャートである。
【００３０】
ステップ５１０）  まず、被推薦ユーザＩＤ取得処理として、被推薦ユーザＩＤ取得部１１０は、被推薦ユーザのＩＤを取得し、ハイパーパラメータ推定部１５０に出力する。この処理は、例えば、ユーザが利用するサービスやシステムにログイン処理と同時に行うものとする。
【００３１】
ステップ５２０）  隣接行列提供部１３０の処理として、アイテム履歴データベース１２０からユーザＩＤ、アイテムＩＤ、メタデータＩＤ、サービスＩＤ、評価値のデータを受け取って図２に示すような隣接行列Aを構築する。
【００３２】
ステップ５３０）  ハイパーパラメータ推定部１５０は、被推薦ユーザＩＤ取得部１１０から被推薦ユーザＩＤを取得し、隣接行列提供部１３０から隣接行列を受け取り、被推薦ユーザ毎にハイパーパラメータαを推定して出力する。ハイパーパラメータαの推定には、例えば交差検定法を用いることができる。交差検定法では、まず、モデルの訓練データとなる図２のアイテム履歴データベース１２０のデータをN個に分割する。このNの値は通常は5や10が用いられる。次に、N個に分割したデータの内からn番目のデータを選んでテストデータとし、残りのN−1個のデータを訓練データとする。全てのn番目のデータに関する精度の検証を、ハイパーパラメータαの候補について行って、最適なハイパーパラメータαを求める。例えば、n番目のテストデータをn、被推薦ユーザuのRandom Walk with Restart (RWR)のハイパーパラメータをαu，RWRを用いた推薦精度をevalRWR(α,u,n)とするとき、次式（２）で表される。
【００３３】
【数１０】
2014067181.tif 000012
ここで、evalRWRは、例えば、上位k件を提示した場合にn番目のテストデータに含まれる被推薦ユーザuのアイテムを提示できた割合を表す
【００３４】
【数１１】
2014067181.tif 000013
などを用いることができる。被推薦ユーザuと、推定した
【００３５】
【数１２】
2014067181.tif 000014
をハイパーパラメータαとして推薦アイテム予測処理部１４０に出力する。
【００３６】
ステップ５４０）推薦アイテム予測処理部１４０が、ハイパーパラメータ推定部１５０から取得する被推薦ユーザＩＤとハイパーパラメータα，隣接行列提供部１３０から取得する隣接行列を用いて推薦するアイテムを決定する。その計算には、取得した被推薦ユーザＩＤと各アイテムＩＤとの関連度を求め、その値の高いアイテムを推薦するアイテムとするRandom Walk with Restart (RWR)を用いる。具体的な計算式は、p(t) を計算のステップtにおけるアイテムの関連度の列ベクトル、αはハイパーパラメータ推定部１５０によって出力される0 < α< 1を満たす定数、Aを前記隣接行列、qを被推薦ユーザを表す起点ノードのみが1である列ベクトルとすると、式（３）のように表される。
【００３７】
p(t+1) = (1−α)Ap(t) + αq                      式（３）
式（３）の計算は隣接行列A上でt回繰り返してp(t) が更新され、p(t) の列ベクトルからアイテムを表すノードの関連度の高いものを推薦アイテムとして出力する。ここでのtは30回とする。なお、この実施回数は30回に限定されることなく、十分に大きな値であればよい。
【００３８】
ステップ５５０）推薦アイテム提示処理としてアイテム提示部１６０が、推薦アイテム予測処理部１４０の出力である推薦アイテムを提示し、推薦が完了する。
【００３９】
なお、上記の図１に示す情報推薦装置の各構成要素（被推薦ユーザＩＤ取得部、隣接行列提供部、推薦アイテム予測処理部、ハイパーパラメータ推定部、アイテム提示部）の動作をプログラムとして構築し、情報推薦装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００４０】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００４１】
１１０  被推薦ユーザＩＤ取得部
１２０  アイテム履歴データベース
１３０  隣接行列提供部
１４０  推薦アイテム予測処理部
１５０  ハイパーパラメータ推定部
１６０  アイテム提示部
【図１】
2014067181.tif 000015
【図２】
2014067181.tif 000016
【図３】
2014067181.tif 000017
【図４】
2014067181.tif 000018
【図５】
2014067181.tif 000019