(57)【要約】【課題】  ユーザの嗜好の変化があった場合でも、動的に対応することが可能なリコメンドシステムを提供する。【解決手段】  評価データ、および、推薦依頼を受け入れる入力部と、初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、初期モデルを基点として、新たな評価データを１つ受け入れるごとに、現在の予測モデルと受け入れた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、推薦すべきアイテムを探し出す推薦アイテム探索部とを備える。【選択図】図１
2007317068.tif 000002
【特許請求の範囲】
【請求項１】
ユーザがアイテムに対して評価する評価データ、および、対象ユーザからの未評価アイテムの推薦依頼を受け付ける入力部と、
対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、
初期モデルを基点として、新たな評価データを１つ受け付けるごとに、現在の予測モデルと受け付けた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、
対象ユーザからアイテムの推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、
算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す推薦アイテム探索部とを備えたことを特徴とするリコメンド装置。
【請求項２】
初期モデルは、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成されたモデルであることを特徴とする請求項１に記載のリコメンド装置。
【請求項３】
初期モデルは、線形ファジイクラスタリングを用いた予測モデルが用いられることを特徴とする請求項１に記載のリコメンド装置。
【請求項４】
予測モデル更新部は、現在の予測モデルを新予測モデルに更新する際に、予め設定した学習率に基づいて新たに受け付けた評価データの予測モデルへの影響を調整することを特徴とする請求項１に記載のリコメンド装置。
【請求項５】
請求項１〜４のいずれかに記載のリコメンダ装置と、このリコメンド装置とデータ送信可能に接続される基幹サーバとからなるリコメンドシステムであって、
基幹サーバは、複数のユーザが予めアイテムを評価した初期評価データ群、および、リコメンダ装置から逐次送信される追加評価データを蓄積する評価データ蓄積部と、
初期評価データ群を線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを算出する初期モデル算出部と、
初期評価データ群にその後追加された追加評価データを加えた全評価データを用いて線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる全評価データ参照予測モデルを作成する全評価データ参照予測モデル算出部とを備えたことを特徴とするリコメンドシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、協調フィルタリングによりユーザが嗜好するアイテムを予測し、予測したアイテムをユーザに推薦するリコメンド装置およびリコメンドシステムに関し、さらに詳細には、ユーザの嗜好が時間とともに変化する状況において嗜好変化に動的に対応した最適なアイテムを推薦するリコメンダ装置およびリコメンドシステムに関する。
ここで、「アイテム」とは、多数のユーザにより嗜好の度合いを数値評価することができる対象の情報をいい、例えば、映画やホームページ等のコンテンツ、商品等が含まれる。
【背景技術】
【０００２】
ある特定の対象ユーザと類似する嗜好を持つ他のユーザが関心をもつアイテムは、対象ユーザにとっても関心あるアイテムであろうという予測に基づいて、嗜好が類似する他のユーザから収集した多数のアイテムに対する評価データを元に、その対象ユーザが嗜好するアイテムを予測する「協調フィルタリング」が提案されており、この方法を用いて対象ユーザが嗜好するアイテムを予測して推薦するリコメンドシステムが提案されている（特許文献１参照）。
【０００３】
協調フィルタリングでは、予め、複数（多数であるほど後述する予測評価の精度を上げる上で好ましい）のユーザによって、推薦対象となる複数のアイテムについて、それぞれの嗜好の度合いを評価してもらい、その評価結果に基づいて、ユーザ間の嗜好の類似度（相関値）を算出することにより、対象ユーザと嗜好が類似する他のユーザ（類似ユーザという）を探し出す。そして、類似ユーザによるアイテムに対する評価結果と、嗜好の類似度（相関値）とに基づいて、対象ユーザの未評価アイテム（欠測要素）に対する評価値を予測し、予測評価値が高いアイテムを探し出して、推薦する。
【０００４】
協調フィルタリングを用いた最も基本的なリコメンドシステムを、以下に説明する。図4に示すように、予め、複数のユーザが各アイテムについて点数で評価を行い、これを評価値行列（評価データ）としてコンピュータシステムのメモリにデータベースとして蓄積しておく。評価を行っていない未評価アイテムは評価値行列内で空欄となる。図4では、ユーザ０１〜ユーザ０３が、評価を与えてあるものとする。このとき、新たに対象ユーザ０４（アクティブユーザともいう）がいくつかのアイテムについて点数評価を行うことにより、対象ユーザの評価結果と他のユーザの評価結果との類似性に基づいて、対象ユーザがまだ評価を与えていない未評価アイテム（欠測要素）について点数を予測し、予測された未評価アイテムのなかで、高い点数が予測された未評価アイテムを、ユーザ０４に対し推薦すべきアイテムとして選別する。この予測の際に、対象ユーザが各アイテムについて評価した評価点数の傾向と、評価点数の傾向が似ている類似ユーザ（図4ではユーザ０４はユーザ０１と評価が類似している）を探し出し、類似ユーザの評価値に基づいて対象ユーザの未評価アイテムの点数を推定するようにし、その結果、予測された点数が高いアイテムを推薦する。他のユーザについても、同様の手法により、それぞれが有する欠測要素のなかで予測点数が高いものが推薦されることになる。
【０００５】
上述したリコメンドシステムは、手法としては簡単で優れているが、評価値行列全体のデータをメモリに蓄積しておく必要があり、推薦（リコメンド）のための演算の際にメモリ全体のデータを用いることになる（メモリベースアルゴリズム(memory-based algorithm））。すなわち、対象ユーザ以外のユーザ数がｎ人、アイテム数がｍ個であるとすると、最大で、ｎ×ｍのデータ数を記憶しておくことが必要となり、当初ｎやｍが小さい場合であっても、次第に評価データが追加されて情報量が増大し、ｎとｍがともに大きな数になると、ｎ×ｍのデータ数はさらに膨大なデータ数になってしまう。したがって、対象ユーザに対する推薦アイテムを探すための演算処理を実行する際に、膨大なデータを処理することとなり、システムの負荷が大きく、演算時間も要するようになる。
【０００６】
これに対し、収集された評価データ（評価値行列）に基づいて対象ユーザの未評価アイテムに対する予測評価値を算出するための予測モデル（数式）を構築するモデルベースアルゴリズム（Model-based algorithm）が提案されている。
【０００７】
簡潔な数学モデルを用いた予測モデルとしては、回帰分析や主成分分析に代表される線形モデルが広く用いられるが、すべてのユーザの嗜好を単一の線形モデルで表すことは困難な場合も多いことから、ユーザをいくつかのグループ（クラスター）に分割し、クラスターごとに線形モデルを推定する線形クラスタリングを利用した予測モデルの推定法が提案されている（非特許文献１）。この予測モデル推定法について具体的に説明する。
【０００８】
以下では、主成分分析の手法を用いて、n人のユーザをC個のクラスターに分割しながら、クラスターごとに予測式を推定する場合を考える。ただし、アイテムがm個あるものとする。線形ファジィクラスタリングを用いた予測モデルでは、第iユーザが第cクラスターに所属する割合（メンバシップ）uci（要素数：ユーザごとにC）を推定することでユーザを分割する。ただし、複数のクラスターの中間に存在するユーザがどこかに偏って属することを避けるために、ファジィ理論の応用によるファジィ分割を用いており、下記（１）式の制約を満たす任意の割合でc=1,2,…,Cについてuciが割り当てられる。
2007317068.tif 000003
【０００９】
ユーザの評価データは、クラスターごとに線形モデル（部分空間）にデータ圧縮された形で保存され、未評価値の予測に用いられる。以下では、m個のアイテムについての情報を1次元の部分空間（直線）に縮約する。第cクラスターにおける線形モデルは、部分空間が通る点（中心ベクトル）bc（要素数：m）、および部分空間（直線）の向きを表すベクトルac（要素数：m）で表される。また、第iユーザの評価値のデータは部分空間上での位置を表す得点fci（要素数：クラスターごとに1）で表される。ただし、fciはクラスターごとに平均が0、分散が1であるものとする。
【００１０】
例えば、図3は、アイテム数ｍ＝３、クラスター数Ｃ＝２である場合の、線形モデルによる協調フィルタリングにおける予測モデルの概念図である。
このように、ユーザの嗜好の特徴を表現するための本モデルは、Ｃ個の直線で代表されており、おのおのの直線は、（１）中心を表すベクトル（要素数：ｍ）、（２）向きを表すベクトル（要素数：ｍ）で定義される。また、おのおののユーザのデータは、（３）直線上の位置を表す得点（要素数：クラスターごとに１）、および、（４）おのおののクラスターへの所属度合いを決める距離（要素数：ユーザごとにＣ）で与えられる。ここでは、３つのアイテムがそれぞれｘ１、ｘ２、ｘ３軸に対応している。
図中に示すように、ｘ１、ｘ２が評価されており、ｘ３が未評価（欠測）である場合に、抽出した予測モデル（線形モデル）に最も合うように、ｘ３を予測する。
【００１１】
この線形モデルによる協調フィルタリングでは、最大ｎ×ｍ個の要素で表される評価データ（評価値行列）を、Ｃ個の直線を表す２Ｃｍ個の要素とＣ個の直線上でのユーザの位置を表すＣｎ個の要素およびＣ個の直線までの距離を表すＣｎ個の要素からなる２Ｃ（ｍ＋ｎ）個の要素で表していることになる。
上述したように、アイテムの数ｍやユーザの数ｎが膨大である一方、グループの数Ｃは大きくないため、データ数の大幅な軽減が可能になり、メモリ使用量の軽減、演算負荷の軽減が可能となる。
【００１２】
このときのユーザの分割と線形モデルの推定を同時に行う際に最小化すべき目的関数は、下記（２）式のように表される。
2007317068.tif 000004
【００１３】
ただし、wijは第iユーザが第jアイテムをすでに評価したか否かを表し、評価していれば1，評価していなければ0となる。xijは第iユーザが第jアイテムに与えた評価値を表す。acjはベクトルacの第j要素を表す。αはグループ分け（クラスタリング）の際のクラスターの広がりを制御する定数である。θはグループ分け（クラスタリング）の際に所属のあいまい度を制御する定数である。
【００１４】
（２）式が最小となるように、uci、bc、acおよびfciが繰り返し最適化され、ユーザを分割しながら線形モデルが推定される。その際には、以下の更新式が用いられる。
【００１５】
2007317068.tif 000005
ただし、
2007317068.tif 000006
であり、上付きのTはベクトルの転置を表す。また、
2007317068.tif 000007
および
2007317068.tif 000008
はそれぞれ対角行列で、
2007317068.tif 000009
、
2007317068.tif 000010
である。
【００１６】
あるユーザvに対して推薦すべきアイテムを決定する際には、まず、ucvが最大のcを選び、第cクラスターの予測式である下記の（８）式で未評価のアイテムの予測値yvjを推定する。
2007317068.tif 000011
そして、yvjが最大となるアイテムjを求めて、それを推薦用アイテムとして対象ユーザに提示する。
【特許文献１】米国特許４９９６６４２号
【非特許文献１】K. Honda, N. Sugiura, H. Ichihashi and S. Araki: “Collaborative Filtering Using Principal Component Analysis and Fuzzy Clustering”, Web Intelligence: Research and Development, Lecture Notes in Artificial Intelligence 2198, Springer, 394-402 (2001).
【発明の開示】
【発明が解決しようとする課題】
【００１７】
上記のモデルベースアルゴリズム（Model-based algorithm）は、簡潔な予測モデルのみを使って推薦すべきアイテムを探索するものであることから、予測モデルを構築した後に、これを用いてアイテムの探索を行う際には、評価データ（評価値行列）全体を探索する場合のように大容量のメモリを用いた大量の計算を行う必要はなく、メモリベースアルゴリズムに比べると演算の負荷を格段に少なくすることができる。
【００１８】
しかしながら、この場合であっても、新しく追加された評価データを加えて、予測モデルを更新したりする段階では、更新演算を行う装置に、全ての評価データ（評価値行列）を保持しておく必要があり、また、評価データのすべてを用いて更新の計算を行うため、計算量が膨大となり、汎用コンピュータのような簡単な端末装置では処理が困難で演算に時間がかかる。また、新たに追加された評価データの影響を予測モデルに逐次反映させることは困難である。さらに演算時間を小さく抑えようとするなら、演算処理性能が優れた高性能コンピュータが必要となる。
【００１９】
また、収集したすべての評価データを同列に扱っていることから、ユーザの嗜好の傾向に急激な変化が生じた際には、その変化に対して動的に適応させることが困難である。例えば、映画や本等が評価対象のアイテムである場合に、特定のアイテムが、有名な賞を獲得した場合に、賞を獲得する前後で、ユーザの嗜好の評価は大きく変化することがある。かかる場合に、上述したような全評価データを参照して予測モデルを更新する従来のモデルベースアルゴリズムでは、急激な変化に対して、動的に対応した処理を行うことは困難である。
【００２０】
さらに、従来のモデルベースアルゴリズムは、予測モデルの構築にこれまで収集した全評価データを用いることから、協調フィルタリングの入力形式の特徴である、ひとりのユーザがアイテムを評価することで１つずつ評価データが順に追加されるという入力形式には対応しにくい構造である。
【００２１】
そこで、本発明は、協調フィルタリングにおける評価データの入力形態の特性を生かすことができ、ユーザの嗜好の変化があった場合でも、その嗜好変化に動的に対応することが可能であり、しかも、演算の負荷が大きくならず、簡易な端末装置でもアイテムの推薦が可能であるリコメンド装置およびリコメンドシステムを提供することを目的とする。
【課題を解決するための手段】
【００２２】
上記課題を解決するためになされた本発明のリコメンド装置は、ユーザがアイテムに対して評価する評価データ、および、対象ユーザからの未評価アイテムの推薦依頼を受け付ける入力部と、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成され、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、初期モデルを基点として、新たな評価データを１つ受け付けるごとに、現在の予測モデルと受け付けた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、対象ユーザからアイテムの推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す推薦アイテム探索部とを備えるようにしている。
【００２３】
本発明によれば、最初の予測モデルである初期モデルを設定する。これにより、端末装置は全評価データを保持することに代えて、データ量が圧縮された初期モデルを保持することになる。なお、設定される初期モデルの作成手段に付いては特に限定されない。他の装置で作成した初期モデルであってもよいし、極端な場合は任意に作成したモデル式を与えてもよい（初期モデルが最適設定モデルでなくても逐次更新により、後で逐次改善されていく）。予測モデル更新部は、新たな評価データを１つ受け入れるごとに、現在の予測モデル（最初は初期モデル）と新たに追加された１つの評価データとに基づいて、新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する。このときの更新処理は、現在の予測モデルと新たに追加された１つの評価データとの演算であり、全評価データを用いて行う演算に比べると、計算の負荷が小さく簡単であり、しかも、追加された最新の評価データの影響を、逐次反映させるものであることから、ユーザの評価に急激な変化があった場合には、その影響を適切に反映した予測モデルに改善されることになる。
そして、予測評価値算出部は、現在の予測モデル（すなわち初期モデルを基点に、逐次更新された予測モデル）に基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する。推薦アイテム探索部は、算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す。
【発明の効果】
【００２４】
本発明によれば、新しく追加される評価データに対応して、簡単な演算で予測モデルを適切に変化することができるので、適切なアイテムを推薦することができ、特に、ユーザの評価の傾向に急激な変化があっても、推薦すべきアイテムとして最新の傾向に基づいた適切なアイテムを推薦することができる。
また、評価データが逐次増大しても、全評価データを用いて、予測評価の演算を行うのではなく計算の負荷は大きくならないので、演算時間を短くすることができる。
【００２５】
（他の課題を解決するための手段および効果）
上記発明において、初期モデルは、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成されたモデルであるようにしてもよい。
これにより、予めユーザがアイテムを評価した評価データである初期評価データ群に基づいた協調フィルタリングの初期モデルが予測モデルとして採用されているので、当初から最適なアイテムを推薦することができる。
【００２６】
上記発明において、初期モデルは、線形ファジイクラスタリングを用いた予測モデルが用いられるようにしてもよい。
これにより、ユーザの評価を単一の線形モデルで表現するのではなく、クラスターごと複数の線形モデルで分割して表現することができるので、単純な線形モデル（例えば単純な回帰分析モデル、主成分分析モデル）よりも、現状に即した予測モデルにすることができる。
【００２７】
また、上記発明において、予測モデル更新部は、現在の予測モデルを新予測モデルに更新する際に、予め設定した学習率に基づいて新たに受け付けた評価データの予測モデルへの影響を調整するようにしてもよい。
これにより、新たに受け付けた評価データの影響度合いを、学習率として与えることにより、適切な度合いで反映させることができる。
【００２８】
また、別の観点からなされた本発明のリコメンドシステムは、上記のリコメンド装置と、このリコメンド装置とデータ送信可能に接続される基幹サーバとからなるリコメンドシステムであって、基幹サーバは、複数のユーザが予めアイテムを評価した初期評価データ群、および、リコメンド装置から逐次送信される追加評価データを蓄積する評価データ蓄積部と、初期評価データ群を線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを算出する初期モデル算出部と、初期評価データ群にその後追加された追加評価データを加えた全データを用いて線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる全評価データ参照予測モデルを作成する全評価データ参照予測モデル算出部とを備えるようにしている。
【００２９】
この発明によれば、リコメンド装置とは別に設けられた基幹サーバの評価データ蓄積部に、初期評価データ群とともに、追加の評価データも含めた全評価データが蓄積される。
初期モデル算出部は、初期評価データ群を線形モデルにデータ圧縮することにより協調フィルタリングの初期モデルを作成する。作成した初期モデルは、リコメンド装置に送信されることにより、リコメンド装置は、初期モデル、あるいはこれを基点として逐次更新することにより作成した現在の予測モデルにより、予測評価値を算出して、推薦アイテムを探し出す。
一方、全評価データ参照予測モデル算出部は、初期評価データ群にその後追加された追加評価データを加えた全評価データを、線形モデルにデータ圧縮することにより、全評価データ参照して作成した予測モデルを作成する。この演算は、膨大な計算が実行されるので、通常時は行わず、必要に応じて不定期に行う。得られた全評価データ参照予測モデルは、更新を行いたいときにリコメンド装置に送信される。その後は、リコメンド装置において、初期モデルを設定したときと同様の処理が実行される。
【００３０】
これにより、リコメンド装置は、基幹サーバから送信される初期モデルを基点にして更新した予測モデルに代えて、その後に収集された追加評価データを含めた全評価データを参照して作成した予測データを、新たに初期モデルとして設定して、同様のアイテムの推薦処理を実行することができる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の一実施形態について、図面を用いて説明する。なお、本発明は、以下に説明する実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の態様が含まれることは言うまでもない。
【００３２】
図１は、本発明の一実施形態であるリコメンドシステムの構成を示すブロック構成図である。
リコメンドシステム１は、ユーザが直接アクセスする端末装置であるリコメンド装置２と、基幹サーバ３とからなり、これら装置間は、ネットワーク接続経由で互いにデータ送受可能に接続されている。このうち、リコメンド装置２は、汎用コンピュータが使用される。基幹サーバ３は、リコメンド装置２と同様の性能の汎用コンピュータを使用することもできるが、扱うデータ量が多くなると、負荷の大きな計算を行うことになるので、リコメンド装置２よりは演算処理能力が優れたコンピュータ装置を使用するのが好ましい。
【００３３】
まず、リコメンド装置２の構成について説明する。リコメンド装置２の主なハードウェア構成は、ＣＰＵ１０、メモリ２０、キーボード１１ｂ、表示装置１９、および、遠隔地ユーザがアクセスする際に経由するインターネット回線１１ａからなる。
ＣＰＵ１０、メモリ２０により実現される機能を説明するため、これら機能をブロック化して説明すると、入力部１１、初期予測モデル設定部１２、予測モデル更新部１３、予測評価値算出部１４、推薦アイテム選択部１５、予測モデル記憶部２１とからなる。
【００３４】
入力部１１は、アイテムに対して評価した評価データ（図４の各行に相当するデータ）を受け付けたり、対象ユーザからの未評価アイテムについての推薦依頼を受け付けたりする処理を行う。具体的には、ユーザがキーボード１１ｂから入力し、あるいは、インターネット回線１１ａを介して入力する評価データ（ｘｉｊ）や推薦依頼の指令を受け付ける。
【００３５】
初期予測モデル設定部１２は、基幹サーバ３から送信されてくる初期モデルを最初の予測モデルとして設定し、予測モデル記憶部２１に記憶する処理を行う。すなわち、協調フィルタリングを行うには、前提として、ユーザがアイテムについて評価した評価データが必要であるため、複数のユーザによって予めアイテムを評価した初期評価データ群が基幹サーバ３に蓄積されている。これら初期評価データ群に基づいて、基幹サーバ３が最初の予測モデルである初期モデルを作成する。作成された初期モデル（予測モデル）がリコメンド装置２に送信されてくるので、これを設定する。
なお、基幹サーバ３から送信されてくる初期モデルに代えて、任意に定めた予測モデルを初期モデルとして設定してもよい。ただし、この場合は、後述する予測モデル更新部１３によって、初期モデルをスタートの予測モデルとして、予測モデルの更新処理をしばらく繰り返す必要があり、更新処理後に、実用可能な予測モデルが構築されるようになる。
【００３６】
予測モデル更新部１３は、入力部が新たな評価データを１つ受け入れるごとに、現在の予測モデル（最初は初期モデルが現在の予測モデルになっている）と、入力部１１が受け付けた新たな評価データとに基づいて新予測モデルを逐次作成する処理を行い、さらに、作成した新予測モデルを新たに現在の予測モデルとして更新する処理を行う。
すなわち、新たに評価データ（ｘｉｊ）が追加されると、この評価データ（ｘｉｊ）に基づいて算出される目標値に向けて、現在の予測モデルを所定比率（学習率γという）だけ更新し、更新結果を、新しい予測モデルとして、予測モデル記憶部２１に記憶されている現在の予測モデルに対し置換する処理を行う。以後、予測モデル更新部１３は、追加の評価データ（ｘｉｊ）を受けるごとに、同様の更新処理を繰り返すことにより、予測モデルを逐次更新することになる。
【００３７】
予測評価値算出部１４は、対象ユーザから推薦依頼の指令を受けたときに、現在、予測モデル記憶部２１に記憶されている予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する演算処理を行う。
【００３８】
推薦アイテム選択部１５は、対象ユーザの未評価アイテムに対する予測評価値が算出されたときに、未評価アイテムの中で予測評価値が最大のもの（あるいは予め設定した閾値を越えているもの）を推薦すべきものとして、１つあるいは複数選択し、例えば、表示装置１９に出力する処理を行う。
予測モデル記憶部２１は、予測評価値を算出する際に用いる予測モデルを記憶する。
【００３９】
次に、基幹サーバ３の構成について説明する。基幹サーバ３の主なハードウェア構成は、ＣＰＵ３０、メモリ４０とからなる（入出力装置も備えているが図示を省略する）。ＣＰＵ３０、メモリ４０により実現される機能を説明するため、これら機能をブロック化して説明すると、初期モデル算出部３１、全評価データ参照予測モデル算出部３２、評価データ蓄積部４１とにより構成される。
【００４０】
評価データ蓄積部４１は、複数のユーザが予めアイテムを評価した初期評価データ群が蓄積されている。そして、リコメンド装置２から追加の評価データが逐次送信されるごとに、これを蓄積する。
【００４１】
初期モデル算出部３１は、評価データ蓄積部４１にある初期評価データ群を線形モデルにデータ圧縮することにより初期モデルを作成する制御を行う。具体的には、式（１）〜（７）で説明した線形ファジイクラスタリングを用いた予測モデルを作成する。
作成された予測モデルは、初期モデルとしてリコメンド装置２に送信される。
【００４２】
全評価データ参照予測モデル算出部３２は、初期評価データ群とともに、その後追加された追加評価データを加えた全評価データを用いて、これらデータを線形モデルにデータ圧縮することにより、全評価データ参照予測モデルを作成する制御を行う。作成された全評価データ参照予測モデルは、リコメンド装置２からの要求があった場合に、初期予測モデル設定部が初期モデルとして設定できるように送信する。なお、この計算はデータ量が増大することにより、膨大な計算が必要となるので処理時間を要することになる。
【００４３】
（予測モデルの逐次更新式）
次に、予測モデル更新部１３で実行される予測モデルの逐次更新の更新式の具体例について説明する。
相当量の評価データが蓄積された際に、全評価データを用いて最適な予測モデルを推定するための目的関数が（２）式であったが、ここでは入力データ（xij）が一つずつ与えられる場合を考えて、下記の（９）式の最小化を考える。
2007317068.tif 000012
【００４４】
逐次更新の目的は、上記の（９）式が最小となるように、uci、bc、acおよびfciを更新することである。しかし、（９）式の最小化のみを考えることは他の評価データのすべてを捨て去ることに相当するため、ここでは、ベクトル量子化（LVQ）の枠組みにしたがって、更新前の値から逐次更新の目標値（（９）式を最小とする値）に向かって、ある学習率（γ）の分だけ更新する。すなわち、xijが与えられた際にある変量
2007317068.tif 000013
を更新する場合、（９）式を最小とする値が
2007317068.tif 000014
であるならば、下記の（１０）式により、更新前の値
2007317068.tif 000015
を
2007317068.tif 000016
に更新する。
2007317068.tif 000017
【００４５】
つぎに、bc、acおよびfciについて、（９）式を最小とする値を探索する。おのおのが最適な値となるための条件は、下記の（１１）、（１２）、（１３）式である。
2007317068.tif 000018
【００４６】
したがって、逐次更新におけるおのおのの更新式は、下記の（１４）、（１５）、（１６）式である。
2007317068.tif 000019
【００４７】
つぎに、ユーザの分割に寄与するメンバシップを求める。ただし、本実施形態ではuciの代わりに、分割の際の基準となる
2007317068.tif 000020
を保持する。（９）式から
2007317068.tif 000021
の目標値
2007317068.tif 000022
は下記の（１７）式のように求まる。
2007317068.tif 000023
ただし、（７）式との比較から、本来、m個のアイテムのすべてについて考慮すべきところを一つのアイテムのみで求めているため、（１７）式は小さく見積もられている。したがって、
2007317068.tif 000024
の更新式は、下記の（１８）式のようになる。
2007317068.tif 000025
【００４８】
次に、リコメンドシステム１による典型的な処理動作について説明する。図２は、本発明の一実施形態である動作フローを説明するフローチャートである。
【００４９】
基幹サーバ３によって、初期評価データ群に基づいて予め算出された初期モデル（予測モデル）をリコメンド装置２が受け取り、メモリ２０の予測モデル記憶部２１に記憶することにより、対象ユーザからの推薦依頼があったときに、予測評価値の算出ができるようにしておく（ｓ１０１）。
【００５０】
リコメンド装置２に対し、新たに、追加の評価データが入力されたかを判定し（ｓ１０２）、入力があったときは更新処理を行うために、ｓ１０３に進み、追加評価データの入力がなかったときは更新処理をスキップするためにｓ１０６に進む。
【００５１】
追加評価データの入力があったときは、基幹サーバ３に追加の評価データを送信し（ｓ１０３）、予測モデル更新式（式１０、１４〜１６、１８）に基づいて、新しい予測モデルを算出する（Ｓ１０４）。
そして、予測モデル記憶部２１に記憶してある予測モデルを、新しい予測モデルに置換することにより、更新する（ｓ１０５）。
【００５２】
続いて、対象ユーザから推薦依頼の要求があるかを判定し（ｓ１０６）、要求がないときはｓ１０２に戻り同様の予測モデルの更新処理を繰り返す。一方、要求があったときはｓ１０７に進む。
【００５３】
推薦依頼の要求があったときは、予測モデル記憶部２１に記憶されている予測モデルに基づいて、対象ユーザの未評価アイテムの予測評価値を算出する（Ｓ１０７）。
続いて、算出した予測評価値に基づいて、例えば、最大の予測評価値となったアイテムを推薦アイテムとして選択し、表示装置１９で表示する（ｓ１０８）。
【００５４】
以上の動作により、追加評価データが入力されるごとに、その影響を予測モデルに反映させることができ、対象ユーザからの推薦依頼を受けたときに、最新の評価データの傾向を踏まえたアイテム推薦を行うことができる。
【００５５】
上述した実施形態では、線形ファジイクラスタリングによる予測モデルを採用したが、他の線形モデルを採用して逐次更新を行うようにしてもよい。
【００５６】
また、逐次更新（更新式１０、１４〜１６、１８）において、学習率（γ）を用いているが、学習率（γ）を変更可能にして、状況により設定変更するようにして追加評価データの影響度合いを調整するようにしてもよい。
【産業上の利用可能性】
【００５７】
本発明は、協調フィルタリングを用いて、アイテムを推薦するリコメンド装置に利用することができる。
【図面の簡単な説明】
【００５８】
【図１】本発明の一実施形態であるリコメンドシステムの構成を示すブロック図。
【図２】本発明の一実施形態であるリコメンドシステムの動作フローを示すフローチャート。
【図３】本発明で用いられる予測モデルの概念図。
【図４】協調フィルタリングで用いる評価値データ行列を説明する図。
【符号の説明】
【００５９】
１：  リコメンドシステム
２：  リコメンド装置
３：  基幹サーバ
１１：  入力部
１２：  初期予測モデル設定部
１３：  予測モデル更新部
１４：  予測評価値算出部
１５：  推薦アイテム選択部
２１：  予測モデル記憶部
３１：  初期モデル算出部
３２：  全評価データ参照予測モデル算出部
４１：  評価データ蓄積部
【図１】
2007317068.tif 000026
【図２】
2007317068.tif 000027
【図３】
2007317068.tif 000028
【図４】
2007317068.tif 000029