(57)【特許請求の範囲】
【請求項１】
コンピュータによって、情報利用者の興味を推定し、その推定結果を用いて情報利用者毎に所定の概念に対する興味の度合いを表すモデルを作成し、この作成されたモデルを用いて前記情報利用者毎の興味を分析する方法であって、
前記情報利用者の一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストから、コンテンツに出現する各概念の特徴スコアを算出する第１の過程と、
概念体系における概念間の関係に基づいて、前記特徴スコアを用いて各概念に対するユーザ興味スコアを更新し、第１の記憶部に保存する第２の過程と、
前記各概念に対するユーザ興味スコアをもとに、当該既存の情報利用者の属性毎のモデルを作成して第２の記憶部に保存する第３の過程と、
新規の情報利用者の属性情報を取得する第４の過程と、
前記取得された属性情報をもとに当該新規の情報利用者の属性と合致する既存の情報利用者の属性のモデルを前記第２の記憶部から選択的に読み出し、この読み出されたモデルをもとに前記新規の情報利用者の所定の概念に対する興味の度合いを表すモデルを作成して、この作成されたモデルを前記新規の情報利用者の初期モデルとして第３の記憶部に保存する第５の過程と、
前記第３の記憶部に記憶されたモデルを初期モデルとして前記新規の情報利用者の興味を分析する第６の過程と
を具備することを特徴とする興味分析方法。
【請求項２】
前記第３の過程は、前記既存の情報利用者の属性が下位概念に対応する第１の階層とこの第１の階層より上位の概念に対応する第２の階層とを有する場合に、前記第１の階層に対応する下位概念のモデルを作成し、この第１の階層について作成された下位概念のモデルをもとに前記第２の階層に対応する上位概念のモデルを作成することを特徴とする請求項１記載の興味分析方法。
【請求項３】
前記第５の過程は、入力された比率に基づき複数の属性のユーザモデルを確率結合し、前記初期モデルを作成することを特徴とする請求項１記載の興味分析方法。
【請求項４】
前記第３の過程は、既存の情報利用者の閲覧回数に依存して属性毎のモデルを作成することを特徴とする請求項１記載の興味分析方法。
【請求項５】
情報利用者の興味を推定し、その推定結果を用いて情報利用者毎に所定の概念に対する興味の度合いを表すモデルを作成し、この作成されたモデルを用いて前記情報利用者毎の興味を分析する興味分析装置であって、
前記情報利用者の一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストとから、コンテンツに出現する各概念の特徴スコアを算出する第１の手段と、
概念体系における概念間の関係に基づいて、前記特徴スコアを用いて各概念に対するユーザ興味スコアを更新し、第１の記憶部に保存する第２の手段と、
前記各概念に対するユーザ興味スコアをもとに、当該既存の情報利用者の属性毎のモデルを作成して第２の記憶部に保存する第３の手段と、
新規の情報利用者の属性情報を取得する第４の手段と、
前記取得された属性情報をもとに当該新規の情報利用者の属性と合致する既存の情報利用者の属性のモデルを前記第２の記憶部から選択的に読み出し、この読み出されたモデルをもとに前記新規の情報利用者の所定の概念に対する興味の度合いを表すモデルを作成して、この作成された新規の情報利用者に関するモデルを、当該新規の情報利用者の初期モデルとして第３の記憶部に保存する第５の手段と、
前記第３の記憶部に記憶された初期モデルに基づいて、前記新規の情報利用者の興味を分析する第６の手段と
を具備することを特徴とする興味分析装置。
【請求項６】
前記第３の手段は、前記既存の情報利用者の属性が下位概念に対応する第１の階層とこの第１の階層より上位の概念に対応する第２の階層とを有する場合に、前記第１の階層に対応する下位概念のモデルを作成し、この第１の階層について作成された下位概念のモデルをもとに前記第２の階層に対応する上位概念のモデルを作成することを特徴とする請求項５記載の興味分析装置。
【請求項７】
前記第５の手段は、入力された比率に基づき複数の属性のユーザモデルを確率結合し、前記初期モデルを作成することを特徴とする請求項５記載の興味分析装置。
【請求項８】
前記第３の手段は、既存の情報利用者の閲覧回数に依存して属性毎のモデルを作成することを特徴とする請求項５記載の興味分析装置。
【請求項９】
請求項１乃至４のいずれかに記載の興味分析方法が備える過程に対応する処理を、前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンテンツ閲覧履歴等からユーザの興味を分析する興味分析方法、装置及びプログラムに関する。
【背景技術】
【０００２】
ユーザの行動や状況に合わせて適切なサービス・コンテンツをレコメンドする技術が望まれている。そこで、情報利用者毎に適する情報を選択し、あるいは情報利用者毎に適する順番に並び替えて情報を表示する、情報推薦サービスが提案されている。例えば、情報が広告である場合は、情報利用者毎に適する広告を選択し、あるいは情報利用者毎に適する順番に並び替えて広告を表示する広告推薦サービスであり、情報がニュースである場合は、情報利用者毎に適するニュースを選択し、あるいは情報利用者毎に適する順番に並び替えてニュースを表示するニュース推薦サービスであり、情報が飲食店情報である場合は、情報利用者毎に適する飲食店情報を選択し、あるいは情報利用者毎に適する順番に並び替えて飲食店情報を表示する飲食店情報推薦サービスである。
【０００３】
上記情報推薦サービスを実現するための方法として、各コンテンツに内容をサマライズする概念タグ（メタデータ）が付与されていることを前提としてユーザ履歴において出現する概念等の頻度からユーザの興味を推定する方法があり、この方法は内容ベースフィルタリング手法（Content Based Filtering：CBF）で、特にメモリベース手法として研究が進められている。
【０００４】
具体的に、内容ベースフィルタリング技術とは、例えば特定ブランド（ブランドを示す情報を概念タグとして保持）の商品を閲覧した場合に、同じブランドの商品（同じ概念タグを保持）を提示する。この場合の、メモリベース手法は、過去に閲覧した履歴から、特定ブランドを頻繁に閲覧していれば、特定ブランドの商品を提示することとなる。単純な方法では、閲覧履歴により多く出現した概念タグに関連する商品を提示することとなる。このような手法においてタクソノミ（オントロジ）を利用した方法としては、例えば、非特許文献１の「操作履歴を用いた多面的嗜好把握方法の提案」がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】「操作履歴を用いた多面的嗜好把握方法の提案」，信学技報，vol. 110， no. 450， LOIS2010-76， pp. 67-72， 2011年3月
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、非特許文献１に記載された技術には以下のような解決すべき課題があった。すなわち、情報利用者が初めて情報推薦サービスを利用する場合、あるいは殆ど利用したことが無い場合には、ユーザ履歴が全くないか或いは非常に少ない。このため、モデルの作成に必要なユーザ履歴が不足して適切なモデルが作成できず、この結果適切な推薦が行われない。これは、Cold Start問題と呼ばれ、以下のような不具合を生じる。すなわち、情報推薦サービス利用開始時は、ユーザ履歴が少なく適切な推薦が行われないため、情報利用者の満足度が上がりにくい。そのため、情報推薦サービスが利用されず、ユーザ履歴が溜らない。その結果、ユーザ履歴が少ないため適切な推薦が行われないというように負の連鎖に陥り、その結果サービスの利用を停止する情報推薦サービス利用者が増え、情報推薦サービスが普及しない。
【０００７】
この発明は上記事情に着目してなされたもので、その目的とするところは、ユーザが初めて情報推薦サービスを利用する場合であっても、比較的良い推薦結果を得ることができる興味分析方法、装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するためにこの発明の１つの観点は、コンピュータによって、情報利用者の興味を推定し、その推定結果を用いて情報利用者毎に所定の概念に対する興味の度合いを表すモデルを作成し、この作成されたモデルを用いて上記情報利用者毎の興味を分析する方法にあって、前記情報利用者の一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストから、コンテンツに出現する各概念の特徴スコアを算出すると共に、概念体系における概念間の関係に基づいて前記特徴スコアを用いて各概念に対するユーザ興味スコアを更新し、第１の記憶部に保存する。また、前記各概念に対するユーザ興味スコアをもとに当該既存の情報利用者の属性毎のモデルを作成して第２の記憶部に保存する。そして、新規の情報利用者の属性情報を取得し、この取得された属性情報をもとに当該新規の情報利用者の属性と合致する既存の情報利用者の属性のモデルを上記第２の記憶部から選択的に読み出し、この読み出されたモデルをもとに上記新規の情報利用者の所定の概念に対する興味の度合いを表すモデルを作成して、これを初期モデルとして第３の記憶部に保存する。そして、上記第３の記憶部に記憶されたモデルを初期モデルとして上記新規の情報利用者の興味分析を開始するようにしたものである。  
したがって、新規の情報利用者の属性と合致する既存の情報利用者の属性のモデルを用いて初期ユーザモデルが構築されることにより、新規の情報利用者に合致した初期モデルを構築することができる。
【０００９】
また、この発明の１つの観点は以下のような態様を備えることを特徴とする。  
第１の態様は、上記既存の情報利用者の属性毎のモデルを作成する際に、当該既存の情報利用者の属性が下位概念に対応する第１の階層とこの第１の階層より上位の概念に対応する第２の階層とを有する場合に、上記第１の階層に対応する下位概念のモデルを作成し、この第１の階層について作成された下位概念のモデルをもとに上記第２の階層に対応する上位概念のモデルを作成するようにしたものである。  
このようにすると、属性が階層構造を持つ場合に、下位概念の属性のモデルを用いて上位概念の属性のモデルが作成されるので、少ない計算量で階層構造を持つ属性のモデルを作成することが可能となる。
【００１０】
第２の態様は、前記新規の情報利用者の所定の概念に対する興味の度合いを表すモデルを作成し保存する際に、入力された比率に基づき複数の属性のユーザモデルを確率結合し、前記初期モデルを作成するようにしたものである。
第３の態様は、既存の情報利用者の属性毎のモデルを作成して保存する際に、既存の情報利用者の閲覧回数に依存して属性毎のモデルを作成するようにしたものである。
【発明の効果】
【００１１】
すなわちこの発明によれば、ユーザが初めて情報推薦サービスを利用する場合であっても、比較的良い推薦結果を得ることができる興味分析方法、装置及びプログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】この発明の一実施形態に係る興味分析装置を用いたシステムの全体構成図。
【図２】図１に示したクライアント端末、コンテンツサーバ及び興味分析装置の機能構成を示すブロック図。
【図３】図２に示した興味分析装置の処理の概要を示す図。
【図４】図２に示したクライアント端末上でのコンテンツ閲覧操作の一例を示す図。
【図５】一覧閲覧コンテンツリストのデータ構成例を示す図。
【図６】詳細閲覧コンテンツのデータ構成例を示す図。
【図７】提示コンテンツリストのデータ構成例を示す図。
【図８】コンテンツデータベースの一例を示す図。
【図９】概念体系／ユーザ興味スコアデータベースの一例を示す図。
【図１０】履歴情報受信部の処理フローを示す図。
【図１１】特徴スコア算出部の処理フローを示す図。
【図１２】分析パラメータリストのデータ構成例を示す図。
【図１３】特徴スコア算出部の動作を説明するための模式図。
【図１４】特徴スコア算出処理の詳細を示す図。
【図１５】概念体系更新処理部の処理フローを示す図。
【図１６】概念体系更新処理の詳細を示す図。
【図１７】コンテンツ評価処理部の処理フローを示す図。
【図１８】コンテンツスコアリストの一例を示す図。
【図１９】コンテンツ評価処理の詳細を示す図。
【図２０】コンテンツ要求データの一例を示す図。
【図２１】図２に示した興味分析装置による属性モデル作成処理の第１の例を示す図。
【図２２】図２に示した興味分析装置による属性モデル作成処理の第２の例を示す図。
【図２３】図２に示した興味分析装置による初期モデル作成処理の例を示す図。
【図２４】この発明の原理説明に用いる概略図。
【図２５】属性ごとのモデル作成処理を説明するための図。
【図２６】ユーザ興味スコアの更新式の第１の例を示す図。
【図２７】ユーザ興味スコアの更新式の第２の例を示す図。
【図２８】属性ごとのモデルを用いた初期モデル作成処理の概要を説明するための図。
【図２９】属性ごとのモデルを用いた初期モデル作成処理に使用する計算式の一例を示す図。
【図３０】モデル更新処理の輻輳について説明するための図。
【図３１】ユーザのモデルを利用した属性ごとのモデル更新処理の説明に用いる図。
【図３２】ユーザのモデルを利用した属性ごとのモデル更新処理に使用する計算式の一例を示す図。
【図３３】ユーザモデルを用いた階層構造を持つ属性ごとのモデル作成処理の説明に用いる図。
【図３４】ユーザモデルを用いた階層構造を持つ属性ごとのモデル作成処理に使用する計算式の一例を示す図。
【発明を実施するための形態】
【００１３】
［原理］
先ず、この発明の原理を図２４〜図３４を用いて説明する。  
この発明は、概念出現の希少性を利用して情報利用者の興味を高精度に推定し、その推定結果を用いて情報利用者毎のモデルを作成し、この作成されたモデルを用いて情報を推薦する方法を前提とする。この前提とする方法では、情報利用者が選択候補情報一覧から情報を選択した履歴から情報利用者の興味を推定する場合に、情報利用者の選択候補となる情報一覧を定義し、そこからの情報選択における概念の出現数を分析することで、各概念の出現の希少性を考慮する。さらに、各概念が出現しない希少性も利用している。このため、情報利用者の興味を高精度に推定することが可能となる。以下、情報利用者に対して提示された選択候補情報一覧と、情報利用者が選択候補情報一覧から任意の情報を選択した履歴を情報選択履歴と呼ぶ。
【００１４】
この発明は、上記前提とする方法をさらに改良し、ユーザが初めて情報推薦サービスを利用する場合であっても、比較的良い推薦結果を得ることができるようにするものである。  
図２４はこの改良した発明の概要を説明するための図である。図２４に示すように、この発明に係る興味分析装置は、新規ユーザＦに対して信頼性の高い情報を推薦するために以下に示す処理を実行する。
【００１５】
(1) 既存ユーザ（例えば図２４ではユーザＡ〜Ｅ）の履歴を用いて、属性毎、例えば図２４に示した例では東京や千葉等の居住地毎、男性や女性等の性別毎のモデルを作成する。  
(2) 新規ユーザＦが開示を許諾する一部の属性情報をシステムに開示する。  
(3) 新規ユーザＦが開示した属性に合致したモデル、例えば図２４の例では東京のモデルと女性のモデルを選定する。  
(4) 選定されたモデルを用いて新規ユーザＦの初期モデルを作成する。  
(5) 上記作成された初期モデルを用いて新規ユーザＦがサービスの利用を開始し、その後利用を継続する。これにより、新規ユーザＦのモデルを東京かつ女性のステレオタイプを表す初期モデルから、新規ユーザＦ自身を表すモデルへと徐々に修正し、推薦精度を向上させる。
【００１６】
このような処理を実行することで、この発明に係る興味分析装置によれば次のような作用効果が奏せられる。すなわち、適切な初期モデルを用いることにより、利用開始時から比較的良好な推薦精度が実現されて高い満足度が実現され、これにより情報推薦サービスの利用が促進される。このため、情報選択履歴の蓄積が進み、ユーザ自身の興味に対する適合度が上昇し、推薦精度がより一層向上する。この結果、サービスの利用を停止する情報推薦サービス利用者が減り、情報推薦サービスが普及する。
【００１７】
次に、図２４に示した一連の処理のうち、既存ユーザの履歴を用いて属性毎のモデルを作成する方法について図２５を用いて説明する。  
１回の学習において、複数のコンテンツを一覧として閲覧した履歴と、コンテンツの本体を閲覧した履歴とを用いてユーザのモデルを更新する。ここで、ユーザ毎のモデルを、概念毎に算出されるユーザ興味スコア（TotalZ）の集合とする。概念毎のユーザ興味スコア（TotalZ）を求めるとき、先ず複数のコンテンツを一覧として閲覧した第１のコンテンツリストと、この第１のコンテンツリストからコンテンツの本体を閲覧した第２のコンテンツリストとをクラスタ化する。このクラスタ化されたコンテンツリストを履歴クラスタと呼ぶ。
【００１８】
次に、この履歴クラスタ毎に、上記第１のコンテンツリストのコンテンツの総数を第１の総数、上記第１のコンテンツリストにおいて上記概念が出現するコンテンツの数を第１の出現数、上記第２のコンテンツリストのコンテンツの総数を第２の総数、上記第２のコンテンツリストにおいて上記概念が出現するコンテンツの数を第２の出現数とそれぞれ表したとき、これらの第１の総数、第１の出現数及び第２の総数の条件下で、上記第２のコンテンツリストに上記概念が出現するコンテンツの数が上記第２の出現数以上となる第１の確率と、上記第２の出現数以下となる第２の確率を算出する。
【００１９】
そして、上記第１及び第２の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコア（Ｚ）を算出し、この履歴クラスタ毎に算出した特徴スコアを用いて上記概念に対する上記ユーザ興味スコアを計算し更新する。図２６は上記特徴スコアを用いてユーザ興味スコアを算出する式を示したものである。ここで、重みＷは、各履歴クラスタにおいて概念毎に設定される値である。
【００２０】
次に、図２５に示すようにユーザのモデルの更新と同時に属性毎のモデルを更新する。例えば、男性のモデルを更新する場合は、属性が“男性”のユーザ（図２５に示す例ではユーザＡ、ユーザＢ、ユーザＥ）の履歴クラスタが得られた際に、ユーザＡのモデル、ユーザＢのモデル、ユーザＥのモデルを更新するのと同時に、男性のモデルも更新する。属性Ｃに合致するユーザＡの履歴クラスタを用いた属性Ｃの各概念i に対する興味スコア（TotalZ）の更新式を図２７に示す。
【００２１】
続いて、属性毎のモデルを用いた初期モデルを作成する。図２８はその作成方法を説明するための図である。例えば、新規ユーザＦが“東京”、“女性”という属性を情報推薦システムに対して提示した場合、情報推薦システムは新規ユーザＦの属性に合致する東京のモデルと女性のモデルを図２９に示す式を用いて結合し、新規ユーザＦの初期モデルとして用いる。
【００２２】
しかし、図２５に示すように履歴クラスタが得られるたびに属性毎のモデルを更新する方法を用いると、例えば男性のモデルや女性のモデルのようにユーザ数に対する割合が高い属性のモデルを更新する場合には、サービス利用者数の増加に従い当該モデルの更新頻度が増加する。そして、その結果システムの負荷が上昇し、更新処理の遅延や更新漏れ、システム停止を招くことがある（図３０）。
【００２３】
この課題は以下のようにすることで解決される。図３１は、図２５に示した属性毎のモデルを更新する方法をさらに改良した提案を示すものである。属性毎のモデルの更新は、当該属性に合致する各ユーザの履歴クラスタを用いる代わりに、ユーザ毎の学習結果を用いて行う。但し、ユーザ毎に学習回数が異なるため、各ユーザの興味スコアを同じ割合で確率結合すると、学習回数の差異が考慮されない。従って、各ユーザの興味スコアでなく、共に保存されているＸ、Ｙを用いて求める。Ｘ、Ｙは各ユーザの学習の回数に依存する。このため、これらも考慮することにより、ユーザ毎の学習回数の差異を考慮することができる。
【００２４】
属性Ｃに関連する全てのユーザについての、Ｙi ，Ｘi が定まっているとき、属性Ｃに関するモデルの概念i に関するｎ番目の興味スコア（TotalZ Cin）と、ＹCin，ＸCinを更新する式を図３２に示す。
さらに、属性毎のモデルを階層的に作成する例を図３３に示す。例えば、関東のモデルが東京のモデルと千葉のモデルを子に持つ場合、図３４に示すように子属性のモデルのＸ子属性i ，Ｙ子属性i を用いて、親属性のモデルのＸ親属性i ，Ｙ親属性i と、興味スコア（TotalZ親属性in）を求めることができる。
【００２５】
［実施形態］
以下、図面を参照してこの発明に係わる一実施形態を説明する。  
（１）システム全体の構成
図１は、この発明の一実施形態に係る興味分析装置を用いたシステムの全体構成図である。このシステムは、クライアント端末２００と、コンテンツサーバ３００と、興味分析装置１００を備える。クライアント端末２００とコンテンツサーバ３００との間、及びコンテンツサーバ３００と興味分析装置１００との間はそれぞれ通信ネットワークで接続される。ユーザは、クライアント端末２００上での閲覧操作により、所望のコンテンツをコンテンツサーバ３００から取得し、取得したコンテンツをクライアント端末２００の画面に表示させ、閲覧する。
【００２６】
クライアント端末２００は、ユーザ操作によるコンテンツ閲覧履歴を収集し、複数のコンテンツを一覧として閲覧した一覧閲覧コンテンツリスト（第１のコンテンツリスト）と、コンテンツの一覧からコンテンツの本体を閲覧した詳細閲覧コンテンツリスト（第２のコンテンツリスト）とをコンテンツサーバ３００に送信する。コンテンツサーバ３００は、この一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを、通信ネットワークを介して興味分析装置１００に転送する。
【００２７】
興味分析装置１００は、この一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをもとに、コンテンツに出現する各概念に対する特徴スコア及びユーザ興味スコアを算出し、ユーザの興味を推定する。興味分析装置１００は、このユーザ興味スコアに基づいて、コンテンツサーバ３００から受け取った「提示コンテンツリスト」から、ユーザの興味に合わせてソートを行ったコンテンツのリスト（ソート済み提示コンテンツリスト）を生成し、コンテンツサーバ３００に送信する。  
また興味分析装置１００は、定期的にユーザの興味モデルを用いて属性の興味モデルを作成し、初期利用ユーザから属性情報の提示を受けた場合には、属性にあわせて初期モデルを作成する機能も備える。
【００２８】
図２は、図１に示したクライアント端末２００、コンテンツサーバ３００及び興味分析装置１００の機能構成を示すブロック図である。  
（２）興味分析装置の構成
興味分析装置１００は、履歴情報受信部１１０、特徴スコア算出部１２０、概念体系更新処理部１３０、概念体系／ユーザ興味スコアデータベース１４０、提示コンテンツリスト受信部１５０、コンテンツデータベース１６０、コンテンツ評価処理部１７０、及びソート済みコンテンツスコアリスト送信部１８０を備え、さらに属性興味スコア更新起動部１９０、属性興味スコア更新部１９５、属性興味スコアデータベース１９６、初期ユーザ興味スコア作成部１９７及びユーザ／属性情報データベース１９８を備えている。
【００２９】
図３は、興味分析装置１００の処理の概要を示すものである。
履歴情報受信部１１０は、クライアント端末２００からの一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをコンテンツサーバ３００を介して受信する。一覧閲覧コンテンツリストとは、例えばユーザがコンテンツのタイトルのみを一覧で閲覧したコンテンツのリストである。詳細閲覧コンテンツリストとは、ユーザがコンテンツ本体の内容（詳細）を閲覧したコンテンツのリストである。例えば、図３において、一覧閲覧コンテンツリストには、コンテンツ１〜８が含まれ、詳細閲覧コンテンツリストには、コンテンツ１，３，４が含まれる。また図３において、斜線パターンで示すコンテンツは、概念Ｂがコンテンツ１，６，７，８に出現することを示す。
【００３０】
特徴スコア算出部１２０は、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを利用して概念選択の統計モデルにより各概念の特徴スコア（後述するＺ値）を算出する。
概念体系更新処理部１３０は、上記特徴スコアを用いて概念体系における概念間の関係情報（上位概念及び下位概念）に基づいて各概念に対するユーザ興味スコアを更新する。概念体系のグラフに含まれるノードは概念を表し、リンクは概念間の関係を表す。ユーザ興味スコアは、概念体系における各概念に対応するノードの値として保持する。概念体系において、上位に位置するノードほど抽象的な概念を表し、下位に位置するノードほど具体的な概念を表す。概念体系及び概念ＩＤ（ノード毎に付与される識別子）は、サービス運用者等が事前に設計し定義するものとする。
【００３１】
コンテンツ評価処理部１７０は、評価コンテンツに出現する各概念のユーザ興味スコアを利用して確率結合によってコンテンツに対するユーザの評価スコアを算出する。図３の例では、コンテンツ１に出現する概念Ｅ，Ｆ，Ｄのユーザ興味スコアを用いてコンテンツ１の評価スコアを求めている。興味分析装置１００の詳しい動作説明は後述する。
【００３２】
属性興味スコア更新起動部１９０は、深夜時間帯などの負荷が少ない時間帯に定期的に属性興味スコアの更新処理を起動する。  
属性興味スコアデータベース１９６は、後述する属性興味スコア更新部１９５により算出された属性のＸ，Ｙ，TotalZを記憶するために用いられる。  
ユーザ／属性情報データベース１９８は、ユーザ情報とその属性情報を記憶するために用いられる。
【００３３】
属性興味スコア更新部１９５は、ユーザ／属性情報データベース１９８に記憶された属性情報を用いて、属性毎に当該属性に合致するユーザ群を特定し、この特定したユーザのＸ，Ｙをもとに図３２に示した式を用いて上記属性のＸ，Ｙ，TotalZを求め、この求めた結果を属性興味スコアデータベースに保存する処理機能を有する。
【００３４】
また属性興味スコア更新部１９５は、ユーザ／属性情報データベース１９８に記憶された属性情報を用いて、属性の子属性群を特定し、この特定した属性のＸ，Ｙをもとに図３４に示した式を用いて上記属性のＸ，Ｙ，TotalZを求め、この求めた結果を属性興味スコアデータベース１９６に保存する処理機能も有する。なお、Ｘ，Ｙ，TotalZについては後述する。
【００３５】
初期ユーザ興味スコア作成部１９７は、クライアント端末１００からコンテンツサーバ３００を経由して転送された新規ユーザの属性に合致する属性のモデルを、属性興味スコアデータベース１９６から読み出す。そして、この読み出された属性のモデルを図２９に示す式を用いて確率結合し、その結果を初期利用ユーザの初期モデルとして概念体系／ユーザ興味スコアデータベース１４０に保存する機能を有する。
【００３６】
（３）クライアント端末の構成
図２において、クライアント端末２００は、履歴収集部２１０、履歴情報送信部２２０、コンテンツ提示部２３０、コンテンツ要求送信部２４０及び属性提示部２５０を備える。
コンテンツ要求送信部２４０は、ユーザの指示（入力）によりコンテンツサーバ３００に対してコンテンツの提示要求を行う。具体的には、図２０に示すようなコンテンツ要求データをコンテンツサーバ３００に送信する。例えば、コンテンツ要求データは、クライアント端末ＩＤ（もしくはユーザＩＤ）及び要求時刻を有する。なお、要求時刻は、コンテンツサーバ３００において追加するようにしてもよい。クライアント端末ＩＤ（もしくはユーザＩＤ）は、端末（もしくはユーザ）毎に一意に付与される数字であって、後述する概念体系／ユーザ興味スコアデータベース１４０のユーザ興味スコアテーブルのユーザＩＤと一致するＩＤである。
【００３７】
図４は、クライアント端末２００上でのユーザによるコンテンツ閲覧操作の一例を示したものである。  
コンテンツ提示部２３０は、コンテンツサーバ３００から受信したソート済み提示コンテンツリストをもとに、クライアント端末２００の表示画面サイズが許容する範囲でソート順の上位から一覧として表示を行う。
【００３８】
図４に示した例では、１０個のコンテンツ（コンテンツ１〜１０）が一覧表示されている。ユーザのフリック、スクロールバーの操作等で一覧によりソート順下位のコンテンツが表示することができる。このように実際にクライアント端末２００に表示されたコンテンツのリストを一覧閲覧コンテンツリストとする。つまり、ソート済み提示コンテンツリスト内のすべてのコンテンツがクライアント端末２００で表示されるとは限らないため、一覧閲覧コンテンツリストに含まれるとは限らない。ユーザがこの一覧から各コンテンツのタイトルをクリック操作等で選択すると、選択されたタイトルのコンテンツ（図４のコンテンツ３，５，６）の本体（詳細）を閲覧することができる。この詳細を閲覧したコンテンツを、詳細閲覧コンテンツリストに含む。
【００３９】
履歴収集部２１０は、上述したように、ユーザの操作履歴を収集して一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを作成する。履歴情報送信部２２０は、履歴収集部２１０により作成された一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをコンテンツサーバ３００に送信する。
【００４０】
図５に、上記図４の場合の一覧閲覧コンテンツリストのデータ構成例を示す。一覧閲覧コンテンツリストは、クラスタＩＤ、コンテンツＩＤ及び閲覧時刻を有する。クラスタとは、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストに一意に付与される識別子（図５では“１”）である。別の時刻（時間帯）に表示した一覧閲覧コンテンツをユーザが閲覧した場合は、別のクラスタＩＤが付与される。なお、時刻以外の条件でクラスタＩＤを新たに付与する条件としては、一覧閲覧コンテンツリスト表示中に一定時間操作が無かった場合や、場所を移動した場合、気温や天候が変化した場合、同行者が変化した場合、閲覧するユーザ（ユーザＩＤ）を切り替えた場合、一覧閲覧コンテンツリストに対してコンテンツジャンル等を観点に絞り込み検索を掛けた場合、その他閲覧アプリケーションにおいて閲覧モードを切り替えた場合がある。コンテンツＩＤは、一覧閲覧コンテンツの各コンテンツに一意に付与された識別子であり、後述するコンテンツデータベース１６０が保持する値と一致するものとする。
【００４１】
図６は、上記図４の場合の詳細閲覧コンテンツリストのデータ構成例を示したものである。詳細閲覧コンテンツリストは、上記一覧閲覧コンテンツリストと同様に、クラスタＩＤ、コンテンツＩＤ及び閲覧時刻を有する。クラスタＩＤは、一覧閲覧コンテンツリストと同一の値とする（図６では“１”）。コンテンツＩＤ及び閲覧時刻は、詳細閲覧コンテンツリストでは、ユーザが一覧閲覧コンテンツから選択して詳細を閲覧したコンテンツ（図６ではコンテンツ３，５，６）の識別子及び当該コンテンツを閲覧した時刻となる。
【００４２】
属性提示部２５０は、この情報推薦サービスを初めて利用するユーザ、つまり新規ユーザ（初期利用ユーザ）が自己の属性情報を入力した場合に、この属性情報の入力を受け付けてコンテンツサーバ３００へ送信する機能を有する。
【００４３】
（４）コンテンツサーバの構成
上記図２において、コンテンツサーバ３００は、コンテンツ送信処理部３１０、ソート済み提示コンテンツリスト受信部３２０、提示コンテンツリスト送信部３３０、提示コンテンツリスト入力部３４０、履歴情報転送部３５０、コンテンツ要求転送部３６０及び属性転送部３７０を備える。
【００４４】
履歴情報転送部３５０は、クライアント端末２００から受信した一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを、通信ネットワークを介して興味分析装置１００に転送する。
提示コンテンツリスト入力部３４０には、サービス運用者により、ユーザの利用するクライアント端末２００に提示するコンテンツを一覧にした提示コンテンツリストが入力される。提示コンテンツリスト送信部３３０は、上記入力された提示コンテンツリストを興味分析装置１００へ通信ネットワークを介して送信する。
【００４５】
図７に、提示コンテンツリストのデータ構成例を示す。提示コンテンツリストは、コンテンツＩＤ、概念ＩＤ／関連度リスト、コンテンツ本体、及びコンテンツ登録時刻を有する。コンテンツＩＤは、各コンテンツに対してコンテンツサーバ３００にて付与される一意のＩＤである。概念ＩＤ／関連度リストは、コンテンツに出現する概念の概念ＩＤ及び当該概念とコンテンツと関連性の程度を示す値のセットが格納される。概念ＩＤ／関連度リストは、コンテンツ毎に予め設定されており、具体例としては、コンテンツ１（スポーツ記事）には、｛“野球”の概念ＩＤ=１，関連度＝０．５｝、｛“サッカー”の概念ＩＤ=２，関連度＝０．８｝、｛“ゴルフ”の概念ＩＤ=３、関連度＝０．６｝…のように、概念ＩＤと関連度のセットが格納される。
【００４６】
なお、概念ＩＤは、概念体系／ユーザ興味スコアデータベース１４０に格納される値と一致する。関連度は、例えば、０から１までの値とし、大きいほど関連性が強いものとする。関連度は、サービス運用者がコンテンツ登録時に設定する値、若しくは別システムにより算出される値を利用する。
【００４７】
ソート済み提示コンテンツリスト受信部３２０は、興味分析装置１００から提示コンテンツリストの一部又は全部をソートしたソート済み提示コンテンツリストとクライアント端末ＩＤ（もしくはユーザＩＤ）を受信する。コンテンツ送信処理部３１０は、ソート済み提示コンテンツリストをクライアント端末ＩＤ（もしくはユーザＩＤ）に該当するクライアント端末２００に送信する。
【００４８】
コンテンツ要求転送部３６０は、クライアント端末２００のコンテンツ要求送信部２４０からのコンテンツ提示要求であるコンテンツ要求データ（図２０）を興味分析装置１００に転送する。
属性転送部３７０は、上記クライアント端末２００から送信された新規ユーザの属性情報を受信し、この受信した新規ユーザの属性情報を興味分析装置１００に転送する機能を有する。
【００４９】
（５）興味分析装置の動作
次に、興味分析装置１００の各部の動作について説明する。  
（５−１）コンテンツデータベース１６０
図８にコンテンツデータベース１６０のデータ構造の一例を示す。コンテンツデータベース１６０は、コンテンツテーブルと、ユーザ履歴テーブルとを有する。
コンテンツテーブルは、コンテンツＩＤ、概念ＩＤ／関連度リスト、コンテンツ本体、及びコンテンツ登録時刻を格納する。提示コンテンツリスト受信部１５０で受信した値が格納される。
【００５０】
ユーザ履歴テーブルは、コンテンツＩＤ、ユーザＩＤ（クライアント端末ＩＤ）、詳細閲覧総数、詳細閲覧時刻、一覧閲覧総数、一覧閲覧時刻、及び一覧非表示フラグを格納する。詳細閲覧時刻は、詳細閲覧総数が０の場合はｎｕｌｌ、１以上であれば各閲覧の時系列による閲覧時刻のリストを格納する。一覧閲覧時刻は、一覧閲覧総数が０の場合はｎｕｌｌ、１以上であれば各閲覧の時系列による閲覧時刻のリストを格納する。一覧非表示フラグは、まだユーザにクライアント端末の画面上で一覧としても表示／視認していない場合はｆａｌｓｅ、一度でも閲覧した場合はｔｒｕｅを格納する。ユーザ履歴テーブルおいては、ユーザＩＤ毎に全コンテンツＩＤの値を保持する。詳細閲覧総数及び一覧閲覧総数は、上記クラスタＩＤで示される一覧閲覧コンテンツリストが多数受信された場合には過去の履歴の累計を格納する。
【００５１】
例えば、このユーザ履歴テーブルのデータを利用することで、ユーザの閲覧回数に応じて、コンテンツについて、今後の評価（コンテンツ評価処理部１７０での処理時）で評価スコアを下げるようにする。評価スコアの低減方法としては、あるコンテンツに対する閲覧回数をｋとしたとき、当該コンテンツの評価スコアをｋ＋１で割る、或いは評価スコアに重み（例えば０．９）のｋ乗を乗算するなどがある。この処理により、同じコンテンツの反復提示を興味との一致度を加味して低減することができるためユーザの推薦に対する満足度を向上することができる。
【００５２】
（５−２）概念体系／ユーザ興味スコアデータベース１４０  
図９に概念体系／ユーザ興味スコアデータベース１４０のデータ構造の一例を示す。概念体系／ユーザ興味スコア１６０は、ルート概念ノードＩＤと、概念体系テーブルと、ユーザ興味スコアテーブルとを有する。
ルート概念ノードＩＤとは、概念体系構造において最上位にある概念ノードＩＤであり、システム内に１つだけ存在する。  
【００５３】
概念体系テーブルは、自概念ＩＤ、親概念ＩＤリスト及び子概念ＩＤリストを格納する。概念体系内の全ての自概念ＩＤは、親概念ＩＤ及び子概念ＩＤ（ただし、自概念が最下位の場合には子概念ＩＤはなし）と紐付けて保存されており、これにより概念構造が定義される。
ユーザ興味スコアテーブルは、概念ＩＤ、ユーザＩＤ（クライアント端末ＩＤ）、TotalZ（ユーザ興味スコア）、Ｘ、及びＹの値を格納する。TotalZ、Ｘ及びＹの定義及び算出方法は後述する。
【００５４】
（５−３）提示コンテンツリスト受信部１５０
提示コンテンツリスト受信部１５０は、コンテンツサーバ３００から上記図７に示すような提示コンテンツリストを受信し、コンテンツデータベース１６０に保存する。
【００５５】
（５−４）履歴情報受信部１１０  
図１０は、履歴情報受信部１１０の処理手順と処理内容を示すフローチャートである。
（ステップＳ１１：履歴データ受信）  
履歴情報受信部１１０は、コンテンツサーバ３００の履歴情報転送部３５０から通信ネットワークを介してクライアント端末ＩＤ（もしくはユーザＩＤ）、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを受信し、特徴スコア算出部１２０へ出力する。
【００５６】
（５−５）特徴スコア算出部１２０
図１１は、特徴スコア算出部１２０の処理手順と処理内容を示すフローチャートである。特徴スコア算出部１２０には、履歴情報受信部１１０からクライアント端末ＩＤ（もしくはユーザＩＤ）、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストが入力される。
【００５７】
（ステップＳ１２：出現概念抽出）  
特徴スコア算出部１２０は、詳細閲覧コンテンツリスト内の各コンテンツに出現する概念ＩＤをコンテンツデータベース１６０から抽出する。具体的には、図６の詳細閲覧コンテンツリストにおいて、各コンテンツＩＤに紐付けされている「概念ＩＤ」を図８のコンテンツデータベース１６０のコンテンツテーブルから検索する。
【００５８】
また特徴スコア算出部１２０は、クラスタデータ｛クラスタＩＤ，一覧閲覧コンテンツリスト，詳細閲覧コンテンツリスト｝と、コンテンツＩＤ／概念ＩＤ関連づけリスト｛｛コンテンツＩＤ，｛関連づいている概念ＩＤ，…｝｝，…｝と、出現概念リスト｛概念ＩＤ｝とを生成する。ここで、「コンテンツＩＤ／概念ＩＤ関連付けリスト」とは、コンテンツＩＤをもとに検索された概念ＩＤのリストである。「出現概念リスト」とは、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストに含まれる各コンテンツに出現する概念の概念ＩＤを全て列挙したものである。
【００５９】
（ステップＳ１３：出現概念抽出）  
特徴スコア算出部１２０は、「出現概念リスト」の各概念ＩＤについて、図９の概念体系／ユーザ興味スコアデータベース１４０から上位概念を抽出し、上位概念の概念ＩＤを「出現概念リスト」及び「コンテンツＩＤ／概念ＩＤ関連づけリスト」に追加する。
【００６０】
具体的には、特徴スコア算出部１２０は、図９の概念体系テーブルを検索することにより、「出現概念リスト」の概念ＩＤが「自概念ＩＤ」と一致するものを読み出し、その「親概念ＩＤ」を抽出する。例えば、上記抽出された「親概念ＩＤ」が図９の概念体系テーブルの「自概念ＩＤ」と一致するものを探し、その「親概念ＩＤ」も上位概念として抽出する。そして、特徴スコア算出部１２０は、上位概念の概念ＩＤを抽出の元になった出現概念の概念ＩＤを有するコンテンツＩＤに関連づける。
【００６１】
すなわち、上記抽出された「上位概念」を「元になった概念ＩＤを持っていたコンテンツＩＤ」に対して上位概念が付与されていたと見なして、「出現概念リスト」「コンテンツＩＤ／概念ＩＤ関連づけリスト」に追加する。なお、概念体系階層におけるルート概念の抽出は除外する。
【００６２】
（ステップＳ１４：分析パラメータ抽出）  
特徴スコア算出部１２０は、「出現概念リスト」の各概念について出現数を算出し、特徴スコアの算出に必要な分析パラメータを抽出し、分析パラメータリストを生成する。  
図１２に、分析パラメータリストのデータ構成例を示す。分析パラメータリストは、クラスタＩＤ毎に、一覧閲覧コンテンツリストのコンテンツ総数Ｓ（第１の総数）、詳細閲覧コンテンツリストのコンテンツ総数ａ（第２の総数）、クラスタＩＤに紐づいた出現概念リスト内の概念ＩＤ毎に算出するＮとｎがある。Ｎ（第１の出現数）は、一覧閲覧コンテンツリストにおいて当該概念ＩＤが付与されているコンテンツ数とする。ｎ（第２の出現数）は詳細閲覧コンテンツリストにおける当該概念ＩＤが付与されているコンテンツ数とする。なお、ステップＳ１３にて追加した上位概念も含めて出現概念リスト内の概念ＩＤすべてについて、Ｎとｎを算出する。
【００６３】
図１３（ａ）に分析パラメータ抽出処理の模式図を示す。例えば、５０個（＝Ｓ）のコンテンツが一覧表示されている中から、ユーザが１０個（＝ａ）のコンテンツの詳細を閲覧した場合を示す。ここで、一覧表示されている５０個のコンテンツのうち「野球」という概念が含まれている記事が１５個（＝Ｎ）あり、ユーザが閲覧した１０個のコンテンツのうち、「野球」という概念が含まれているコンテンツが５個（＝ｎ）あったことを示す。
【００６４】
（ステップＳ１５：特徴スコア算出）  
特徴スコア算出部１２０は、上記分析パラメータＳ，ａ，Ｎ，ｎを利用して概念ＩＤ毎に特徴スコアＺを算出する。図１４に特徴スコア算出処理の詳細を示す。図１４において、ｉは概念の識別子、ｊは、クラスタＩＤを示す。Ｈ１（第１の確率）は、一覧閲覧コンテンツリストに含まれる一覧閲覧コンテンツの総数Ｓ、一覧閲覧コンテンツのうち概念ｉが出現するコンテンツ数Ｎのとき、詳細閲覧コンテンツをａ個ランダム選択して閲覧した場合に、概念ｉが出現する詳細閲覧コンテンツの数がｎ以上となる累積確率である。Ｈ２（第２の確率）は、一覧閲覧コンテンツリストに含まれる一覧閲覧コンテンツの総数Ｓ、一覧閲覧コンテンツのうち概念ｉが出現するコンテンツ数Ｎのとき、詳細閲覧コンテンツをａ個ランダム選択して閲覧した場合に、概念ｉが出現する詳細閲覧コンテンツの数がｎ以下となる累積確率である。なお、本実施形態では、累積確率Ｈ１及びＨ２は、超幾何分布により求めるが、この手法に限定するものではない。他の分布の例としては、二項分布、正規分布が存在する。
【００６５】
図１３（ｂ）に示すように、例えば、上記の分析パラメータＳ、Ｎ、ａ、ｎを用いて、ユーザが閲覧した１０個のコンテンツのうち、「野球」という概念が含まれるコンテンツが５以上である確率が「０．１２」であることを示す。ここで、「０．１２」は、累積確率Ｈ１の値に相当する。
なお、Ｈ２の値を使う例として、上記の分析パラメータでｎが０である場合を考える。この場合は、出現数が０以下の場合の確率を算出する。具体的には、図１３（ｂ）において横軸が０の項目の値となるため「０．０２」となる。
【００６６】
そして、特徴スコア算出部１２０は、図１４に示すように、上記算出した累積確率Ｈ１及びＨ２を用いて、標準正規分布の累積分布関数の逆関数により特徴スコアＺを算出する。図１３（ｃ）に示すように、上記Ｈ１を累積確率とする標準正規分布の累積分布関数の逆関数により特徴スコアＺを求める。なお、累積確率としてＨ２を利用する場合には、標準正規分布の累積分布関数の逆関数の返値の符号を負にして特徴スコアＺを求める。この特徴スコアＺを用いて、後述する概念体系更新処理部１３０は、「野球」という概念に対するユーザ興味スコアTotalZを求める。
【００６７】
特徴スコア算出部１２０は、更新対象概念リストを生成し、概念体系更新処理部１３０に出力する。「更新対象概念リスト」とは、概念ＩＤ、前記で算出した特徴スコアＺ、及び重みｗのセットである。なお、この更新対象概念リストに出現する概念ＩＤが、次の概念体系更新処理で更新対象のノード（概念）となる。上位概念を追加した出現概念リスト内の概念ＩＤすべてについて、特徴スコアＺと重みｗを算出する。重みｗは、各クラスタＩＤにおいて概念毎に設定される値である。
なお、重みｗは、初期値ｗ＝１とし、ユーザの特徴的な操作等が有った場合に、以下のように値を変化させることができる。例えば、クライアント端末２００において、ユーザに提示されたコンテンツについて、ユーザは、お気に入りコンテンツとして登録や、他ユーザへのお勧め、又はコンテンツへの評価入力ができる。
【００６８】
クライアント端末２００が、このような閲覧操作以外の操作履歴を興味分析装置１００に送信できる場合には、以下の処理を行う。  
すなわち、特徴スコア算出部１２０は、例えばコンテンツがお気に入りに登録されたとき、そのコンテンツが含む全ての概念ＩＤについて重みｗをｗ＝１．５のように増加させる。その他にも、コンテンツ閲覧時刻、閲覧時の天気、気温、湿度、季節、曜日、休日、余暇かどうか、閲覧時のユーザ位置情報、スケジューラ、日記等から収集したイベント情報に応じて重みｗの値を変えることもできる。
【００６９】
（５−６）概念体系更新処理部１３０
図１５に、概念体系更新処理部１３０の処理フローを示す。概念体系更新処理部１３０には、特徴スコア算出部１２０から、クライアント端末ＩＤ（もしくはユーザＩＤ）及び更新対象概念リスト｛クラスタＩＤ，｛概念ＩＤ，特徴スコア＝Ｚ，重み＝ｗ｝，…｝が入力される。
【００７０】
（ステップＳ１６：概念ノード値更新）  
概念体系更新処理部１３０は、「更新対象概念リスト」の各概念ＩＤのノード値を更新する。図１６に概念体系更新処理部１３０の処理の詳細を示す。概念体系更新処理部１３０は、コンテンツに出現した概念（出現概念）、及びこの出現概念の上位概念の概念ＩＤについて、図１６に示す各概念ｉに対するユーザ興味スコア更新式を用いて、ユーザ興味スコアTotalZｉｎ，及びＸｉ（ｎ−１），Ｙｉ（ｎ−１）の値を求め、図９の概念体系／ユーザ興味スコアデータベース１４０の、クラスタＩＤに対応する図１１のステップＳ１２に入力されたユーザＩＤ（クライアント端末ＩＤ）のカラムに対応するユーザ興味スコアテーブルに格納されている各値を更新する。
【００７１】
ここで、Ｘｉ（ｎ−１）は、各概念ＩＤ（ここでは識別子ｉで表現）に対する、過去の（前回までの）前記更新対象概念リストの重みｗの二乗の合計である。Ｙｉ（ｎ−１）は、同様に各概念ＩＤ（ここでは識別子ｉで表現）に対する、過去の前記更新対象概念リストの重みｗと特徴スコアＺの乗算の合計である。
【００７２】
この、Ｘ，Ｙはユーザ興味スコア（TotalZ）計算過程における中間結果を保持することとなり、省メモリ／ストレージを優先させる場合、最低限では各ノードの変数としてTotalZ，Ｘ，Ｙの３つの実数値を保持することで実現可能である。省メモリ／ストレージを優先させない場合は、算出した各概念、各クラスタの特徴スコアＺをすべて保存することとなる。この場合は、Ｘ，Ｙの保存は不要となる。
【００７３】
図１６において、ｎは、概念体系更新処理が何度目かを示す識別子である。ユーザ興味スコアTotalZを求める一連の処理は、クラスタＩＤ単位で行なわれ、この一連の処理が行なわれる単位を１度と数えるとき、ｎはこの一連の処理が何度目に行なわれたものであるかを示す識別子である。ｉは、概念ＩＤの識別子である。Ｚinは、概念ｉの各更新処理に利用するＺ値である。なお、上記Ｚijは一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリスト毎のＺ値であり、Ｚij∈Ｚinの関係である。重みｗinは、概念ｉの各更新処理に利用する重みである。上記重みｗと同じであり、上記特徴スコア算出部１２０で設定したものと同様である。
【００７４】
例えば、ｗinは、お気に入り登録、他ユーザとの共有等の閲覧以外の特殊な操作をユーザが行った場合、及びコンテンツ閲覧時間（閲覧開始から終了までの間隔）、コンテンツと概念の関連度合い、コンテンツ閲覧時刻、閲覧時の天気・気温・湿度・季節・曜日・休日・余暇かどうか、閲覧時のユーザ位置情報、スケジューラ・日記等から収集したイベント情報に応じて値を変化させる。その他サービス利用者、サービス運用者が特に指定した場合にも変化させる。
【００７５】
なお、一定期間過ぎた履歴の影響を低減させるため等のユーザ興味スコアの忘却は、最終更新時から現在の時刻までの時間間隔の閾値を超えた場合に、TotalZ，Ｘ，Ｙをそれぞれ減衰させることで実現する。
減衰の計算式の例を示す。例えば、ｋを減衰率（例えばｋ＝０．８）と設定し、以下のように算出することができる。  
TotalZ（減衰後）＝ｋ×TotalZ（現在）  
Ｘ（減衰後）＝ｋ2×Ｘ（現在）  
Ｙ（減衰後）＝ｋ2×Ｙ（現在）
（ステップＳ１７：下位概念ノード値更新）  
【００７６】
さらに、概念体系更新処理部１３０は、「更新対象概念リスト」の各概念ＩＤ（出現概念及び上位概念）の下位概念を抽出し、下位概念のノード値を更新する。下位概念の抽出では、「更新対象概念リスト」の各概念ＩＤについて、図９に示す概念体系／興味度データベース１４０の概念体系テーブルを参照し、子概念ＩＤリストから概念ＩＤのリストを抽出し、さらに各子概念ＩＤリストの概念ＩＤについて概念体系テーブルを参照して子概念リストを抽出する処理を繰り返す。
【００７７】
下位概念の興味度の更新に利用する特徴スコアＺは、例えば、隣接した親ノードのうち特徴スコアの絶対値が最も大きい値を利用、最も近い上位ノードの値を利用、親ノードの値を平均、または確率結合した値とする。なお、「更新対象概念リスト」のうち、上記ステップＳ１６で更新済みの概念（コンテンツに出現した概念、及び上位概念）のユーザ興味スコアは更新しない。
【００７８】
（５−７）コンテンツ評価処理部１７０
図１７はコンテンツ評価処理部１７０の処理手順と処理内容を示すフローチャートである。  
コンテンツ評価処理部１７０には、コンテンツサーバ３００のコンテンツ要求転送部３６０からの通知を入力として、コンテンツデータベース１６０のコンテンツテーブルから図７に示すような形式の提示コンテンツリストを読み出して以下のコンテンツ評価処理を行う。
【００７９】
すなわち、コンテンツ要求転送部３６０からはクライアント端末ＩＤ（もしくはユーザＩＤ）を含む、図２０に示すようなコンテンツ要求データを受信する。また、上記提示コンテンツリストについては、サービス運用者もしくはサービス利用者（クライアント端末利用者）の事前設定により、過去何日以内に登録されたコンテンツのみを評価対象とするか（提示コンテンツリストに含めるか）を設定することができる。
【００８０】
（ステップＳ２１：分析対象概念フィルタリング）  
分析対象概念フィルタリングでは、サービス運用者又はサービス利用者が、事前設定や手動等で特に分析対象の概念ＩＤを指定した場合は、概念体系／興味度データベース１４０を参照し、指定された分析対象の概念ＩＤおよび下位の概念ＩＤのみを評価対象とする。コンテンツ評価処理部１７０は、入力された提示コンテンツリストが保持する概念ＩＤについて、事前にサービス運用者又はサービス利用者が設定した条件にしたがって分析対象外とし、「フィルタリング済みコンテンツリスト」を生成する。
【００８１】
例えば、ユーザが、野球に関するコンテンツのレコメンドを求めた場合には、図９に示す概念体系テーブルを参照し、野球に対応する概念ＩＤの下位概念のみを分析対象とする。「フィルタリング済みコンテンツリスト」とは上記処理によって、各コンテンツＩＤに紐付けされている概念ＩＤを事前にサービス運用者又はユーザが設定した条件にしたがって削除したコンテンツリストである。「フィルタリング済みコンテンツリスト」は、上記図７の提示コンテンツリストと同じデータ構成である。
【００８２】
（ステップＳ２２：スコア評価）  
コンテンツ評価処理部１７０は、「フィルタリング済みコンテンツリスト」に含まれるコンテンツの評価スコアを算出し、図１８に示すようなコンテンツスコアリストを生成する。コンテンツスコアリストは、コンテンツＩＤ、評価スコア、コンテンツ本体及びコンテンツ登録時刻を有する。
【００８３】
図１９に評価スコアの算出方法の一例を示す。例えば、図１９に示すコンテンツ評価式により、コンテンツｘに対する評価スコアＥｎｔｉｔｙＺxを概念ｉのユーザ興味スコアTotalZi 、コンテンツｘと概念ｉとの関連度ｗi （もしくは、概念ｉの重要度）、及びコンテンツｘに出現する概念ＩＤの集合ｐを用いて算出することができる。なお、概念の識別子ｉは集合ｐ内の概念ＩＤに対応する。
【００８４】
図１９の算出で利用するユーザ興味スコア（TotalZ）は、各コンテンツに関連した概念ＩＤについて、概念体系／ユーザ興味スコアデータベース１４０のユーザ興味スコアテーブル（図９）から、クライアント端末ＩＤ（もしくは、ユーザＩＤ）をもとに読み出し利用する。図１９において、概念Ｋ、概念Ｂ及び概念Ｄが出現するコンテンツ１を評価コンテンツとした場合、概念Ｋ、概念Ｂ及び概念ＤのTotalZ，ｗを利用して評価スコアＥｎｔｉｔｙＺx ＝０．１８と算出できる。一方、概念Ｂのみが出現するコンテンツ２を評価コンテンツとした場合、概念ＢのTotalZ，ｗを利用して評価スコアＥｎｔｉｔｙＺx ＝−０．３と算出できる。評価スコアＥｎｔｉｔｙＺx の値が大きいコンテンツ１が優先して表示される。
【００８５】
その他にも、評価スコアＥｎｔｉｔｙＺx は、以下の変形例１〜３の方法により求めることができる。
変形例１としては、ＥｎｔｉｔｙＺx =ＭＡＸ（TotalZi ＊ｗi ）により求める。ＭＡＸ（TotalZi ＊ｗi ）は、ｉ∈ｐのTotalZi ＊ｗi の最大値を返す関数とする。
【００８６】
変形例２としては、ＥｎｔｉｔｙＺx の値は、ＭＡＸ（TotalZi ＊ｗi ）の値が閾値を超えた場合には、ＭＡＸ（TotalZi ＊ｗi ）の返り値とする。ＭＡＸ（TotalZi ＊ｗi ）はｉ∈ｐのTotalZi ＊ｗi の最大値を返す関数とする。閾値を超えない場合は、図１９のコンテンツ評価式の結果をＥｎｔｉｔｙＺx とする。ＭＡＸ（）は、はｉ∈ｐのTotalZi ＊ｗi で最大値を返す関数とする。閾値はサービス運用者が設定する値とする。
【００８７】
変形例３としては、TotalZi が正の値のｉ∈ｐについてのみ取り出し、図１９のコンテンツ評価式で統合した値をＥｎｔｉｔｙＺx とする。
（ステップＳ２３：コンテンツをスコア順にソート）  
コンテンツ評価処理部１７０は、コンテンツスコアリストに含まれるコンテンツを評価スコアＥｎｔｉｔｙＺx の降順にソートし、ソート済みコンテンツスコアリストをソート済コンテンツスコアリスト送信部１８０に出力する。
【００８８】
（５−８）ソート済みコンテンツスコアリスト送信部１８０
ソート済みコンテンツスコアリスト送信部１８０は、コンテンツ評価処理部１７０から入力されるソート済みコンテンツスコアリストとクライアント端末ＩＤ（もしくはユーザＩＤ）を、通信ネットワークを介してコンテンツサーバ３００に送信する。
【００８９】
（５−９）属性興味スコア更新部１９５
属性興味スコア更新部１９５は、ユーザの属性毎に当該属性のモデルを、当該属性に合致する他のユーザのモデルを用いて作成する。  
図２１は、興味分析装置１００による、属性に関するモデルを作成する処理の概要を示すもので、属性Ａのモデルを、当該属性Ａに合致するユーザＢ、ユーザＣのモデルを用いて作成する場合について例示したものである。属性興味スコア更新起動部１９０は、深夜時間帯などの興味分析装置１００の処理負荷が少ない時間帯に定期的に処理を起動する。処理が起動されると属性興味スコア更新部１９５は、先ずユーザ／属性情報データベース１９８に保存されている属性情報を用いて、属性Ａに合致するユーザ群、例えばユーザＢ及びユーザＣを特定する。次に、この特定したユーザのＸ，Ｙをもとに、図３２に示した式を用いて属性ＡのＸ，Ｙ，TotalZを算出する。そして、この属性ＡのＸ，Ｙ，TotalZの算出結果を属性興味スコアデータベース１９６に保存する。
【００９０】
図２２は、興味分析装置１００による、下位の属性のモデルを用いて上位の属性のモデルを作成する場合の処理の概要を示したもので、属性Ａのモデルを、当該属性Ａの子属性である属性Ｂ、属性Ｃのモデルを用いて作成する場合について例示している。属性興味スコア更新起動部１９０は、先に述べたように深夜時間帯などの装置の処理負荷が少ない時間帯に定期的に処理を起動する。処理が起動すると属性興味スコア更新部１９５は、ユーザ／属性情報データベース１９８に保存されている属性情報を用いて、属性Ａの子属性群、例えば属性Ｂ及び属性Ｃを特定する。次に、この特定した属性のＸ，Ｙをもとに図３４に示す式を用い、属性ＡのＸ，Ｙ，TotalZを算出する。そして、この属性ＡのＸ，Ｙ，TotalZの算出結果を属性興味スコアデータベース１９６に保存する。
【００９１】
図２３は、興味分析装置１００による、属性のモデルを用いた新規ユーザ（初期利用ユーザ）の初期モデルの作成に関する処理の概要を示したものである。  
同図において、新規ユーザは自身のクライアント端末２００において、自らの属性と各属性を確率結合する比率Ｗを入力する。そうすると、クライアント端末２００の属性提示部２５０により、上記入力されたユーザ自身の属性と確率結合比率Ｗを表す情報が、コンテンツサーバ３００の属性転送部３７０を経由して興味分析装置１００に転送される。
【００９２】
興味分析装置１００では、初期ユーザ興味スコア作成部１９７が上記転送された属性に合致する属性のモデルを属性興味スコアデータベース１９６から読み出す。そして、図２９に示す式を用いて確率結合して初期利用ユーザに関する初期の興味スコアTotalZを計算し、この計算された初期の興味スコアTotalZを上記初期利用ユーザの初期モデルとして概念体系／ユーザ興味スコアデータベース１４０に記憶させる。
【００９３】
（６）実施形態の作用効果
以上詳述したように一実施形態によれば、以下のような作用効果が奏せられる。  
(1) ユーザの選択候補となる一覧リストを定義し、そこからのコンテンツ選択における概念の出現数を分析することで、各概念の出現の希少性を考慮し、且つ一覧から選ばれない概念の履歴特徴を利用することができるため、ユーザの興味を高精度に推定することが可能となる。
【００９４】
(2) さらに、上記ステップＳ１５、ステップＳ１６に示したように、特徴スコアの算出やステユーザ興味スコアの算出に際し、閲覧時のユーザの状況や閲覧操作の特徴（お気に入り登録、長時間閲覧等）などを重み係数（重みｗ）を介して反映することができるため、ユーザ興味スコアをさらに精度良く求めることが可能となる。
【００９５】
(3) また、タクソノミ（オントロジ）等で定義された概念をメタタグとして付与したコンテンツ閲覧履歴分析において、概念出現の希少性を合理的に分析に反映することが難しかったため、従来はタクソノミ（オントロジ）構造の深さを一定する等によりコンテンツに付与する概念の抽象度を統一する等のオントロジ構造側の調整が必要があった。しかし、本実施形態では概念出現の希少性を考慮するオントロジ構造によるユーザ興味スコアの更新処理により上位概念が付与されたコンテンツと、下位概念が付与されたコンテンツの閲覧履歴を統合して分析可能となる。このため、分析に利用するタクソノミ（オントロジ）への制約低減し、タクソノミ（オントロジ）の維持・運用・管理コストを低減することが可能となる。  
(4) さらに、ユーザ興味スコアを用いてコンテンツに対するユーザの評価スコアを算出することで、ユーザの興味に合ったコンテンツを推薦することが可能となる。
【００９６】
(5) また、既存ユーザのモデルを用いて属性に関するモデルを作成し、新規ユーザ（初期利用ユーザ）が提示した自身の属性に合致したモデルを当該新規ユーザの初期モデルとして用いている。このため、ユーザが初めて情報推薦サービスを利用する場合であっても、比較的良い推薦結果を得ることができる。しかも、上記属性に関するモデルを既存ユーザのモデルを用いて確率結合することにより作成しているので、少ない計算量で属性毎のモデルを作成することができる。
【００９７】
(6) さらに、確率結合処理は装置の処理負荷が少ない深夜時間帯などを選んで実施しているので、装置の処理負荷の増加を招かずに実施できる利点がある。  
(7) さらに、属性が階層構造を持つ場合に、下位の属性のモデルを用いて上位の属性のモデルを作成することにより、少ない計算量で階層構造を持つ属性のモデルを作成することができる。
【００９８】
［他の実施形態］
なお、この発明は上記実施形態に限定されるものではなく、例えば興味分析装置の構成、属性毎のモデル作成処理及び初期モデルの作成処理の処理手順と処理内容、属性の種類等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
【００９９】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【０１００】
１００…興味分析装置、２００…クライアント端末、３００…コンテンツサーバ、１１０…履歴情報受信部、１２０…特徴スコア算出部、１３０…概念体系更新処理部、１４０…概念体系／ユーザ興味スコアデータベース、１５０…提示コンテンツリスト受信部、１６０…コンテンツデータベース、１７０…コンテンツ評価処理部、１８０…ソート済みコンテンツスコアリスト送信部、１９０…属性興味スコア更新起動部、１９５…属性興味スコア更新部、１９６…属性興味スコアデータベース、１９７…初期ユーザ興味スコア作成部、１９８…ユーザ／属性情報データベース、２１０…履歴収集部、２２０…履歴情報送信部、２３０…コンテンツ提示部、２４０…コンテンツ要求送信部、２５０…属性提示部、３１０…コンテンツ送信処理部、３２０…ソート済み提示コンテンツリスト受信部、３３０…提示コンテンツリスト送信部、３４０…提示コンテンツリスト入力部、３５０…履歴情報転送部、３６０…コンテンツ要求転送部、３７０…属性転送部。
【図１】
0005668007.tif 000002
【図２】
0005668007.tif 000003
【図３】
0005668007.tif 000004
【図４】
0005668007.tif 000005
【図５】
0005668007.tif 000006
【図６】
0005668007.tif 000007
【図７】
0005668007.tif 000008
【図８】
0005668007.tif 000009
【図９】
0005668007.tif 000010
【図１０】
0005668007.tif 000011
【図１１】
0005668007.tif 000012
【図１２】
0005668007.tif 000013
【図１３】
0005668007.tif 000014
【図１４】
0005668007.tif 000015
【図１５】
0005668007.tif 000016
【図１６】
0005668007.tif 000017
【図１７】
0005668007.tif 000018
【図１８】
0005668007.tif 000019
【図１９】
0005668007.tif 000020
【図２０】
0005668007.tif 000021
【図２１】
0005668007.tif 000022
【図２２】
0005668007.tif 000023
【図２３】
0005668007.tif 000024
【図２４】
0005668007.tif 000025
【図２５】
0005668007.tif 000026
【図２６】
0005668007.tif 000027
【図２７】
0005668007.tif 000028
【図２８】
0005668007.tif 000029
【図２９】
0005668007.tif 000030
【図３０】
0005668007.tif 000031
【図３１】
0005668007.tif 000032
【図３２】
0005668007.tif 000033
【図３３】
0005668007.tif 000034
【図３４】
0005668007.tif 000035