(57)【特許請求の範囲】
【請求項１】
コンテンツに付与された概念に対するユーザの興味を示すユーザ興味スコアを求めるコンピュータにより実行される興味分析方法であって、
複数のコンテンツを一覧として閲覧した第１のコンテンツリストと、前記第１のコンテンツリストから選択して閲覧した第２のコンテンツリストとを受信するステップと、
前記第１のコンテンツリストのコンテンツの総数を第１の総数、前記第１のコンテンツリストにおいて処理対象の概念が出現するコンテンツの数を第１の出現数、前記第２のコンテンツリストのコンテンツの総数を第２の総数、前記第２のコンテンツリストにおいて前記概念が出現するコンテンツの数を第２の出現数としたとき、前記第１の総数、前記第１の出現数、前記第２の総数の条件下で、前記第２のコンテンツリストに前記概念が出現するコンテンツの数が前記第２の出現数以上となる第１の確率及び前記第２の出現数以下となる第２の確率を算出し、前記第１の確率及び前記第２の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出するステップと、
前記特徴スコアと当該特徴スコアに対する重みを用いて所定の集約期間の中間結果を算出するステップと、
前記集約期間毎に前記中間結果を格納するステップと、
所定の時点からの時間的な距離に応じて前記集約期間毎に重み付けをして、集約期間毎に重み付けされた前記中間結果を用いて前記ユーザ興味スコアを算出するステップと、
を有することを特徴とする興味分析方法。
【請求項２】
所定の一定期間より前の前記中間結果を集約して長期興味中間結果として保存し、前記所定の一定期間に属する集約期間で集約された集約期間毎の中間結果と重み付けを行い組み合わせて前記ユーザ興味スコアを算出することを特徴とする請求項１記載の興味分析方法。
【請求項３】
前記長期興味中間結果を格納する長期興味保存領域と、前記集約期間で中間結果を集約した結果を格納する集約期間毎の保存領域を前記集約期間の設定の数に対応する個数分用意しておき、
前記中間結果を格納するステップは、前記保存領域に集約された中間結果を格納し、所定の時点において、前記保存領域に対応する集約期間が前記所定の一定期間に属さなくなった場合は、当該保存領域に格納された中間結果を前記長期興味保存領域に反映するとともに当該保存領域を初期化して新たに前記所定の一定期間に属することとなった前記集約期間の保存領域として用いることを特徴とする請求項２記載の興味分析方法。
【請求項４】
前記長期興味保存領域と前記保存領域を１つのレコードとしてデータベースで管理することを特徴とする請求項３記載の興味分析方法。
【請求項５】
コンテンツに付与された概念に対するユーザの興味を示すユーザ興味スコアを求める興味分析装置であって、
複数のコンテンツを一覧として閲覧した第１のコンテンツリストと、前記第１のコンテンツリストから選択して閲覧した第２のコンテンツリストとを受信する受信手段と、
前記第１のコンテンツリストのコンテンツの総数を第１の総数、前記第１のコンテンツリストにおいて処理対象の概念が出現するコンテンツの数を第１の出現数、前記第２のコンテンツリストのコンテンツの総数を第２の総数、前記第２のコンテンツリストにおいて前記概念が出現するコンテンツの数を第２の出現数としたとき、前記第１の総数、前記第１の出現数、前記第２の総数の条件下で、前記第２のコンテンツリストに前記概念が出現するコンテンツの数が前記第２の出現数以上となる第１の確率及び前記第２の出現数以下となる第２の確率を算出し、前記第１の確率及び前記第２の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出する算出手段と、
前記特徴スコアと当該特徴スコアに対する重みを用いて所定の集約期間の中間結果を算出し、前記集約期間毎に前記中間結果を格納する中間結果更新手段と、
所定の時点からの時間的な距離に応じて前記集約期間毎に重み付けをして、集約期間毎に重み付けされた前記中間結果を用いて前記ユーザ興味スコアを算出する興味スコア算出手段と、
を有することを特徴とする興味分析装置。
【請求項６】
請求項５記載の興味分析装置の各部としてコンピュータを動作させることを特徴とする興味分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ閲覧履歴からユーザの興味を分析する技術に関する。
【背景技術】
【０００２】
ユーザの行動や状況に合わせて適切なサービス・コンテンツをレコメンドする技術が望まれている。そこで、発明者らは、概念出現の希少性を利用してユーザの興味を高精度に推定できる興味分析方法及び興味分析装置を提案した（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−００３７９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、ユーザの興味を分析する際に過去全期間の履歴を分析対象とし、入力された履歴情報を利用してユーザの興味度を更新していた。過去一定期間の履歴のみを分析対象としたい場合や、過去に蓄積した履歴について現在との時間差（経過時間）に従って重み付けを行いたい場合は、過去一定期間の中間結果を保存しておく必要がある。しかしながら、中間結果として保存しておくデータ量が多いという問題があった。また、過去一定期間において算出される中間結果のデータ量が事前に見積もれないという問題があった。
【０００５】
本発明は、上記に鑑みてなされたものであり、ユーザの興味を分析する際に過去一定期間の履歴のみを分析対象とする場合や過去に蓄積した履歴について現在との時間差（経過時間）に従って重み付けをする場合に必要なデータ量を削減するとともに必要なデータ量の事前見積もりを可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
第１の本発明に係る興味分析方法は、コンテンツに付与された概念に対するユーザの興味を示すユーザ興味スコアを求める興味分析方法であって、複数のコンテンツを一覧として閲覧した第１のコンテンツリストと、前記第１のコンテンツリストから選択して閲覧した第２のコンテンツリストとを受信するステップと、前記第１のコンテンツリストのコンテンツの総数を第１の総数、前記第１のコンテンツリストにおいて処理対象の概念が出現するコンテンツの数を第１の出現数、前記第２のコンテンツリストのコンテンツの総数を第２の総数、前記第２のコンテンツリストにおいて前記概念が出現するコンテンツの数を第２の出現数としたとき、前記第１の総数、前記第１の出現数、前記第２の総数の条件下で、前記第２のコンテンツリストに前記概念が出現するコンテンツの数が前記第２の出現数以上となる第１の確率及び前記第２の出現数以下となる第２の確率を算出し、前記第１の確率及び前記第２の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出するステップと、前記特徴スコアと当該特徴スコアに対する重みを用いて所定の集約期間の中間結果を算出するステップと、前記集約期間毎に前記中間結果を格納するステップと、所定の時点からの時間的な距離に応じて前記集約期間毎に重み付けをして、集約期間毎に重み付けされた前記中間結果を用いて前記ユーザ興味スコアを算出するステップと、を有することを特徴とする。
【０００８】
上記興味分析方法において、所定の一定期間より前の前記中間結果を集約して長期興味中間結果として保存し、前記所定の一定期間に属する集約期間で集約された集約期間毎の中間結果と重み付けを行い組み合わせて前記ユーザ興味スコアを算出することを特徴とする。
【０００９】
上記興味分析方法において、前記長期興味中間結果を格納する長期興味保存領域と、前記集約期間で中間結果を集約した結果を格納する集約期間毎の保存領域を前記集約期間の設定の数に対応する個数分用意しておき、前記中間結果を格納するステップは、前記保存領域に集約された中間結果を格納し、所定の時点において、前記保存領域に対応する集約期間が前記所定の一定期間に属さなくなった場合は、当該保存領域に格納された中間結果を前記長期興味保存領域に反映するとともに当該保存領域を初期化して新たに前記所定の一定期間に属することとなった前記集約期間の保存領域として用いることを特徴とする。
【００１０】
上記興味分析方法において、前記長期興味保存領域と前記保存領域をを１つのレコードしてデータベースで管理することを特徴とする。
【００１１】
第２の本発明に係る興味分析装置は、コンテンツに付与された概念に対するユーザの興味を示すユーザ興味スコアを求める興味分析装置であって、複数のコンテンツを一覧として閲覧した第１のコンテンツリストと、前記第１のコンテンツリストから選択して閲覧した第２のコンテンツリストとを受信する受信手段と、前記第１のコンテンツリストのコンテンツの総数を第１の総数、前記第１のコンテンツリストにおいて処理対象の概念が出現するコンテンツの数を第１の出現数、前記第２のコンテンツリストのコンテンツの総数を第２の総数、前記第２のコンテンツリストにおいて前記概念が出現するコンテンツの数を第２の出現数としたとき、前記第１の総数、前記第１の出現数、前記第２の総数の条件下で、前記第２のコンテンツリストに前記概念が出現するコンテンツの数が前記第２の出現数以上となる第１の確率及び前記第２の出現数以下となる第２の確率を算出し、前記第１の確率及び前記第２の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出する算出手段と、前記特徴スコアと当該特徴スコアに対する重みを用いて所定の集約期間の中間結果を算出し、前記集約期間毎に前記中間結果を格納する中間結果更新手段と、所定の時点からの時間的な距離に応じて前記集約期間毎に重み付けをして、集約期間毎に重み付けされた前記中間結果を用いて前記ユーザ興味スコアを算出する興味スコア算出手段と、を有することを特徴とする。
【００１２】
第３の本発明に係る興味分析プログラムは、上記興味分析装置の各部としてコンピュータを動作させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ユーザの興味を分析する際に過去一定期間の履歴のみを分析対象とする場合や時間に従って重み付けをする場合に必要なデータ量を削減するとともに必要なデータ量の事前見積もりを可能とすることができる。
【図面の簡単な説明】
【００１４】
【図１】本実施の形態における興味分析装置の構成を示す機能ブロック図である。
【図２】一覧閲覧コンテンツリストの例を示す図である。
【図３】詳細閲覧コンテンツリストの例を示す図である。
【図４】概念体系／ユーザ興味スコアデータベースに格納される概念体系テーブルの例を示す図である。
【図５】概念体系のグラフを示す図である。
【図６】ユーザ興味度中間結果テーブルの例を示す図である。
【図７】ユーザ興味度テーブルの例を示す図である。
【図８】提示コンテンツリストの例を示す図である。
【図９】本実施の形態における興味分析装置がユーザ興味スコアを算出する処理の流れを示すフローチャートである。
【図１０】分析パラメータの例を示す図である。
【図１１】履歴ウィンドウサイズとボックスを説明するための図である。
【図１２】ボックスに格納された中間結果を更新する処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について図面を用いて説明する。
【００１６】
図１は、本実施の形態における興味分析装置の構成を示す機能ブロック図である。本興味分析装置１は、ユーザがコンテンツを一覧として閲覧した一覧閲覧コンテンツリストと、ユーザがコンテンツの一覧から選択してコンテンツの本体を閲覧した詳細閲覧コンテンツリストを入力し、コンテンツそれぞれに付与された各概念に対するユーザの興味の度合いを示すユーザ興味スコアを算出してユーザの興味を分析する。そして、ユーザ興味スコアに基いて算出したコンテンツの評価スコアの高い順にコンテンツをソートしたソート済みコンテンツスコアリストを出力する。
【００１７】
図１に示す興味分析装置１は、履歴情報受信部１１、特徴スコア算出部１２、概念体系更新処理部１３、概念体系／ユーザ興味スコアデータベース１４、提示コンテンツリスト受信部１５、コンテンツデータベース１６、コンテンツ評価処理部１７、およびソート済みコンテンツスコアリスト送信部１８を備える。興味分析装置１が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは興味分析装置１が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。
【００１８】
履歴情報受信部１１は、ユーザがクライアント端末で閲覧した一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを受信する。一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストは、クライアント端末で生成されてコンテンツサーバに送信され、コンテンツサーバから興味分析装置１に転送される。
【００１９】
一覧閲覧コンテンツリストとは、ユーザがコンテンツのタイトルを一覧で閲覧したコンテンツのリストである。図２に、一覧閲覧コンテンツリストの例を示す。同図に示す一覧閲覧コンテンツリストには、クラスタＩＤ、コンテンツを識別するためのコンテンツＩＤ、および閲覧時刻が記載されている。閲覧時刻は、コンテンツのタイトルがクライアント端末に表示された時刻である。コンテンツの全てのタイトルがクライアント端末で一度に表示されない場合は、ユーザがコンテンツのタイトルをスクロールさせて表示したものが一覧閲覧コンテンツリストに記載される。クラスタＩＤとは、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストに一意に付与される識別子である。ユーザが別の時刻（時間帯）にコンテンツのタイトルを一覧で閲覧、詳細を表示した場合は、別のクラスタＩＤが付与される。なお、時刻以外の条件でクラスタＩＤを新たに付与する条件としては、一覧閲覧コンテンツリスト表示中に一定時間操作が無かった場合や、閲覧するユーザ（ユーザＩＤ）を切り替えた場合、一覧閲覧コンテンツリストに対して、コンテンツジャンル等を観点に絞り込み検索を掛けた場合、その他閲覧アプリケーションにおいて閲覧モードを切り替えた場合がある。
【００２０】
詳細閲覧コンテンツリストとは、ユーザが一覧で閲覧したコンテンツのリストから選択してコンテンツ本体の内容（詳細）を閲覧したコンテンツのリストである。図３に、詳細閲覧コンテンツリストの例を示す。同図に示す一覧閲覧コンテンツリストには、クラスタＩＤ、コンテンツＩＤ、および閲覧時刻が記載されている。閲覧時刻は、ユーザがコンテンツのタイトルの一覧からコンテンツを選択し、コンテンツの本体を閲覧した時刻である。
【００２１】
特徴スコア算出部１２は、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを利用して概念選択の統計モデルによりコンテンツに付与された各概念の特徴スコアを算出する。特徴スコアの算出の詳細については後述する。
【００２２】
概念体系更新処理部１３は、特徴スコア算出部１２が算出した特徴スコアを用いて各概念に対するユーザ興味スコアを算出して更新し、概念体系／ユーザ興味スコアデータベース１４に格納された概念体系における概念間の関係情報（上位概念及び下位概念）を利用して下位概念のユーザ興味スコアを更新する。
【００２３】
図４に、概念体系／ユーザ興味スコアデータベース１４に格納される概念体系テーブルの例を示す。同図に示す概念体系テーブルは、自概念ＩＤ、親概念ＩＤリスト、および子概念ＩＤリストを格納する。概念体系内の全ての自概念ＩＤは、親概念ＩＤおよび子概念ＩＤと紐付けて保存されており、図５に示す概念体系のグラフのような概念構造が定義される。図５に示す概念体系のグラフに含まれるノードは概念を表し、リンクは概念間の関係を表す。概念体系のノード値がユーザ興味スコアである。概念体系において、上位に位置するノードほど抽象的な概念を表し、下位に位置するノードほど具体的な概念を表す。概念体系は、サービス運用者等が事前に設計し定義する。
【００２４】
ユーザ興味スコアの更新に際し、本実施の形態では、概念体系更新処理部１３がユーザ興味スコアを更新する際に求めた中間結果を所定の集約期間を元に集約して過去一定期間分保存しておき、過去一定期間の履歴のみを分析対象としたり、ユーザの興味の変化に応じて重み付けを可能とした。具体的には、過去一定期間を履歴ウィンドウサイズとし、履歴ウィンドウサイズをサービスとして要求される忘却粒度に適した集約期間でＢ個のボックスに区切り、ボックス毎に中間結果を集約した値を保存した。履歴ウィンドウサイズはＢ個の集約期間の合計値となる。図６に、中間結果を格納するユーザ興味度中間結果テーブルの例を示す。ユーザ興味度中間結果テーブルは、ユーザＩＤ、概念ＩＤを保持し、ユーザそれぞれについて概念ＩＤ毎に中間結果が格納される。ユーザ興味度中間結果テーブルには、集計を始めてから履歴ウィンドウサイズ前までの中間結果を集約した中間結果を格納する長期興味ボックス、履歴ウィンドウサイズをＢ個（図６では３個）のボックスに区切り、集約期間毎に中間結果を集約した中間結果を格納するＢＯＸ１〜ＢＯＸ３が存在する。長期興味ボックスとＢＯＸ１〜ＢＯＸ３は、１つのレコードとして概念体系／ユーザ興味スコアデータベース１４で管理される。なお、集約期間は、ある時点からの相対値（例えば過去Ｎ日〜Ｎ＋Ｍ日の形式）、あるいは絶対値（例えばＸ月Ｙ日〜Ｚ月Ｗ日の形式）で表される。
【００２５】
概念体系更新処理部１３は、特徴スコアを用いて中間結果を求めてユーザ興味度中間結果テーブルに反映させた後、ユーザ興味度中間結果テーブルの各ボックスに格納された中間結果を利用してユーザ興味スコアを算出し、ユーザ興味スコアをユーザ興味度テーブルに格納する。ユーザ興味スコアを算出する際には、所定の時間（例えば現在時刻）からの時間的な距離に応じてボックスに重み付けをする。また、長期興味ボックスに格納された中間結果を組み合わせて用いてもよい。図７に、ユーザ興味度テーブルの例を示す。ユーザ興味度テーブルでは、ユーザそれぞれについて、概念ＩＤ毎にユーザ興味スコアを格納する。
【００２６】
概念体系／ユーザ興味スコアデータベース１４は、上記の概念体系テーブル、ユーザ興味度中間結果テーブル、およびユーザ興味度テーブルを格納する。
【００２７】
提示コンテンツリスト受信部１５は、ユーザに提示するコンテンツを一覧にした提示コンテンツリストを受信する。図８に、提示コンテンツリストの例を示す。提示コンテンツリストは、コンテンツＩＤ、概念ＩＤ／関連度リスト、コンテンツ本体、およびコンテンツ登録時刻を有する。概念ＩＤ／関連度リストは、コンテンツ毎に予め設定され、コンテンツに出現する概念の概念ＩＤおよび当該概念とコンテンツとの関連性の程度を示す値（関連度）の組みのリストである。関連度は、例えば、０から１までの値とし、大きい値ほど関連度が強いものとする。例えば、スポーツに関連するコンテンツには、｛野球の概念ＩＤ＝１，関連度＝０．５｝，｛サッカーの概念ＩＤ＝２，関連度＝０．８｝・・というように、概念ＩＤと関連度の組みを設定する。
【００２８】
コンテンツデータベース１６は、提示コンテンツリスト受信部１５が受信した提示コンテンツリストをコンテンツテーブルに格納する。
【００２９】
コンテンツ評価処理部１７は、コンテンツに出現する各概念のユーザ興味スコアを利用して確率結合によってコンテンツに対するユーザの評価スコアを算出する。
【００３０】
ソート済みコンテンツスコアリスト送信部１８は、ユーザの評価スコア順にソートしたコンテンツスコアリストを送信する。
【００３１】
次に、本実施の形態における興味分析装置の動作について説明する。
【００３２】
図９は、本実施の形態における興味分析装置がユーザ興味スコアを算出する処理の流れを示すフローチャートである。
【００３３】
履歴情報受信部１１は、ユーザＩＤ（もしくはクライアント端末ＩＤ）、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを受信し、特徴スコア算出部１２へ出力する（ステップＳ１０１）。
【００３４】
特徴スコア算出部１２は、詳細閲覧コンテンツリスト内の各コンテンツに出現する概念ＩＤをコンテンツデータベース１６から抽出して出現概念リストを作成する（ステップＳ１０２）。具体的には、詳細閲覧コンテンツリストの各コンテンツＩＤに紐付けされている概念ＩＤをコンテンツデータベース１６のコンテンツテーブルから検索し、出現概念リストに列挙する。出現概念リストとは、詳細閲覧コンテンツリストに含まれる各コンテンツに付与された概念ＩＤを全て列挙したものである。
【００３５】
続いて、特徴スコア算出部１２は、出現概念リストの各概念ＩＤの上位概念を抽出して出現概念リストに追加する（ステップＳ１０３）。具体的には、出現概念リスト内の各概念について、概念体系／ユーザ興味スコアデータベース１４に格納された概念体系テーブルを参照して上位概念を抽出し、抽出した上位概念の概念ＩＤを出現概念リストに追加する。
【００３６】
続いて、特徴スコア算出部１２は、クラスタＩＤ毎に、出現概念リストの各概念について出現数を算出し、特徴スコアの算出に必要な分析パラメータを抽出する（ステップＳ１０４）。図１０に、分析パラメータの例を示す。同図に示す分析パラメータは、クラスタＩＤ毎に集計した、一覧閲覧コンテンツリストのコンテンツ総数Ｓ、詳細閲覧コンテンツリストのコンテンツ総数ａと、さらに出現概念リストの概念ＩＤ毎に集計した、一覧閲覧コンテンツリストのコンテンツで当該概念ＩＤが付与されているコンテンツ数Ｎ、および詳細閲覧コンテンツリストのコンテンツで当該概念ＩＤが付与されているコンテンツ数ｎである。なお、ステップＳ１０３で追加した上位概念も含めて出現概念リスト内の概念ＩＤすべてについて上記のコンテンス数Ｎ，ｎを算出する。
【００３７】
そして、特徴スコア算出部１２は、分析パラメータＳ，ａ，Ｎ，ｎを利用して概念ＩＤ毎に特徴スコアＺを算出する（ステップＳ１０５）。具体的には、次式に示すように、一覧閲覧コンテンツリストのコンテンツ総数Ｓｊ、一覧閲覧コンテンツリストのコンテンツで処理対象の概念ｉが付与されているコンテンツ数Ｎｊの条件下で、詳細閲覧コンテンツリストからコンテンツをａｊ個ランダムに選択した場合に、概念ｉが出現するコンテンツの数がｎ以上となる累積確率Ｈ１と、概念ｉが出現するコンテンツの数がｎ以下となる累積確率Ｈ２を算出し、累積確率Ｈ１，Ｈ２をもとに標準正規分布の累積分布関数の逆関数により特徴スコアＺｉｊを求める。
【数１】
0005519824.tif 000002
【００３８】
ここで、ｉは概念ＩＤ、ｊはクラスタＩＤを表す。本実施の形態では、累積確率Ｈ１，Ｈ２を超幾何分布により求めるが、二項分布、正規分布など他の分布を用いてもよい。
【００３９】
そして、特徴スコア算出部１２は、クラスタ毎に、概念ＩＤ、特徴スコア、および重みｗの組みからなる更新対象概念リストを生成する。重みｗは、ユーザの特徴的な操作、コンテンツの閲覧時間および閲覧状況等に応じた値である。
【００４０】
続いて、概念体系更新処理部１３は、更新対象概念リストに記載された各概念ＩＤのノード値を更新する（ステップＳ１０６）。
【００４１】
さらに、概念体系更新処理部１３は、更新対象概念リストに記載された各概念ＩＤの下位概念を抽出し、下位概念のノード値を更新する（ステップＳ１０７）。下位概念のユーザ興味スコアの更新に利用する特徴スコアは、例えば、隣接した親概念のうち特徴スコアの絶対値が最も大きい値を利用、最も近い親概念の値を利用、親概念の値を平均、または確率結合した値とする方法がある。なお、ステップＳ１０６で更新したユーザ興味スコアはここでは更新しない。
【００４２】
次に、概念体系更新処理部１３が各概念のユーザ興味スコアを更新する処理について説明する。
【００４３】
本実施の形態では、概念体系更新処理部１３は、更新対象概念リストの各概念について中間結果を算出し、算出した中間結果で更新対象のボックスが保持する中間結果を更新したうえで、ボックスが保持する中間結果を用いてユーザ興味スコアを更新する。
【００４４】
まず、中間結果を格納するボックスについて説明する。本実施の形態では、所定の時点（例えば１９７０年１月１日０時０分０秒）を基準として所定の集約期間毎に時間を区切って中間結果を集約し、集約した中間結果を集約期間毎に用意したボックスに格納する。ボックスの数は履歴ウィンドウサイズおよび集約期間の長さで予め決定され、所定の時点（例えば処理時点）において集約期間が履歴ウィンドウサイズに属さなくなったボックスについては、そのボックスに格納された中間結果を長期興味ボックスに反映するとともに、ボックスを初期化して新たに履歴ウィンドウサイズに属することとなった集約期間のボックスとして用いる。
【００４５】
図１１に、履歴ウィンドウサイズとボックスの様子を示す。時間を横軸にとっている。同図に示した各ボックスは、図６で示したユーザ興味度中間結果テーブルの長期興味ボックス、ＢＯＸ１〜ＢＯＸ３に対応する。
【００４６】
図１１（ａ）の時点では、ユーザ興味スコアを更新する処理時の時刻はＢＯＸ３の集約期間に属しているとする。このとき、データが入力されてユーザ興味スコアを更新する処理が行われる場合は、算出した中間結果でＢＯＸ３の中間結果を更新する。
【００４７】
その後、図１１（ｂ）に示すように、処理時点において、ＢＯＸ１の集約期間が履歴ウィンドウサイズに属さなくなった場合、ＢＯＸ１に格納された中間結果を長期興味ボックスに反映し、図１１（ｃ）に示すように、ＢＯＸ１をＢＯＸ３の次の新たなボックスとして用いる。
【００４８】
続いて、ボックスに格納された中間結果を更新する処理について説明する。図１２は、ボックスに格納された中間結果を更新する処理の流れを示すフローチャートである。
【００４９】
まず、概念体系更新処理部１３は、更新対象概念リストの各概念ＩＤについて、次式を用いて、中間結果ｔｍｐＸ，ｔｍｐＹを算出する（ステップＳ２００）。
【数２】
0005519824.tif 000003
【００５０】
ここで、ｉは概念ＩＤ、ｎは更新処理回数、Ｚは特徴スコア、ｗは重みを表す。更新処理回数ｎは、概念体系更新処理が何度目かを示す値である。ユーザ興味スコアを求める一連の処理は、クラスタＩＤ単位で行われる。クラスタＩＤ単位で行う一連の処理を１回と数える。なお、特許文献１では、この中間結果ｔｍｐＸ，ｔｍｐＹを用いてユーザ興味スコアを算出していた。本実施の形態では、以下の処理により中間結果ｔｍｐＸ，ｔｍｐＹをボックス毎に集約した後、ユーザ興味スコアを算出する。
【００５１】
続いて、現在時刻から更新対象のボックス番号を決定する（ステップＳ２０１）。例えば、図１１（ａ）に示す例ではボックス番号は３となり、図１１（ｂ），図１１（ｃ）に示す例ではボックス番号は１となる。
【００５２】
そして、ボックス番号を示す変数ｉを初期化する（ステップＳ２０２）。図１１に示す例では、ボックス番号は１〜３であるので、変数ｉを１に初期化する。
【００５３】
変数ｉが示すＢＯＸｉは履歴ウィンドウサイズ内であるか否か判定する（ステップＳ２０３）。例えば、変数ｉ＝１のとき、図１１（ａ），図１１（ｃ）に示す例ではＢＯＸ１は履歴ウィンドウサイズ内であり、図１１（ｂ）に示す例ではＢＯＸ１は履歴ウィンドウサイズ外である。時間が経過し、現在時刻が新たなボックスの集約期間に移った場合に、履歴ウィンドウサイズ外となるボックスが存在することになる。ＢＯＸｉが履歴ウィンドウサイズ外であるか否かは、ＢＯＸｉの最終更新日が履歴ウィンドウサイズ外つまり履歴ウィンドウサイズ以前であるか否か判定することで調べることができる。
【００５４】
ＢＯＸｉが履歴ウィンドウサイズ内である場合（ステップＳ２０３のＹｅｓ）、ＢＯＸｉは更新対象であるか否かを判定する（ステップＳ２０４）。例えば、変数ｉ＝１のとき、図１１（ｃ）に示す例ではＢＯＸ１は更新対象である。
【００５５】
ＢＯＸｉが更新対象でない場合（ステップＳ２０４のＮｏ）、変数ｉをインクリメントして次のボックスの処理に移る（ステップＳ２１２、Ｓ２１３）。つまり、ＢＯＸｉが履歴ウィンドウサイズ内にあって、更新対象でない場合、ＢＯＸｉに対しては何も処理しない。
【００５６】
ＢＯＸｉが更新対象である場合（ステップＳ２０４のＹｅｓ）、ＢＯＸｉが保持する中間結果をｔｍｐＸ，ｔｍｐＹで更新する（ステップＳ２０５）。具体的には、ＢＯＸｉが保持する中間結果ＸＢＯＸｉ，ＹＢＯＸｉを次式で更新する。
【数３】
0005519824.tif 000004
【００５７】
そして、ＢＯＸｉの最終更新日を現在時刻に更新し（ステップＳ２１１）、変数ｉをインクリメントして次のボックスの処理に移る（ステップＳ２１２、Ｓ２１３）。
【００５８】
一方、ＢＯＸｉが履歴ウィンドウサイズ外である場合も（ステップＳ２０３のＮｏ）、ＢＯＸｉは更新対象であるか否かを判定する（ステップＳ２０６）。
【００５９】
ＢＯＸｉが更新対象でない場合（ステップＳ２０６のＮｏ）、ＢＯＸｉが保持する中間結果を長期興味ボックスに反映し（ステップＳ２０７）、ＢＯＸｉが保持する中間結果を０にリセットする（ステップＳ２０８）。
【００６０】
ＢＯＸｉが更新対象である場合（ステップＳ２０６のＹｅｓ）、ＢＯＸｉが保持する中間結果を長期興味ボックスに反映し（ステップＳ２０９）、ＢＯＸｉが保持する中間結果をｔｍｐＸ，ｔｍｐＹに置き換える（ステップＳ２１０）。
【００６１】
ＢＯＸｉが履歴ウィンドウサイズ外である場合、つまりＢＯＸｉが履歴ウィンドウサイズに属さなくなった場合は、図１１（ｂ）に示すように、ＢＯＸｉが保持する中間結果を長期興味ボックスに反映して新たなボックスとして用いる。長期興味ボックスが保持する中間結果をＬｏｎｇＸ，ＬｏｎｇＹとすると、次式により長期興味ボックスを更新する。
【数４】
0005519824.tif 000005
【００６２】
なお、ステップＳ２０８の中間結果を０にリセットする処理は、前回の処理時刻から集約期間以上の時間が経過し、複数のボックスが一度に履歴ウィンドウサイズ外となった場合に発生する。そのボックスの集約期間中に処理が行われていないので、当該ボックスは中間結果を持たないことを意味する。
【００６３】
ステップＳ２１０のＢＯＸｉの中間結果をｔｍｐＸ，ｔｍｐＹに置き換える処理は、新たに履歴ウィンドウサイズに属することとなった集約期間の中間結果を格納するボックスとしてＢＯＸｉを利用することを意味する。
【００６４】
ステップＳ２０８，Ｓ２１０でＢＯＸｉに中間結果を設定すると、ＢＯＸｉの最終更新日を現在時刻に更新し（ステップＳ２１１）、変数ｉをインクリメントする（ステップＳ２１２）。全てのボックスについて処理していない場合はステップＳ２０３に戻り（ステップＳ２１３のＮｏ）、次のボックスに対して処理を行う。
【００６５】
全てのボックスについて処理した場合は（ステップＳ２１３のＹｅｓ）、中間結果を更新する処理を終えて、ユーザ興味スコアを更新する処理に移る。
【００６６】
続いて、ユーザ興味スコアを更新する処理について説明する。
【００６７】
概念体系更新処理部１３は、ボックスが保持する中間結果を更新すると、次式により、ボックスが保持する中間結果に所定の時点からの時間的な距離に応じて設定された重みｗｔ１，ｗｔ２，・・，ｗｔｎと長期興味の重みｗｌを加味してユーザ興味スコアＺを更新する。
【数５】
0005519824.tif 000006
【００６８】
ここで、中間結果Ｘａ，Ｘｂ，・・，Ｘｎ，Ｙａ，Ｙｂ，・・，Ｙｎは、時間の近い順にボックスの中間結果を割り当てたものである。例えば、図１１（ａ）の例では、ＸａはＸＢＯＸ３、ＹａはＹＢＯＸ３、ＸｂはＸＢＯＸ２、ＹｂはＹＢＯＸ２、ＸｃはＸＢＯＸ１、ＹｃはＹＢＯＸ１となる。なお、長期興味ボックスを利用しない場合は、ｓｈｏｒｔＺをユーザ興味スコアＺとする。
【００６９】
次に、コンテンツ評価処理について説明する。
【００７０】
コンテンツ評価処理部１７は、要求に応じてコンテンツの評価スコアを算出し、評価スコアの高い順にコンテンツを並べたソート済みコンテンツスコアリストを生成する。
【００７１】
分析対象の概念ＩＤが指定された場合は、概念体系において当該概念ＩＤの下位概念のみを評価対象とし、該当する概念ＩＤが紐付けられたフィルタリング済みコンテンツリストを生成する。
【００７２】
そして、フィルタリング済みコンテンツリストに含まれるコンテンツｘの評価スコアＥｎｔｉｔｉｙＺｘを次式を用いて算出する。
【数６】
0005519824.tif 000007
【００７３】
ここで、Ｚｉは概念ｉのユーザ興味スコア、ｗｉはコンテンツｘと概念ｉの関連度、ｐはコンテンツｘが持つ概念ＩＤの集合を表す。
【００７４】
そして、ソート済みコンテンツスコアリスト送信部１８は、ソート済みコンテンツスコアリストを送信する。
【００７５】
以上説明したように、本実施の形態によれば、ユーザ興味スコアを算出する際に求める中間結果を所定の集約期間毎に集約してボックスに格納しておき、履歴ウィンドウサイズに属するボックスに格納された中間結果を用いてユーザ興味スコアを算出することにより、履歴ウィンドウサイズのみを分析対象とする場合や時間に従って重み付けを行う場合に、保存しておく中間結果のデータ量を削減するとともに、データ量の事前見積もりを可能とすることができる。
【００７６】
本実施の形態によれば、長期興味ボックスとＢＯＸ１〜ＢＯＸ３を１つのレコードとして概念体系／ユーザ興味スコアデータベース１４で管理することにより、データベースの読み出しと更新回数を減らすことが可能となる。
【符号の説明】
【００７７】
１…興味分析装置
１１…履歴情報受信部
１２…特徴スコア算出部
１３…概念体系更新処理部
１４…概念体系／ユーザ興味スコアデータベース
１５…提示コンテンツリスト受信部
１６…コンテンツデータベース
１７…コンテンツ評価処理部
１８…ソート済みコンテンツスコアリスト送信部
【要約】
【課題】ユーザの興味を分析する際に必要なデータ量を削減するとともに必要なデータ量の事前見積もりを可能とする。
【解決手段】ユーザ興味スコアを算出する際に求める中間結果を所定の集約期間毎に集約してボックスに格納しておき、履歴ウィンドウサイズに属するボックスに格納された中間結果を用いてユーザ興味スコアを算出する。これにより、履歴ウィンドウサイズのみを分析対象とする場合や時間に従って重み付けを行う場合に、保存しておく中間結果のデータ量を削減するとともに、データ量の事前見積もりを可能とすることができる。
【選択図】図１【図１】
0005519824.tif 000008
【図２】
0005519824.tif 000009
【図３】
0005519824.tif 000010
【図４】
0005519824.tif 000011
【図５】
0005519824.tif 000012
【図６】
0005519824.tif 000013
【図７】
0005519824.tif 000014
【図８】
0005519824.tif 000015
【図９】
0005519824.tif 000016
【図１０】
0005519824.tif 000017
【図１１】
0005519824.tif 000018
【図１２】
0005519824.tif 000019