JP2007317068A - リコメンド装置およびリコメンドシステム - Google Patents
リコメンド装置およびリコメンドシステム Download PDFInfo
- Publication number
- JP2007317068A JP2007317068A JP2006147941A JP2006147941A JP2007317068A JP 2007317068 A JP2007317068 A JP 2007317068A JP 2006147941 A JP2006147941 A JP 2006147941A JP 2006147941 A JP2006147941 A JP 2006147941A JP 2007317068 A JP2007317068 A JP 2007317068A
- Authority
- JP
- Japan
- Prior art keywords
- model
- prediction model
- evaluation data
- initial
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
【課題】 ユーザの嗜好の変化があった場合でも、動的に対応することが可能なリコメンドシステムを提供する。
【解決手段】 評価データ、および、推薦依頼を受け入れる入力部と、初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、初期モデルを基点として、新たな評価データを1つ受け入れるごとに、現在の予測モデルと受け入れた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、推薦すべきアイテムを探し出す推薦アイテム探索部とを備える。
【選択図】図1
【解決手段】 評価データ、および、推薦依頼を受け入れる入力部と、初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、初期モデルを基点として、新たな評価データを1つ受け入れるごとに、現在の予測モデルと受け入れた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、推薦すべきアイテムを探し出す推薦アイテム探索部とを備える。
【選択図】図1
Description
本発明は、協調フィルタリングによりユーザが嗜好するアイテムを予測し、予測したアイテムをユーザに推薦するリコメンド装置およびリコメンドシステムに関し、さらに詳細には、ユーザの嗜好が時間とともに変化する状況において嗜好変化に動的に対応した最適なアイテムを推薦するリコメンダ装置およびリコメンドシステムに関する。
ここで、「アイテム」とは、多数のユーザにより嗜好の度合いを数値評価することができる対象の情報をいい、例えば、映画やホームページ等のコンテンツ、商品等が含まれる。
ここで、「アイテム」とは、多数のユーザにより嗜好の度合いを数値評価することができる対象の情報をいい、例えば、映画やホームページ等のコンテンツ、商品等が含まれる。
ある特定の対象ユーザと類似する嗜好を持つ他のユーザが関心をもつアイテムは、対象ユーザにとっても関心あるアイテムであろうという予測に基づいて、嗜好が類似する他のユーザから収集した多数のアイテムに対する評価データを元に、その対象ユーザが嗜好するアイテムを予測する「協調フィルタリング」が提案されており、この方法を用いて対象ユーザが嗜好するアイテムを予測して推薦するリコメンドシステムが提案されている(特許文献1参照)。
協調フィルタリングでは、予め、複数(多数であるほど後述する予測評価の精度を上げる上で好ましい)のユーザによって、推薦対象となる複数のアイテムについて、それぞれの嗜好の度合いを評価してもらい、その評価結果に基づいて、ユーザ間の嗜好の類似度(相関値)を算出することにより、対象ユーザと嗜好が類似する他のユーザ(類似ユーザという)を探し出す。そして、類似ユーザによるアイテムに対する評価結果と、嗜好の類似度(相関値)とに基づいて、対象ユーザの未評価アイテム(欠測要素)に対する評価値を予測し、予測評価値が高いアイテムを探し出して、推薦する。
協調フィルタリングを用いた最も基本的なリコメンドシステムを、以下に説明する。図4に示すように、予め、複数のユーザが各アイテムについて点数で評価を行い、これを評価値行列(評価データ)としてコンピュータシステムのメモリにデータベースとして蓄積しておく。評価を行っていない未評価アイテムは評価値行列内で空欄となる。図4では、ユーザ01〜ユーザ03が、評価を与えてあるものとする。このとき、新たに対象ユーザ04(アクティブユーザともいう)がいくつかのアイテムについて点数評価を行うことにより、対象ユーザの評価結果と他のユーザの評価結果との類似性に基づいて、対象ユーザがまだ評価を与えていない未評価アイテム(欠測要素)について点数を予測し、予測された未評価アイテムのなかで、高い点数が予測された未評価アイテムを、ユーザ04に対し推薦すべきアイテムとして選別する。この予測の際に、対象ユーザが各アイテムについて評価した評価点数の傾向と、評価点数の傾向が似ている類似ユーザ(図4ではユーザ04はユーザ01と評価が類似している)を探し出し、類似ユーザの評価値に基づいて対象ユーザの未評価アイテムの点数を推定するようにし、その結果、予測された点数が高いアイテムを推薦する。他のユーザについても、同様の手法により、それぞれが有する欠測要素のなかで予測点数が高いものが推薦されることになる。
上述したリコメンドシステムは、手法としては簡単で優れているが、評価値行列全体のデータをメモリに蓄積しておく必要があり、推薦(リコメンド)のための演算の際にメモリ全体のデータを用いることになる(メモリベースアルゴリズム(memory-based algorithm))。すなわち、対象ユーザ以外のユーザ数がn人、アイテム数がm個であるとすると、最大で、n×mのデータ数を記憶しておくことが必要となり、当初nやmが小さい場合であっても、次第に評価データが追加されて情報量が増大し、nとmがともに大きな数になると、n×mのデータ数はさらに膨大なデータ数になってしまう。したがって、対象ユーザに対する推薦アイテムを探すための演算処理を実行する際に、膨大なデータを処理することとなり、システムの負荷が大きく、演算時間も要するようになる。
これに対し、収集された評価データ(評価値行列)に基づいて対象ユーザの未評価アイテムに対する予測評価値を算出するための予測モデル(数式)を構築するモデルベースアルゴリズム(Model-based algorithm)が提案されている。
簡潔な数学モデルを用いた予測モデルとしては、回帰分析や主成分分析に代表される線形モデルが広く用いられるが、すべてのユーザの嗜好を単一の線形モデルで表すことは困難な場合も多いことから、ユーザをいくつかのグループ(クラスター)に分割し、クラスターごとに線形モデルを推定する線形クラスタリングを利用した予測モデルの推定法が提案されている(非特許文献1)。この予測モデル推定法について具体的に説明する。
以下では、主成分分析の手法を用いて、n人のユーザをC個のクラスターに分割しながら、クラスターごとに予測式を推定する場合を考える。ただし、アイテムがm個あるものとする。線形ファジィクラスタリングを用いた予測モデルでは、第iユーザが第cクラスターに所属する割合(メンバシップ)uci(要素数:ユーザごとにC)を推定することでユーザを分割する。ただし、複数のクラスターの中間に存在するユーザがどこかに偏って属することを避けるために、ファジィ理論の応用によるファジィ分割を用いており、下記(1)式の制約を満たす任意の割合でc=1,2,…,Cについてuciが割り当てられる。
ユーザの評価データは、クラスターごとに線形モデル(部分空間)にデータ圧縮された形で保存され、未評価値の予測に用いられる。以下では、m個のアイテムについての情報を1次元の部分空間(直線)に縮約する。第cクラスターにおける線形モデルは、部分空間が通る点(中心ベクトル)bc(要素数:m)、および部分空間(直線)の向きを表すベクトルac(要素数:m)で表される。また、第iユーザの評価値のデータは部分空間上での位置を表す得点fci(要素数:クラスターごとに1)で表される。ただし、fciはクラスターごとに平均が0、分散が1であるものとする。
例えば、図3は、アイテム数m=3、クラスター数C=2である場合の、線形モデルによる協調フィルタリングにおける予測モデルの概念図である。
このように、ユーザの嗜好の特徴を表現するための本モデルは、C個の直線で代表されており、おのおのの直線は、(1)中心を表すベクトル(要素数:m)、(2)向きを表すベクトル(要素数:m)で定義される。また、おのおののユーザのデータは、(3)直線上の位置を表す得点(要素数:クラスターごとに1)、および、(4)おのおののクラスターへの所属度合いを決める距離(要素数:ユーザごとにC)で与えられる。ここでは、3つのアイテムがそれぞれx1、x2、x3軸に対応している。
図中に示すように、x1、x2が評価されており、x3が未評価(欠測)である場合に、抽出した予測モデル(線形モデル)に最も合うように、x3を予測する。
このように、ユーザの嗜好の特徴を表現するための本モデルは、C個の直線で代表されており、おのおのの直線は、(1)中心を表すベクトル(要素数:m)、(2)向きを表すベクトル(要素数:m)で定義される。また、おのおののユーザのデータは、(3)直線上の位置を表す得点(要素数:クラスターごとに1)、および、(4)おのおののクラスターへの所属度合いを決める距離(要素数:ユーザごとにC)で与えられる。ここでは、3つのアイテムがそれぞれx1、x2、x3軸に対応している。
図中に示すように、x1、x2が評価されており、x3が未評価(欠測)である場合に、抽出した予測モデル(線形モデル)に最も合うように、x3を予測する。
この線形モデルによる協調フィルタリングでは、最大n×m個の要素で表される評価データ(評価値行列)を、C個の直線を表す2Cm個の要素とC個の直線上でのユーザの位置を表すCn個の要素およびC個の直線までの距離を表すCn個の要素からなる2C(m+n)個の要素で表していることになる。
上述したように、アイテムの数mやユーザの数nが膨大である一方、グループの数Cは大きくないため、データ数の大幅な軽減が可能になり、メモリ使用量の軽減、演算負荷の軽減が可能となる。
上述したように、アイテムの数mやユーザの数nが膨大である一方、グループの数Cは大きくないため、データ数の大幅な軽減が可能になり、メモリ使用量の軽減、演算負荷の軽減が可能となる。
このときのユーザの分割と線形モデルの推定を同時に行う際に最小化すべき目的関数は、下記(2)式のように表される。
ただし、wijは第iユーザが第jアイテムをすでに評価したか否かを表し、評価していれば1,評価していなければ0となる。xijは第iユーザが第jアイテムに与えた評価値を表す。acjはベクトルacの第j要素を表す。αはグループ分け(クラスタリング)の際のクラスターの広がりを制御する定数である。θはグループ分け(クラスタリング)の際に所属のあいまい度を制御する定数である。
(2)式が最小となるように、uci、bc、acおよびfciが繰り返し最適化され、ユーザを分割しながら線形モデルが推定される。その際には、以下の更新式が用いられる。
ただし、
であり、上付きのTはベクトルの転置を表す。また、
および
はそれぞれ対角行列で、
、
である。
あるユーザvに対して推薦すべきアイテムを決定する際には、まず、ucvが最大のcを選び、第cクラスターの予測式である下記の(8)式で未評価のアイテムの予測値yvjを推定する。
そして、yvjが最大となるアイテムjを求めて、それを推薦用アイテムとして対象ユーザに提示する。
米国特許4996642号
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).
そして、yvjが最大となるアイテムjを求めて、それを推薦用アイテムとして対象ユーザに提示する。
上記のモデルベースアルゴリズム(Model-based algorithm)は、簡潔な予測モデルのみを使って推薦すべきアイテムを探索するものであることから、予測モデルを構築した後に、これを用いてアイテムの探索を行う際には、評価データ(評価値行列)全体を探索する場合のように大容量のメモリを用いた大量の計算を行う必要はなく、メモリベースアルゴリズムに比べると演算の負荷を格段に少なくすることができる。
しかしながら、この場合であっても、新しく追加された評価データを加えて、予測モデルを更新したりする段階では、更新演算を行う装置に、全ての評価データ(評価値行列)を保持しておく必要があり、また、評価データのすべてを用いて更新の計算を行うため、計算量が膨大となり、汎用コンピュータのような簡単な端末装置では処理が困難で演算に時間がかかる。また、新たに追加された評価データの影響を予測モデルに逐次反映させることは困難である。さらに演算時間を小さく抑えようとするなら、演算処理性能が優れた高性能コンピュータが必要となる。
また、収集したすべての評価データを同列に扱っていることから、ユーザの嗜好の傾向に急激な変化が生じた際には、その変化に対して動的に適応させることが困難である。例えば、映画や本等が評価対象のアイテムである場合に、特定のアイテムが、有名な賞を獲得した場合に、賞を獲得する前後で、ユーザの嗜好の評価は大きく変化することがある。かかる場合に、上述したような全評価データを参照して予測モデルを更新する従来のモデルベースアルゴリズムでは、急激な変化に対して、動的に対応した処理を行うことは困難である。
さらに、従来のモデルベースアルゴリズムは、予測モデルの構築にこれまで収集した全評価データを用いることから、協調フィルタリングの入力形式の特徴である、ひとりのユーザがアイテムを評価することで1つずつ評価データが順に追加されるという入力形式には対応しにくい構造である。
そこで、本発明は、協調フィルタリングにおける評価データの入力形態の特性を生かすことができ、ユーザの嗜好の変化があった場合でも、その嗜好変化に動的に対応することが可能であり、しかも、演算の負荷が大きくならず、簡易な端末装置でもアイテムの推薦が可能であるリコメンド装置およびリコメンドシステムを提供することを目的とする。
上記課題を解決するためになされた本発明のリコメンド装置は、ユーザがアイテムに対して評価する評価データ、および、対象ユーザからの未評価アイテムの推薦依頼を受け付ける入力部と、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成され、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、初期モデルを基点として、新たな評価データを1つ受け付けるごとに、現在の予測モデルと受け付けた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、対象ユーザからアイテムの推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す推薦アイテム探索部とを備えるようにしている。
本発明によれば、最初の予測モデルである初期モデルを設定する。これにより、端末装置は全評価データを保持することに代えて、データ量が圧縮された初期モデルを保持することになる。なお、設定される初期モデルの作成手段に付いては特に限定されない。他の装置で作成した初期モデルであってもよいし、極端な場合は任意に作成したモデル式を与えてもよい(初期モデルが最適設定モデルでなくても逐次更新により、後で逐次改善されていく)。予測モデル更新部は、新たな評価データを1つ受け入れるごとに、現在の予測モデル(最初は初期モデル)と新たに追加された1つの評価データとに基づいて、新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する。このときの更新処理は、現在の予測モデルと新たに追加された1つの評価データとの演算であり、全評価データを用いて行う演算に比べると、計算の負荷が小さく簡単であり、しかも、追加された最新の評価データの影響を、逐次反映させるものであることから、ユーザの評価に急激な変化があった場合には、その影響を適切に反映した予測モデルに改善されることになる。
そして、予測評価値算出部は、現在の予測モデル(すなわち初期モデルを基点に、逐次更新された予測モデル)に基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する。推薦アイテム探索部は、算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す。
そして、予測評価値算出部は、現在の予測モデル(すなわち初期モデルを基点に、逐次更新された予測モデル)に基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する。推薦アイテム探索部は、算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す。
本発明によれば、新しく追加される評価データに対応して、簡単な演算で予測モデルを適切に変化することができるので、適切なアイテムを推薦することができ、特に、ユーザの評価の傾向に急激な変化があっても、推薦すべきアイテムとして最新の傾向に基づいた適切なアイテムを推薦することができる。
また、評価データが逐次増大しても、全評価データを用いて、予測評価の演算を行うのではなく計算の負荷は大きくならないので、演算時間を短くすることができる。
また、評価データが逐次増大しても、全評価データを用いて、予測評価の演算を行うのではなく計算の負荷は大きくならないので、演算時間を短くすることができる。
(他の課題を解決するための手段および効果)
上記発明において、初期モデルは、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成されたモデルであるようにしてもよい。
これにより、予めユーザがアイテムを評価した評価データである初期評価データ群に基づいた協調フィルタリングの初期モデルが予測モデルとして採用されているので、当初から最適なアイテムを推薦することができる。
上記発明において、初期モデルは、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成されたモデルであるようにしてもよい。
これにより、予めユーザがアイテムを評価した評価データである初期評価データ群に基づいた協調フィルタリングの初期モデルが予測モデルとして採用されているので、当初から最適なアイテムを推薦することができる。
上記発明において、初期モデルは、線形ファジイクラスタリングを用いた予測モデルが用いられるようにしてもよい。
これにより、ユーザの評価を単一の線形モデルで表現するのではなく、クラスターごと複数の線形モデルで分割して表現することができるので、単純な線形モデル(例えば単純な回帰分析モデル、主成分分析モデル)よりも、現状に即した予測モデルにすることができる。
これにより、ユーザの評価を単一の線形モデルで表現するのではなく、クラスターごと複数の線形モデルで分割して表現することができるので、単純な線形モデル(例えば単純な回帰分析モデル、主成分分析モデル)よりも、現状に即した予測モデルにすることができる。
また、上記発明において、予測モデル更新部は、現在の予測モデルを新予測モデルに更新する際に、予め設定した学習率に基づいて新たに受け付けた評価データの予測モデルへの影響を調整するようにしてもよい。
これにより、新たに受け付けた評価データの影響度合いを、学習率として与えることにより、適切な度合いで反映させることができる。
これにより、新たに受け付けた評価データの影響度合いを、学習率として与えることにより、適切な度合いで反映させることができる。
また、別の観点からなされた本発明のリコメンドシステムは、上記のリコメンド装置と、このリコメンド装置とデータ送信可能に接続される基幹サーバとからなるリコメンドシステムであって、基幹サーバは、複数のユーザが予めアイテムを評価した初期評価データ群、および、リコメンド装置から逐次送信される追加評価データを蓄積する評価データ蓄積部と、初期評価データ群を線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを算出する初期モデル算出部と、初期評価データ群にその後追加された追加評価データを加えた全データを用いて線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる全評価データ参照予測モデルを作成する全評価データ参照予測モデル算出部とを備えるようにしている。
この発明によれば、リコメンド装置とは別に設けられた基幹サーバの評価データ蓄積部に、初期評価データ群とともに、追加の評価データも含めた全評価データが蓄積される。
初期モデル算出部は、初期評価データ群を線形モデルにデータ圧縮することにより協調フィルタリングの初期モデルを作成する。作成した初期モデルは、リコメンド装置に送信されることにより、リコメンド装置は、初期モデル、あるいはこれを基点として逐次更新することにより作成した現在の予測モデルにより、予測評価値を算出して、推薦アイテムを探し出す。
一方、全評価データ参照予測モデル算出部は、初期評価データ群にその後追加された追加評価データを加えた全評価データを、線形モデルにデータ圧縮することにより、全評価データ参照して作成した予測モデルを作成する。この演算は、膨大な計算が実行されるので、通常時は行わず、必要に応じて不定期に行う。得られた全評価データ参照予測モデルは、更新を行いたいときにリコメンド装置に送信される。その後は、リコメンド装置において、初期モデルを設定したときと同様の処理が実行される。
初期モデル算出部は、初期評価データ群を線形モデルにデータ圧縮することにより協調フィルタリングの初期モデルを作成する。作成した初期モデルは、リコメンド装置に送信されることにより、リコメンド装置は、初期モデル、あるいはこれを基点として逐次更新することにより作成した現在の予測モデルにより、予測評価値を算出して、推薦アイテムを探し出す。
一方、全評価データ参照予測モデル算出部は、初期評価データ群にその後追加された追加評価データを加えた全評価データを、線形モデルにデータ圧縮することにより、全評価データ参照して作成した予測モデルを作成する。この演算は、膨大な計算が実行されるので、通常時は行わず、必要に応じて不定期に行う。得られた全評価データ参照予測モデルは、更新を行いたいときにリコメンド装置に送信される。その後は、リコメンド装置において、初期モデルを設定したときと同様の処理が実行される。
これにより、リコメンド装置は、基幹サーバから送信される初期モデルを基点にして更新した予測モデルに代えて、その後に収集された追加評価データを含めた全評価データを参照して作成した予測データを、新たに初期モデルとして設定して、同様のアイテムの推薦処理を実行することができる。
以下、本発明の一実施形態について、図面を用いて説明する。なお、本発明は、以下に説明する実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の態様が含まれることは言うまでもない。
図1は、本発明の一実施形態であるリコメンドシステムの構成を示すブロック構成図である。
リコメンドシステム1は、ユーザが直接アクセスする端末装置であるリコメンド装置2と、基幹サーバ3とからなり、これら装置間は、ネットワーク接続経由で互いにデータ送受可能に接続されている。このうち、リコメンド装置2は、汎用コンピュータが使用される。基幹サーバ3は、リコメンド装置2と同様の性能の汎用コンピュータを使用することもできるが、扱うデータ量が多くなると、負荷の大きな計算を行うことになるので、リコメンド装置2よりは演算処理能力が優れたコンピュータ装置を使用するのが好ましい。
リコメンドシステム1は、ユーザが直接アクセスする端末装置であるリコメンド装置2と、基幹サーバ3とからなり、これら装置間は、ネットワーク接続経由で互いにデータ送受可能に接続されている。このうち、リコメンド装置2は、汎用コンピュータが使用される。基幹サーバ3は、リコメンド装置2と同様の性能の汎用コンピュータを使用することもできるが、扱うデータ量が多くなると、負荷の大きな計算を行うことになるので、リコメンド装置2よりは演算処理能力が優れたコンピュータ装置を使用するのが好ましい。
まず、リコメンド装置2の構成について説明する。リコメンド装置2の主なハードウェア構成は、CPU10、メモリ20、キーボード11b、表示装置19、および、遠隔地ユーザがアクセスする際に経由するインターネット回線11aからなる。
CPU10、メモリ20により実現される機能を説明するため、これら機能をブロック化して説明すると、入力部11、初期予測モデル設定部12、予測モデル更新部13、予測評価値算出部14、推薦アイテム選択部15、予測モデル記憶部21とからなる。
CPU10、メモリ20により実現される機能を説明するため、これら機能をブロック化して説明すると、入力部11、初期予測モデル設定部12、予測モデル更新部13、予測評価値算出部14、推薦アイテム選択部15、予測モデル記憶部21とからなる。
入力部11は、アイテムに対して評価した評価データ(図4の各行に相当するデータ)を受け付けたり、対象ユーザからの未評価アイテムについての推薦依頼を受け付けたりする処理を行う。具体的には、ユーザがキーボード11bから入力し、あるいは、インターネット回線11aを介して入力する評価データ(xij)や推薦依頼の指令を受け付ける。
初期予測モデル設定部12は、基幹サーバ3から送信されてくる初期モデルを最初の予測モデルとして設定し、予測モデル記憶部21に記憶する処理を行う。すなわち、協調フィルタリングを行うには、前提として、ユーザがアイテムについて評価した評価データが必要であるため、複数のユーザによって予めアイテムを評価した初期評価データ群が基幹サーバ3に蓄積されている。これら初期評価データ群に基づいて、基幹サーバ3が最初の予測モデルである初期モデルを作成する。作成された初期モデル(予測モデル)がリコメンド装置2に送信されてくるので、これを設定する。
なお、基幹サーバ3から送信されてくる初期モデルに代えて、任意に定めた予測モデルを初期モデルとして設定してもよい。ただし、この場合は、後述する予測モデル更新部13によって、初期モデルをスタートの予測モデルとして、予測モデルの更新処理をしばらく繰り返す必要があり、更新処理後に、実用可能な予測モデルが構築されるようになる。
なお、基幹サーバ3から送信されてくる初期モデルに代えて、任意に定めた予測モデルを初期モデルとして設定してもよい。ただし、この場合は、後述する予測モデル更新部13によって、初期モデルをスタートの予測モデルとして、予測モデルの更新処理をしばらく繰り返す必要があり、更新処理後に、実用可能な予測モデルが構築されるようになる。
予測モデル更新部13は、入力部が新たな評価データを1つ受け入れるごとに、現在の予測モデル(最初は初期モデルが現在の予測モデルになっている)と、入力部11が受け付けた新たな評価データとに基づいて新予測モデルを逐次作成する処理を行い、さらに、作成した新予測モデルを新たに現在の予測モデルとして更新する処理を行う。
すなわち、新たに評価データ(xij)が追加されると、この評価データ(xij)に基づいて算出される目標値に向けて、現在の予測モデルを所定比率(学習率γという)だけ更新し、更新結果を、新しい予測モデルとして、予測モデル記憶部21に記憶されている現在の予測モデルに対し置換する処理を行う。以後、予測モデル更新部13は、追加の評価データ(xij)を受けるごとに、同様の更新処理を繰り返すことにより、予測モデルを逐次更新することになる。
すなわち、新たに評価データ(xij)が追加されると、この評価データ(xij)に基づいて算出される目標値に向けて、現在の予測モデルを所定比率(学習率γという)だけ更新し、更新結果を、新しい予測モデルとして、予測モデル記憶部21に記憶されている現在の予測モデルに対し置換する処理を行う。以後、予測モデル更新部13は、追加の評価データ(xij)を受けるごとに、同様の更新処理を繰り返すことにより、予測モデルを逐次更新することになる。
予測評価値算出部14は、対象ユーザから推薦依頼の指令を受けたときに、現在、予測モデル記憶部21に記憶されている予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する演算処理を行う。
推薦アイテム選択部15は、対象ユーザの未評価アイテムに対する予測評価値が算出されたときに、未評価アイテムの中で予測評価値が最大のもの(あるいは予め設定した閾値を越えているもの)を推薦すべきものとして、1つあるいは複数選択し、例えば、表示装置19に出力する処理を行う。
予測モデル記憶部21は、予測評価値を算出する際に用いる予測モデルを記憶する。
予測モデル記憶部21は、予測評価値を算出する際に用いる予測モデルを記憶する。
次に、基幹サーバ3の構成について説明する。基幹サーバ3の主なハードウェア構成は、CPU30、メモリ40とからなる(入出力装置も備えているが図示を省略する)。CPU30、メモリ40により実現される機能を説明するため、これら機能をブロック化して説明すると、初期モデル算出部31、全評価データ参照予測モデル算出部32、評価データ蓄積部41とにより構成される。
評価データ蓄積部41は、複数のユーザが予めアイテムを評価した初期評価データ群が蓄積されている。そして、リコメンド装置2から追加の評価データが逐次送信されるごとに、これを蓄積する。
初期モデル算出部31は、評価データ蓄積部41にある初期評価データ群を線形モデルにデータ圧縮することにより初期モデルを作成する制御を行う。具体的には、式(1)〜(7)で説明した線形ファジイクラスタリングを用いた予測モデルを作成する。
作成された予測モデルは、初期モデルとしてリコメンド装置2に送信される。
作成された予測モデルは、初期モデルとしてリコメンド装置2に送信される。
全評価データ参照予測モデル算出部32は、初期評価データ群とともに、その後追加された追加評価データを加えた全評価データを用いて、これらデータを線形モデルにデータ圧縮することにより、全評価データ参照予測モデルを作成する制御を行う。作成された全評価データ参照予測モデルは、リコメンド装置2からの要求があった場合に、初期予測モデル設定部が初期モデルとして設定できるように送信する。なお、この計算はデータ量が増大することにより、膨大な計算が必要となるので処理時間を要することになる。
(予測モデルの逐次更新式)
次に、予測モデル更新部13で実行される予測モデルの逐次更新の更新式の具体例について説明する。
相当量の評価データが蓄積された際に、全評価データを用いて最適な予測モデルを推定するための目的関数が(2)式であったが、ここでは入力データ(xij)が一つずつ与えられる場合を考えて、下記の(9)式の最小化を考える。
次に、予測モデル更新部13で実行される予測モデルの逐次更新の更新式の具体例について説明する。
相当量の評価データが蓄積された際に、全評価データを用いて最適な予測モデルを推定するための目的関数が(2)式であったが、ここでは入力データ(xij)が一つずつ与えられる場合を考えて、下記の(9)式の最小化を考える。
逐次更新の目的は、上記の(9)式が最小となるように、uci、bc、acおよびfciを更新することである。しかし、(9)式の最小化のみを考えることは他の評価データのすべてを捨て去ることに相当するため、ここでは、ベクトル量子化(LVQ)の枠組みにしたがって、更新前の値から逐次更新の目標値((9)式を最小とする値)に向かって、ある学習率(γ)の分だけ更新する。すなわち、xijが与えられた際にある変量
を更新する場合、(9)式を最小とする値が
であるならば、下記の(10)式により、更新前の値
を
に更新する。
を更新する場合、(9)式を最小とする値が
であるならば、下記の(10)式により、更新前の値
を
に更新する。
つぎに、bc、acおよびfciについて、(9)式を最小とする値を探索する。おのおのが最適な値となるための条件は、下記の(11)、(12)、(13)式である。
したがって、逐次更新におけるおのおのの更新式は、下記の(14)、(15)、(16)式である。
つぎに、ユーザの分割に寄与するメンバシップを求める。ただし、本実施形態ではuciの代わりに、分割の際の基準となる
を保持する。(9)式から
の目標値
は下記の(17)式のように求まる。
ただし、(7)式との比較から、本来、m個のアイテムのすべてについて考慮すべきところを一つのアイテムのみで求めているため、(17)式は小さく見積もられている。したがって、
の更新式は、下記の(18)式のようになる。
を保持する。(9)式から
の目標値
は下記の(17)式のように求まる。
ただし、(7)式との比較から、本来、m個のアイテムのすべてについて考慮すべきところを一つのアイテムのみで求めているため、(17)式は小さく見積もられている。したがって、
の更新式は、下記の(18)式のようになる。
次に、リコメンドシステム1による典型的な処理動作について説明する。図2は、本発明の一実施形態である動作フローを説明するフローチャートである。
基幹サーバ3によって、初期評価データ群に基づいて予め算出された初期モデル(予測モデル)をリコメンド装置2が受け取り、メモリ20の予測モデル記憶部21に記憶することにより、対象ユーザからの推薦依頼があったときに、予測評価値の算出ができるようにしておく(s101)。
リコメンド装置2に対し、新たに、追加の評価データが入力されたかを判定し(s102)、入力があったときは更新処理を行うために、s103に進み、追加評価データの入力がなかったときは更新処理をスキップするためにs106に進む。
追加評価データの入力があったときは、基幹サーバ3に追加の評価データを送信し(s103)、予測モデル更新式(式10、14〜16、18)に基づいて、新しい予測モデルを算出する(S104)。
そして、予測モデル記憶部21に記憶してある予測モデルを、新しい予測モデルに置換することにより、更新する(s105)。
そして、予測モデル記憶部21に記憶してある予測モデルを、新しい予測モデルに置換することにより、更新する(s105)。
続いて、対象ユーザから推薦依頼の要求があるかを判定し(s106)、要求がないときはs102に戻り同様の予測モデルの更新処理を繰り返す。一方、要求があったときはs107に進む。
推薦依頼の要求があったときは、予測モデル記憶部21に記憶されている予測モデルに基づいて、対象ユーザの未評価アイテムの予測評価値を算出する(S107)。
続いて、算出した予測評価値に基づいて、例えば、最大の予測評価値となったアイテムを推薦アイテムとして選択し、表示装置19で表示する(s108)。
続いて、算出した予測評価値に基づいて、例えば、最大の予測評価値となったアイテムを推薦アイテムとして選択し、表示装置19で表示する(s108)。
以上の動作により、追加評価データが入力されるごとに、その影響を予測モデルに反映させることができ、対象ユーザからの推薦依頼を受けたときに、最新の評価データの傾向を踏まえたアイテム推薦を行うことができる。
上述した実施形態では、線形ファジイクラスタリングによる予測モデルを採用したが、他の線形モデルを採用して逐次更新を行うようにしてもよい。
また、逐次更新(更新式10、14〜16、18)において、学習率(γ)を用いているが、学習率(γ)を変更可能にして、状況により設定変更するようにして追加評価データの影響度合いを調整するようにしてもよい。
本発明は、協調フィルタリングを用いて、アイテムを推薦するリコメンド装置に利用することができる。
1: リコメンドシステム
2: リコメンド装置
3: 基幹サーバ
11: 入力部
12: 初期予測モデル設定部
13: 予測モデル更新部
14: 予測評価値算出部
15: 推薦アイテム選択部
21: 予測モデル記憶部
31: 初期モデル算出部
32: 全評価データ参照予測モデル算出部
41: 評価データ蓄積部
2: リコメンド装置
3: 基幹サーバ
11: 入力部
12: 初期予測モデル設定部
13: 予測モデル更新部
14: 予測評価値算出部
15: 推薦アイテム選択部
21: 予測モデル記憶部
31: 初期モデル算出部
32: 全評価データ参照予測モデル算出部
41: 評価データ蓄積部
Claims (5)
- ユーザがアイテムに対して評価する評価データ、および、対象ユーザからの未評価アイテムの推薦依頼を受け付ける入力部と、
対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを最初の予測モデルとして設定する初期予測モデル設定部と、
初期モデルを基点として、新たな評価データを1つ受け付けるごとに、現在の予測モデルと受け付けた新たな評価データとに基づいて新予測モデルを逐次作成し、作成した新予測モデルを新たに現在の予測モデルとして更新する予測モデル更新部と、
対象ユーザからアイテムの推薦依頼を受けた場合に、現在の予測モデルに基づいて、対象ユーザの未評価アイテムに対する予測評価値を算出する予測評価値算出部と、
算出された未評価アイテムに対する予測評価値に基づいて、対象ユーザに推薦すべきアイテムを探し出す推薦アイテム探索部とを備えたことを特徴とするリコメンド装置。 - 初期モデルは、複数のユーザが予めアイテムを評価した初期評価データ群を線形モデルにデータ圧縮することにより作成されたモデルであることを特徴とする請求項1に記載のリコメンド装置。
- 初期モデルは、線形ファジイクラスタリングを用いた予測モデルが用いられることを特徴とする請求項1に記載のリコメンド装置。
- 予測モデル更新部は、現在の予測モデルを新予測モデルに更新する際に、予め設定した学習率に基づいて新たに受け付けた評価データの予測モデルへの影響を調整することを特徴とする請求項1に記載のリコメンド装置。
- 請求項1〜4のいずれかに記載のリコメンダ装置と、このリコメンド装置とデータ送信可能に接続される基幹サーバとからなるリコメンドシステムであって、
基幹サーバは、複数のユーザが予めアイテムを評価した初期評価データ群、および、リコメンダ装置から逐次送信される追加評価データを蓄積する評価データ蓄積部と、
初期評価データ群を線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる初期モデルを算出する初期モデル算出部と、
初期評価データ群にその後追加された追加評価データを加えた全評価データを用いて線形モデルにデータ圧縮することにより作成し、かつ、対象ユーザの未評価アイテムに対する予測評価値を算出するために用いる全評価データ参照予測モデルを作成する全評価データ参照予測モデル算出部とを備えたことを特徴とするリコメンドシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006147941A JP2007317068A (ja) | 2006-05-29 | 2006-05-29 | リコメンド装置およびリコメンドシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006147941A JP2007317068A (ja) | 2006-05-29 | 2006-05-29 | リコメンド装置およびリコメンドシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007317068A true JP2007317068A (ja) | 2007-12-06 |
Family
ID=38850854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006147941A Pending JP2007317068A (ja) | 2006-05-29 | 2006-05-29 | リコメンド装置およびリコメンドシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007317068A (ja) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009265729A (ja) * | 2008-04-22 | 2009-11-12 | Sony Corp | 推定装置および方法、並びにプログラム |
JP2009265730A (ja) * | 2008-04-22 | 2009-11-12 | Sony Corp | 情報処理装置および方法、並びにプログラム |
JP2010286921A (ja) * | 2009-06-09 | 2010-12-24 | Fujitsu Ltd | 推薦装置、推薦プログラムおよび推薦方法 |
JP2011248829A (ja) * | 2010-05-31 | 2011-12-08 | Sony Corp | 評価予測装置、評価予測方法、及びプログラム |
WO2012142748A1 (en) * | 2011-04-19 | 2012-10-26 | Nokia Corporation | Method and apparatus for providing feature-based collaborative filtering |
JP2012528327A (ja) * | 2009-05-29 | 2012-11-12 | エムディーエス アナリティカル テクノロジーズ | 大量の分光データにおける相関変数を識別するためのシステムおよび方法 |
JP2012533110A (ja) * | 2009-07-09 | 2012-12-20 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 格付けおよび新鮮度の減衰 |
KR101339511B1 (ko) * | 2011-01-26 | 2013-12-10 | 한국환경공단 | 수질 다 항목을 이용한 총 질소 예측 장치 및 방법 |
CN105718579A (zh) * | 2016-01-22 | 2016-06-29 | 浙江大学 | 一种基于上网日志挖掘和用户活动识别的信息推送方法 |
JP6059314B1 (ja) * | 2015-09-17 | 2017-01-11 | ヤフー株式会社 | 推定装置、推定方法及び推定プログラム |
JP2017059255A (ja) * | 2016-12-08 | 2017-03-23 | ヤフー株式会社 | 推定装置、推定方法及び推定プログラム |
JP2017215647A (ja) * | 2016-05-30 | 2017-12-07 | ヤフー株式会社 | 選択装置、選択方法および選択プログラム |
JP2018518722A (ja) * | 2015-04-23 | 2018-07-12 | ロヴィ ガイズ, インコーポレイテッド | メディアアセット推奨モデルにおける正確度を向上させるためのシステムおよび方法 |
WO2019188102A1 (ja) * | 2018-03-27 | 2019-10-03 | カルチュア・コンビニエンス・クラブ株式会社 | 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム |
CN112997274A (zh) * | 2018-11-21 | 2021-06-18 | 东京毅力科创株式会社 | 基片处理的条件设定辅助方法、基片处理系统、存储介质和学习模型 |
JP2021103340A (ja) * | 2018-03-27 | 2021-07-15 | カルチュア・コンビニエンス・クラブ株式会社 | 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム |
-
2006
- 2006-05-29 JP JP2006147941A patent/JP2007317068A/ja active Pending
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8200588B2 (en) | 2008-04-20 | 2012-06-12 | Sony Corporation | Information processing device, method and program for selecting expression candidates |
CN101568014B (zh) * | 2008-04-22 | 2013-03-27 | 索尼株式会社 | 评估设备和方法 |
JP2009265730A (ja) * | 2008-04-22 | 2009-11-12 | Sony Corp | 情報処理装置および方法、並びにプログラム |
JP4591793B2 (ja) * | 2008-04-22 | 2010-12-01 | ソニー株式会社 | 推定装置および方法、並びにプログラム |
JP4591794B2 (ja) * | 2008-04-22 | 2010-12-01 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
US8160987B2 (en) | 2008-04-22 | 2012-04-17 | Sony Corporation | Estimating device and method, and program |
JP2009265729A (ja) * | 2008-04-22 | 2009-11-12 | Sony Corp | 推定装置および方法、並びにプログラム |
JP2012528327A (ja) * | 2009-05-29 | 2012-11-12 | エムディーエス アナリティカル テクノロジーズ | 大量の分光データにおける相関変数を識別するためのシステムおよび方法 |
JP2010286921A (ja) * | 2009-06-09 | 2010-12-24 | Fujitsu Ltd | 推薦装置、推薦プログラムおよび推薦方法 |
JP2012533110A (ja) * | 2009-07-09 | 2012-12-20 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 格付けおよび新鮮度の減衰 |
JP2011248829A (ja) * | 2010-05-31 | 2011-12-08 | Sony Corp | 評価予測装置、評価予測方法、及びプログラム |
KR101339511B1 (ko) * | 2011-01-26 | 2013-12-10 | 한국환경공단 | 수질 다 항목을 이용한 총 질소 예측 장치 및 방법 |
WO2012142748A1 (en) * | 2011-04-19 | 2012-10-26 | Nokia Corporation | Method and apparatus for providing feature-based collaborative filtering |
JP2018518722A (ja) * | 2015-04-23 | 2018-07-12 | ロヴィ ガイズ, インコーポレイテッド | メディアアセット推奨モデルにおける正確度を向上させるためのシステムおよび方法 |
JP6059314B1 (ja) * | 2015-09-17 | 2017-01-11 | ヤフー株式会社 | 推定装置、推定方法及び推定プログラム |
CN105718579A (zh) * | 2016-01-22 | 2016-06-29 | 浙江大学 | 一种基于上网日志挖掘和用户活动识别的信息推送方法 |
CN105718579B (zh) * | 2016-01-22 | 2018-12-18 | 浙江大学 | 一种基于上网日志挖掘和用户活动识别的信息推送方法 |
JP2017215647A (ja) * | 2016-05-30 | 2017-12-07 | ヤフー株式会社 | 選択装置、選択方法および選択プログラム |
JP2017059255A (ja) * | 2016-12-08 | 2017-03-23 | ヤフー株式会社 | 推定装置、推定方法及び推定プログラム |
WO2019188102A1 (ja) * | 2018-03-27 | 2019-10-03 | カルチュア・コンビニエンス・クラブ株式会社 | 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム |
CN111902836A (zh) * | 2018-03-27 | 2020-11-06 | 文化便利俱乐部株式会社 | 基于顾客属性信息进行建议的装置、方法、及程序 |
JP2021103340A (ja) * | 2018-03-27 | 2021-07-15 | カルチュア・コンビニエンス・クラブ株式会社 | 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム |
JP7283865B2 (ja) | 2018-03-27 | 2023-05-30 | カルチュア・コンビニエンス・クラブ株式会社 | 顧客の属性情報に基づきレコメンドを行う装置、方法、およびプログラム |
CN112997274A (zh) * | 2018-11-21 | 2021-06-18 | 东京毅力科创株式会社 | 基片处理的条件设定辅助方法、基片处理系统、存储介质和学习模型 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007317068A (ja) | リコメンド装置およびリコメンドシステム | |
CN110297848B (zh) | 基于联邦学习的推荐模型训练方法、终端及存储介质 | |
CN109902708B (zh) | 一种推荐模型训练方法及相关装置 | |
CN113064879B (zh) | 数据库参数调整方法、装置及计算机可读存储介质 | |
US11941527B2 (en) | Population based training of neural networks | |
US9076156B2 (en) | Real-time adaptive binning through partition modification | |
CN109062919B (zh) | 一种基于深度强化学习的内容推荐方法及装置 | |
WO2017071251A1 (zh) | 信息推送方法和装置 | |
CN107590243A (zh) | 基于随机游走和多样性图排序的个性化服务推荐方法 | |
CN111881358B (zh) | 一种对象推荐系统、方法、装置、电子设备和存储介质 | |
JP2013105213A (ja) | 情報推薦装置及び方法及び装置及びプログラム | |
CN115905687A (zh) | 基于元学习图神经网络面向冷启动的推荐系统及方法 | |
Zheng et al. | Mutual benefit aware task assignment in a bipartite labor market | |
WO2020112580A1 (en) | Data retrieval | |
CN111898740B (zh) | 预测模型的模型参数更新方法及装置 | |
CN117035914A (zh) | 产品的推荐方法、装置、计算机设备及存储介质 | |
CN115185606A (zh) | 业务配置参数的获得方法、装置、设备及存储介质 | |
CN116339932A (zh) | 资源调度方法、装置和服务器 | |
El Alami et al. | Toward an effective hybrid collaborative filtering: a new approach based on matrix factorization and heuristic-based neighborhood | |
CN112036979A (zh) | 评分预测方法、推荐方法、处理装置及存储介质 | |
CN116383501B (zh) | 一种基于直播模式的网络资讯推送方法和装置 | |
Feng et al. | Machine Learning Prediction andWeb Access Modeling | |
CN113256024B (zh) | 一种融合群体行为的用户行为预测方法 | |
CN110795936B (zh) | 词向量的获取方法和装置、存储介质及电子装置 | |
CN110933119B (zh) | 一种更新缓存内容的方法及设备 |