(57)【要約】【課題】複数ドメインをまたがったアイテムの推薦を高精度に行うことを可能とする情報推薦技術を提供する。【解決手段】被推薦ユーザに対してアイテムを推薦する情報推薦装置において、ユーザＩＤ、アイテムＩＤ、及びドメインＩＤを含むアイテム履歴データベースを参照し、前記ドメインＩＤの情報を制約として用いることにより、アイテムに関する制約付きクラスタリングを行い、前記被推薦ユーザと関連の強いクラスタに属するアイテム集合を取得し、当該アイテム集合に基づき部分行列を抽出する部分行列抽出手段と、前記部分行列から部分隣接行列を作成し、当該部分隣接行列を用いて前記被推薦ユーザと各アイテムとの関連度を算出し、算出された関連度に基づき推薦アイテムを決定する推薦アイテム決定手段とを備える。【選択図】図１
2014115911.tif 000002
【特許請求の範囲】
【請求項１】
被推薦ユーザに対してアイテムを推薦する情報推薦装置であって、
ユーザＩＤ、アイテムＩＤ、及びドメインＩＤを含むアイテム履歴データベースを参照し、前記ドメインＩＤの情報を制約として用いることにより、アイテムに関する制約付きクラスタリングを行い、前記被推薦ユーザと関連の強いクラスタに属するアイテム集合を取得し、当該アイテム集合に基づき部分行列を抽出する部分行列抽出手段と、
前記部分行列から部分隣接行列を作成し、当該部分隣接行列を用いて前記被推薦ユーザと各アイテムとの関連度を算出し、算出された関連度に基づき推薦アイテムを決定する推薦アイテム決定手段と
を備えることを特徴とする情報推薦装置。
【請求項２】
前記部分行列抽出手段は、互いに異なるドメインに属するアイテムの組の類似度を、制約なしの場合と比較して大きく評価することにより前記制約付きクラスタリングを行う
ことを特徴とする請求項１に記載の情報推薦装置。
【請求項３】
前記部分行列抽出手段は、前記アイテム履歴データベースにおけるアイテムの組について、ドメインＩＤが異なる組を１とし、ドメインＩＤが同じ組を０とした制約ベクトルを求め、当該制約ベクトルを用いて前記制約付きクラスタリングを行う
ことを特徴とする請求項２に記載の情報推薦装置。
【請求項４】
前記推薦アイテム決定手段は、ＲＷＲ（Random Walk with Restart）のアルゴリズムを用いて前記被推薦ユーザと各アイテムとの関連度を算出する
ことを特徴とする請求項１ないし３のうちいずれか１項に記載の情報推薦装置。
【請求項５】
被推薦ユーザに対してアイテムを推薦する情報推薦装置が実行する情報推薦方法であって、
ユーザＩＤ、アイテムＩＤ、及びドメインＩＤを含むアイテム履歴データベースを参照し、前記ドメインＩＤの情報を制約として用いることにより、アイテムに関する制約付きクラスタリングを行い、前記被推薦ユーザと関連の強いクラスタに属するアイテム集合を取得し、当該アイテム集合に基づき部分行列を抽出する部分行列抽出ステップと、
前記部分行列から部分隣接行列を作成し、当該部分隣接行列を用いて前記被推薦ユーザと各アイテムとの関連度を算出し、算出された関連度に基づき推薦アイテムを決定する推薦アイテム決定ステップと
を備えることを特徴とする情報推薦方法。
【請求項６】
コンピュータを、請求項１ないし４のうちいずれか１項に記載の情報推薦装置の各手段として機能させるための情報推薦プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報推薦において複数のサービスやドメイン（これらを総称して、以下、ドメインと呼ぶ）のコンテンツやアイテム（これらを総称して、以下、アイテムと呼ぶ）を横断的に扱ってアイテムを推薦する情報推薦の技術に関するものである。
【背景技術】
【０００２】
従来技術として、複数のドメインを対象としてアイテムの推薦を可能にするために、複数のドメインのアイテムに付与されたメタデータ間を関連付けることで、より高精度な情報推薦を実現する方法がある（例えば、特許文献1参照）。
【０００３】
また、単一のドメインを対象として、ユーザ、アイテムの購買や利用履歴の関係を表すユーザ-アイテム行列について、その行列内から傾向の近いユーザ集合及びアイテム集合からなる複数の部分行列を発見するクラスタリングを施して、被推薦ユーザが属する部分行列のみを用いて一般的な協調フィルタリングの手法を適用することで推薦精度を改善する研究がある。（例えば、非特許文献1参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2012-150561号公報
【非特許文献】
【０００５】
【非特許文献１】Bin Xu, Jiajun Bu, Chun Chen, Deng Cai: An Exploration of Improving Collaborative Recommender Systems via User-Item Subgroups, Proceedings of the WWW2012, 2012.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の特許文献1の方法を用いることで、複数のドメインを扱った情報推薦を行えるようになる。しかしながら、推薦システムが構築するグラフを表す隣接行列中に推薦精度の向上に寄与しないデータが存在する場合には推薦精度が低下するという問題がある。
【０００７】
また、上記の非特許文献1の方法を用いることで、単一のドメインを扱った推薦システムの推薦精度向上が期待できるが、複数のドメインを対象としてクラスタリングを施す場合には、それぞれのドメインにクラスタが構築されやすいため、ドメインをまたがって推薦を行う場合には推薦できないアイテムが多くなり、結果として推薦精度が低下するという問題がある。
【０００８】
特許文献1における上記課題を解決するために、グラフを表す隣接行列に非特許文献1のようにクラスタリングを施して、被推薦ユーザと関連の強いクラスタに属するアイテム集合のみからなる部分行列を用いることが考えられる。そうすることにより、異なるクラスタに属しやすい推薦精度に寄与しないアイテムを取り除くことができる。しかしながら、前述の通り、クラスタリングの結果としてドメイン間の情報が抜け落ちてしまうことによる推薦精度低下の懸念がある。
【０００９】
本発明は上記の点に鑑みてなされたものであり、複数ドメインをまたがったアイテムの推薦を高精度に行うことを可能とする情報推薦技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、本発明は、被推薦ユーザに対してアイテムを推薦する情報推薦装置であって、
ユーザＩＤ、アイテムＩＤ、及びドメインＩＤを含むアイテム履歴データベースを参照し、前記ドメインＩＤの情報を制約として用いることにより、アイテムに関する制約付きクラスタリングを行い、前記被推薦ユーザと関連の強いクラスタに属するアイテム集合を取得し、当該アイテム集合に基づき部分行列を抽出する部分行列抽出手段と、
前記部分行列から部分隣接行列を作成し、当該部分隣接行列を用いて前記被推薦ユーザと各アイテムとの関連度を算出し、算出された関連度に基づき推薦アイテムを決定する推薦アイテム決定手段とを備えることを特徴とする情報推薦装置として構成される。
【００１１】
前記部分行列抽出手段は、互いに異なるドメインに属するアイテムの組の類似度を、制約なしの場合と比較して大きく評価することにより前記制約付きクラスタリングを行うように構成することができる。
【００１２】
例えば、前記部分行列抽出手段は、前記アイテム履歴データベースにおけるアイテムの組について、ドメインＩＤが異なる組を１とし、ドメインＩＤが同じ組を０とした制約ベクトルを求め、当該制約ベクトルを用いて前記制約付きクラスタリングを行う。
【００１３】
また、前記推薦アイテム決定手段は、ＲＷＲ（Random Walk with Restart）のアルゴリズムを用いて前記被推薦ユーザと各アイテムとの関連度を算出するように構成してもよい。
【００１４】
本発明は、被推薦ユーザに対してアイテムを推薦する情報推薦装置が実行する情報推薦方法、及び、コンピュータを、情報推薦装置の各手段として機能させるための情報推薦プログラムとして構成することもできる。
【発明の効果】
【００１５】
本発明によれば、複数のドメインをまたがるために必要な情報を残すような制約付きクラスタリングを行うこととしたので、複数ドメインのアイテムを、推薦精度に寄与するデータのみを抽出して用いることが可能となる。よって、複数ドメインをまたがったアイテムの推薦をより高精度に行うことが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施の形態における情報推薦装置の構成図である。
【図２】本発明の一実施の形態におけるアイテム履歴データベースのテーブルのイメージである。
【図３】本発明の一実施の形態における情報推薦装置の処理のフローチャートである。
【図４】本発明の一実施の形態における部分行列のイメージである。
【図５】本発明の一実施の形態における部分行列抽出処理で用いる制約ベクトル計算のフローチャートである。
【図６】本発明の一実施の形態における部分行列抽出処理のフローチャートである。
【図７】本発明の一実施の形態における部分行列正規化処理のフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
【００１８】
（装置構成）
図１は、本発明の一実施の形態における情報推薦装置の構成図である。
【００１９】
同図に示す情報推薦装置は、被推薦ユーザＩＤ取得部１１０、アイテム履歴データベース１２０、部分行列抽出部１３０、部分行列正規化処理部１４０、推薦アイテム予測処理部１５０、アイテム提示部１６０を有する。各機能部の概要は以下のとおりである。
【００２０】
被推薦ユーザＩＤ取得部１１０は、被推薦ユーザＩＤを取得し、アイテム履歴データベース１２０及び推薦アイテム予測処理部１５０に出力する。
【００２１】
アイテム履歴データベース１２０は、アイテム履歴のテーブルを格納する格納手段を構成している。図２に、本発明の一実施の形態におけるアイテム履歴データベースのテーブルのイメージを示す。図２に示すように、アイテム履歴データベース１２０は、ユーザＩＤ、アイテムＩＤ、ドメインＩＤ、アイテムへの評価値がそれぞれ参照できるようなデータベースとなっている。
【００２２】
図１の部分行列抽出部１３０は、アイテム履歴データベース１２０のデータを用いて後述する部分行列Ａを計算する。部分行列正規化処理部１４０は、部分行列Ａを正規化し、部分隣接行列を作成する。推薦アイテム予測処理部１５０は、被推薦ユーザＩＤ、被推薦ユーザＩＤに関連付けられているアイテムＩＤリスト、及び部分隣接行列に基づいて、推薦するアイテムを決定する。アイテム提示部１６０は、推薦アイテム予測処理部１５０の出力である推薦アイテムを提示する。なお、部分行列正規化処理部１４０と推薦アイテム予測処理部１５０とをまとめて推薦アイテム決定手段と呼んでもよい。
【００２３】
本実施の形態における情報推薦装置は、例えば、１つ又は複数のコンピュータに、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、情報推薦装置の各部（被推薦ユーザＩＤ取得部、アイテム履歴データベース、部分行列抽出部、部分行列正規化処理部、推薦アイテム予測処理部、アイテム提示部）が有する機能は、当該情報推薦装置を構成するコンピュータに内蔵されるＣＰＵやメモリ、ハードディスクなどのハードウェア資源を用いて、各部で実施される処理に対応するプログラムを実行することによって実現することが可能である。より具体的には、プログラムに従って、計算対象のデータをメモリから読み出し、ＣＰＵにより演算を行って、メモリに格納する動作を繰り返しながら処理が実行される。上記プログラムは、コンピュータが読み取り可能な記録媒体（可搬メモリ等）に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【００２４】
なお、アイテム履歴データベース１２０は、情報推薦装置内に存在しなくてもよい。例えば、アイテム履歴データベース１２０を外部のデータベースサーバ内に備え、情報推薦装置が当該データベースサーバにアクセスすることにより、必要なデータを取得することとしてもよい。
【００２５】
（装置の動作）
図３は、本発明の一実施の形態における情報推薦装置の処理のフローチャートである。図３のフローチャートに沿って、図１に示した情報推薦装置により実行される被推薦ユーザに対して推薦アイテムを提示する処理について説明する。図３に示す各ステップの処理において、更に図を参照して詳細な説明を適宜行う。
【００２６】
ステップ２１０）まず、被推薦ユーザＩＤ取得処理として、被推薦ユーザＩＤ取得部１１０は、被推薦ユーザのＩＤを取得し、アイテム履歴データベース１２０及び推薦アイテム予測処理部１５０に出力する。この処理は、例えば、ユーザが利用するサービスやシステムにログイン処理と同時に行うものとする。
【００２７】
ステップ２２０）部分行列抽出部１３０の処理として、アイテム履歴データベース１２０からユーザＩＤ、アイテムＩＤ、ドメインＩＤ、評価値のデータを受け取って、部分行列Aを生成し、部分行列正規化処理部１４０に部分行列Aを出力する。図４に、本発明の一実施の形態における部分行列Aのイメージを示す。後述するように、部分行列Aは、制約付きクラスタリングで得られたアイテムに関する複数のクラスタのうち、被推薦ユーザに関するベクトルとの間の距離の小さいクラスタに含まれるアイテムＩＤ集合を有効な行列のインデックスとする行列である。
【００２８】
以下、図５及び図６のフローチャートを用いてより詳細な一実施形態における部分行列Aの構築手順例について説明する。
【００２９】
図５に示すように、まず、アイテム履歴データベース１２０より出力される全ユーザ集合U={u1,u2,…u|U|}、全アイテム集合I={i1,i2,…,i|I|}を収集する（ステップ５１０）。
【００３０】
次に、制約付きクラスタリングで用いる制約ベクトルW=(wi,j)を求める。具体的には、前記全アイテムの全てのアイテムの組みi,j(i≠j)について、アイテム履歴データベース１２０上でドメインＩＤが異なるものについてwi,jに１を代入し、そうでない組合せについて0を代入する（ステップ５３０〜ステップ５３７）。
【００３１】
次に、上記のようにして作成された制約ベクトルW=(wi,j)を用いて、制約付きクラスタリングを行い、部分行列Aを求める。この処理を図６を参照して説明する。
【００３２】
まず、全てのアイテムについて、アイテム履歴データベース１２０での各ユーザの評点の平均を要素とするアイテムベクトルxiを用意する（ステップ６１０）。全てのアイテムベクトルについて、K個のクラスタCを用意する（ステップ６２０）。クラスタの初期値は、xiをランダムにK個選択する。クラスタリング結果のクラスタ数を決定するパラメータKの値はK=10や50などを用いるが、データの規模や用途によって指定し規模が大きい時やアイテムのより詳細な違いを気にする場合は大きい値を用いる。
【００３３】
xiを最も近傍のクラスタCkにマージしてクラスタリングを行うための、近傍の計算は、前記制約ベクトルwi,jを用いて次式
λ1ΣWi,j∈WWi,j * Σxj∈CkSim(xi,xj) + λ2Σxj∈CkSim(xi,xj)
の値が最大になるものを選ぶ。ここで、kは1≦k≦KのクラスタCを識別する添字、Sim(xi,xj)は、ベクトルxiとxjの類似度を表し、ユークリッド距離やJaccad係数などの任意の尺度を用いることができる。上記の式により、互いに異なるドメインに属するアイテムの組の類似度を、制約なしの場合と比較して大きく評価してクラスタリングを行うことができる。
【００３４】
λ1、λ2は制約付きの類似度と制約なしの類似度の影響度合いを制御するパラメータであり、λ1＝0.85、λ2＝0.15などの実数を用いる。λ1とλ2の和は必ずしも1でなくてもよい。例えば、λ1＝0.85、λ2＝0.15のように、λ1が大きな値であれば、制約付きの類似度の影響が大きくなり、異なるドメインのアイテムを含むクラスタが構築され易くなる。このようにして算出されたクラスタに基づき生成された部分行列を用いることで、複数ドメインをまたがった精度の高い推薦を行うことが可能となる。
【００３５】
全てのアイテムベクトルについて上記の制約付きクラスタリング処理を行い、制約付きクラスタリングの結果としてK個のクラスタCを得る（ステップ６２０〜ステップ６２２）。
【００３６】
更に、被推薦ユーザaにアイテム履歴データベース１２０で関連付けられているアイテムＩＤ集合Iaを用いて、被推薦ユーザのベクトルをqa、その要素qa,jを次式
qa,j= (1/|Ia|) * Σi∈Ia(xi,j / (Σ_j xi,j))
を用いて求める（ステップ６３０）。上記の式において、xi,jはアイテムベクトルxiの要素であり、jはxiの添字である。xi,j / (Σ_j xi,j)は、xiの要素の和が１になるように正規化することを意味する。
【００３７】
最後に、K個のクラスタのうち、qaと最もベクトル間の距離の小さいクラスタCkに含まれるアイテムＩＤ集合を有効な行列のインデックスとする行列を部分行列A=(ai,j)として出力する（ステップ６４０）。すなわち、被推薦ユーザと関連の強いクラスタに属するアイテムＩＤ集合を取得し、当該アイテムＩＤ集合に基づき部分行列を抽出する。ベクトル間の距離の基準は、ユークリッド距離やJaccard係数などの任意の基準を用いることができる。行列の要素ai,jは、前記Sim(xi,xj)とする。
【００３８】
ステップ２３０）部分行列正規化処理部１４０で部分行列の正規化を行う。この正規化処理を図７のフローチャートを参照して説明する。
【００３９】
正規化処理では、まず、部分行列抽出部１３０より出力される部分行列A=(aj,k)を受け取る（ステップ７１０）。
【００４０】
次に、部分行列Aの各要素aj,kを列の値の和で除した値に次式
aj,k=aj,k/Σg=1ag,k
を用いて更新し、全ての要素について行ったものを、部分隣接行列Aとして出力する（ステップ７２０〜ステップ７４０）。つまり、部分行列Aを列の値の和が１になるように正規化することで、部分隣接行列Aを求める。
【００４１】
ステップ２４０）推薦アイテム予測処理部１５０が、被推薦ユーザＩＤ取得部１１０から被推薦ユーザＩＤ、アイテム履歴データベース１２０から被推薦ユーザＩＤに関連付けられているアイテムＩＤリスト、部分行列正規化処理部１４０から部分隣接行列をそれぞれ受け取り、推薦するアイテムを決定する。
【００４２】
その計算には、取得した被推薦ユーザＩＤと各アイテムＩＤとの関連度を求め、その値の高いアイテムを推薦するアイテムとするRandom Walk with Restart (RWR)を用いる。具体的な計算式は、p(t) を計算のステップtにおけるアイテムの関連度の列ベクトル、αは0 <α< 1を満たす定数、Aを前記部分隣接行列、qを被推薦ユーザがアイテム履歴データベース１２０上で関連付けられているn個のアイテムを表す値が1/nである列ベクトルとすると、次式のように表される。
【００４３】
p(t+1) = (1−α)Ap(t) + αq
計算は部分隣接行列A上でt回繰り返してp(t) が更新され、p(t) の列ベクトルからアイテムを表すノードの関連度の高いものを推薦アイテムとして出力する。ここでのtは例えば30回とする。なお、この実施回数は30回に限定されることなく、十分に大きな値であればよい。
【００４４】
ステップ２５０）推薦アイテム提示処理としてアイテム提示部１６０が、推薦アイテム予測処理部１５０の出力である推薦アイテムを提示し、推薦が完了する。
【００４５】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００４６】
１１０  被推薦ユーザＩＤ取得部
１２０  アイテム履歴データベース
１３０  部分行列抽出部
１４０  部分行列正規化処理部
１５０  推薦アイテム予測処理部
１６０  アイテム提示部
【図１】
2014115911.tif 000003
【図２】
2014115911.tif 000004
【図３】
2014115911.tif 000005
【図４】
2014115911.tif 000006
【図５】
2014115911.tif 000007
【図６】
2014115911.tif 000008
【図７】
2014115911.tif 000009