JP5723830B2 - 興味分析方法 - Google Patents

興味分析方法 Download PDF

Info

Publication number
JP5723830B2
JP5723830B2 JP2012123669A JP2012123669A JP5723830B2 JP 5723830 B2 JP5723830 B2 JP 5723830B2 JP 2012123669 A JP2012123669 A JP 2012123669A JP 2012123669 A JP2012123669 A JP 2012123669A JP 5723830 B2 JP5723830 B2 JP 5723830B2
Authority
JP
Japan
Prior art keywords
list
concept
content
user
condition
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.)
Expired - Fee Related
Application number
JP2012123669A
Other languages
English (en)
Other versions
JP2013250672A (ja
Inventor
伊藤 浩二
浩二 伊藤
藤田 将成
将成 藤田
妙 佐藤
妙 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012123669A priority Critical patent/JP5723830B2/ja
Publication of JP2013250672A publication Critical patent/JP2013250672A/ja
Application granted granted Critical
Publication of JP5723830B2 publication Critical patent/JP5723830B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

この発明は、コンピュータネットワーク上において、情報提供者が情報利用者毎に適する情報を選択して提示する情報推薦サービスに用いられる興味分析方法に関する。
情報提供者が情報利用者ごとに適する情報を選択し、あるいは情報利用者ごとに適する順番に並び替えて情報を表示する方法として、各コンテンツに内容をサマライズするメタ情報が付与されていることを前提として、ユーザ履歴において出現する概念等の頻度からユーザの興味を推定する方法は、内容ベースフィルタリング手法(Content Based Filtering: CBF)で、特にメモリベース手法として研究が進められている。
具体的に、内容ベースフィルタリング技術とは、例えば特定ブランド(ブランドを示す情報を概念タグとして保持)の商品を閲覧した場合に、同じブランドの商品(同じ概念タグを保持)を提示する。この場合のメモリベース手法は、過去に閲覧した履歴から特定ブランドを頻繁に閲覧していれば、特定ブランドの商品を提示することとなる。単純な方法では、閲覧履歴により多く出現した概念タグに関連する商品を提示することとなる。適合性フィードバックと統計的仮説検定を利用した方法としては、例えば、非特許文献1の「適合性フィードバックと統計的仮説検定を利用したニュース推薦手法の提案」がある。
「適合性フィードバックと統計的仮説検定を利用したニュース推薦手法の提案」,第二種研究会資料,WI2-2012-19,pp.53-58,2012
ところが、上記従来技術の手法において、大量かつ詳細な履歴が得られたとしても、ユーザの嗜好はその時々の気分によっても変化する場合があるため、過去の履歴のみからではユーザの興味を常に正確に推定することはできず、ユーザがその時点では望まない情報が提示される可能性がある。
この発明は上記事情に着目してなされたもので、その目的とするところは、ユーザがその時点で望む情報を精度良く提示するための興味分析方法を提供することにある。
本発明の第1の態様は、コンピュータによって複数の概念に対するユーザ興味スコアを体系化した概念体系を用いてユーザの興味を分析する方法であって、前記概念体系における絞り込み条件の選択候補となる複数の概念を一覧として閲覧した第1の条件リストと、前記第1の条件リストから前記ユーザにより選択された概念を含む第2の条件リストとを取得するステップと、前記第1の条件リストに含まれる概念の総数を第1の総数と、前記第1の条件リストにおいて前記ユーザにより選択された概念が出現する数を第1の出現数と、前記第2の条件リストに含まれる概念の総数を第2の総数と、前記第2の条件リストにおいて前記ユーザにより選択された概念が出現する数を第2の出現数としたとき、前記第1の総数、前記第1の出現数、及び前記第2の総数の条件下で、前記第2の条件リストに前記概念が出現する数が、前記第2の出現数以上となる第1の確率及び前記第2の出現数以下となる第2の確率を算出し、前記第1の確率及び前記第2の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出する算出ステップと、前記特徴スコアを用いて前記概念に対する前記ユーザ興味スコアを更新する更新ステップとを有するものである。
第1の態様によれば、ユーザが第1の条件リストの選択候補から絞り込み条件を選択した場合、絞り込み条件の指定について、偶然と比べて比較的“選ぶ”あるいは、“選ばない”程度を分析して特徴スコアを求め、この特徴スコアを用いてユーザの興味を推定するものであって、コンテンツ選択履歴による興味推定と併せて用いる事に拠り、ユーザが絞り込み条件を指定した場合であっても、ユーザの興味を合理的かつ的確に分析可能となる。
本発明の第2の態様は、コンピュータによって複数の概念に対するユーザ興味スコアを体系化した概念体系を用いてユーザの興味を分析する方法であって、前記概念体系における除外条件の選択候補となる複数の概念を一覧として閲覧した第1の条件リストと、前記第1の条件リストから前記ユーザにより選択された第2の条件リストとを取得するステップと、前記第1の条件リストに含まれる概念の総数を第1の総数と、前記第1の条件リストにおいて前記ユーザにより選択された概念が出現する数を第1の出現数と、前記第2の条件リストに含まれる概念の総数を第2の総数と、前記第2の条件リストにおいて前記ユーザにより選択された概念が出現する数を第2の出現数としたとき、前記第1の総数、前記第1の出現数、及び前記第2の総数の条件下で、前記第2の条件リストに前記概念が出現する数が、前記第2の出現数以上となる第1の確率及び前記第2の出現数以下となる第2の確率を算出し、前記第1の確率及び前記第2の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出する算出ステップと、前記特徴スコアを用いて前記概念に対する前記ユーザ興味スコアを更新する更新ステップとを有するものである。
第2の態様によれば、ユーザが第1の条件リストの選択候補から除外条件を選択した場合、偶然と比べて比較的“選ぶ”あるいは、“選ばない”という特徴を活用し、ユーザの興味を推定するものであって、コンテンツ選択履歴による興味推定と併せて用いる事に拠り、ユーザが絞り込み条件を指定した場合であっても、ユーザの興味を合理的かつ的確に分析可能となる。
本発明の第3の態様は、上記第1又は第2の態様において、前記算出ステップは、前記第2の条件リストに含まれる概念をもとに前記概念体系における選択経路を特定し、前記選択経路に発生する各選択に対応する各概念について前記特徴スコアを算出するものである。
第3の態様によれば、概念体系における上位概念からの絞り込み条件又は除外条件の選択経路を特定し、それらの各選択についても興味推定に利用することにより、興味推定精度を高めることが可能となる。
本発明の第4の態様は、上記第1乃至第3のいずれかの態様において、前記更新ステップは、前記特徴スコアを用いて当該概念の下位概念のユーザ興味スコアを更新するものである。
第4の態様によれば、特徴スコアを用いて当該概念の下位概念のユーザ興味スコアを更新することで、選択した概念だけでなく、これらの下位概念についても合理的かつ的確に分析可能となる。
本発明の第5の態様は、上記第1乃至第4のいずれかの態様において、1つ以上の概念が出現するコンテンツについて、当該コンテンツに出現する各概念の前記ユーザ興味スコアを用いて、当該コンテンツに対するユーザの評価スコアを算出する評価ステップをさらに有するものである。
第5の態様によれば、算出されたユーザ興味スコアを用いてコンテンツに対するユーザの評価スコアを算出することで、ユーザの興味に合ったコンテンツを推薦することが可能となる。
すなわちこの発明によれば、ユーザがその時点で望む情報を精度良く提示するための興味分析方法を提供することができる。
本発明に係る情報推薦システムの全体構成図。 情報選択履歴のみを用いた情報推薦の課題を示す図。 情報選択履歴と明示的な条件指定を用いた情報推薦の概念を示す図。 図1に示す情報推薦システムの各装置の機能構成を示すブロック図。 コンテンツ要求データの一例を示す図。 クライアント端末上でのコンテンツ閲覧操作の一例を示す図。 一覧閲覧コンテンツリストのデータ構成例を示す図。 詳細閲覧コンテンツのデータ構成例を示す図。 条件一覧要求データの一例を示す図。 条件選択履歴の収集方法を示す図。 提示コンテンツリストのデータ構成例を示す図。 閲覧履歴からユーザの興味を推定する場合の処理概要を示す図。 概念体系を用いた条件設定方法を示す図。 条件設定時の対象コンテンツの特定方法を示す図。 コンテンツデータベースの一例を示す図。 概念体系/ユーザ興味スコアデータベースの一例を示す図。 履歴情報受信部の処理フローを示す図。 特徴スコア算出部の処理フローを示す図。 分析パラメータリストのデータ構成例を示す図。 特徴スコア算出部の動作を説明するための模式図。 特徴スコア算出処理の詳細を示す図。 絞り込み条件選択時の希少性を用いた興味推定方法を示す図。 絞り込み条件選択経路の特定方法を示す図。 絞り込み条件指定時に行われた選択一覧を示す図。 絞り込み条件選択時の特徴スコアの計算結果を示す図。 除外条件選択時の希少性を用いた興味推定方法を示す図。 除外条件選択経路の特定方法を示す図。 除外条件指定時に行われた選択一覧を示す図。 除外条件選択時の特徴スコアの計算結果を示す図。 除外条件選択時の特徴スコアの算出方法を示す図。 概念体系更新処理部の処理フローを示す図。 概念体系更新処理の詳細を示す図。 概念体系を用いた興味スコアの伝播処理を示す図。 絞り込み条件に関する全ての選択を確率結合した特徴スコアを示す図。 上位概念からの選択経路を特定しない場合の特徴スコアを示す図。 除外条件に関する全ての選択を確率結合した特徴スコアを示す図。 上位概念からの選択経路を特定しない場合の特徴スコアを示す図。 絞り込み条件に関する全ての選択を確率結合した特徴スコアを示す図。 上位概念からの選択経路を特定しない場合の特徴スコアを示す図。 コンテンツ評価処理部の処理フローを示す図。 コンテンツスコアリストの一例を示す図。 コンテンツ評価処理の詳細を示す図。 条件設定時の興味学習に関する課題を示す図。
以下、図面を参照してこの発明に係る実施の形態について説明する。
図1は、本発明に係る情報推薦システムの全体構成図である。このシステムは、クライアント端末200と、コンテンツサーバ300と、興味分析装置100とを備える。クライアント端末200とコンテンツサーバ300との間、及びコンテンツサーバ300と興味分析装置100との間はそれぞれ通信ネットワークで接続される。ユーザは、クライアント端末200上での閲覧操作及び条件指定により、所望のコンテンツをコンテンツサーバ300から取得し、取得したコンテンツをクライアント端末200の画面に提示して閲覧することができる。
クライアント端末200は、ユーザ操作によるコンテンツ閲覧履歴を収集し、複数のコンテンツを一覧として閲覧した一覧閲覧コンテンツリスト(第1のコンテンツリスト)と、コンテンツの一覧からコンテンツの本体を閲覧した詳細閲覧コンテンツリスト(第2のコンテンツリスト)とをコンテンツサーバ300に送信する。コンテンツサーバ300は、この一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを、通信ネットワークを介して興味分析装置100に転送する。
さらに、クライアント端末200は、ユーザ操作による絞り込み条件あるいは除外条件指定履歴を収集し、ユーザが条件指定時に選択肢として閲覧した一覧閲覧条件リスト(第1の条件リスト)と、一覧閲覧条件リストから条件を選択した条件選択リスト(第2の条件リスト)とをコンテンツサーバ300に送信する。コンテンツサーバ300は、この一覧閲覧条件リスト及び条件選択リストを、通信ネットワークを介して興味分析装置100に転送する。
興味分析装置100は、この一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをもとに、コンテンツに出現する各概念に対する特徴スコアの算出及びユーザ興味スコアの更新を行い、ユーザの興味を推定する。また、条件指定があった場合は、興味分析装置100は、一覧閲覧条件リスト及び条件選択リストをもとに、条件として選択した各概念に対する特徴スコアの算出及びユーザ興味スコアの更新を行い、ユーザの興味を推定する。
興味分析装置100は、上記ユーザ興味スコアに基づいて、コンテンツサーバ300から受け取った「提示コンテンツリスト」から、ユーザの興味に合わせてソートを行ったコンテンツのリスト(ソート済み提示コンテンツリスト)を生成し、コンテンツサーバ300に送信する。
例えば、図2に示す事例では、日頃ラーメン店を選択する頻度が高いユーザが、その日に限ってはお酒を飲みたいとの希望を持つ場合、情報提供側は日頃の情報選択履歴に基づきユーザの興味を“ラーメン好き”と推定することになるため、ラーメン店を推薦する。この推薦結果はユーザの“お酒を飲みたい”という興味に合致していない。つまり、ユーザが希望する情報(この例の場合は飲み屋)を提示できない可能性がある。
そこで、本発明では、ユーザの情報選択履歴だけでなく、ユーザが示した明示的な条件指定も併せて考慮し、ユーザがその時点で望む情報を精度良く提示できるようにする。また、ユーザが明示的に行った条件指定の履歴もユーザの興味を推定するために有用な履歴である。従って、ユーザの閲覧履歴を用いた興味推定とユーザが行った条件指定履歴をと用いた興味推定を組み合わせて用いる事により、推薦精度を向上させる。
例えば、図3に示すとおり、情報提供側は特定のユーザに関し「“全ジャンル”の中では“ラーメン”を選択する割合が高い」、「“お酒”の中では“ビール”を選択する割合が高い」、「“ビール”の中では、“エール”を選択する割合が高い」などの履歴に基づきユーザの興味を「“全ジャンル”の中では、“ラーメン好き”」、「“お酒”の中では“ビール”が好き」、「“ビール”の中では“エール”が好き」と推定する。この結果、ユーザによる“お酒を飲みたい”との明示的な条件指定を考慮し、推薦結果を“お酒”のみに限定した上、“お酒”の中でも特に“ビール”を、“ビール”の中でも、特に“エール”を推薦する事ができるため、ユーザが希望する情報(この例の場合は“ビール”、特に“エール”を提供する飲み屋)を提示することができる。
図4は、図1に示す情報推薦システムの各装置の機能構成を示すブロック図である。なお、図4における各部は、例えば、各装置のCPU(Central Processing Unit)とメモリ上で実行される制御プログラムにより実現することができる。以下、各装置の詳細について説明を行う。
[クライアント端末]
図4において、クライアント端末200は、履歴収集部210、履歴情報送信部220、コンテンツ提示部230、及びコンテンツ要求送信部240、一覧閲覧条件リスト要求送信部250、一覧閲覧条件リスト提示部260、閲覧条件選択履歴収集部270及び条件選択履歴送信部280を備える。
コンテンツ要求送信部240は、ユーザの指示(入力)によりコンテンツサーバ300に対して、コンテンツの提示要求を行う。具体的には図5のようなコンテンツ要求データをコンテンツサーバ300に送信する。例えば、コンテンツ要求データは、ユーザID(もしくは、クライアント端末ID)及び要求時刻を有する。なお、要求時刻は、コンテンツサーバ300において追加するようにしてもよい。ユーザID(もしくは、クライアント端末ID)は、端末(もしくはユーザ)毎に一意に付与される数字あるいは文字列であって、後述する概念体系/ユーザ興味スコアデータベース140のユーザ興味スコアテーブルのユーザIDと一致するIDである。
コンテンツ提示部230は、コンテンツサーバ300から受信したソート済み提示コンテンツリストをもとに、クライアント端末200の表示画面サイズが許容する範囲でソート順の上位から一覧として表示を行う。図6は、クライアント端末200上でのユーザによるコンテンツ閲覧操作の一例を示したものである。
図6の例では、10個のコンテンツ(コンテンツ1〜10)が一覧表示されている。ユーザのフリック、スクロールバーの操作等で一覧によりソート順下位のコンテンツを表示することができる。このように実際にクライアント端末200に表示されたコンテンツのリストを一覧閲覧コンテンツリストとする。つまり、ソート済み提示コンテンツリスト内のすべてのコンテンツがクライアント端末200で表示されるとは限らないため、一覧閲覧コンテンツリストに含まれるとは限らない。ユーザがこの一覧から各コンテンツのタイトルをクリック操作等で選択すると、選択されたタイトルのコンテンツ(図6のコンテンツ3,5,6)の本体(詳細)を閲覧することができる。この詳細を閲覧したコンテンツを、詳細閲覧コンテンツリストに含む。
履歴収集部210は、上述したように、ユーザの操作履歴を収集して一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを作成する。履歴情報送信部220は、履歴収集部210により作成された一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをユーザID(もしくは、クライアント端末ID)と共にコンテンツサーバ300に送信する。
図7に、上記図6の場合の一覧閲覧コンテンツリストのデータ構成例を示す。一覧閲覧コンテンツリストは、クラスタID、コンテンツID、及び閲覧時刻を有する。クラスタとは、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストに一意に付与される識別子(図7では“1”)である。別の時刻(時間帯)に表示した一覧閲覧コンテンツをユーザが閲覧した場合は、別のクラスタIDが付与される。なお、時刻以外の条件でクラスタIDを新たに付与する条件としては、一覧閲覧コンテンツリスト表示中に一定時間操作が無かった場合や、閲覧するユーザ(ユーザID)を切り替えた場合、一覧閲覧コンテンツリストに対して、絞り込み条件、あるいは除外条件の指定により、コンテンツジャンル等を絞り込んだ場合、その他閲覧アプリケーションにおいて閲覧モードを切り替えた場合がある。コンテンツIDは、一覧閲覧コンテンツの各コンテンツに一意に付与された識別子であり、後述するコンテンツデータベース160が保持する値と一致するものとする。
図8は、上記図6の場合の詳細閲覧コンテンツリストのデータ構成例を示したものである。詳細閲覧コンテンツリストは、上記一覧閲覧コンテンツリストと同様に、クラスタID、コンテンツID、及び閲覧時刻を有する。クラスタIDは、一覧閲覧コンテンツリストと同一の値とする(図8では“1”)。コンテンツID及び閲覧時刻は、詳細閲覧コンテンツリストでは、ユーザが一覧閲覧コンテンツから選択して詳細を閲覧したコンテンツ(図8ではコンテンツ3,5,6)の識別子及び当該コンテンツを閲覧した時刻となる。
一覧閲覧条件リスト要求送信部250は、ユーザの指示(入力)により、コンテンツサーバ300に対して、一覧閲覧条件リストの要求を行う。具体的には図9のような条件一覧要求データをコンテンツサーバ300に送信する。例えば、条件一覧要求データは、種別、パラメータ名、及びパラメータ値を有する。図9(a)に示すように、キーワード検索結果から条件を指定する場合の条件一覧要求データは、種別(=検索)、パラメータ名(=キーワード)、及びパラメータ値(=スポーツ)を有する。図9(b)に示すように、一覧から条件を指定する場合の条件一覧要求データは、種別(=一覧)、パラメータ名(=表示ルール)、及びパラメータ値(=昇順)を有する。また、図9(c)に示すように、概念体系から条件を指定する場合の条件一覧要求データは、種別(=概念)、パラメータ名(=親概念)、及びパラメータ値(=スポーツ)を有する。一覧閲覧リスト要求データは、一覧閲覧条件リスト要求転送部370により、一覧閲覧条件リスト作成部185に送られる。
一覧閲覧条件リスト提示部260は、コンテンツサーバ300を介して興味分析装置100から送られてくる提示用一覧閲覧条件リストを、クライアント端末200の表示画面サイズが許容する範囲で一覧表示する。図10は、クライアント端末200上でのユーザによる条件閲覧操作の一例を示したものである。図10(a)は、キーワード検索結果から条件を指定する場合、図10(b)は、一覧から条件を指定する場合を示す。ユーザは、提示された一覧閲覧条件リストの中から絞り込み条件、あるいは除外条件を選択する。なお、絞り込み条件を選択するか、あるいは除外条件を選択するかの指定は、例えば、選択する際のボタンを変更することで区別する。親概念から条件を指定する場合は、後述するように当該親概念の直接の下位概念を抽出した一覧閲覧条件リストから条件を指定する。
閲覧条件選択履歴収集部270は、提示された一覧閲覧条件リスト(第1の条件リスト)と、条件の一覧から選択した1つ以上の条件を含む条件選択リスト(第2の条件リスト)を収集する。興味分析装置100から送られてくる提示用一覧閲覧条件リストに選択肢が多い場合は、クライアント端末200の画面上に全ての選択肢を画面内に一覧閲覧条件リストとして表示できない場合もある。そのような場合は、画面上に表示されたもののみを一覧閲覧条件リストとみなすこともできる。
条件が階層構造である場合は、条件の設定に関し、選択経路に応じて複数の選択が発生する場合もある。その場合は、発生した選択毎に条件選択リストを送信する。あるいは、図10に示すように、条件が階層構造を持たず、キーワード検索の結果やアルファベット順などにより並んだ一覧閲覧条件リストから、条件選択リストを選択する場合もある。そのような場合は単一の条件設定リストを送信する。
条件選択履歴送信部280は、閲覧条件選択履歴収集部270で収集された条件選択履歴をコンテンツサーバ300を介して興味分析装置100に送信する。
[コンテンツサーバ]
上記図4において、コンテンツサーバ300は、コンテンツ送信処理部310、ソート済み提示コンテンツリスト受信部320、提示コンテンツリスト送信部330、提示コンテンツリスト入力部340、履歴情報転送部350、コンテンツ要求転送部360、一覧閲覧条件リスト要求転送部370、一覧閲覧条件リスト転送部380及び条件選択履歴転送部390を備える。
履歴情報転送部350は、クライアント端末200から受信した一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを通信ネットワークを介して興味分析装置100に転送する。
提示コンテンツリスト入力部340には、サービス運用者により、ユーザの利用するクライアント端末200に提示するコンテンツを一覧にした提示コンテンツリストが入力される。提示コンテンツリスト送信部330は、上記入力された提示コンテンツリストを興味分析装置100へ通信ネットワークを介して送信する。
図11に、提示コンテンツリストのデータ構成例を示す。提示コンテンツリストは、コンテンツID、概念ID/関連度リスト、コンテンツ本体、及びコンテンツ登録時刻を有する。コンテンツIDは、各コンテンツに対してコンテンツサーバ300にて付与される一意のIDである。概念ID/関連度リストは、コンテンツに出現する概念の概念ID及び当該概念とコンテンツとの関連性の程度を示す値のセットが格納される。概念ID/関連度リストは、コンテンツ毎に予め設定されており、具体例としては、コンテンツ1(スポーツ記事)には、{“野球”の概念ID=1,関連度=0.5}、{“サッカー”の概念ID=2,関連度=0.8}、{“ゴルフ”の概念ID=3、関連度=0.6}…のように、概念IDと関連度のセットが格納される。
なお、概念IDは、概念体系/ユーザ興味スコアデータベース140に格納される値と一致する。関連度は、例えば、0から1までの値とし、大きいほど関連性が強いものとする。関連度は、サービス運用者がコンテンツ登録時に設定する値、若しくは別システムにより算出される値を利用する。
ソート済み提示コンテンツリスト受信部320は、興味分析装置100から提示コンテンツリストの一部又は全部をソートしたソート済み提示コンテンツリストとユーザID(もしくは、クライアント端末ID)を受信する。コンテンツ送信処理部310は、ソート済み提示コンテンツリストをユーザID(もしくは、クライアント端末ID)に該当するクライアント端末200に送信する。
コンテンツ要求転送部360は、クライアント端末200のコンテンツ要求送信部240から送信されるコンテンツ要求データ(図5)を興味分析装置100に転送する。
また、一覧閲覧条件リスト要求転送部370は、クライアント端末200の一覧閲覧条件リスト要求送信部250から送信される条件一覧要求データ(図9)を興味分析装置100に転送する。
一覧閲覧条件リスト転送部380は、後述する興味分析装置100の一覧閲覧条件リスト作成部185で作成される提示用一覧閲覧条件リストをクライアント端末200に転送する。
条件選択履歴転送部390は、クライアント端末200の条件選択履歴送信部280から送られてくる条件選択履歴を興味分析装置100に転送する。
[興味分析装置]
興味分析装置100は、履歴情報受信部110、特徴スコア算出部120、概念体系更新処理部130、概念体系/ユーザ興味スコアデータベース140、提示コンテンツリスト受信部150、コンテンツデータベース160、コンテンツ評価処理部170、ソート済みコンテンツスコアリスト送信部180、一覧閲覧条件リスト作成部185及び条件選択履歴受信部190を備える。
図12は、コンテンツ閲覧履歴からユーザの興味を推定する場合の処理概要を示したものである。履歴情報受信部110は、クライアント端末200からの一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをコンテンツサーバ300を介して受信する。一覧閲覧コンテンツリストとは、例えば、ユーザがコンテンツのタイトルのみを一覧で閲覧したコンテンツのリストである。詳細閲覧コンテンツリストとは、ユーザがコンテンツ本体の内容(詳細)を閲覧したコンテンツのリストである。例えば、図12において、一覧閲覧コンテンツリストには、コンテンツ1〜8が含まれ、詳細閲覧コンテンツリストには、コンテンツ1,3,4が含まれる。また、図12において、斜線パターンで示すコンテンツは、概念Bがコンテンツ1,6,7,8に出現することを示す。
特徴スコア算出部120は、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを利用して概念選択の統計モデルにより各概念の特徴スコア(後述するZ値)を算出する。
概念体系更新処理部130は、上記特徴スコアを用いて概念体系における概念間の関係情報(上位概念及び下位概念)に基づいて各概念に対するユーザ興味スコアを更新する。概念体系のグラフに含まれるノードは概念を表し、リンクは概念間の関係を表す。ユーザ興味スコアは、概念体系における各概念に対応するノードの値として保持する。概念体系において、上位に位置するノードほど抽象的な概念を表し、下位に位置するノードほど具体的な概念を表す。概念体系及び概念ID(ノード毎に付与される識別子)は、サービス運用者等が事前に設計し定義するものとする。
コンテンツ評価処理部170は、評価コンテンツに出現する各概念のユーザ興味スコアを利用して確率結合によってコンテンツに対するユーザの評価スコアを算出する。図12の例では、コンテンツ1に出現する概念E,F,Dのユーザ興味スコアを用いて評価コンテンツ1の評価スコアを求めている。
さらに、条件指定があった場合は、例えば、図13において、絞り込み条件として“お酒”を指定したり、“ワイン”を指定する事に拠り、ユーザの明示的な興味である絞り込み条件を指定する事ができ、例えば、図14において“お酒”を絞り込み条件に指定した場合、当該概念を絞り込み条件とみなし、絞り込み条件から、少なくとも1つ以上のリンクを持つコンテンツB、C、D、Eを評価対象コンテンツとする。このとき、絞り込み条件以外の特徴スコアも評価に用いる。例えば、図14において、”ラーメン”の特徴スコアをコンテンツBの評価に用いる。
また、例えば、図13において、除外条件候補一覧(“ワイン”、“ビール”、“ウィスキー”)の中から、除外条件として“ウィスキー”を選択する事により、除外条件を指定する事ができ、図14において“ウィスキー”を除外条件に指定した場合、当該概念を除外条件とみなし、絞り込み条件からのリンクは評価に用いない。例えば、図14において、除外条件であるウィスキーからコンテンツEのリンクは評価に用いず、コンテンツEは他に絞り込み概念からのリンクを持たないため、評価対象から除外する。あるいは、除外条件からのリンクを持つコンテンツを評価対象から除外する場合もある。この場合、コンテンツDも評価対象から除外する。
以下、興味分析装置100の各部の詳細について説明する。
(コンテンツデータベース160)
図15にコンテンツデータベース160のデータ構造の一例を示す。コンテンツデータベース160は、コンテンツテーブルと、ユーザ履歴テーブルとを有する。コンテンツテーブルは、コンテンツID、概念ID/関連度リスト、コンテンツ本体、及びコンテンツ登録時刻を有し、提示コンテンツリスト受信部150で受信した各値が格納される。
ユーザ履歴テーブルは、コンテンツID、ユーザID(クライアント端末ID)、詳細閲覧総数、詳細閲覧時刻、一覧閲覧総数、一覧閲覧時刻、及び一覧非表示フラグを格納する。詳細閲覧時刻は、詳細閲覧総数が0の場合はnull、1以上であれば各閲覧の時系列による閲覧時刻のリストを格納する。一覧閲覧時刻は、一覧閲覧総数が0の場合はnull、1以上であれば各閲覧の時系列による閲覧時刻のリストを格納する。一覧非表示フラグは、まだユーザにクライアント端末の画面上で一覧としても表示/視認していない場合はfalse、一度でも閲覧した場合はtrueを格納する。ユーザ履歴テーブルおいては、ユーザID毎に全コンテンツIDの値を保持する。詳細閲覧総数及び一覧閲覧総数は、上記クラスタIDで示される一覧閲覧コンテンツリストが多数受信された場合には過去の履歴の累計を格納する。
例えば、このユーザ履歴テーブルのデータを利用することで、ユーザの閲覧回数に応じて、コンテンツについて、今後の評価(コンテンツ評価処理部170での処理時)で評価スコアを下げるようにする。評価スコアの低減方法としては、あるコンテンツに対する閲覧回数をkとしたとき、当該コンテンツの評価スコアをk+1で割る、或いは評価スコアに重み(例えば0.9)のk乗を乗算するなどがある。この処理により、同じコンテンツの反復提示を興味との一致度を加味して低減することができるためユーザの推薦に対する満足度を向上することができる。
(概念体系/ユーザ興味スコア140)
図16に概念体系/ユーザ興味スコアデータベース140のデータ構造の一例を示す。概念体系/ユーザ興味スコア140は、ルート概念ノードIDと、概念体系テーブルと、ユーザ興味スコアテーブルとを有する。ルート概念ノードIDとは、概念体系構造において最上位にある概念ノードIDである。システム内に1つだけ存在する。概念体系テーブルは、自概念ID、親概念IDリスト、及び子概念IDリストを格納する。概念体系内の全ての自概念IDは、親概念ID及び子概念ID(ただし、自概念が最下位の場合には子概念IDは無し)と紐付けて保存されており、これにより概念構造が定義される。ユーザ興味スコアテーブルは、概念ID、ユーザID(もしくは、クライアント端末ID)、TotalZ(ユーザ興味スコア)、X、及びYの値を格納する。TotalZ、X、及びYの定義及び算出方法は後述する。
(提示コンテンツリスト受信部150)
提示コンテンツリスト受信部150は、コンテンツサーバ300から上記図11のような提示コンテンツリストを受信し、コンテンツデータベース160に保存する。
(履歴情報受信部110)
図17に、履歴情報受信部110の処理フローを示す。ステップS11において、履歴情報受信部110は、クライアント端末200から送信されるユーザID(もしくは、クライアント端末ID)、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストをコンテンツサーバ300を介して受信し、特徴スコア算出部120へ出力する。
(条件選択履歴受信部190)
条件選択履歴受信部190は、クライアント端末200の条件選択履歴送信部280から送信される一覧閲覧条件リスト及び条件選択リストをコンテンツサーバ300を介して受信し、特徴スコア算出部120へ出力する。また、条件選択履歴受信部190は、条件選択リストを一覧閲覧条件リスト作成部185及びコンテンツ評価処理部170へ出力する。
(一覧閲覧条件リスト作成部185)
一覧閲覧条件リスト作成部185は、コンテンツサーバ300の一覧閲覧条件リスト要求転送部370から送られてくる一覧閲覧リスト要求データに基づいて提示用一覧閲覧条件リストを作成する。例えば、図9(a)のような条件検索キーワードが送られてきた場合は、当該キーワードに合致する検索結果を示す提示用一覧閲覧条件リストを作成する。図9(b)のような条件一覧要求が送られてきた場合は、条件一覧を例えば名前順に並び替えた提示用一覧閲覧条件リストを作成する。図9(c)のような親概念が送られてきた場合は、概念体系/ユーザ興味スコアデータベース140を参照して、当該親概念の直接の下位概念の一覧を抽出した提示用一覧閲覧条件リストを作成する。また、一覧閲覧条件リスト作成部185は、条件選択履歴受信部190から条件選択リストが入力されると、概念体系/ユーザ興味スコアデータベース140を参照して、条件選択リストで指定される条件に該当する下位概念を抽出した提示用一覧閲覧条件リストを作成する。作成された提示用一覧閲覧条件リストは、通信ネットワークを介してコンテンツサーバ300に送信される。
(特徴スコア算出部120)
特徴スコア算出部120は、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストを利用して、概念選択の統計モデルにより各概念の特徴スコア(後述するZ値)を算出する。また、特徴スコア算出部120は、条件選択履歴受信部190から入力される一覧閲覧条件リスト及び条件選択リストを利用して、条件として選択した各概念に対する特徴スコア(後述するZ´値)を算出する。
(コンテンツ閲覧履歴からの特徴スコア算出処理)
図18に、特徴スコア算出部120の処理フローを示す。特徴スコア算出部120には、履歴情報受信部110からユーザID(もしくは、クライアント端末ID)、一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリストが入力される。
ステップS12において、特徴スコア算出部120は、詳細閲覧コンテンツリスト内の各コンテンツに出現する概念IDをコンテンツデータベース160から抽出する。具体的には、図8詳細閲覧コンテンツリストにおいて、各コンテンツIDに紐付けされている「概念ID」を図15のコンテンツデータベース160のコンテンツテーブルから検索する。特徴スコア算出部120は、クラスタデータ{クラスタID,一覧閲覧コンテンツリスト,詳細閲覧コンテンツリスト}と、コンテンツID/概念ID関連づけリスト{{コンテンツID,{関連づいている概念ID,…}},…}と、出現概念リスト{概念ID}とを生成する。「コンテンツID/概念ID関連付けリスト」とは、コンテンツIDをもとに検索された概念IDのリストである。「出現概念リスト」とは、一覧閲覧コンテンツリスト、及び詳細閲覧コンテンツリストに含まれる各コンテンツに出現する概念の概念IDを全て列挙したものである。
ステップS13において、特徴スコア算出部120は、「出現概念リスト」の各概念IDについて、図16の概念体系/ユーザ興味スコアデータベース140から上位概念を抽出し、上位概念の概念IDを「出現概念リスト」及び「コンテンツID/概念ID関連づけリスト」に追加する。
具体的には、特徴スコア算出部120は、「出現概念リスト」の概念IDが、図16の概念体系テーブルから「自概念ID」と一致するものを検索し、その「親概念ID」を抽出する。さらに、上記抽出された「親概念ID」が図16の概念体系テーブルの「自概念ID」と一致するものをさがし、その「親概念ID」も上位概念として抽出し、さらにこの親概念IDリストの概念IDについて概念体系テーブルを参照して親概念リストを抽出する処理を繰り返す。そして、特徴スコア算出部120は、上位概念の概念IDを抽出の元になった出現概念の概念IDを有するコンテンツIDに関連づける。すなわち、上記抽出された「上位概念」を「元になった概念IDを持っていたコンテンツID」に対して上位概念が付与されていたと見なして、「出現概念リスト」「コンテンツID/概念ID関連づけリスト」に追加する。なお、概念体系階層におけるルート概念の抽出は除外する。
ステップS14において、特徴スコア算出部120は、「出現概念リスト」の各概念について出現数を算出し、特徴スコアの算出に必要な分析パラメータを抽出し、分析パラメータリストを生成する。
図19に、分析パラメータリストのデータ構成例を示す。分析パラメータリストは、クラスタID毎に、一覧閲覧コンテンツリストのコンテンツ総数S(第1の総数)、詳細閲覧コンテンツリストのコンテンツ総数a(第2の総数)、クラスタIDに紐づいた出現概念リスト内の概念ID毎に算出するNとnがある。N(第1の出現数)は、一覧閲覧コンテンツリストにおいて当該概念IDが付与されているコンテンツ数とする。n(第2の出現数)は詳細閲覧コンテンツリストにおける当該概念IDが付与されているコンテンツ数とする。なお、ステップS13にて追加した上位概念も含めて出現概念リスト内の概念IDすべてについて、Nとnを算出する。
図20(a)に分析パラメータ抽出処理の模式図を示す。例えば、50個(=S)のコンテンツが一覧表示されている中から、ユーザが10個(=a)のコンテンツの詳細を閲覧した場合を示す。ここで、一覧表示されている50個のコンテンツのうち「野球」という概念が含まれている記事が15個(=N)あり、ユーザが閲覧した10個のコンテンツのうち、「野球」という概念が含まれているコンテンツが5個(=n)あったことを示す。
ステップS15において、特徴スコア算出部120は、上記分析パラメータS,a,N,nを利用して概念ID毎に特徴スコアZを算出する。図21に特徴スコア算出処理の詳細を示す。図21において、iは概念の識別子、jは、クラスタIDを示す。H1(第1の確率)は、一覧閲覧コンテンツリストに含まれる一覧閲覧コンテンツの総数S、一覧閲覧コンテンツのうち概念iが出現するコンテンツ数Nのとき、詳細閲覧コンテンツをa個ランダム選択して閲覧した場合に、概念iが出現する詳細閲覧コンテンツの数がn以上となる累積確率である。H2(第2の確率)は、一覧閲覧コンテンツリストに含まれる一覧閲覧コンテンツの総数S、一覧閲覧コンテンツのうち概念iが出現するコンテンツ数Nのとき、詳細閲覧コンテンツをa個ランダム選択して閲覧した場合に、概念iが出現する詳細閲覧コンテンツの数がn以下となる累積確率である。なお、本実施形態では、累積確率H1及びH2は、超幾何分布により求めるが、この手法に限定するものではない。他の分布の例としては、二項分布、正規分布が存在する。
図20(b)に示すように、例えば、上記の分析パラメータS、N、a、nを用いて、ユーザが閲覧した10個のコンテンツのうち、「野球」という概念が含まれるコンテンツが5以上である確率が、「0.12」であることを示す。ここで、「0.12」は、累積確率H1の値に相当する。
なお、H2の値を使う例として、上記の分析パラメータでnが0である場合を考える。この場合は、出現数が0以下の場合の確率を算出する。具体的には、図20(b)において横軸が0の項目の値となるため「0.02」となる。
そして、特徴スコア算出部120は、図21に示すように、上記算出した累積確率H1及びH2を用いて、標準正規分布の累積分布関数の逆関数により特徴スコアZを算出する。図20(c)に示すように、上記H1を累積確率とする標準正規分布の累積分布関数の逆関数により特徴スコアZを求める。なお、累積確率としてH2を利用する場合には、標準正規分布の累積分布関数の逆関数の返値の符号を負にして特徴スコアZを求める。この特徴スコアZを用いて、後述する概念体系更新処理部130は、「野球」という概念に対するユーザ興味スコア(TotalZ)を求める。
特徴スコア算出部120は、更新対象概念リストを生成し、概念体系更新処理部130に出力する。「更新対象概念リスト」とは、概念ID、前記で算出した特徴スコアZ、及び重みwのセットである。なお、この更新対象概念リストに出現する概念IDが、次の概念体系更新処理で更新対象のノード(概念)となる。上位概念を追加した出現概念リスト内の概念IDすべてについて、特徴スコアZと重みwを算出する。重みwは、各クラスタIDにおいて概念毎に設定される値である。
なお、重みwは、初期値w=1とし、ユーザの特徴的な操作等が有った場合に、以下のように値を変化させることができる。例えば、クライアント端末200において、ユーザに提示されたコンテンツについて、ユーザは、お気に入りコンテンツとして登録や、他ユーザへのお勧め、又はコンテンツへの評価入力ができる。クライアント端末200が、このような閲覧操作以外の操作履歴を興味分析装置100に送信できる場合には以下の処理を行う。
特徴スコア算出部120は、例えば、コンテンツがお気に入りに登録されたとき、そのコンテンツが含む全ての概念IDについて重みwをw=1.5のように増加させる。その他にも、コンテンツ閲覧時刻、閲覧時の天気、気温、湿度、季節、曜日、休日、余暇かどうか、閲覧時のユーザ位置情報、スケジューラ、日記等から収集したイベント情報に応じて重みwの値を変えることもできる。
(条件として選択した各概念に対する特徴スコア算出処理)
また、特徴スコア算出部120は、条件選択履歴受信部190から入力される一覧閲覧条件リスト及び条件選択リストを利用して、条件として選択した各概念に対する特徴スコア(Z´値)を算出する。
(絞り込み条件が指定された場合)
例えば、図22の概念体系において、ビール、あるいは赤ワインを絞り込み条件として指定した場合、“ワイン”配下の選択肢(“赤ワイン”、“白ワイン”、“ロゼ”)の中から、“赤ワイン”を絞り込み条件として選択する事が、偶然と比較しどの程度珍しいかの程度、あるいは、“洋酒”配下の選択肢(“ワイン”、“ビール”、“ウィスキー”)の中から、“ビール”を絞り込み条件として選択する事が、偶然と比較しどの程度珍しいかの程度を用いてユーザの興味スコアを推定することができる。
図23に示すように、絞り込み選択結果が“赤ワイン”の場合、選択経路は“お酒”→“洋酒”→“ワイン”→“赤ワイン”と特定される。絞り込み選択結果が“ビール”の場合、選択経路は“お酒”→“洋酒”→“ビール”と特定される。特徴スコア算出部120は、図23のように特定された選択経路に従い、発生した選択を全て抽出する。図24に示すように7つの選択履歴が得られ、“お酒”→“洋酒”→“ワイン”→“赤ワイン”から選択1〜4、“お酒”→“洋酒”→“ビール”から選択5〜7のが抽出される。図24において、選択1は、選択候補“お酒”,“麺類”から選択結果として“お酒”が選択されたことを示している。
特徴スコア算出部120は、図25に示すように、選択1〜7のそれぞれについて、分析パラメータN´,S´,n´,a´を抽出し、絞り込み条件選択時の概念出現の希少性を用いた特徴スコアZ´を算出する。例えば、図24の選択1では、一覧閲覧条件リストとして選択候補“お酒”,“麺類”(S´=2個)が提示されている中から、ユーザが“お酒”(a´=1個)を条件選択リストとして選択した場合を示す。ここで、一覧閲覧条件リストには“お酒”(N´=1個)が含まれており、条件選択リストに“お酒”(n´=1個)が含まれていることを示す。特徴スコアZ´は、上記図19に示す算出式において、N,S,n,aをN´,S´,n´,a´に置き換えることで算出することができる。
(除外条件が指定された場合)
例えば、図26の概念体系において、ウィスキーを除外条件として指定した場合、“洋酒”配下の選択肢(“ワイン”、“ビール”、“ウィスキー”)の中から、“ウィスキー”を除外条件として選択する事が、偶然と比較しどの程度珍しいかの程度を用いてユーザの興味スコアを推定することができる。
図27に示すように、除外選択結果が“ウィスキー”の場合、除外条件の選択経路は、“お酒”→“洋酒”→“ウィスキー”と特定される。特徴スコア算出部120は、図28のように特定された選択経路に従い、上位概念から下位概念を選択するにあたり、発生した選択を全て抽出する。図28に示すように3つの除外条件選択履歴(選択8〜10)が得られる。
特徴スコア算出部120は、図29に示すように選択8〜10のそれぞれについて、分析パラメータN´,S´,n´,a´を抽出し、除外条件選択時の概念出現の希少性を用いた特徴スコアZ´を算出する。但し、与えられた履歴が除外条件選択履歴である場合は、図30に示す式を用いて特徴スコアZ´を計算する。つまり、コンテンツ選択履歴を用いて算出された特徴スコアと条件選択履歴を用いて算出された特徴スコアは、同じ興味スコアに統合することができる。
(概念体系更新処理部130)
図31に、概念体系更新処理部130の処理フローを示す。概念体系更新処理部130には、特徴スコア算出部120から、ユーザID(もしくは、クライアント端末ID)及び更新対象概念リスト{クラスタID,{概念ID,特徴スコア=Z,重み=w},…}が入力される。
ステップS16において、概念体系更新処理部130は、「更新対象概念リスト」の各概念IDのノード値を更新する。図32に概念体系更新処理部130の処理の詳細を示す。概念体系更新処理部130は、コンテンツに出現した概念(出現概念)、及びこの出現概念の上位概念の概念IDについて、図32に示す各概念iに対するユーザ興味スコア更新式を用いて、ユーザ興味スコアTotalZin,及びXi(n−1),Yi(n−1)の値を求める。そして、図16の概念体系/ユーザ興味スコアデータベース140のユーザ興味スコアテーブルにおいて、概念ID及び図18のステップS12で入力されたユーザID(クライアント端末ID)に対応するカラムに格納されている各値(TotalZ,X,Y)を更新する。
ここで、Xi(n−1)は、各概念ID(ここでは識別子iで表現)に対する、過去の(前回までの)前記更新対象概念リストの重みwの二乗の合計である。Yi(n−1)は、同様に各概念ID(ここでは識別子iで表現)に対する、過去の前記更新対象概念リストの重みwと特徴スコアZの乗算の合計である。
この、X,Yはユーザ興味スコア(TotalZ)計算過程における中間結果を保持することとなり、省メモリ/ストレージを優先させる場合、最低限では各ノードの変数としてTotalZ,X,Yの3つの実数値を保持することで実現可能である。省メモリ/ストレージを優先させない場合は、算出した各概念、各クラスタの特徴スコアZをすべて保存することとなる。この場合は、X,Yの保存は不要となる。
図32において、nは、概念体系更新処理が何度目かを示す識別子である。ユーザ興味スコアTotalZを求める一連の処理は、クラスタID単位で行なわれ、この一連の処理が行なわれる単位を1度と数えるとき、nはこの一連の処理が何度目に行なわれたものであるかを示す識別子である。iは、概念IDの識別子である。Zinは、概念iの各更新処理に利用するZ値である。なお、上記Zijは一覧閲覧コンテンツリスト及び詳細閲覧コンテンツリスト毎のZ値であり、Zij∈Zinの関係である。重みwinは、概念iの各更新処理に利用する重みである。上記重みwと同じであり、上記特徴スコア算出部120で設定したものと同様である。
例えば、winは、お気に入り登録、他ユーザとの共有等の閲覧以外の特殊な操作をユーザが行った場合、及びコンテンツ閲覧時間(閲覧開始から終了までの間隔)、コンテンツと概念の関連度合い、コンテンツ閲覧時刻、閲覧時の天気・気温・湿度・季節・曜日・休日・余暇かどうか、閲覧時のユーザ位置情報、スケジューラ・日記等から収集したイベント情報に応じて値を変化させる。その他サービス利用者、サービス運用者が特に指定した場合にも変化させる。あるいは、概念(若しくは概念グループ)毎に値を変化させることもできる。これにより、例えば、サービス提供者側の判断で、特定の概念の学習を重視するといった設定が可能である。
なお、一定期間過ぎた履歴の影響を低減させるため等のユーザ興味スコアの忘却は、最終更新時から現在の時刻までの時間間隔の閾値を超えた場合に、TotalZ,X,Yをそれぞれ減衰させることで実現する。
減衰の計算式の例を示す。例えば、kを減衰率(例えばk=0・8)と設定し、以下のように算出することができる。
TotalZ(減衰後)=k×TotalZ(現在)
X(減衰後)=k×X(現在)
Y(減衰後)=k×Y(現在)
さらに、ステップS17において、概念体系更新処理部130は、「更新対象概念リスト」の各概念ID(出現概念及び上位概念)の下位概念を抽出し、下位概念のノード値を更新する。下位概念の抽出では、「更新対象概念リスト」の各概念IDについて、図16の概念体系/興味度データベース140の概念体系テーブルを参照し、子概念IDリストから概念IDのリストを抽出し、さらに各子概念IDリストの概念IDについて概念体系テーブルを参照して子概念リストを抽出する処理を繰り返す。
下位概念の興味度の更新に利用する特徴スコアZは、例えば、隣接した親ノードのうち特徴スコアの絶対値が最も大きい値を利用、最も近い上位ノードの値を利用、親ノードの値を平均、または確率結合した値とする。なお、「更新対象概念リスト」のうち、上記ステップS16で更新済みの概念(コンテンツに出現した概念、及び上位概念)のユーザ興味スコアは更新しない。
また、興味概念体系更新処理部130は、絞り込み条件または除外条件が指定された場合、特徴スコアZ´を用いて概念体系における概念間の関係情報(上位概念及び下位概念)に基づいて各概念に対するユーザ興味スコアを更新する。
(絞り込み条件が指定された場合)
興味概念体系更新処理部130は、図25のように算出された各選択についての特徴スコアを、図33に示すように子孫概念に伝播させる。例えば、“洋酒”について算出された特徴スコア(Z´=0.67)を“洋酒”の子ノードにも確率結合により加える。子孫概念に特徴スコアを伝播させ、かつ絞り込み条件選択経路の特定を考慮し、絞り込み条件に関する全ての選択を確率結合すると、図34に示す結果が得られる。あるいは、図23に示すような条件選択経路を特定しない場合は、図35に示す結果が得られる。なお、図34,図35中の値は、図17に示すユーザ興味スコアを算出するために用いる(Z,X,Y)の値を表す。
(除外条件が指定された場合)
興味概念体系更新処理部130は、図29のように計算された各選択についての特徴スコアを図36に示すように子孫概念に伝播させる。例えば、“洋酒”について算出された特徴スコア(Z´=−0.67)を“洋酒”の子ノードにも確率結合により加える。子孫概念に特徴スコアを伝播させ、かつ除外条件選択経路の特定を考慮し、除外条件に関する全ての選択を確率結合すると、図36に示す結果が得られる。あるいは、図27に示すような除外条件選択経路を特定しない場合は、図37に示す結果が得られる。なお、図36,図37中の値は、図32に示すユーザ興味スコアを算出するために用いる(Z,X,Y)の値を表す。
さらに、図34に示す結果と図36に示す結果を統合すると図38に示す結果が得られる。図35に示す結果と図37に示す結果を統合すると図39に示す結果を得ることができる。
(コンテンツ評価処理部170)
図40にコンテンツ評価処理部170の処理フローを示す。コンテンツ評価処理部170には、コンテンツサーバ300のコンテンツ要求転送部360からの通知を入力として、コンテンツデータベース160のコンテンツテーブルから図11のような形式の提示コンテンツリストを読み出して以下のコンテンツ評価処理を行う。コンテンツ要求転送部360からはユーザID(もしくは、クライアント端末ID)を含む、図5に示すようなコンテンツ要求データを受信する。また、上記提示コンテンツリストについては、サービス運用者もしくはサービス利用者(クライアント端末利用者)の事前設定により、過去何日以内に登録されたコンテンツのみを評価対象とするか(提示コンテンツリストに含めるか)を設定することができる。
ステップS21の分析対象概念フィルタリングでは、サービス運用者又はサービス利用者が、条件選択履歴受信部190や事前設定等で特に分析対象の概念ID、あるいは分析対象から除外する概念IDを指定した場合は、概念体系/興味度データベース140を参照し、図14に示すように、指定された分析対象の概念IDおよび下位の概念IDのみを評価対象とする。あるいは除外条件に指定された概念IDおよび下位の概念IDを評価対象から除外する。コンテンツ評価処理部170は、入力された提示コンテンツリストが保持する概念IDについて、事前にサービス運用者又はサービス利用者が設定した条件にしたがってフィルタリングし、「フィルタリング済みコンテンツリスト」を生成する。
例えば、ユーザが、野球に関するコンテンツのレコメンドを求めた場合には、図16の概念体系テーブルを参照し、野球に対応する概念IDの下位概念のみを分析対象とする。「フィルタリング済みコンテンツリスト」とは上記処理によって、各コンテンツIDに紐付けされている概念IDを事前にサービス運用者又はユーザが設定した条件にしたがってフィルタリングしたコンテンツリストである。「フィルタリング済みコンテンツリスト」は、上記図11の提示コンテンツリストと同じデータ構成である。
ステップS22において、コンテンツ評価処理部170は、「フィルタリング済みコンテンツリスト」に含まれるコンテンツの評価スコアを算出し、図41に示すようなコンテンツスコアリストを生成する。コンテンツスコアリストは、コンテンツID、評価スコア、コンテンツ本体、及びコンテンツ登録時刻を有する。
図42に評価スコアの算出方法の一例を示す。例えば、図42に示すコンテンツ評価式により、コンテンツxに対する評価スコアEntityZを概念iのユーザ興味スコアTotalZ、コンテンツxと概念iとの関連度w(もしくは、概念iの重要度)、及びコンテンツxに出現する概念IDの集合pを用いて算出することができる。なお、概念の識別子iは集合p内の概念IDに対応する。
図42の算出で利用するユーザ興味スコア(TotalZ)は、各コンテンツに関連した概念IDについて、概念体系/ユーザ興味スコアデータベース140のユーザ興味スコアテーブル(図16)から、ユーザID(もしくは、クライアント端末ID)をもとに読み出し利用する。図42において、概念K、概念B及び概念Dが出現する評価コンテンツ1を評価コンテンツとした場合、概念K、概念B及び概念DのTotalZ,wを利用して評価スコアEntityZ評価コンテンツ1=0.18と算出できる。一方、概念Bのみが出現するコンテンツ2を評価コンテンツとした場合、概念BのTotalZ,wを利用して評価スコアEntityZ評価コンテンツ2=−0.3と算出できる。評価スコアEntityZの値が大きいコンテンツ1が優先して表示される。
その他にも、評価スコアEntityZは、以下の変形例1〜3の方法により求めることができる。
変形例1としては、EntityZ=MAX(TotalZ*w)により求める。MAX(TotalZ*w)は、i∈pのTotalZ*wの最大値を返す関数とする。
変形例2としては、EntityZの値は、MAX(TotalZ*w)の値が閾値を超えた場合には、MAX(TotalZ*w)の返り値とする。MAX(TotalZ*w)はi∈pのTotalZ*wの最大値を返す関数とする。閾値を超えない場合は、図42のコンテンツ評価式の結果をEntityZとする。MAX()は、はi∈pのTotalZ*wで最大値を返す関数とする。閾値はサービス運用者が設定する値とする。
変形例3としては、TotalZが正の値のi∈pについてのみ取り出し、図42のコンテンツ評価式で統合した値をEntityZとする。
ステップS23において、コンテンツ評価処理部170は、コンテンツスコアリストに含まれるコンテンツを評価スコアEntityZの降順にソートし、ソート済みコンテンツスコアリストをソート済みコンテンツスコアリスト送信部180に出力する。
(ソート済みコンテンツスコアリスト送信部180)
ソート済みコンテンツスコアリスト送信部180は、コンテンツ評価処理部170から入力されるソート済みコンテンツスコアリストとユーザID(もしくは、クライアント端末ID)を通信ネットワークを介してコンテンツサーバ300に送信する。
以上述べたように、上記構成によれば、ユーザの選択候補となる一覧リストを定義し、そこからのコンテンツ選択における概念の出現数を分析することで、各概念の出現の希少性を考慮し、且つ一覧から選ばれない概念の履歴特徴を利用することができるため、ユーザの興味を高精度に推定することが可能となる。
さらに、上記ステップS15、ステップS16、ステップS17に示したように、特徴スコアの算出やユーザ興味スコアの算出に際し、閲覧時のユーザの状況や閲覧操作の特徴(お気に入り登録、長時間閲覧等)などを重み係数(重みw)を介して反映することができるため、ユーザ興味スコアをさらに精度良く求めることが可能となる。
また、タクソノミ(オントロジ)等で定義された概念をメタタグとして付与したコンテンツ閲覧履歴分析において、概念出現の希少性を合理的に分析に反映することが難しかったため、従来はタクソノミ(オントロジ)構造の深さを一定する等によりコンテンツに付与する概念の抽象度を統一する等のオントロジ構造側の調整が必要があったが、本実施形態では概念出現の希少性を考慮するオントロジ構造によるユーザ興味スコアの更新処理により上位概念が付与されたコンテンツと、下位概念が付与されたコンテンツの閲覧履歴を統合して分析可能となるため、分析に利用するタクソノミ(オントロジ)への制約を低減し、タクソノミ(オントロジ)の維持・運用・管理コストを低減することが可能となる。
さらに、ユーザ興味スコアを用いてコンテンツに対するユーザの評価スコアを算出することで、ユーザの興味に合ったコンテンツを推薦することが可能となる。
また、本実施形態では、ユーザの履歴を用いた興味推定とユーザが行った条件指定履歴を用いた興味推定を組合せ、ユーザがその時点で望む情報を精度良く提示する事ができる。
例えば、図43に示す例は、ユーザが“ビール”を絞り込み条件として指定した場合であるが、この場合、第1のコンテンツリスト、及び第2のコンテンツリスト共に全て“ビール”のコンテンツとなるため、第2のコンテンツリストが全て“ビール”に関するコンテンツである事は当然であり、ユーザが偶然と比べて比較的“エール”を選ぶ、あるいは、偶然と比べて比較的“ラガー”を選ばないという事実から、“エールが好き”、あるいは“ラガーが嫌い”という興味推定を行う事ができるが、一方、ユーザが絞り込み条件に、“ビール”を指定したとしても”ビール”が好きであるという興味は学習できない。
この課題に対し、本実施形態では、ユーザが絞り込み条件を絞り込み条件の選択候補から選択した場合、絞り込み条件の指定について、偶然と比べて比較的“選ぶ”あるいは、“選ばない”程度を分析し、ユーザの興味を推定するものであって、コンテンツ選択履歴による興味推定と併せて用いる事に拠り、ユーザが絞り込み条件を指定した場合であっても、ユーザの興味を合理的かつ的確に分析可能となる。
例えば、図22の概念体系において、ビール、あるいは赤ワインを絞り込み条件として指定した場合、“ワイン”配下の選択肢(“赤ワイン”、“白ワイン”、“ロゼ”)の中から、“赤ワイン”を絞り込み条件として選択する事が、偶然と比較しどの程度珍しいかの程度、あるいは、”洋酒”配下の選択肢(“ワイン”、“ビール”、“ウィスキー”)の中から、“ビール”を絞り込み条件として選択する事が、偶然と比較しどの程度珍しいかの程度を用いてユーザの興味スコアを推定することができ、コンテンツ閲覧履歴を用いた興味推定結果と併せて用いる事により興味推定の精度を高める事ができる。
さらに、絞り込み選択結果について、概念体系における上位概念からの絞り込み条件選択経路を特定し、それらの選択についても興味推定に利用することにより、興味推定精度を高めることを目的とするものであって、例えば図23において、“お酒”、“洋酒”、“ワイン”、“赤ワイン”という順に上位概念から選択を行った場合、“ワイン”配下の選択肢(“赤ワイン”、“白ワイン”、“ロゼ”)の中から、“赤ワイン”を絞り込み条件として選択した事実だけでなく、“お酒”配下の選択肢(“日本のお酒”、“洋酒”、“韓国のお酒”、“中国のお酒”)の中から、“洋酒”を選んだ事実などもさらに加えて分析することにより、興味推定精度を高めることができる。
また、本実施形態では、ユーザが一覧閲覧条件リストから除外条件を選択した場合、偶然と比べて比較的“選ぶ”あるいは、“選ばない”という特徴を活用し、ユーザの興味を推定するものであって、コンテンツ選択履歴による興味推定と併せて用いる事に拠り、ユーザが除外条件を指定した場合であっても、ユーザの興味を合理的かつ的確に分析可能となる。
例えば、図26の概念体系において、ウィスキーを除外条件として指定した場合、“洋酒”配下の選択肢(“ワイン”、“ビール”、“ウィスキー”)の中から、“ウィスキー”を除外条件として選択する事が、偶然と比較しどの程度珍しいかの程度を用いてユーザの興味スコアを推定することができ、コンテンツ閲覧履歴を用いた興味推定結果と併せて用いる事により興味推定の精度を高める事ができる。
さらに、除外条件選択結果について、概念体系における上位概念からの除外条件選択経路を特定し、それらの選択についても興味推定に利用することにより、興味推定精度を高めることを目的とするものであって、例えば図27において、“お酒”、“洋酒”、“ウィスキーという順に上位概念から選択を行った場合、“洋酒”配下の選択肢(“ワイン”、“ビール”、“ウィスキー”)の中から、“ウィスキー”を除外条件として選択した事実だけでなく、“お酒”配下の選択肢(“日本のお酒”、“洋酒”、“韓国のお酒”、“中国のお酒”)の中から、“洋酒”を選んだ事実などもさらに加えて分析することにより、興味推定精度を高めることができる。
また、本実施形態では、各選択について算出した特徴スコアを子概念群に同じく適用する。例えば、図33の例において、洋酒に関する特徴スコアが0.67と計算された場合、洋酒の子孫概念である“ワイン”や“赤ワイン”についても特徴スコアを同じく加算することにより、興味推定精度を高めることができる。
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
100…興味分析装置、200…クライアント端末、300…コンテンツサーバ、110…履歴情報受信部、120…特徴スコア算出部、130…概念体系更新処理部、140…概念体系/ユーザ興味スコアデータベース、150…提示コンテンツリスト受信部、160…コンテンツデータベース、170…コンテンツ評価処理部、180…ソート済みコンテンツスコアリスト送信部、185…一覧閲覧条件リスト作成部、190…条件選択履歴受信部、210…履歴収集部、220…履歴情報送信部、230…コンテンツ提示部、240…コンテンツ要求送信部、250…一覧閲覧条件リスト要求送信部、260…一覧閲覧条件リスト提示部、270…閲覧条件選択履歴収集部、280…条件選択履歴送信部、310…コンテンツ送信処理部、320…ソート済み提示コンテンツリスト受信部、330…提示コンテンツリスト送信部、340…提示コンテンツリスト入力部、350…履歴情報転送部、360…コンテンツ要求転送部、370…一覧閲覧条件リスト要求転送部、380…一覧閲覧条件リスト転送部、390…条件選択履歴転送部。

Claims (5)

  1. コンピュータによって複数の概念に対するユーザ興味スコアを体系化した概念体系を用いてユーザの興味を分析する方法であって、
    前記概念体系における絞り込み条件の選択候補となる複数の概念を一覧として閲覧した第1の条件リストと、前記第1の条件リストから前記ユーザにより選択された概念から成る第2の条件リストとを取得するステップと、
    前記第1の条件リストに含まれる概念の総数を第1の総数、前記第1の条件リストにおいて前記ユーザにより選択された概念が出現する数を第1の出現数、前記第2の条件リストに含まれる概念の総数を第2の総数、前記第2の条件リストにおいて前記ユーザにより選択された概念が出現する数を第2の出現数としたとき、前記第1の総数、前記第1の出現数、及び前記第2の総数の条件下で、前記第1の条件リストから前記ユーザにより選択された概念iが前記第2の条件リストに出現する数が、前記第2の出現数以上となる第1の確率及び前記第2の出現数以下となる第2の確率を算出し、前記第1の確率及び前記第2の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出する算出ステップと、
    前記特徴スコアを用いて前記概念に対する前記ユーザ興味スコアを更新する更新ステップと
    を有することを特徴とする興味分析方法。
  2. コンピュータによって複数の概念に対するユーザ興味スコアを体系化した概念体系を用いてユーザの興味を分析する方法であって、
    前記概念体系における除外条件の選択候補となる複数の概念を一覧として閲覧した第1の条件リストと、前記第1の条件リストから前記ユーザにより選択された概念から成る第2の条件リストとを取得するステップと、
    前記第1の条件リストに含まれる概念の総数を第1の総数、前記第1の条件リストにおいて前記ユーザにより選択された概念が出現する数を第1の出現数、前記第2の条件リストに含まれる概念の総数を第2の総数、前記第2の条件リストにおいて前記ユーザにより選択された概念が出現する数を第2の出現数としたとき、前記第1の総数、前記第1の出現数、及び前記第2の総数の条件下で、前記第1の条件リストから前記ユーザにより選択された概念iが前記第2の条件リストに出現する数が、前記第2の出現数以上となる第1の確率及び前記第2の出現数以下となる第2の確率を算出し、前記第1の確率及び前記第2の確率をもとに標準正規分布の累積分布関数の逆関数により特徴スコアを算出する算出ステップと、
    前記特徴スコアを用いて前記概念に対する前記ユーザ興味スコアを更新する更新ステップと
    を有することを特徴とする興味分析方法。
  3. 前記算出ステップは、前記第2の条件リストに含まれる概念をもとに前記概念体系における選択経路を特定し、前記選択経路に発生する各選択に対応する各概念について前記特徴スコアを算出することを特徴とする請求項1又は2に記載の興味分析方法。
  4. 前記更新ステップは、前記特徴スコアを用いて当該概念の下位概念のユーザ興味スコアを更新することを特徴とする請求項1乃至3のいずれか1項に記載の興味分析方法。
  5. 1つ以上の概念が出現するコンテンツについて、当該コンテンツに出現する各概念の前記ユーザ興味スコアを用いて、当該コンテンツに対するユーザの評価スコアを算出する評価ステップをさらに有することを特徴とする請求項1乃至4のいずれか1項に記載の興味分析方法。
JP2012123669A 2012-05-30 2012-05-30 興味分析方法 Expired - Fee Related JP5723830B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012123669A JP5723830B2 (ja) 2012-05-30 2012-05-30 興味分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012123669A JP5723830B2 (ja) 2012-05-30 2012-05-30 興味分析方法

Publications (2)

Publication Number Publication Date
JP2013250672A JP2013250672A (ja) 2013-12-12
JP5723830B2 true JP5723830B2 (ja) 2015-05-27

Family

ID=49849325

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012123669A Expired - Fee Related JP5723830B2 (ja) 2012-05-30 2012-05-30 興味分析方法

Country Status (1)

Country Link
JP (1) JP5723830B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6570978B2 (ja) * 2015-11-17 2019-09-04 株式会社Nttドコモ クラスタ選択装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012053863A (ja) * 2010-08-06 2012-03-15 Nippon Telegr & Teleph Corp <Ntt> 情報推薦処理装置とそのプログラム

Also Published As

Publication number Publication date
JP2013250672A (ja) 2013-12-12

Similar Documents

Publication Publication Date Title
JP5668007B2 (ja) 興味分析方法、装置及びプログラム
CN102609523B (zh) 基于物品分类和用户分类的协同过滤推荐方法
JP5778255B2 (ja) 垂直検索に基づいたクエリの方法、システム、および装置
US8572116B2 (en) System for recommending an article not present in an image
JP5668010B2 (ja) 情報推薦方法、装置及びプログラム
JP2015509222A (ja) 決定されたユーザグループに基づく情報推薦の提供
KR20080028574A (ko) 통합 검색 서비스 시스템 및 방법
US11100169B2 (en) Alternative query suggestion in electronic searching
JP5556711B2 (ja) カテゴリ分類処理装置、カテゴリ分類処理方法、カテゴリ分類処理プログラム記録媒体、カテゴリ分類処理システム
JP5723835B2 (ja) 興味分析方法、興味分析装置及びそのプログラム
JP2007018285A (ja) 情報提供システム、情報提供方法、情報提供装置並びに情報提供プログラム
WO2017061038A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP7166116B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP5667959B2 (ja) 影響度分析方法、影響度分析装置及びそのプログラム
CN112579854A (zh) 信息处理方法、装置、设备和存储介质
JP5836210B2 (ja) 影響力推定方法、装置及びプログラム
US8700625B1 (en) Identifying alternative products
JP5504213B2 (ja) 興味分析方法及び興味分析装置
US20100161659A1 (en) Information supplying server
JP6357283B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
CN107239495A (zh) 基于关系链权重的商品以及搜索排序展示方法
JP2013105257A (ja) キーワード取得装置、コンテンツ提供システム、キーワード取得方法、プログラム及びコンテンツ提供方法
JP5723830B2 (ja) 興味分析方法
KR101180359B1 (ko) 제품리뷰정보 구축 및 제공방법
KR20100113421A (ko) 키워드 추천방법 및 그 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140625

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150303

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150324

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150330

R150 Certificate of patent or registration of utility model

Ref document number: 5723830

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees