(57)【要約】【課題】ユーザに興味がある話題を提供すること。【解決手段】本発明の情報提供装置は、各ユーザの各話題に対する評価から成る評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮する次元圧縮手段と、話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、ユーザが属するグループを抽出し、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、ユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、を備える。【選択図】図１
2014146218.tif 000002
【特許請求の範囲】
【請求項１】
各ユーザの各話題に対する評価から成る評価履歴情報を入力する入力手段と、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する次元圧縮手段と、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、
を備えた情報提供装置。
【請求項２】
請求項１に記載の情報提供装置であって、
前記次元圧縮手段が、前記評価履歴情報に基づいて、潜在トピックモデリングにより、話題に潜在的に存在するカテゴリである潜在トピックを要素として、話題の属する潜在トピックの確率と、ユーザの属する潜在トピックの確率とを計算し、前記話題の圧縮次元ベクトル表現と前記ユーザの圧縮次元ベクトル表現とを、話題の潜在トピックの確率とユーザの潜在トピックの確率とで表し、
前記グループ化手段が、第１の閾値以上の潜在トピック確率を持つ話題と、第２の閾値以上の潜在トピック確率を持つユーザとを、各潜在トピック毎に一つのグループとして対応づけ、
前記推薦話題候補作成手段が、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の潜在トピックの確率に基づいて推薦話題候補を選定する、
情報提供装置。
【請求項３】
請求項１又は２に記載の情報提供装置であって、
前記次元圧縮手段が、前記評価履歴情報と、各ユーザのコミュニケーション関係を示すコミュニケーション相手情報と、に基づいて、同じ話題を評価したコミュニケーション相手同士のユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する、
情報提供装置。
【請求項４】
請求項３に記載の情報提供装置であって、
前記次元圧縮手段が、前記評価履歴情報と、前記コミュニケーション相手情報と、に基づいて、コミュニケーション相手同士を条件として重みを加える潜在トピックモデリングにより、話題に潜在的に存在するカテゴリである潜在トピックを要素として、話題の属する潜在トピックの確率と、ユーザの属する潜在トピックの確率を計算し、前記話題の圧縮次元ベクトル表現と前記ユーザの圧縮次元ベクトル表現とを、話題の潜在トピックの確率とユーザの潜在トピックの確率とで表す、
情報提供装置。
【請求項５】
請求項１乃至４のいずれかに記載の情報提供装置であって、
ユーザの好むキーワードと重みとからなるユーザモデルと、話題内のキーワードと重みとからなるコンテンツモデルと、前記評価履歴情報とに基づいて、ユーザにて評価されていない話題と当該ユーザとの類似度を計算し、当該類似度に応じて、前記評価履歴情報に話題に対する評価値を補完する評価情報補完手段をさらに備えた、
情報処理装置。
【請求項６】
請求項１乃至５のいずれかに記載の情報提供装置であって、
前記評価履歴情報に基づいて、評価するユーザが予め設定された基準に基づいて少ない話題と、評価している話題の数が予め設定された基準に基づいて少ないユーザと、を特定し、当該話題及び／又は当該ユーザ以外の評価情報を前記次元圧縮手段にて２次元行列を作成する対象として選択する評価履歴選択手段をさらに備えた、
情報処理装置。
【請求項７】
請求項１乃至６のいずれかに記載の情報提供装置であって、
前記推薦話題候補作成手段が、ユーザの好むキーワードと重みとからなるユーザモデルと、話題内のキーワードと重みとからなるコンテンツモデルとに基づいて、話題とユーザとの類似度を計算し、話題の圧縮次元表現の値と、話題とユーザとの類似度とから、各話題のスコアを算出して、当該スコアに基づいて推薦話題候補を選定する、
情報提供装置。
【請求項８】
情報処理装置に、
各ユーザの各話題に対する評価から成る評価履歴情報を入力する入力手段と、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する次元圧縮手段と、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、
を実現させるためのプログラム。
【請求項９】
各ユーザの各話題に対する評価から成る評価履歴情報を入力し、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力し、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけ、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定し、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する、
情報提供方法。
【請求項１０】
請求項９に記載の情報提供方法であって、
前記評価履歴情報に基づいて、潜在トピックモデリングにより、話題に潜在的に存在するカテゴリである潜在トピックを要素として、話題の属する潜在トピックの確率と、ユーザの属する潜在トピックの確率とを計算し、前記話題の圧縮次元ベクトル表現と前記ユーザの圧縮次元ベクトル表現とを、話題の潜在トピックの確率とユーザの潜在トピックの確率とで表し、
第１の閾値以上の潜在トピック確率を持つ話題と、第２の閾値以上の潜在トピック確率を持つユーザとを、各潜在トピック毎に一つのグループとして対応づけ、
ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の潜在トピックの確率に基づいて推薦話題候補を選定する、
情報提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報提供装置にかかり、特に、ユーザ間のコミュニケーションを活性化する話題を提供する情報提供装置に関する。また、本発明は、情報提供用のプログラム、情報提供方法に関する。
【背景技術】
【０００２】
ソーシャルネットワーキングサイトおよびブログでの日記情報などの発信、これらへのコメント、電子メールなど、仮想空間において様々なコミュニケーションツールによるコミュニケーションが行われている。そして、このようなコミュニケーションを促進するために、コミュニケーションの題材となる話題を推薦するシステムがある。
【０００３】
コミュニケーションの題材となる話題とは、推薦対象ユーザやそのコミュニケーション相手が好む話題であると考えられる。このような話題を推薦する技術として、協調フィルタリングがある。
【０００４】
非特許文献１に協調フィルタリング方法が記載されている。まず、評価履歴を入力する。評価履歴とは、各ユーザが好んだ話題を評価した履歴情報である。評価とは、ユーザによる５段階等での評価や、話題を読んだというログ情報を元に読んだか否かに基づく２段階等での評価などがある。次に、推薦対象ユーザと好みの近いユーザ（以降、嗜好類似ユーザ）を探す。好みの近さは、評価履歴の行列表現における、ユーザ列ベクトルの類似度で計算する。ここで、評価履歴の行列表現とは、行を話題、列をユーザ、値を評価値とした行列表現のことである。すなわち、ユーザ列ベクトルとは、各要素を各話題に対する評価値とするベクトルである。類似度の計算は、コサイン類似度やピアソン相関係数などが用いられる。次に、嗜好類似ユーザが高く評価した話題で、推薦対象ユーザがまだ閲覧していない話題を、推薦対象ユーザに推薦する。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】土方嘉徳、「１．嗜好抽出と情報推薦技術（嗜好抽出・情報推薦の基礎理論，＜特集＞利用者の好みをとらえ活かす−嗜好抽出技術の最前線−）」、情報処理48(9), 957-965, 2007
【非特許文献２】Thomas Hofmann, “Probabilistic Latent Semantic Indexing,”Proceedings of the Twenty-Second Annual International SIGIR Conference onResearch and Development in Information Retrieval (SIGIR-99), 1999
【非特許文献３】David M. Blei, Andrew Y. Ng, Michael I. Jordan, “Latent Dirichletallocation,” Journal of Machine Learning Research 3 (4-5), pp. 993-1022.
【非特許文献４】T. L. Griffiths ら, “Finding scientific topics,” Proc. of the National Academy ofSciences of the United States of America, vol.101, pp.5228-5235, 2004
【非特許文献５】小出ら、“単語間関係を制約として用いた文書クラスタリング”、情報科学技術フォーラム講演論文集 8(2)、 269-270
【非特許文献６】Andrzejewskiら, “Incorporating domain knowledge into topic modeling via DirichletForest priors”, Proceedings of the 26th International Conference on MachineLearning(ICML2009), 25-32
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、上述した技術では、以下の問題が生じる。まず、話題が同種の興味領域であるか判断できないため、嗜好類似ユーザには興味があるが、推薦対象ユーザには興味のない話題が推薦されていた。そのため、コミュニケーションの題材となる推薦対象ユーザにも嗜好類似ユーザにも好む話題が推薦できないため、コミュニケーションを活性化する題材とならなかった。
【０００７】
また、人の興味はいくつかの興味領域に分かれている。したがって、推薦対象ユーザと嗜好類似ユーザで、ある興味領域は同じ場合でも、別の興味領域が同じであるとは限らない。例えば、政治に関連する話題に好評価を付ける２人のユーザであるユーザ１とユーザ２がいたとする。ユーザ２が芸能に関連する話題に好評価を付けている場合、ユーザ１は芸能の話題を好むとは限らない。
【０００８】
以上のように、協調フィルタリングでは、興味領域を区別せず、異なる興味領域の話題であっても推薦していた。そのため、推薦対象ユーザも嗜好類似ユーザも好むコミュニケーションの題材となる話題を提供できない、という問題が生じていた。
【０００９】
このため、本発明の目的は、上述した課題である、ユーザに興味がある話題を提供することができない、ということを解決することができる、情報提供装置、プログラム、情報提供方法、を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の一形態である情報提供装置は、
各ユーザの各話題に対する評価から成る評価履歴情報を入力する入力手段と、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する次元圧縮手段と、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、
を備えた、
という構成をとる。
【００１１】
また、本発明の他の形態であるプログラムは、
情報処理装置に、
各ユーザの各話題に対する評価から成る評価履歴情報を入力する入力手段と、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する次元圧縮手段と、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、
を実現させるためのプログラムである。
【００１２】
また、本発明の他の形態である情報提供方法は、
各ユーザの各話題に対する評価から成る評価履歴情報を入力し、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力し、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけ、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定し、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する、
という構成をとる。
【発明の効果】
【００１３】
本発明は、以上のように構成されることにより、ユーザに興味がある話題を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態１における話題推薦装置を含むシステム全体の構成を示すブロック図である。
【図２】本発明の実施の形態１の全体の動作の流れを説明するフローチャートである。
【図３】図１に示す評価履歴蓄積手段の例を示す図である。
【図４】図１に示す次元圧縮手段が作成する２次元行列の例を示す図である。
【図５】図１に示す評価履歴蓄積手段の話題のタイトルの例を示す図である。
【図６】図１に示す次元圧縮手段の圧縮方法を説明する概念図である。
【図７】図１に示すグループ化手段の出力例を示す図である。
【図８】図１に示す推薦話題候補作成手段の出力例を示す図である。
【図９】本発明の実施の形態２における話題推薦装置を含むシステム全体の構成を示すブロック図である。
【図１０】本発明の実施の形態２の全体の動作の流れを説明するフローチャートである。
【図１１】図９に示すコミュニケーション相手蓄積手段の例を示す図である。
【図１２】本発明の実施の形態３の話題推薦装置を含むシステム全体の構成を示すブロック図である。
【図１３】本発明の実施の形態３の全体の動作の流れを説明するフローチャートである。
【図１４】図１２に示すユーザモデル蓄積手段の例を示す図である。
【図１５】図１２に示すコンテンツモデル蓄積手段の例を示す図である。
【図１６】本発明の実施の形態４の話題推薦装置を含むシステム全体の構成を示すブロック図である。
【図１７】本発明の実施の形態４の全体の動作の流れを説明するフローチャートである。
【図１８】本発明の実施の形態１〜３における話題推薦装置を実現するコンピュータの一例を示すブロック図である
【発明を実施するための形態】
【００１５】
＜実施の形態１＞
［装置構成］
以下、本発明の実施の形態１における話題推薦装置、話題推薦方法、及びプログラムについて、図１〜図８、及び、図１８を参照して説明する。
【００１６】
最初に、図１を用いて、実施の形態１における話題推薦装置（情報提供装置）の構成について説明する。図１は、本発明の実施の形態１における話題推薦装置の構成を示すブロック図である。
【００１７】
図１に示すように、本実施の形態１における話題推薦装置は、評価履歴蓄積手段１２１と、入力手段１０１と、次元圧縮手段１０２と、グループ化手段１０３と、推薦候補作成手段１０４と、推薦手段１０５とを備えている。これらの部はそれぞれ概略つぎのように動作する。
【００１８】
評価履歴蓄積手段１２１は、各ユーザの各話題への評価の履歴を表す評価履歴情報が蓄積されている。具体的には、ユーザと話題と評価とを含む。この他にも評価時刻などがあっても良い。
【００１９】
入力手段１０１は、上記評価履歴蓄積手段１２１から評価履歴情報の入力を受け付け、次元圧縮手段１０２に渡す。
【００２０】
次元圧縮手段１０２は、入力された評価履歴情報を、話題の圧縮ベクトル表現とユーザの圧縮ベクトル表現に変換する。具体的には、まず、上記評価履歴情報から、話題を行とし、ユーザを列とし、評価値を値とする、２次元行列を作成する。そして、同じ話題を評価したユーザと、同じユーザから評価された話題と、を一つの次元として、２次元行列を圧縮する。次に、圧縮した次元を要素とする話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する。
【００２１】
２次元行列を圧縮する方法は、トピックモデルにより計算する。具体的な計算手法は、上記非特許文献２に示されるProbabilistic latent semantic analysis (PLSA) や、上記非特許文献３で示されるLatent  Dirichlet  allocation (LDA)を用いる。なお、後述する実施の形態２では、コミュニケーション相手同士を一つの次元に圧縮するように制約をかける。
【００２２】
トピックモデルは、複数の単語からなる文書群を入力に、文書はK個の潜在トピックから生成されるという仮説に基づき、文書をK個の潜在トピックの分布で表現するモデルである。潜在トピックとは、文書内に潜在的に存在するカテゴリであり、潜在トピックの分布は、単語群の分布で表現される。潜在トピックの単語分布は、同じ文書に出現しやすい単語群は高い確率となる。これによって、文書は、要素をK個の潜在トピック、値を潜在トピックの確率とするK次元のベクトルで表現する。単語は、要素をK個の潜在トピック、値を潜在トピックの確率とする、K次元のベクトルで表現する。
【００２３】
本実施形態では、文書を話題とし、単語をユーザとし、単語の頻度を評価値として、トピックモデルにより次元を圧縮する。すなわち、潜在トピックの単語分布は、ユーザ群の分布であらわさる。これにより、同じ文書を評価したユーザは、同じ潜在トピックにおいて高い確率となる。話題は、要素をK個の潜在トピック、値を潜在トピックの確率とするK次元のベクトルで表現する。ユーザは、要素をK個の潜在トピック、値を潜在トピックの確率とするK次元のベクトルで表現する。
【００２４】
グループ化手段１０３は、話題の圧縮次元ベクトルとユーザの圧縮次元ベクトルとの入力を受け、各次元毎に、上記話題の圧縮次元ベクトル表現のうち第１の閾値以上の圧縮次元の値を持つ話題と、上記ユーザの圧縮次元ベクトルのうち第２の閾値以上の圧縮次元の値を持つユーザとを一つのグループとしてまとめる。
【００２５】
推薦話題候補作成手段１０４は、上記グループの入力を受け、各ユーザ毎に、ユーザが所属する複数のグループを抽出し、当該グループに対応する話題群を抽出し、話題を圧縮次元のスコアの順番で並べ、推薦話題候補を作成する。
【００２６】
推薦手段１０５は、評価履歴情報と推薦話題候補との入力を受け、推薦対象となるユーザ毎に当該ユーザがまだ評価していない話題を推薦する。このとき、上記推薦話題候補作成手段１０４にて順番に並べられた推薦話題候補のうち、上位から予め設定された推薦話題件数に相当する数の話題を推薦するよう提供する。
【００２７】
［装置動作］
次に、図２から図８を参照して本実施の形態１の話題推薦装置の動作について詳細に説明する。図２は、本実施の形態１の全体の動作の流れを説明するフローチャートである。以下の説明においては、適宜図１を参酌する。また、本実施の形態１では、話題推薦装置を動作させることによって、話題推薦方法が実施される。よって、本実施の形態１における話題推薦方法の説明は、以下の話題推薦装置の動作説明に代える。
【００２８】
［評価履歴の行列表現］
まず、入力手段１０１が、評価履歴蓄積手段１２１から評価履歴情報を受け付け、次元圧縮手段１０２が、評価履歴情報を行列表現に変換する（ステップＳ１）。
【００２９】
評価履歴蓄積手段１２１に蓄積している評価履歴情報の例を図３に示す。評価履歴情報は、ユーザＩＤと話題ＩＤと評価値と評価時刻とを含んでいる。ここで、評価値は、明示的に５段階などをユーザが付与した結果でも良いし、暗黙的にユーザがコンテンツを閲覧したログから１などを付与しても良い。図３では、暗黙的に評価したことを想定し、ユーザがコンテンツを閲覧した場合、評価値１とした。また、図中「・・・」は省略を示す（以降も同様）。
【００３０】
次元圧縮手段は、評価履歴情報から、話題を行、ユーザを列、評価値を値とする２次元行列に変換する。行列表現の例を図４に示す。図４は、評価履歴情報の話題ＩＤとユーザＩＤと評価値とを、それぞれ行と列と値として表現したものである。たとえば、ユーザ１は、話題１を評価値１と評価したことを示している。評価値０は評価しなかったことを示す。
【００３１】
上記話題ＩＤに対応する話題の例を図５に示す。話題１と話題２は政治に関連する話題、話題３と話題４は政治と芸能に関する話題、話題５と話題６は芸能に関する話題である。行列表現の例と比較すると、ユーザ１とユーザ２は政治の興味領域に関連する話題を評価し、ユーザ３とユーザ４は政治と芸能の２つの異なる興味領域に関連する話題を評価し、ユーザ５とユーザ６は芸能関連の興味領域に関連する話題を評価していることが分かる。
【００３２】
［評価履歴の次元圧縮］
次に、次元圧縮手段１０２が、行列表現を次元圧縮する（ステップＳ２）。次元圧縮には、トピックモデル手法を用いる。以下では、PLSAによる手法を示す。
【００３３】
まず、PLSAは、以下のように話題xとユーザyの同時確率を、潜在トピックzを用いて表す。
P( x , y ) = P( x ) Σ_{ z ∈ Z } P( y | z ) Pr( x | z )
同時確率P（ x , y ）は、ユーザyがコンテンツxを評価したことを示している。
【００３４】
PLSAモデルのパラメータは、EMアルゴリズム等によって解くことができる。その結果を利用し、P( z | x ) と P ( z | y ) を求めることで、それぞれ、話題xをK個の潜在トピックで表した確率、ユーザyをK個の潜在トピックモデルで表した確率となる。すなわち、話題の圧縮ベクトル表現は、話題の潜在トピックの確率分布で表現し、具体的には、要素を潜在トピック、値をP( z=j | x=d )(d番目の話題のk番目の潜在トピックの確率)とするベクトルで表現する。ユーザの圧縮ベクトル表現は、ユーザの潜在トピックの確率分布で表現し、要素を潜在トピック、値をP( z=k | y=u ) （u番目のユーザのk番目の潜在トピックの確率）とするベクトルで表現する。
【００３５】
LDAモデルでも同様にトピックモデリングを行う。LDAモデルの解法が上記非特許文献４に記載されている。
【００３６】
非特許文献４では、以下のようにギブスサンプラに基づく方法が紹介されている。上述したように、話題を文書、ユーザを単語としてLDAによるトピックモデリングを行う。
【００３７】
まず、各ユーザにトピックをランダムに割り当てる。次に、一様分布からランダムにrをサンプリングする。次に、ユーザの出現位置毎に、以下の数１式の値を計算する。数１式の値がr以上であれば、トピック番号をインクリメントする。そうでなければ、ユーザの出現位置にトピックを割り当てる。最後に、割り当てられたトピック番号から、P( z | x ) と P ( z | y ) とを求める。
【数１】
2014146218.tif 000003
【００３８】
上記iはユーザの出現位置、jはユーザの出現位置に割り当てられたトピック番号、Kはトピック数を表す。上記関数Qは、以下の数２式を計算する。
【数２】
2014146218.tif 000004
【００３９】
ここで、関数qは以下の数３式のように表される。
【数３】
2014146218.tif 000005
【００４０】
【数４】
2014146218.tif 000006
ここで、上記数３式中の数４式の値は、位置iのユーザ番号uのうち位置i以外でトピック番号がjである頻度を表す。
【００４１】
【数５】
2014146218.tif 000007
上記数３式中の数５式の値は、ユーザ番号に関係なく位置i以外の場所でトピック番号がjである頻度を表す。
【００４２】
【数６】
2014146218.tif 000008
上記数３式中の数６式の値は、位置iの話題番号dのうち位置i以外の場所でトピック番号がjである頻度を表す。
【００４３】
【数７】
2014146218.tif 000009
上記数３式中の数７式の値は、話題番号dのうち位置i以外の頻度を表す。
また、上記Wはユーザ数、Kはトピック数、αとβは事前分布のパラメータである。
【００４４】
図６に、トピックモデルにおける潜在トピックの生成の概念図を示す。トピックモデルは、話題はいくつかの潜在トピックを持ち、潜在トピックはユーザから評価されるというモデルを仮定している。したがって、評価ユーザが同じ話題は、話題の潜在トピックの確率分布も同じである。また、評価した話題が同じユーザは、ユーザの潜在トピックの確率分布も同じである。このことから、話題１と話題２、話題３と話題４、話題５と話題６はそれぞれ、似ている潜在トピックの確率分布P(z|d)となる。また、ユーザ１とユーザ２、ユーザ３とユーザ４、ユーザ５とユーザ６は、それぞれ似ている潜在トピックの確率分布P(z|y)となる。これらが似ている確率分布となるには、図６の点線で囲った部分、すなわち、同じユーザに評価された話題で、同じ話題を評価したユーザの部分が潜在トピックとなり、この潜在トピック部分をどの程度含むかによって、潜在トピックの確率分布が作成される。
【００４５】
潜在トピック数Kを２個とした場合、以下のように潜在トピックの確率分布が生成されたとする。
話題１の圧縮ベクトル表現＝P(z|x=話題１)＝（0.8,0.2）
話題２の圧縮ベクトル表現＝P(z|x=話題２)＝（0.7,0.3）
話題３の圧縮ベクトル表現＝P(z|x=話題３)＝（0.5,0.5）
話題４の圧縮ベクトル表現＝P(z|x=話題４)＝（0.5,0.5）
話題５の圧縮ベクトル表現＝P(z|x=話題５)＝（0.3,0.7）
話題６の圧縮ベクトル表現＝P(z|x=話題６)＝（0.2,0.8）
ユーザ１の圧縮ベクトル表現＝P(z|y=ユーザ１)＝（0.7,0.3）
ユーザ２の圧縮ベクトル表現＝P(z|y=ユーザ２)＝（0.8,0.2）
ユーザ３の圧縮ベクトル表現＝P(z|y=ユーザ３)＝（0.5,0.5）
ユーザ４の圧縮ベクトル表現＝P(z|y=ユーザ４)＝（0.5,0.5）
ユーザ５の圧縮ベクトル表現＝P(z|y=ユーザ５)＝（0.2,0.8）
ユーザ６の圧縮ベクトル表現＝P(z|y=ユーザ６)＝（0.3,0.7）
【００４６】
ここで、潜在トピック数Kは、あらかじめ決めておいてもよい。また、１ユーザの興味領域数と、１ユーザのコミュニケーション相手の数の平均と、全ユーザ数とから全体の興味領域数を推定し、この値を潜在トピック数としてもよい。ここで、全ユーザ数は評価履歴蓄積手段１２１を参照することで得ることができる。
【００４７】
全体の興味領域数＝興味領域の異なり数÷１興味領域のユーザ数
興味領域の異なり数＝１ユーザの興味領域数×全ユーザ数
１興味領域のユーザ数＝コミュニケーション相手数平均＋１
【００４８】
例えば、１ユーザの興味領域数が２、１ユーザのコミュニケーション相手の数が３、全ユーザ数が６とすると、全体の興味領域数は以下のように計算される。全体の興味領域数を潜在トピック数とする。
全体の興味領域数＝2 × 6 ÷ ( 3 + 1 ) ＝ 3
【００４９】
このように推定することで、ユーザの増加に応じで、潜在トピック数を自動的に調節することができる。また、ユーザが増加しても、１ユーザの興味領域数や１ユーザのコミュニケーション相手はそれほど変化しないと考えられるため有効である。
【００５０】
［グループ化］
次に、グループ化手段１０３が、話題の圧縮ベクトル表現とユーザの圧縮ベクトル表現を入力にグループを作成する（ステップＳ３）。ユーザの圧縮ベクトル表現と、話題の圧縮ベクトル表現を参照し、ベクトル要素毎に、特定の閾値以上の値を持つユーザと話題を同じグループとする。
【００５１】
上述のユーザの圧縮ベクトル表現と話題の圧縮ベクトル表現とに対して、ユーザの閾値を0.5、話題の閾値を0.5とする。ユーザの圧縮ベクトル表現と話題の圧縮ベクトル表現との第１要素を参照すると、閾値以上のユーザは、ユーザ１、ユーザ２、ユーザ３、ユーザ４、閾値以上の話題は、話題１、話題２、話題３、話題４である。これを一つのグループとしてまとめる。第２要素についても同様にグループとしてまとめる。
【００５２】
生成されたグループの例を図７に示す。グループ、ユーザ、話題の組合せができる。ユーザは、カンマ区切りで複数のユーザを示し、「：」区切りで潜在トピックの確率値を示している。話題も、カンマ区切りで複数の話題を示し、「：」区切りで潜在トピックの確率値を示している。
【００５３】
図７においては、ユーザ３とユーザ４はグループ１とグループ２の両方に所属している。話題３と話題４も、グループ１とグループ２の両方に所属している。図４と図５を参照すると、ユーザ３とユーザ４は政治と芸能関連の話題に興味を示しており、グループ１は政治関連、グループ２は芸能関連を示している。したがって、ユーザ３、ユーザ４、話題３、話題４は両方のグループに所属する。
【００５４】
この例では、ユーザの閾値と、話題の閾値はあらかじめ決めておいてもよい。また、１ユーザの興味領域数とユーザの圧縮ベクトル表現とからユーザの閾値を決定し、ユーザの閾値と評価履歴情報と話題の圧縮ベクトル表現とから話題の閾値を決定しても良い。以下のように決定する。１ユーザが所属するグループ数の平均が、１ユーザの興味領域数と同じ程度となるまで、ユーザの閾値を２分探索していくことで決定する。ユーザの閾値を元に、ユーザをグループにまとめる。次に、評価履歴情報を参照し、各グループ内のユーザが評価した話題を取得する。次に、話題の圧縮ベクトル表現を参照し、前記話題の潜在トピックの確率値を取得し、最も低い値を閾値とする。
【００５５】
［推薦候補作成］
次に、推薦話題候補作成手段１０４が、各ユーザに対して推薦対象となる話題の候補を選定して、推薦話題候補を作成する（ステップＳ４）。
【００５６】
推薦話題候補作成手段１０４は、グループ化手段１０３からグループ、ユーザ、話題の対応表の入力を受け、ユーザ毎に、所属するグループを抽出する。次に、当該グループに対応する話題を抽出する。当該話題が複数のグループから抽出された場合、その合計をスコアとする。次にスコア順に話題を並べ、当該スコアが高いものから順に推薦対象の話題候補とする。
【００５７】
ここで、話題のスコアは以下のように数式で表すことができる。
話題iのスコア＝Σ_{k ∈ G} P( z=k | d=i )
（ただし、Gは話題iが所属するグループの集合を表す）
【００５８】
図８に、推薦話題候補作成手段１０４が作成した各ユーザに対する推薦対象となる話題候補の例を示す。これは、図７のグループ、ユーザ、話題の対応表を入力として、ユーザ１とユーザ２とユーザ３に対する推薦話題候補を作成した例である。ユーザ毎に、グループと話題候補を作成する。ここで、ユーザ３は２つのグループに所属し、話題３と話題４はグループ１とグループ２に所属している。したがって、話題３と話題４のスコアは、前述の数式を用いて以下のように計算する。
【００５９】
話題３のスコア＝P( z=グループ１ | d=話題３ ) ＋  P( z=グループ２ | d=話題３ )
＝0.5+0.5 ＝ 1.0
話題４のスコア＝P( z=グループ１ | d=話題４ ) ＋  P( z=グループ２ | d=話題４ )
＝0.5+0.5 ＝ 1.0
【００６０】
［推薦話題決定］
次に、推薦手段１０５が、推薦話題候補を入力とし、評価履歴情報を参照し、ユーザに対して話題を推薦する（ステップＳ５）。
【００６１】
推薦手段１０５が、評価履歴情報を参照し、推薦話題候補のうち、ユーザがまだ評価していない話題を推薦対象話題として決定し、出力する。例えば、ユーザ１には、話題２を推薦対象話題とする。
【００６２】
［プログラム］
本発明の実施の形態１におけるプログラムは、コンピュータ（情報処理装置）に、図２に示すステップＳ１からステップＳ５の処理を実行させるプログラムであれば良い。あるいは、コンピュータに、図１に示す符号１０１〜１０５に示す各手段を実現させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態１における話題推薦装置と話題推薦方法とを実現することができる。
【００６３】
本発明の実施の形態１の場合、コンピュータのＣＰＵ（Central Processing Unit）は、入力手段１０１、次元圧縮手段１０２、グループ化手段１０３、推薦候補話題作成手段１０４、及び、推薦手段１０５として機能し、処理を行なう。また、本実施の形態１では、評価履歴蓄積手段１２１は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現されている。
【００６４】
ここで、本実施の形態１におけるプログラムを実行することによって、話題推薦装置を実現するコンピュータについて図１８を用いて説明する。図１８は、本発明の実施の形態１における話題推薦装置を実現するコンピュータの一例を示すブロック図である。
【００６５】
図１８に示すように、コンピュータ１５０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００６６】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態１におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態１におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００６７】
また、記憶装置１１３の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００６８】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash）及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記憶媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記憶媒体が挙げられる。
【００６９】
［効果］
このように、評価履歴から同じユーザから評価された話題と、同じ話題を評価したユーザとを同じ次元に圧縮し、圧縮した次元を元に、ユーザ群と話題群をグループ化することで、圧縮次元を興味分野としたグループを作成することができ、ユーザが所属するグループ毎に推薦する話題を抽出ことで、興味分野別の話題推薦を行うことができる。
【００７０】
＜実施の形態２＞
［装置構成］
次に、本発明における実施の形態２について説明する。図９は、本実施の形態２における話題推薦装置を含むシステム全体の構成を示すブロック図である。本実施の形態２では、図１に示した実施の形態１と異なり、コミュニケーション相手蓄積手段２１１が備えられている点が異なる。さらに、次元圧縮手段１０２の動作が異なる。以下では、異なる点について主に説明する。
【００７１】
コミュニケーション相手蓄積手段２２１は、ユーザとそのコミュニケーション相手を蓄積している。本データは、あらかじめ作成しておいてもよい。また、評価履歴蓄積手段１２１の情報を元に、評価した話題の似ているユーザ同士を、コミュニケーション相手として追加してもよい。評価した話題の似ているユーザは、共通の話題を提供することで新たにコミュニケーション相手となる可能性が高いユーザ同士であるため、これらのユーザを追加しても良い。
【００７２】
次元圧縮手段１０２は、評価履歴情報を入力とし、コミュニケーション相手蓄積手段２２１を参照し、話題の圧縮ベクトル表現とユーザの圧縮ベクトル表現に変換する。具体的には、まず、上記評価履歴情報から、話題を行、ユーザを列、評価値を値とした２次元行列を作成する。次に、コミュニケーション相手蓄積手段２２１を参照し、同じ話題を評価したでコミュニケーション相手同士のユーザと、同じユーザから評価された話題とを一つの次元として２次元行列を圧縮する。次に、圧縮した次元を要素とする話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する。
【００７３】
［装置動作］
次に、図１０のフローチャートを参照して本実施の形態２の話題推薦装置の動作について詳細に説明する。図１０は、本実施の形態２の全体の動作の流れを説明するフローチャートである。
【００７４】
図１０に示すように、本実施の形態２では、実施の形態１と異なり、コミュニケーション相手を読み込むステップ（ステップＳ２１）が追加された点が異なる。また、行列を圧縮するステップ（ステップＳ２）の動作が異なる。以下では主に異なるステップを中心に説明する。
【００７５】
まず、実施の形態１と同様に、入力手段１０１が、評価履歴情報を受け付け、次元圧縮手段１０２が、評価履歴情報を行列表現に変換する（ステップＳ１）。
【００７６】
［コミュニケーション相手読込］
次に、次元圧縮手段１０２が、コミュニケーション相手蓄積手段２２１を参照し、コミュニケーション相手情報を読み込む（ステップＳ２１）。コミュニケーション相手蓄積手段２２１は、コミュニケーション相手同士のユーザ関係が蓄積されている。図１１に例を示す。ユーザ１は、ユーザ２とユーザ３とがコミュニケーション相手であることがわかる。コミュニケーション相手情報は、（ユーザ１、ユーザ２）、（ユーザ１、ユーザ３）といったペア毎に読み込む。
【００７７】
［行列を圧縮］
次に、実施の形態１と同様に、２次元行列を次元圧縮する（ステップＳ２）。ただし、次元圧縮時に、コミュニケーション相手情報を参照し、コミュニケーション相手同士が同じトピックとなる確率値を高くする制約条件を付けくわえて計算する。
【００７８】
PLSAの単語間の制約条件の手法である上記非特許文献５の手法を参考に、ユーザ間の制約条件とする。以下では、まず、上記非特許文献６の内容を説明し、次に、ユーザ間の制約条件に拡張する。
【００７９】
非特許文献５では、トピックP(z)の確率分布に変更を加える。変更内容は、単語間に関係を元に、単語間に関係あるが別の潜在トピックに割り当てられた場合は、ペナルティをかけるための、ペナルティ項を追加する。
P(z) = Π P(z_i)×exp{-Σ_{<i,j>∈C} δ(z_i ≠ z_j) × w_ij } ÷ G
【００８０】
ここで、z_iは、第i番目の位置にある単語の潜在トピック、Cは、i番目の単語とj番目の単語に関係を示す制約条件集合、δ（・）は、i番目の単語の潜在トピックとｊ番目の単語の潜在トピックが異なる場合に１となる関数、w_ijは、ペナルティ重み(>0)、Gは正規化項である。
【００８１】
本実施形態では、単語間の関係をユーザ間の関係にあてはめ、ユーザ間がコミュニケーション相手だった場合、これを制約条件集合Cとする。コミュニケーション相手が別の潜在トピックに割り当てられた場合、ペナルティが科される。すなわち、本例では、（ユーザ１、ユーザ２）、（ユーザ１、ユーザ３）が別のトピックに割り当てられた場合、ペナルティが科される。
【００８２】
LDAでも同様に、単語間の制約条件を導入した上記非特許文献６の手法を用いることによって、トピックモデリングを行っても良い。非特許文献６でも、単語間に類義関係がある場合を制約条件とする。本実施形態でも同様に、コミュニケーション相手情報を制約条件として加える。
【００８３】
また、以下のように、前出の非特許文献４の初期トピック割り当てと、関数qを変更することで、コミュニケーション相手を制約として入れても良い。
【００８４】
まず、コミュニケーション相手同士をネットワークとし、ネットワークをトピック数Tでクラスタリングする。ネットワークのクラスタリングには、Newman法など既存手法を用いる。各ユーザにクラスタ番号をトピックとして割り当てる。次に、一様分布からランダムにrをサンプリングする。次に、ユーザの出現位置毎に、以下の数８式の値を計算する。数８式の値がr以上であれば、トピック番号をインクリメントする。そうでなければ、ユーザの出現位置にトピックを割り当てる。
【００８５】
ここで、非特許文献４の関数qを以下のように、ユーザ間の類似度を加えた関数で置き換える。
【数８】
2014146218.tif 000010
【００８６】
ここで、関数simは、２ユーザの類似度を表している。fuは、ユーザuのコミュニケーション相手ユーザを表している。Fuは、ユーザuのコミュニケーション相手ユーザ数を表している。ユーザ間の類似度である関数simは、ユーザの閲覧した話題をベクトルとするコサイン類似度等や、ユーザのコミュニケーション相手番号をベクトルとしたコサイン類似度等を用いる。
【００８７】
このように初期トピック割り当てと、関数qを置きかえることで、コミュニケーション相手を制約条件としたトピック割り当てを行う。
【００８８】
［ステップＳ３からステップＳ５］
次に図１０に示すように、ステップＳ３からステップＳ５が実行される。ただし、図１０に示すステップＳ３からステップＳ５は、図２に示すステップＳ３からステップＳ５と同様のステップであるため、ここでの説明は省略する。
【００８９】
［プログラム］
本発明の実施の形態２におけるプログラムは、コンピュータに、図１０に示すステップＳ１からステップＳ５を実行させるプログラムであれば良い。あるいは、コンピュータに、図９に示す符号１０１〜１０５に示す各手段を実現させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態２における話題推薦装置と話題推薦方法とを実現することができる。
【００９０】
本発明の実施の形態２の場合、コンピュータのＣＰＵ（Central Processing Unit）は、入力手段１０１、次元圧縮手段１０２、グループ化手段１０３、推薦候補話題作成手段１０４、及び、推薦手段１０５として機能し、処理を行なう。また、本実施の形態２では、評価履歴蓄積手段１２１、コミュニケーション相手蓄積手段２２１は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現されている。
【００９１】
ここで、本実施の形態２におけるプログラムを実行することによって、話題推薦装置を実現するコンピュータについて図１８を用いて説明する。図１８は、本発明の実施の形態２における話題推薦装置を実現するコンピュータの一例を示すブロック図である。
【００９２】
図１８に示すように、コンピュータ１５０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００９３】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態２におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態２におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００９４】
また、記憶装置１１３の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００９５】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash）及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記憶媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記憶媒体が挙げられる。
【００９６】
［効果］
このように、次元を圧縮する際に、コミュニケーション相手情報を制約条件にすることで、コミュニケーション相手同士を同じグループに所属しやすくする。これにより、あらかじめコミュニケーション相手がいる場合、コミュニケーション相手同士に興味のある話題を提示することができ、コミュニケーションを支援することができる。
【００９７】
＜実施の形態３＞
次に、本発明における実施の形態３について説明する。図１２は、本実施の形態３における話題推薦装置を含むシステム全体の構成を示すブロック図である。本実施の形態３では、図９に示した実施の形態２と異なり、評価情報補完手段３０１と、ユーザモデル蓄積手段３２２と、コンテンツモデル蓄積手段３２１が備えられている点が異なる。以下では、異なる点について主に説明する。
【００９８】
ユーザモデル蓄積手段３２２は、各ユーザ毎に、興味あるキーワードとその重みから成るユーザモデルが蓄積されている。本情報は、あらかじめ、ユーザから興味キーワードを取得しても良いし、評価履歴情報と、後述のコンテンツモデルから生成しても良い。
【００９９】
コンテンツモデル蓄積手段３２１は、話題毎に、話題内に存在するキーワードとその重みから成るコンテンツモデルが蓄積されている。本情報は、話題内に記述されている文書を形態素解析等により単語に分割し、その単語をキーワードとすることによって生成される。
【０１００】
評価情報補完手段３０１は、評価履歴情報の入力を受け、ユーザモデル蓄積手段３２２とコンテンツモデル蓄積手段３２１とを参照し、ユーザによって評価されていない話題、つまり、評価値が０である話題と、評価していないユーザとのペアについて、ユーザモデルとコンテンツモデルとから類似度を計算する。そして、類似度が特定の閾値以上であれば、ユーザによる話題の評価値を、評価履歴情報に追加する。
【０１０１】
［装置動作］
次に、図１３のフローチャートを参照して本実施の形態３の話題推薦装置の動作について詳細に説明する。図１３は、本実施の形態３の全体の動作の流れを説明するフローチャートである。
【０１０２】
図１３に示すように、本実施の形態３では、実施の形態２と異なり、さらに、評価履歴情報を補完するステップが追加された点が異なる。以下では主に異なるステップを中心に説明する。
【０１０３】
［評価情報の補完］
評価情報補完手段３０１が、ユーザモデル蓄積手段３２２とコンテンツモデル蓄積手段３２１を参照し、評価履歴のないユーザと話題のペアについて評価情報を追加する（ステップＳ３１）。
【０１０４】
まず、評価履歴を参照し、評価履歴のないユーザと話題ペアを抽出する。ここでは、ユーザ１と話題２の評価履歴がないとする（図４参照）。次に、ユーザモデル蓄積手段３２２とコンテンツモデル蓄積手段３２１を参照し、ユーザ１のユーザモデルと、話題２のコンテンツモデルを取得する。
【０１０５】
ユーザモデル蓄積手段３２２の例を図１４に示す。ユーザモデル蓄積手段３２２は、ユーザＩＤとそのユーザモデルと蓄積する。ユーザモデルとは、キーワードとその重みの集合である。キーワードは、ユーザが興味のあるキーワードである。例えば、ユーザ１は、「首相」や「経済」に興味がある。これらのキーワードは、評価履歴情報と後述のコンテンツモデルとを参照し、学習によって得ることもできる。例えば、ユーザが閲覧したコンテンツモデルを平均化したものをユーザモデルとする方法や、評価値で重みを付けて平均化する方法などがある。
【０１０６】
コンテンツモデル蓄積手段３２１の例を図１５に示す。コンテンツモデル蓄積手段３２１は、話題ＩＤとそのコンテンツモデルとを蓄積する。コンテンツモデルとは、キーワードとその重みに集合である。キーワードは、話題に出現する単語や、話題のメタ情報などから得ることができる。
【０１０７】
次に、ユーザ１のユーザモデルと、話題２のコンテンツモデルとの類似度を計算する。類似度は、ユークリッド距離に基づく方法や、内積、コサイン類似度などを用いる。内積を用いた場合、以下のように計算される。
SIM(ユーザ１、話題２)＝0×0.5 ＋  0.3 × 0.3 ＋ 0.1 × 0.1 ＋  …
各項は、「首相」、「財政」、「計画」など関する積である。
【０１０８】
次に、類似度が閾値を超えている場合、評価値を付与する。例えば、閾値0.5を超えている場合、評価値として類似度を付与する。
【０１０９】
［ステップＳ１からステップＳ５］
次に図１３に示すように、ステップＳ１からステップＳ５が実行される。ただし、図１３に示すステップＳ１からステップＳ５は、図２あるいは図１０に示すステップＳ１からステップＳ５と同様のステップであるため、ここでの説明は省略する。
【０１１０】
［プログラム］
本発明の実施の形態３におけるプログラムは、コンピュータに、図１３に示すステップＳ３１からステップＳ５を実行させるプログラムであれば良い。あるいは、コンピュータに、図１２に示す符号１０１〜１０５，３０１に示す各手段を実現させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態３における話題推薦装置と話題推薦方法とを実現することができる。
【０１１１】
本発明の実施の形態３の場合、コンピュータのＣＰＵ（Central Processing Unit）は、入力手段１０１、評価情報保管手段３０１、次元圧縮手段１０２、グループ化手段１０３、推薦候補話題作成手段１０４、及び、推薦手段１０５として機能し、処理を行なう。また、本実施の形態３では、評価履歴蓄積手段１２１およびコミュニケーション相手蓄積手段２２１、ユーザモデル蓄積手段３２２、コンテンツモデル蓄積手段３２１は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現されている。
【０１１２】
本発明の実施の形態３における話題推薦装置を実現するコンピュータは、図１８に示した実施の形態１における話題推薦装置を実現するコンピュータと同様の構成である。
【０１１３】
［効果］
トピックモデルによる次元圧縮手法は、評価履歴が非常に疎な場合、精度よく潜在トピックを推定できない。したがって、興味領域を精度よく特定することができず、ユーザとコミュニケーション相手との興味のある話題を提供することができない。このような構成をとることで、ユーザがまだ評価していない話題に対して、どのような評価を行うのかを予測し補完することで、精度よく興味領域を特定できる。これにより、ユーザとコミュニケーション相手との興味のある話題を提供することができる。
【０１１４】
＜実施の形態４＞
次に、本発明における実施の形態４について説明する。図１６は、本実施の形態４における話題推薦装置を含むシステム全体の構成を示すブロック図である。本実施の形態４では、図１２に示す実施の形態３と異なり、話題推薦装置には、評価履歴選択手段４０１とがさらに備えられている。また、本実施の形態４は、推薦話題候補作成手段１０４の機能の点で、実施の形態３と異なっている。以下では異なる点について主に説明する。
【０１１５】
評価履歴選択手段４０１は、評価履歴情報の入力を受け、評価ユーザの少ない話題や評価話題数の少ないユーザを特定し、その話題とユーザ以外の評価履歴を選択する。具体的には、評価履歴情報に基づいて、多くのユーザに評価されていない不人気話題を選択する。また、多くの話題を評価していない未評価ユーザを選択する。次に、上記不人気話題と未評価ユーザの一方又は両方を設定し、これら以外つまり不人気話題以外の評価履歴や未評価ユーザ以外の評価履歴を選択する。
【０１１６】
推薦話題候補作成手段１０４は、グループ化手段１０３の出力であるグループとユーザと話題の対応関係に基づいて、各ユーザ毎に、ユーザが所属する複数のグループを抽出する。そして、当該グループに対応する一つ以上の話題を抽出し、当該話題の圧縮次元のスコアと、各話題のコンテンツモデルとユーザのユーザモデルとの類似度から、各話題のスコアを決め、話題のスコアの順番で並べ、推薦候補話題を作成する。
【０１１７】
［装置動作］
次に、図１７のフローチャートを参照して本実施の形態４の話題推薦装置の動作について詳細に説明する。図１７は、本実施の形態４の全体の動作の流れを説明するフローチャートである。
【０１１８】
図１７に示すように、本実施の形態４では、実施の形態３と異なり、さらに、評価情報を選択するステップＳ４１が追加された点が異なる。また、推薦候補話題を作成するステップＳ４も動作が異なる。以下では主に異なるステップを中心に説明する。
【０１１９】
まず、実施の形態３で説明したように、話題評価情報を補完する。
【０１２０】
［評価情報の選択］
次に、評価情報選択手段４０１が、評価履歴と補完された評価情報とに基づいて、評価履歴情報の選択を行う（ステップＳ４１）。
【０１２１】
まず、評価履歴情報を入力に、評価ユーザの少ない話題を特定する。具体的には、特定の閾値以下のユーザ数からしか評価を受けていない話題を不人気話題として特定する。さらに、評価話題数の少ないユーザを特定する。具体的には、特定の閾値以下の話題数しか評価していないユーザを未評価ユーザとして特定する。
【０１２２】
次に、上記不人気話題と上記未評価ユーザのどちらか又は両方を設定し、どちらか一方以外又は両方以外の評価履歴、つまり、不人気話題以外の評価履歴や未評価ユーザ以外の評価履歴を選択する。
【０１２３】
［ステップＳ１からステップＳ３］
続いて、実施の形態３と同様に、行列表現に変換し、次元を圧縮し、グループ化を行う。
【０１２４】
［ステップＳ４］
次に、推薦話題候補作成部１０４が、グループとユーザと話題の対応関係の入力を受け、ユーザモデル蓄積手段３２２とコンテンツモデル蓄積手段３２１とを参照し、各ユーザに推薦する話題の候補を作成する。その際、各話題のスコアは、各圧縮次元の値と、ユーザモデルとコンテンツモデルとの類似度とから計算する。具体的には全ての話題iについて以下のように計算する。
話題iのスコア＝w×Σ_{k ∈ G} P( z=k | d=i )＋ ( 1−w ）×SIM(ユーザj、話題i)
（ただし、Gは話題iが所属するグループの集合を表す）
【０１２５】
ここで、wは、潜在トピックの確率値を重視するか否かを示す重みであり、0以上1以下の範囲である。SIM(ユーザj、話題i)は、ユーザjと話題iの類似度を示し、ユーザモデルとコンテンツモデルから、ユークリッド距離や内積、コサイン類似度で計算される。
【０１２６】
［ステップＳ５］
続いて、実施の形態３と同様に推薦話題を特定し、推薦する。
【０１２７】
［プログラム］
本発明の実施の形態４におけるプログラムは、コンピュータに、図１７に示すステップＳ３１からステップＳ５を実行させるプログラムであれば良い。あるいは、コンピュータに、図１６に示す符号１０１〜１０５，３０１，４０１に示す各手段を実現させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態４における話題推薦装置と話題推薦方法とを実現することができる。
【０１２８】
本発明の実施の形態４の場合、コンピュータのＣＰＵ（Central Processing Unit）は、入力手段１０１、評価情報保管手段３０１、評価情報選択手段４０１、次元圧縮手段１０２、グループ化手段１０３、推薦候補話題作成手段１０４、及び、推薦手段１０５として機能し、処理を行なう。また、本実施の形態４では、評価履歴蓄積手段１２１およびコミュニケーション相手蓄積手段２２１、ユーザモデル蓄積手段３２２、コンテンツモデル蓄積手段３２１は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現されている。
本発明の実施の形態４における話題推薦装置を実現するコンピュータは、図１８に示した実施の形態１における話題推薦装置を実現するコンピュータと同様の構成である。
【０１２９】
［効果］
トピックモデルによる次元圧縮手法は、評価履歴が非常に疎な場合、精度よく潜在トピックを推定できない。したがって、興味領域を精度よく特定することができず、ユーザとコミュニケーション相手との興味のある話題を提供することができない。このような構成をとることで、新規の話題で評価数の少ない話題や、新規のユーザで評価件数の少ないユーザがいる場合でも、これらを除外した行列を作成することで、精度よく興味領域を特定できる。これにより、ユーザとコミュニケーション相手との興味のある話題を提供することができる。
【０１３０】
また、推薦候補作成時に、圧縮した次元の値だけでなく、ユーザモデルとコンテンツモデルとからも話題のスコアを算出することで、除外した話題やユーザに対しても推薦することができる。これにより、徐々に評価数を増やすことができる。
【０１３１】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報提供装置、プログラム、情報提供方法の構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
【０１３２】
（付記１）
各ユーザの各話題に対する評価から成る評価履歴情報を入力する入力手段と、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する次元圧縮手段と、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、
を備えた情報提供装置。
【０１３３】
（付記２）
付記１に記載の情報提供装置であって、
前記次元圧縮手段が、前記評価履歴情報に基づいて、潜在トピックモデリングにより、話題に潜在的に存在するカテゴリである潜在トピックを要素として、話題の属する潜在トピックの確率と、ユーザの属する潜在トピックの確率とを計算し、前記話題の圧縮次元ベクトル表現と前記ユーザの圧縮次元ベクトル表現とを、話題の潜在トピックの確率とユーザの潜在トピックの確率とで表し、
前記グループ化手段が、第１の閾値以上の潜在トピック確率を持つ話題と、第２の閾値以上の潜在トピック確率を持つユーザとを、各潜在トピック毎に一つのグループとして対応づけ、
前記推薦話題候補作成手段が、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の潜在トピックの確率に基づいて推薦話題候補を選定する、
情報提供装置。
【０１３４】
（付記３）
付記１又は２に記載の情報提供装置であって、
前記次元圧縮手段が、前記評価履歴情報と、各ユーザのコミュニケーション関係を示すコミュニケーション相手情報と、に基づいて、同じ話題を評価したコミュニケーション相手同士のユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する、
情報提供装置。
【０１３５】
（付記４）
付記３に記載の情報提供装置であって、
前記次元圧縮手段が、前記評価履歴情報と、前記コミュニケーション相手情報と、に基づいて、コミュニケーション相手同士を条件として重みを加える潜在トピックモデリングにより、話題に潜在的に存在するカテゴリである潜在トピックを要素として、話題の属する潜在トピックの確率と、ユーザの属する潜在トピックの確率を計算し、前記話題の圧縮次元ベクトル表現と前記ユーザの圧縮次元ベクトル表現とを、話題の潜在トピックの確率とユーザの潜在トピックの確率とで表す、
情報提供装置。
【０１３６】
（付記５）
付記１乃至４のいずれかに記載の情報提供装置であって、
ユーザの好むキーワードと重みとからなるユーザモデルと、話題内のキーワードと重みとからなるコンテンツモデルと、前記評価履歴情報とに基づいて、ユーザにて評価されていない話題と当該ユーザとの類似度を計算し、当該類似度に応じて、前記評価履歴情報に話題に対する評価値を補完する評価情報補完手段をさらに備えた、
情報処理装置。
【０１３７】
（付記６）
付記１乃至５のいずれかに記載の情報提供装置であって、
前記評価履歴情報に基づいて、評価するユーザが予め設定された基準に基づいて少ない話題と評価している話題の数が予め設定された基準に基づいて少ないユーザとを特定し、当該話題及び／又は当該ユーザ以外の評価情報を前記次元圧縮手段にて２次元行列を作成する対象として選択する評価履歴選択手段をさらに備えた、
情報処理装置。
【０１３８】
（付記７）
付記１乃至６のいずれかに記載の情報提供装置であって、
前記推薦話題候補作成手段が、ユーザの好むキーワードと重みとからなるユーザモデルと、話題内のキーワードと重みとからなるコンテンツモデルとに基づいて、話題とユーザとの類似度を計算し、話題の圧縮次元表現の値と、話題とユーザとの類似度とから、各話題のスコアを算出して、当該スコアに基づいて推薦話題候補を選定する、
情報提供装置。
【０１３９】
（付記８）
情報処理装置に、
各ユーザの各話題に対する評価から成る評価履歴情報を入力する入力手段と、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力する次元圧縮手段と、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけるグループ化手段と、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定する推薦話題候補作成手段と、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する話題提供手段と、
を実現させるためのプログラム。
【０１４０】
（付記９）
各ユーザの各話題に対する評価から成る評価履歴情報を入力し、
前記評価履歴情報に基づいて、話題を行とし、ユーザを列とし、ユーザによる話題の評価値を値とする２次元行列を作成し、同じ話題を評価したユーザと、同じユーザから評価された話題とを一つの次元に圧縮し、話題の圧縮次元ベクトル表現とユーザの圧縮次元ベクトル表現とを出力し、
話題の圧縮次元ベクトル表現の要素値が第１の閾値以上である話題と、ユーザの圧縮次元ベクトル表現の要素値が第２の閾値以上であるユーザとを、ベクトルの要素毎に一つのグループとして対応づけ、
前記グループに基づいて、ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の圧縮次元ベクトル表現の要素値に基づいて推薦話題候補を選定し、
前記推薦話題候補のうち、前記評価履歴情報に基づいて話題の提供対象となるユーザがまだ評価していない話題を当該ユーザに提供する、
情報提供方法。
【０１４１】
（付記１０）
付記９に記載の情報提供方法であって、
前記評価履歴情報に基づいて、潜在トピックモデリングにより、話題に潜在的に存在するカテゴリである潜在トピックを要素として、話題の属する潜在トピックの確率と、ユーザの属する潜在トピックの確率とを計算し、前記話題の圧縮次元ベクトル表現と前記ユーザの圧縮次元ベクトル表現とを、話題の潜在トピックの確率とユーザの潜在トピックの確率とで表し、
第１の閾値以上の潜在トピック確率を持つ話題と、第２の閾値以上の潜在トピック確率を持つユーザとを、各潜在トピック毎に一つのグループとして対応づけ、
ユーザ毎に当該ユーザが属するグループを抽出すると共に、当該グループに属する話題を抽出し、当該話題の潜在トピックの確率に基づいて推薦話題候補を選定する、
情報提供方法。
【０１４２】
なお、上述したプログラムは、記憶装置に記憶されていたり、コンピュータが読み取り可能な記録媒体に記録されている。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【０１４３】
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。
【産業上の利用可能性】
【０１４４】
以上のように、本発明によれば、興味分野を考慮して、ユーザにもコミュニケーション相手にも興味のある話題を提供することができるので、ユーザ間のコミュニケーションを活性化することができる。よって、本発明は、例えば、コミュニケーションツールにおける情報提供支援装置、または、情報提供支援装置をコンピュータに実現するプログラムといった用途に適用できる。
【符号の説明】
【０１４５】
１０１  入力手段
１０２  次元圧縮手段
１０３  グループ化手段
１０４  推薦話題候補作成手段
１０５  推薦手段
１２１  評価履歴蓄積手段
２２１  コミュニケーション相手蓄積手段
３０１  評価情報補完手段
３２１  コンテンツモデル蓄積手段
３２２  ユーザモデル蓄積手段
４０１  評価情報選択手段
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
１５０  コンピュータ
【図１】
2014146218.tif 000011
【図２】
2014146218.tif 000012
【図３】
2014146218.tif 000013
【図４】
2014146218.tif 000014
【図５】
2014146218.tif 000015
【図６】
2014146218.tif 000016
【図７】
2014146218.tif 000017
【図８】
2014146218.tif 000018
【図９】
2014146218.tif 000019
【図１０】
2014146218.tif 000020
【図１１】
2014146218.tif 000021
【図１２】
2014146218.tif 000022
【図１３】
2014146218.tif 000023
【図１４】
2014146218.tif 000024
【図１５】
2014146218.tif 000025
【図１６】
2014146218.tif 000026
【図１７】
2014146218.tif 000027
【図１８】
2014146218.tif 000028