(57)【要約】【課題】  被推薦ユーザが回答したアンケート結果や利用実績と類似したコンテンツに制限されず、協調ユーザも利用実績の無いコンテンツも、誰も利用実績の無い新しいコンテンツも推薦でき、かつ推薦コンテンツの推薦対象ユーザの選出を少ない処理量で行う。【解決手段】  スコア生成ブロック２において、入力したユーザの操作情報ログを基に、ユーザ毎にコンテンツのキーワード毎のスコアが記録されたユーザ・キーワード間スコアデータを生成し、学習ブロック３において、このユーザ・キーワード間スコアデータを参照し、関係のあるキーワード同士のグループ化と、このキーワードのグループ化結果とユーザ・キーワード間スコアデータを基に、キーワード関係グループ毎に各ユーザのスコアをしかるべき演算を行って算出し、選出ブロック４において、推薦対象コンテンツのキーワード集合を入力し、キーワードのグループ化結果とグループ別ユーザ別のスコア結果を参照し、ユーザ別のスコアを算出し、所定の選出条件に合致するスコアを有する１以上のユーザを推薦対象ユーザとして選出する。【選択図】        図１
2005141486.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツの推薦対象となるユーザを選出するコンテンツ推薦対象ユーザ選出装置であって、
ユーザがコンテンツを利用する毎に、該コンテンツのメタデータであるキーワードと当該コンテンツに対するユーザの操作内容およびユーザ識別情報を取得し、各ユーザ別および各キーワード別に各操作内容を対応付けたコンテンツ利用ログ情報を生成して記憶装置に記録する第１の手段と、
上記コンテンツ利用ログ情報における各操作内容に応じたスコアを求め、求めたスコアを各ユーザ別および各キーワード別に累計し、累計したスコアを各ユーザ別および各キーワード別に対応付けたユーザ・キーワード間スコア情報を生成して記憶装置に記録する第２の手段と、
上記各キーワードを各々の関連を算出してグループに分け、各グループ別に各キーワードを対応付けたキーワード関係グループ情報を生成して記憶装置に登録する第３の手段と、
上記キーワード関係グループ情報および上記ユーザ・キーワード間スコア情報を参照して、各グループ毎に、同じグループ内の各キーワードのそれぞれに対応付けられた各ユーザの累計スコアをさらに累計し、該累計したスコアを各グループ別および各ユーザ別に対応付けたグループ別ユーザ別スコア情報を生成して記憶装置に格納する第４の手段と、
推薦対象のコンテンツのメタデータである１以上のキーワードを取得し、取得したキーワードが含まれる１以上のグループを上記キーワード関係グループ情報を参照して特定し、特定したグループに対応付けられた各ユーザ毎のスコアを上記グループ別ユーザ別スコア情報を参照して求め、特定したグループが複数であれば各ユーザ毎に累計してスコアを求める第５の手段と、
求めたスコアが所定のスコア条件を満たすユーザを、上記推薦対象のコンテンツの推薦対象となるユーザとして選出する第６の手段と
を有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項２】
コンテンツの推薦対象となるユーザを選出するコンテンツ推薦対象ユーザ選出装置であって、
ユーザがコンテンツを利用する毎に、該コンテンツのメタデータであるキーワードと当該コンテンツに対するユーザの操作内容およびユーザ識別情報を取得し、各ユーザ別および各キーワード別に各操作内容を対応付けたコンテンツ利用ログ情報を生成して記憶装置に記録する第１の手段と、
上記コンテンツ利用ログ情報における各操作内容に応じたスコアを求め、求めたスコアを各ユーザ別および各キーワード別に累計し、累計したスコアを各ユーザ別および各キーワード別に対応付けたユーザ・キーワード間スコア情報を生成して記憶装置に記録する第２の手段と、
上記各キーワードを各々の関連を算出してグループに分け、各グループ別に各キーワードを対応付けたキーワード関係グループ情報を生成して記憶装置に登録する第３の手段と、
上記キーワード関係グループ情報および上記ユーザ・キーワード間スコア情報を参照して、各グループ毎に、同じグループ内の各キーワードのそれぞれに対応付けられた各ユーザの累計スコアをさらに累計し、該累計したスコアを各グループ別および各ユーザ別に対応付けたグループ別ユーザ別スコア情報を生成して記憶装置に格納する第４の手段と、
推薦対象のコンテンツのメタデータであるキーワード集合を取得し、取得したキーワード集合に最も類似するキーワード集合のグループを上記キーワード関係グループ情報を参照して特定する第５の手段と、
上記グループ別ユーザ別スコア情報を参照して、上記特定したグループに対応付けられた累計スコアが所定のスコア条件を満たすユーザを、上記推薦対象のコンテンツの推薦対象となるユーザとして選出する第６の手段と
を有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項３】
コンテンツの推薦対象となるユーザを選出するコンテンツ推薦対象ユーザ選出装置であって、
ユーザがコンテンツを利用する毎に、該コンテンツのメタデータであるキーワードと当該コンテンツに対するユーザの操作内容およびユーザ識別情報を取得し、各ユーザ別および各キーワード別に各操作内容を対応付けたコンテンツ利用ログ情報を生成して記憶装置に記録する第１の手段と、
上記コンテンツ利用ログ情報における各操作内容に応じたスコアを求め、求めたスコアを各ユーザ別および各キーワード別に累計し、累計したスコアを各ユーザ別および各キーワード別に対応付けたユーザ・キーワード間スコア情報を生成して記憶装置に記録する第２の手段と、
上記各キーワードを各々の関連を算出してグループに分け、各グループ別に各キーワードを対応付けたキーワード関係グループ情報を生成して記憶装置に登録する第３の手段と、
上記キーワード関係グループ情報および上記ユーザ・キーワード間スコア情報を参照して、各グループ毎に、同じグループ内の各キーワードのそれぞれに対応付けられた各ユーザの累計スコアをさらに累計し、該累計したスコアを各グループ別および各ユーザ別に対応付けたグループ別ユーザ別スコア情報を生成して記憶装置に格納する第４の手段と、
推薦対象のコンテンツのメタデータであるキーワード集合を取得し、取得したキーワード集合と上記キーワード関係グループ情報から読み込んだ各グループに含まれるキーワード集合との類似度を各グループ毎に算出し、
算出した各グループ毎の類似度を用いて、上記グループ別ユーザ別スコア情報における当該グループ毎の各ユーザに対応付けられた各スコアに重み付け演算を行い、各ユーザ毎に、重み付けされたスコアの合計を求める第５の手段と、
求めた合計スコアが所定のスコア条件を満たすユーザを、上記推薦対象のコンテンツの推薦対象となるユーザとして選出する第６の手段と
を有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項４】
請求項１から請求項３のいずれかに記載のコンテンツ推薦対象ユーザ選出装置であって、上記第３の手段は、上記ユーザ・キーワード間スコア情報を読み込み、該ユーザ・キーワード間スコア情報を用いてキーワードのクラスタリング演算もしくはデータマイニングの相関ルール抽出のいずれかを行い、各キーワードのグループ分けを行う機能を有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項５】
請求項１から請求項４のいずれかに記載のコンテンツ推薦対象ユーザ選出装置であって、
上記第４の手段は、
上記ユーザ・キーワード間スコア情報に含まれる各ユーザと上記キーワード関係グループ情報に含まれる各グループとを読み込み、それぞれを二次元配列した表を生成し、
上記ユーザ・キーワード間スコア情報を参照して各キーワード毎の各ユーザのスコアを順次に読み込み、読み込む毎に、読み込んだキーワードのグループを上記キーワード関係グループ情報を参照して特定し、
上記表における上記特定したグループおよび上記読み込んだ各ユーザに対応付けて上記読み込んだ各ユーザのスコアを加算して上記グループ別ユーザ別スコア情報を生成する機能を有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項６】
請求項１から請求項５のいずれかに記載のコンテンツ推薦対象ユーザ選出装置であって、上記第１の手段は、ユーザが利用するコンテンツのメタデータであるキーワードを、当該コンテンツに予め対応付けて付与されたキーワードから取得する機能、もしくは、当該コンテンツに予め付与されている説明文を形態素解析して所得する機能の少なくともいずれかを有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項７】
コンピュータを、請求項１から請求項６のいずれかに記載のコンテンツ推薦対象ユーザ選出装置における各手段として機能させるためのプログラム。
【請求項８】
コンピュータネットワークを介してユーザにコンテンツを推薦するコンテンツ推薦システムであって、
請求項１から請求項６のいずれかに記載のコンテンツ推薦対象ユーザ選出装置を具備し、
上記コンテンツを推薦するユーザを上記コンテンツ推薦対象ユーザ選出装置で選出し、選出したユーザを対象として上記コンテンツを推薦することを特徴とするコンテンツ推薦システム。
【請求項９】
ネットワークを介して配信するコンテンツの推薦対象となるユーザをコンピュータ処理して選出するコンテンツ推薦対象ユーザ選出方法であって、
ユーザがコンテンツを利用する毎に、該コンテンツのメタデータであるキーワードと当該コンテンツに対するユーザの操作内容およびユーザ識別情報を取得する手順と、
取得した各ユーザ別および各キーワード別に各操作内容を対応付けたコンテンツ利用ログ情報を生成して記憶装置に記録する手順と、
上記コンテンツ利用ログ情報における各操作内容に応じたスコアを求め、求めたスコアを各ユーザ別および各キーワード別に累計する手順と、
累計したスコアを各ユーザ別および各キーワード別に対応付けたユーザ・キーワード間スコア情報を生成して記憶装置に記録する手順と、
上記各キーワードを各々の関連を算出してグループに分け、各グループ別に各キーワードを対応付けたキーワード関係グループ情報を生成して記憶装置に登録する手順と、
上記キーワード関係グループ情報および上記ユーザ・キーワード間スコア情報を参照して、各グループ毎に、同じグループ内の各キーワードのそれぞれに対応付けられた各ユーザの累計スコアをさらに累計し、該累計したスコアを各グループ別および各ユーザ別に対応付けたグループ別ユーザ別スコア情報を生成して記憶装置に格納する手順と、
推薦対象のコンテンツのメタデータである１以上のキーワードを取得する手順と、
取得したキーワードが含まれる１以上のグループを上記キーワード関係グループ情報を参照して特定し、特定したグループに対応付けられた各ユーザ毎のスコアを上記グループ別ユーザ別スコア情報を参照して求める手順と、
特定したグループが複数であれば各ユーザ毎に累計してスコアを求める手順と、
求めたスコアが所定のスコア条件を満たすユーザを、上記推薦対象のコンテンツの推薦対象となるユーザとして選出する手順と
を有することを特徴とするコンテンツ推薦対象ユーザ選出方法。
【請求項１０】
ネットワークを介して配信するコンテンツの推薦対象となるユーザをコンピュータ処理して選出するコンテンツ推薦対象ユーザ選出方法であって、
ユーザがコンテンツを利用する毎に、該コンテンツのメタデータであるキーワードと当該コンテンツに対するユーザの操作内容およびユーザ識別情報を取得する手順と、
取得した各ユーザ別および各キーワード別に各操作内容を対応付けたコンテンツ利用ログ情報を生成して記憶装置に記録する手順と、
上記コンテンツ利用ログ情報における各操作内容に応じたスコアを求め、求めたスコアを各ユーザ別および各キーワード別に累計する手順と、
累計したスコアを各ユーザ別および各キーワード別に対応付けたユーザ・キーワード間スコア情報を生成して記憶装置に記録する手順と、
上記各キーワードを各々の関連を算出してグループに分け、各グループ別に各キーワードを対応付けたキーワード関係グループ情報を生成して記憶装置に登録する手順と、
上記キーワード関係グループ情報および上記ユーザ・キーワード間スコア情報を参照して、各グループ毎に、同じグループ内の各キーワードのそれぞれに対応付けられた各ユーザの累計スコアをさらに累計し、該累計したスコアを各グループ別および各ユーザ別に対応付けたグループ別ユーザ別スコア情報を生成して記憶装置に格納する手順と、
推薦対象のコンテンツのメタデータであるキーワード集合を取得する手順と、
取得したキーワード集合に最も類似するキーワード集合のグループを上記キーワード関係グループ情報を参照して特定する手順と、
上記グループ別ユーザ別スコア情報を参照して、上記特定したグループに対応付けられた累計スコアが所定のスコア条件を満たすユーザを、上記推薦対象のコンテンツの推薦対象となるユーザとして選出する手順と
を有することを特徴とするコンテンツ推薦対象ユーザ選出方法。
【請求項１１】
ネットワークを介して配信するコンテンツの推薦対象となるユーザをコンピュータ処理して選出するコンテンツ推薦対象ユーザ選出方法であって、
ユーザがコンテンツを利用する毎に、該コンテンツのメタデータであるキーワードと当該コンテンツに対するユーザの操作内容およびユーザ識別情報を取得する手順と、
取得した各ユーザ別および各キーワード別に各操作内容を対応付けたコンテンツ利用ログ情報を生成して記憶装置に記録する手順と、
上記コンテンツ利用ログ情報における各操作内容に応じたスコアを求め、求めたスコアを各ユーザ別および各キーワード別に累計する手順と、
累計したスコアを各ユーザ別および各キーワード別に対応付けたユーザ・キーワード間スコア情報を生成して記憶装置に記録する手順と、
上記各キーワードを各々の関連を算出してグループに分け、各グループ別に各キーワードを対応付けたキーワード関係グループ情報を生成して記憶装置に登録する手順と、
上記キーワード関係グループ情報および上記ユーザ・キーワード間スコア情報を参照して、各グループ毎に、同じグループ内の各キーワードのそれぞれに対応付けられた各ユーザの累計スコアをさらに累計し、該累計したスコアを各グループ別および各ユーザ別に対応付けたグループ別ユーザ別スコア情報を生成して記憶装置に格納する手順と、
推薦対象のコンテンツのメタデータであるキーワード集合を取得する手順と、
取得したキーワード集合と上記キーワード関係グループ情報から読み込んだ各グループに含まれるキーワード集合との類似度を各グループ毎に算出する手順と、
算出した各グループ毎の類似度を用いて、上記グループ別ユーザ別スコア情報における当該グループ毎の各ユーザに対応付けられた各スコアに重み付け演算を行い、各ユーザ毎に、重み付けされたスコアの合計を求める手順と、
求めた合計スコアが所定のスコア条件を満たすユーザを、上記推薦対象のコンテンツの推薦対象となるユーザとして選出する手順と
を有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【請求項１２】
請求項９から請求項１１のいずれかに記載のコンテンツ推薦対象ユーザ選出方法であって、
上記キーワード関係グループ情報を生成する手順では、
上記ユーザ・キーワード間スコア情報を読み込み、該ユーザ・キーワード間スコア情報を用いてキーワードのクラスタリング演算もしくはデータマイニングの相関ルール抽出のいずれかの処理を行い、各キーワードのグループ分けを行うことを特徴とするコンテンツ推薦対象ユーザ選出方法。
【請求項１３】
請求項９から請求項１２のいずれかに記載のコンテンツ推薦対象ユーザ選出方法であって、
上記グループ別ユーザ別スコア情報を生成する手順は、
上記ユーザ・キーワード間スコア情報に含まれる各ユーザと上記キーワード関係グループ情報に含まれる各グループとを読み込み、それぞれを二次元配列した表を生成する手順と、
上記ユーザ・キーワード間スコア情報を参照して各キーワード毎の各ユーザのスコアを順次に読み込み、読み込む毎に、読み込んだキーワードのグループを上記キーワード関係グループ情報を参照して特定する手順と、
上記表における上記特定したグループおよび上記読み込んだ各ユーザに対応付けて上記読み込んだ各ユーザのスコアを加算して上記グループ別ユーザ別スコア情報を生成する手順からなることを特徴とするコンテンツ推薦対象ユーザ選出方法。
【請求項１４】
請求項９から請求項１３のいずれかに記載のコンテンツ推薦対象ユーザ選出方法であって、
上記コンテンツ利用ログ情報を生成する手順は、
ユーザが利用するコンテンツのメタデータであるキーワードを、当該コンテンツに予め対応付けて付与されたキーワードから取得する手順、もしくは、当該コンテンツに予め付与されている説明文を形態素解析して所得する手順の少なくともいずれかを有することを特徴とするコンテンツ推薦対象ユーザ選出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、あるコンテンツをユーザに推薦する際に、その推薦対象となるユーザ（被推薦ユーザ）を自動的に選出する技術に係わり、特に、利用実績のない新規コンテンツの被推薦ユーザを効率的に選出するのに好適な技術に関するものである。
【背景技術】
【０００２】
従来、インターネット等において、あるコンテンツをユーザに推薦する際に、その推薦対象となる被推薦ユーザを自動的に選出する技術としては、例えば、非特許文献１に記載の技術（一般的にcontent-based filteringと呼ばれている）がある。
【０００３】
この技術は、あるユーザの嗜好情報と類似している場合に、コンテンツを推薦するものであり、この技術では、被推薦ユーザへのアンケート結果やこれまでのコンテンツ利用実績などから当該被推薦ユーザの嗜好情報を生成し、推薦対象コンテンツの説明文や説明キーワードと、被推薦ユーザの嗜好情報との類似度の大きさから、推薦対象コンテンツを当該被推薦ユーザに推薦するか否かを判別する。
【０００４】
また、例えば、非特許文献２に記載の技術（一般的にcollaborative filtering（協調フィルタリング方式）と呼ばれている）では、複数のユーザの利用履歴を用いて、被推薦ユーザと利用傾向が類似している他のユーザを協調ユーザとして選出し、協調ユーザに利用実績があり、被推薦ユーザに利用実績が無いコンテンツを推薦する。
【０００５】
特許文献１（「レコメンドエンジン、レコメンド方法、レコメンドプログラム」）においては、対象ユーザの協調ユーザを選出し、選出した協調ユーザが利用していて対象ユーザが利用していないコンテンツを対象ユーザに推薦し、推薦できない場合は利用ランキングを表示する技術、すなわち、前記非特許文献２の技術を用いたレコメンド（推薦）技術が記載されている
【０００６】
また、特許文献２（「情報推薦サーバ装置」）においては、被推薦ユーザとプロファイルが類似した協調ユーザを選出し、選出した協調ユーザのプロファイルと推薦対象コンテンツとの類似性によって推薦を決定する技術、および、ユーザには複数のプロファイルを持たせ、協調ユーザのプロファイルと類似していないプロファイルを用い、そのプロファイルと推薦対象コンテンツとが類似している場合、当該推薦対象コンテンツを被推薦ユーザに推薦する技術が記載されている。
【０００７】
この特許文献２に記載の技術の特徴は、コンテンツやユーザのプロファイルはベクトルで記述することが可能であるため、協調ユーザが利用したことのないコンテンツであっても、被推薦ユーザに推薦することが可能なことである。この技術では、前記非特許文献１および非特許文献２の両方の技術を用いている。
【０００８】
しかし、非特許文献１に記載の技術（「content based filtering」）の場合、被推薦ユーザが回答したアンケート結果や利用実績と類似したコンテンツのみが推薦されがちになるとの第１の問題点がある。
【０００９】
また、非特許文献２に記載の技術（「collaborative filtering」）の場合、複数のユーザの利用履歴を用いて、被推薦ユーザと利用傾向が類似している他のユーザを協調ユーザとして選出し、協調ユーザに利用実績があり、被推薦ユーザに利用実績が無いコンテンツを推薦する技術であるため、協調ユーザも利用実績の無いコンテンツは推薦できないとの第２の問題点がある。さらに、誰も利用実績の無い、新しいコンテンツの場合（例えば、新しいコンテンツを一斉に適したユーザに対してリコメンドする場合）は推薦できないといった第３の問題点がある。
【００１０】
また、多くのユーザ中から、ある推薦コンテンツの推薦対象ユーザを選出する場合、前記非特許文献１および非特許文献２のいずれの技術においても、処理量がユーザ数に比例して大きくなる傾向があるという第４の問題点がある。
【００１１】
その結果、特許文献１に記載の技術の場合、前記第２，第３，第４の問題点があり、特許文献２に記載の技術の場合、前記第４の問題点がある。
【００１２】
【特許文献１】特開２００２−３３４２５７号公報
【特許文献２】特開２００２−２１５６６５号公報
【非特許文献１】Marko Balabonavic and Yoav Shoham．"A Content-Based，Collaborative Recommendation"，Communication of ACM, Vol.40，No.3，PP.66-72(1997)
【非特許文献２】P．Resnick，N．lacovou，M．Suchak，P．Bergstrom，and J．Riedl．"GroupLens：Open Architecture for Collaborative Filtering of Netnews"，Conference on Computer Supported Cooperative Work，PP．175-186(1994)
【発明の開示】
【発明が解決しようとする課題】
【００１３】
解決しようとする問題点は、従来の技術では、（１）被推薦ユーザが回答したアンケート結果や利用実績と類似したコンテンツのみが推薦されがちになる点と、（２）協調ユーザも利用実績の無いコンテンツは推薦できない点、（３）誰も利用実績の無い、新しいコンテンツの場合は推薦できない点、（４）多くのユーザ中から、ある推薦コンテンツの推薦対象ユーザを選出する場合、処理量がユーザ数に比例して大きくなる傾向がある点である。
【課題を解決するための手段】
【００１４】
上記目的を達成するため、本発明では、スコア生成手段（スコア生成ブロック２）と学習手段（学習ブロック３）および選出手段（選出ブロック４）の３つの機能を用いてコンテンツの推薦対象ユーザを選出する。
【００１５】
すなわち、図１に示すように、まず、スコア生成ブロック２において、操作情報入力手段２ａにより、操作情報１０（ユーザの操作履歴やアンケート結果等の情報）を入力し、コンテンツ利用ログ格納部２ｂで順次にログ情報として記憶し、このログ情報に対して書式変換手段２ｃによってコンテンツの利用履歴に対する重み付けや正規化、データの書式変換等を実施し、ユーザ毎にコンテンツのメタデータであるキーワードそれぞれに対してスコアが記録されたユーザ・キーワード間スコアデータを生成し、ユーザ・キーワード間スコア格納部２ｄで記憶装置に格納する。
【００１６】
次に、学習ブロック３において、キーワード関係グループ抽出手段３ａにより、ユーザ・キーワード間スコア格納部２ｄで格納したユーザ・キーワード間スコアデータを読み込み、関係が得られたキーワードをグループ化して抽出し、その結果をキーワード関係グループ抽出結果格納部３ｂで記憶装置に格納する。さらに、グループ別ユーザ別スコア算出手段３ｃにより、キーワード関係グループ抽出結果格納部３ｂで格納したキーワード関係グループ抽出結果とユーザ・キーワード間スコア格納部２ｄで格納したユーザ・キーワード間スコアデータを基に、キーワード関係グループ毎に各ユーザのスコアをしかるべき演算を行って算出し、その結果を、グループ別ユーザ別スコア格納部３ｄにより記憶装置に格納する。
【００１７】
そして、選出ブロック４においては、コンテンツキーワード情報入力手段４ａにより、推薦対象コンテンツのメタデータであるキーワードの集合を入力し、ユーザ別スコア算出手段４ｂにより、キーワード関係グループ抽出結果格納部３ｂとグループ別ユーザ別スコア格納部３ｄを参照し、しかるべき演算と処理を行ってユーザ別のスコアを算出する。その後、推薦対象ユーザ情報出力手段４ｃにより、選出条件（４ｄ）に合致するスコアを有する単数もしくは複数のユーザを推薦対象ユーザ１２（被推薦ユーザ）として選出する。
【発明の効果】
【００１８】
本発明によれば、コンテンツの利用履歴（ユーザの操作履歴やアンケート結果等の情報）を基にして生成した「ユーザ・キーワード間スコアデータ」を基にしてキーワード間で関係があるグループ（キーワード関係グループ）を抽出し、その「キーワード関係グループ」における各ユーザのスコアの大きさからコンテンツの被推薦ユーザの選出を行っている。つまりは、他のユーザの動向を反映した「キーワード関係グループ」を用いてコンテンツの推薦を行っているので、第１の問題点（被推薦ユーザが回答したアンケート結果や利用実績と類似したコンテンツのみが推薦されがちになる）は解決される。
【００１９】
また、他のユーザの動向を反映したキーワード関係グループを用いて、コンテンツの被推薦ユーザの選出を行っており、協調ユーザの選出は行わない。そのため、選出した協調ユーザの履歴を基にリコメンドを行うために発生する第２問題点（協調ユーザの利用実績が無いコンテンツは推薦できない）と第３の問題点（誰も利用実績の無い、新しいコンテンツの場合は推薦できない）は解決される。
【００２０】
また、本発明では、学習ブロック（３）において、予めキーワード関係グループ毎に全ユーザのスコアを算出して保持しており、ユーザそれぞれについて評価する必要がない。すなわち、コンテンツを推薦する対象ユーザ（被推薦ユーザ）を選出する際に行う演算は、予め定めた数のキーワード関係グループとの類似度算出処理である。そのため、非特許文献１に記載の技術（「content based filtering」）のように全ユーザとの類似度の算出演算を行う場合や、非特許文献２に記載の技術（「collaborative filtering」）のように全ユーザに対して類似ユーザの選出処理を行う場合と比較して、ユーザ数が予め定めた数のキーワード関係グループ数より多い場合は、本発明における算出処理量のほうが少なくなる。さらに、本発明ではユーザ数に比例して処理量は大きくならない。その結果、第４の問題点（多くのユーザ中から、ある推薦コンテンツの推薦対象ユーザを選出する場合、処理量がユーザ数に比例して大きくなる傾向がある）は解決される。
【発明を実施するための最良の形態】
【００２１】
以下、図を用いて本発明を実施するための最良の形態例を説明する。
【実施例】
【００２２】
図１は、本発明に係わるコンテンツ推薦対象ユーザ選出装置の構成例を示すブロック図であり、図２は、本発明に係わるコンテンツ推薦対象ユーザ選出装置が組み込まれたコンテンツ推薦システムの構成例を示すブロック図、図３は、図２におけるコンテンツ推薦システムの詳細構成を示すブロック図、図４は、図１におけるスコア生成ブロックの操作情報入力手段により入力される操作情報の具体例を示す説明図、図５は、図１におけるスコア生成ブロックのコンテンツ利用ログ格納部で格納されるコンテンツ利用ログの具体例を示す説明図、図６は、図１におけるスコア生成ブロックの書式変換手段により出力されるユーザ・キーワード間スコアの具体例を示す説明図、図７は、図１における学習ブロックの処理動作例を示すフローチャート、図８は、図１における学習ブロックのキーワード関係グループ抽出手段により抽出されキーワード関係グループ抽出結果格納部で格納されるキーワード関係グループ生成結果の具体例を示す説明図、図９は、図１における学習ブロックのグループ別ユーザ別スコア算出手段により算出されグループ別ユーザ別スコア格納部で格納されるグループ別ユーザ別スコア生成結果の具体例を示す説明図、図１０は、図１における選出ブロックの処理動作例を示すフローチャート、図１１は、図３におけるコンテンツ推薦システムのコンテンツ配信制御装置に入力される推薦対象コンテンツ情報の具体例を示す説明図、図１２は、本発明に係わるコンテンツ推薦対象ユーザ選出装置に入力されるコンテンツキーワード情報の具体例を示す説明図、図１３は、図１における選出ブロックの他の処理動作例を示すフローチャートである。
【００２３】
まず、図２および図３に基づき、コンテンツ推薦システムについて説明する。図２に示すように、本例のコンテンツ推薦システムは、コンテンツ推薦対象ユーザ選出装置１、コンテンツ配信制御装置２０、コンテンツデータベース（図中、「コンテンツＤＢ」と記載）２１、ネットワーク２２、端末２３ａ〜２３ｃからなる。
【００２４】
コンテンツ推薦対象ユーザ選出装置１、コンテンツ配信制御装置２０、端末２３ａ〜２３ｃのそれぞれは、ＣＰＵ（Central Processing Unit）や主メモリ、表示装置、入力装置、外部記憶装置等を有するコンピュータ構成からなり、光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、各処理部の機能を実行する。
【００２５】
本例のコンテンツ推薦システムは、コンテンツデータベース２１に格納されているコンテンツを、コンテンツ配信制御装置２０が各端末２３ａ〜２３ｃに送信するものであり、コンテンツ推薦対象ユーザ選出装置１は、コンテンツ配信制御装置２０がコンテンツ情報を送信する対象の端末（または推薦対象ユーザ）を選出する。
【００２６】
本例では、コンテンツ推薦対象ユーザ選出装置１とコンテンツ配信制御装置２０と被推薦ユーザが利用している端末２３ａ〜２３ｃは、ネットワーク２２で接続されている。また、本例では、コンテンツデータベース２１はコンテンツ配信制御装置２０と接続されている。
【００２７】
尚、本例では、ユーザを識別するユーザＩＤと端末２３ａ〜２３ｃを識別するＩＤとは一意に対応付けされており、被推薦ユーザが判明すれば、そのユーザが使用している端末２３ａ〜２３ｃを一意に判別し、その端末２３ａ〜２３ｃに推薦対象コンテンツを推薦できるものとする。
【００２８】
もし、ユーザを識別するユーザＩＤと端末２３ａ〜２３ｃを識別するＩＤとが一意に対応付けされていない場合は、別途、ユーザＩＤとそのユーザが使用している端末２３ａ〜２３ｃを識別するＩＤとを対応付けたテーブルを用意して、それを参照すればよい。
【００２９】
図３において、図２に示したコンテンツ推薦システムの詳細を示しその動作を説明する。コンテンツ推薦システムは、コンテンツ配信制御装置２０がコンテンツデータベース２１から推薦対象コンテンツ情報２４を取得し、コンテンツ推薦対象ユーザ選出装置１に対して推薦対象コンテンツ情報２４のメタデータであるキーワードの集合としてのコンテンツキーワード情報１１を送信し、それに対応してコンテンツ推薦対象ユーザ選出装置１から、推薦対象コンテンツ情報２４を送信するユーザとして適している被推薦ユーザを特定する推薦対象ユーザ情報１２を取得する。
【００３０】
そして、コンテンツ配信制御装置２０は、コンテンツ推薦対象ユーザ選出装置１から取得した推薦対象ユーザ情報１２で特定される推薦対象ユーザ（被推薦ユーザ）が利用している例えば端末２３ａ，２３ｃに対して推薦対象コンテンツ情報２４を送信する。
【００３１】
コンテンツ推薦対象ユーザ選出装置１は、スコア生成ブロック２と学習ブロック３および選出ブロック４の各処理機能ブロックを有し、スコア生成ブロック２においては、端末２ｄから操作情報１０（ユーザの操作履歴やコンテンツの利用履歴やアンケート結果等の情報）を随時入力し、学習ブロック３が用いるユーザ・キーワード間スコアデータを生成してユーザ・キーワード間スコア格納部２ｄで格納する。
【００３２】
学習ブロック３においては、スコア生成ブロック２で生成し格納したユーザ・キーワード間スコアデータを読み込み、関連性があるキーワードをグループ化したキーワード関係グループと、そのグループ別にユーザ毎のスコアを記録したグループ別ユーザ別スコアデータを、しかるべき契機で随時生成し、それぞれ、キーワード関係グループ抽出結果格納部３ｂ、グループ別ユーザ別スコア格納部３ｄで格納する。
【００３３】
選出ブロック４においては、コンテンツ情報入力手段４ａにより、コンテンツ配信制御装置２０から送信されたコンテンツキーワード情報１１を入力し、学習ブロック３におけるキーワード関係グループ抽出結果格納部３ｂとグループ別ユーザ別スコア格納部３ｄでの格納内容を参照して、推薦対象ユーザ情報出力手段４ｃによりしかるべき演算と処理によって推薦対象ユーザ（被推薦ユーザ）を選出し、選出結果を推薦対象ユーザ情報１２としてコンテンツ配信制御装置２０に対して出力する。
【００３４】
このコンテンツ推薦対象ユーザ選出装置１の詳細を、図１に基づき以下に説明する。図１に示すように、コンテンツ推薦対象ユーザ選出装置１は、スコア生成ブロック２と学習ブロック３および選出ブロック４の各処理機能ブロックを有し、このスコア生成ブロック２は、操作情報入力手段２ａ、コンテンツ利用ログ格納部２ｂ、書式変換手段２ｃ、ユーザ・キーワード間スコア格納部２ｄを有し、また、学習ブロック３は、キーワード関係グループ抽出手段３ａ、キーワード関係グループ抽出結果格納部３ｂ、グループ別ユーザ別スコア算出手段３ｃ、グループ別ユーザ別スコア格納部３ｄを有し、そして、選出ブロック４は、コンテンツキーワード情報入力手段４ａ、ユーザ別スコア算出手段４ｂ、推薦対象ユーザ情報出力手段４ｃ、選出条件記憶部（図中「選出条件」と記載）４ｄを有している。
【００３５】
このコンテンツ推薦対象ユーザ選出装置１の各ブロックについて詳細を説明する。スコア生成ブロック２においては、操作情報入力手段２ａにより、図４に具体例を示す操作情報１０を読み込み、コンテンツ利用ログ格納部２ｂにおいて、図５に具体例を示す内容のコンテンツ利用ログ情報を記録する。
【００３６】
さらに、書式変換手段２ｃにより、コンテンツ利用ログ格納部２ｂで記録した図５に例示するコンテンツ利用ログ情報を参照して、コンテンツの利用履歴に対する重み付けや正規化、データの書式変換等を実施し、スコア付け等の処理を行い、ユーザ毎にコンテンツのメタデータであるキーワードそれぞれに対してスコアが記録されたユーザ・キーワード間スコアデータを生成し、ユーザ・キーワード間スコア格納部２ｄにおいて、図６に具体例を示す内容で記憶装置に格納する。
【００３７】
例えば、書式変換手段２ｃは、図５に例示するコンテンツ利用ログにおいて、操作内容が「削除」となったキーワードがある場合、図６「ユーザ・キーワード間スコア」の該当ユーザの該当キーワードのスコアを「−１０」する。同様に、コンテンツ利用ログにおいて、操作内容が「アイコン保存」となったキーワードがある場合、「ユーザ・キーワード間スコア」の該当ユーザの該当キーワードのスコアを「＋１０」する。
【００３８】
尚、この書式変換手段２ｃでは、操作情報１０の種類や目的に応じて、スコアのつけ方や、変換の手法等をカスタマイズすることができる。
【００３９】
また、図５のコンテンツ利用ログにおいて、異なった利用シーンにおいて取得した操作情報１０が混在することも考えられる。例えば、あるテレビ番組の視聴履歴における「途中で視聴中断した」情報や、端末上のコンテンツアイコンの操作履歴における「アイコンを削除した」情報、書籍の利用履歴データにおける「１０分間アイコンを所持していた」情報などが混在する場合がある。
【００４０】
この場合は、予め書式変換手段２ｃにおいて、それぞれの利用シーン毎にスコアを定義しておくことで、異なる利用シーンであっても「ユーザ・キーワード間スコア」を生成することができる。例えば、「アイコン保存＝＋１０点」、「アイコン削除＝−１０点」、「アイコン消滅＝−５点」、「ａ分間アイコン所有＝＋log１０（ａ）点」、「コンテンツ起動＝＋２０点」、「コンテンツ途中中断＝−５点」、「コンテンツ完全利用＝＋５点」と定義しておく。
【００４１】
次に、学習ブロック３においては、キーワード関係グループ抽出手段３ａにより、ユーザ・キーワード間スコア格納部２ｄで格納したユーザ・キーワード間スコアデータ（図６参照）を読み込み、関係があるキーワード同士をしかるべき演算を行って抽出し、関係が得られた各キーワードをグループ化し、そのグループにグループＩＤ（識別子）を付与し、その結果を、図８に例示する内容で、キーワード関係グループ抽出結果格納部３ｂにおいて格納する。
【００４２】
さらに、グループ別ユーザ別スコア算出手段３ｃにより、キーワード関係グループ抽出結果格納部３ｂで格納したキーワード関係グループ抽出結果とユーザ・キーワード間スコア格納部２ｄで格納したユーザ・キーワード間スコアデータを基に、キーワード関係グループ毎に各ユーザのスコアをしかるべき演算を行って算出し、その結果を、図９に例示する内容でグループ別ユーザ別スコア格納部３ｄにおいて格納する。
【００４３】
選出ブロック４においては、コンテンツキーワード情報入力手段４ａにより、図２，３におけるコンテンツ配信制御装置２０等の外部装置から、図１１に例示する推薦対象コンテンツ情報２４に対応する図１２に例示するコンテンツキーワード集合１１を入力し、ユーザ別スコア算出手段４ｂにより、キーワード関係グループ抽出結果格納部３ｂとグループ別ユーザ別スコア格納部３ｄのそれぞれで格納された情報を読み出し、各情報を用いてしかるべき演算と処理を行ってユーザ別のスコアを算出する。
【００４４】
その後、推薦対象ユーザ情報出力手段４ｃにより、ユーザ別スコア算出手段４ｂで算出されたスコアが選出条件４ｄに合致する単数もしくは複数のユーザ（被推薦ユーザ）を選出し、推薦対象ユーザ情報１２として、図２，３におけるコンテンツ配信制御装置２０等の外部装置に出力する。
【００４５】
図４に例示する操作情報では、ユーザＩＤ「ｕｓｅｒ-ｃ」のユーザが、そのユーザが使用している端末（２３ｄ）上に表示されている「子猫さしあげます」というコンテンツを起動する起動アイコンに対し「保存」操作を１５時５５分に行った場合の例である。ここでは、「子猫さしあげます」というコンテンツには予め「Ｋ１」および「Ｋ３４」というキーワード（メタデータ）が付与されているとする。
【００４６】
このような操作情報（１０）は、端末（２３ｄ）の画面上の操作から取得することが可能である。例えば、端末（２３ｄ）の画面上にさまざまなコンテンツを起動するためのアイコンが表示されており、ユーザは必要に応じてそのアイコン押下することでコンテンツを利用したり、アイコンを削除したりフォルダに保存することが可能である場合、そのアイコンに対する操作を操作情報（１０）として取得することができる。
【００４７】
また、この操作情報（１０）として、視聴履歴、操作履歴、入力履歴、取得履歴、利用履歴、行動履歴といった様々なデータを用いることが可能である。
【００４８】
尚、本例では、操作情報（１０）において、コンテンツを説明するためのメタデータであるキーワードが予め付与されており、そのキーワードを用いているが、コンテンツを説明するためのキーワードが付与されておらず、代わりにコンテンツの説明文が付与されている場合は、その説明文に対して形態素解析等を行い当該コンテンツのメタデータであるキーワードを抽出するための別途処理が必要となる。
【００４９】
図５に例示するコンテンツ利用ログは、随時入力した操作情報（１０）から、学習ブロック３が利用可能なユーザ・キーワード間スコアデータの生成に必要な項目を抜粋して蓄積したものであり、「時刻」、「ユーザＩＤ」、「操作対象キーワード」、「操作内容」の各項目からなる。
【００５０】
図６に例示するユーザ・キーワード間スコアデータは、図１の書式変換手段２ｃによって、例えば図５に示すコンテンツ利用ログからスコア付け処理を行い、学習ブロック３で参照する形式で保存されたものであり、本例のユーザ・キーワード間スコアデータは、ユーザとキーワードの２次元配列変数であり、ユーザ毎およびキーワード毎にそれぞれにスコア（数値）が記録されている。
【００５１】
以下、この図６に示すコンテンツ利用ログに基づく学習ブロック３における処理動作例を、図７に基づき説明する。尚、本図７の例は、キーワード関係グループ抽出手段３ａにおけるキーワード関係グループを生成する演算にクラスタリング処理を用いる。
【００５２】
このように、キーワード関係グループを生成する演算にクラスタリング処理を用いた場合、キーワード関係グループ抽出手段３ａにおいて、まず、ユーザ・キーワード間スコア格納部２ｄで格納されたユーザ・キーワード間スコアデータを読み込み（ステップＳ７０１）、当該ユーザ・キーワード間スコアデータに対するクラスタリング処理を実施してキーワード集合のクラスタを生成する（ステップＳ７０２）。そして、生成したキーワード集合のクラスタを、それぞれキーワード関係グループとしてキーワード関係グループ抽出結果格納部３ｂに渡し格納する（ステップＳ７０３）。
【００５３】
生成されたキーワード関係グループは、例えば、図８に示すように、「グループＡ＝｛Ｋ１，Ｋ２，Ｋ８｝、「グループＢ＝｛Ｋ３，Ｋ９，Ｋ１０，Ｋ１２，Ｋ１５｝」、…といった具合になる。
【００５４】
尚、このクラスタリング処理の際は、生成クラスタ数、データの正規化の有無といったクラスタリング条件を設定ファイルにて記述しておいたり、ハードコーディングによって定義しておくことができる。また、生成されたキーワード関係グループ以外にも、予め登録しておいたキーワード関係グループを用いることも可能である。
【００５５】
次に、学習ブロック３では、グループ別ユーザ別スコア算出手段３ｃにより、キーワード関係グループ別にユーザ別のスコアであるグループ別ユーザ別スコアデータを算出する。すなわち、グループ別ユーザ別スコア算出手段３ｃは、ユーザ・キーワード間スコア格納部２ｄからユーザ・キーワード間スコアデータを１レコードずつ読み込む（ステップＳ７０４）。
【００５６】
例えば、キーワードを「ｋｅｙ」、ユーザを「ｕ」，ユーザ・キーワード間スコアデータを「ＳＣＯＲＥ（ｋｅｙ，ｕ）」と表す場合、図６に示すデータを１レコード読み込むと、「ＳＣＯＲＥ（Ｋ１，ｕｓｅｒ-ａ）＝２」、「ＳＣＯＲＥ（Ｋ１，ｕｓｅｒ-ｂ）＝−５」、「ＳＣＯＲＥ（Ｋ１，ｕｓｅｒ-ｃ）＝２」、「ＳＣＯＲＥ（Ｋ１，ｕｓｅｒ-ｄ）＝１」、「ＳＣＯＲＥ（Ｋ１，ｕｓｅｒ-ｅ）＝２」、「ＳＣＯＲＥ（Ｋ１，ｕｓｅｒ-ｆ）＝０」となる。
【００５７】
さらに、グループ別ユーザ別スコア算出手段３ｃは、このようにして読み込んだキーワード（ｋｅｙ）が、ステップＳ７０２で生成してステップＳ７０３においてキーワード関係グループ抽出結果格納部３ｂで格納したキーワード関係グループのいずれかに含まれているかを判別し、ｋｅｙを含むキーワード関係グループのグループＩＤである「ｇｒ」を取得し、（ステップＳ７０５）、そして、キーワード関係グループＩＤ「ｇｒ」のユーザｕの「グループ別ユーザ別スコア」ＳＣ（ｇｒ，ｕ）に、ステップＳ７０４で読み込んだスコアＳＣＯＲＥ（ｋｅｙ，ｕ）を加算する（「ＳＣ（ｇｒ，ｕ）＝ＳＣ（ｇｒ，ｕ）＋ＳＣＯＲＥ（ｋｅｙ，ｕ）」）（ステップＳ７０５）。
【００５８】
例えば、ステップＳ７０２で生成してステップＳ７０３においてキーワード関係グループ抽出結果格納部３ｂで格納したキーワード関係グループが図８に例示するキーワード関係グループであり、ステップＳ７０４で、図６に例示するユーザ・キーワード間スコアデータにおける最初の１レコード読み込んだ場合、ステップＳ７０４で読み込んだキーワードＫ１は、図８においてキーワード関係グループＡに含まれているため、図９に示すグループ別ユーザ別スコアデータにおけるグループＡ項目のユーザ毎のスコアにそれぞれキーワードＫ１の各ユーザのスコアを加算する。
【００５９】
この例の場合、グループ別ユーザ別スコアＳＣ（ｇｒ，ｕ）の演算は、「ＳＣ（グループＡ，ｕｓｅｒ-ａ）＝ＳＣ（グループＡ，ｕｓｅｒ-ａ）＋２」、「ＳＣ（グループＡ，ｕｓｅｒ-ｂ）＝ＳＣ（グループＡ，ｕｓｅｒ-ｂ）−５」、「ＳＣ（グループＡ，ｕｓｅｒ-ｃ）＝ＳＣ（グループＡ，ｕｓｅｒ-ｃ）＋２」、「ＳＣ（グループＡ，ｕｓｅｒ-ｄ）＝ＳＣ（グループＡ，ｕｓｅｒ-ｄ）＋１」、「ＳＣ（グループＡ，ｕｓｅｒ-ｅ）＝ＳＣ（グループＡ，ｕｓｅｒ-ｅ）＋２」、「ＳＣ（グループＡ，ｕｓｅｒ-ｆ）＝ＳＣ（グループＡ，ｕｓｅｒ-ｆ）＋０」となる。
【００６０】
グループ別ユーザ別スコア算出手段３ｃでは、ユーザ・キーワード間スコア格納部２ｄから全てのレコードを読み込み終わった場合は、次のステップＳ７０７の処理を行い、、まだの場合は再びステップＳ７０４からの処理を繰り返し実行する。尚、この際の分岐条件としては、ユーザ・キーワード間スコア格納部２ｄからすべてのレコードを読み込み終わった場合以外にも、予め設定しておいた条件に合致した場合なども考えられる。
【００６１】
ステップＳ７０７において、グループ別ユーザ別スコア算出手段３ｃは、ステップＳ７０５で生成したグループ別ユーザ別スコアＳＣ（ｇｒ，ｕ）を、グループ別ユーザ別スコア格納部３ｄに渡して格納する。
【００６２】
図８に示すキーワード関係グループデータは、キーワード関係グループ抽出手段３ａにおいて抽出されたキーワード関係グループを記述したデータである。本例のキーワード関係グループデータでは、キーワード関係グループ毎に、そのグループＩＤと、それぞれグループに含まれるキーワードを記述している。
【００６３】
尚、キーワード関係グループデータとしては、キーワード関係グループ抽出手段３ａで抽出したキーワード関係グループ以外に、予め定義しておいたキーワード関係グループも格納することが可能である。例えば、図８に例示するように、キーワード関係グループ抽出手段３ａで抽出したキーワード関係グループ以外に、全てのキーワードをグループにした「全キーワード」というキーワード関係グループを、予め登録しておくこともできる。
【００６４】
図９に示すグループ別ユーザ別スコアデータは、キーワード関係グループ抽出手段３ａで生成したキーワード関係グループ別に、ユーザそれぞれのスコアを格納したデータであり、ここでは、キーワード関係グループ抽出手段３ａで生成されたキーワード関係グループ「グループＡ」、「グループＢ」、「グループＣ」、「グループＤ」と、すべてのキーワードが含まれる「全キーワード」それぞれにおいて、ユーザ「ｕｓｅｒ-a」、「ｕｓｅｒ-b」、「ｕｓｅｒ-ｃ」、「ｕｓｅｒ-d」、「ｕｓｅｒ-e」、「ｕｓｅｒ-f」のスコアがそれぞれ対応付けて格納されている。
【００６５】
尚、図８の例で説明したように、「全キーワード」は、キーワード関係グループ抽出手段３ａで抽出されたキーワード関係グループではなく、別途定義されていたキーワード関係グループである。また、グループ別ユーザ別スコアは、学習ブロック３の実行時は空であり、グループ別ユーザ別スコア算出手段３ａにおいてスコアが加算されて生成される。
【００６６】
次に、このように学習ブロック３で生成した図８に示すキーワード関係グループデータと図９に示すグループ別ユーザ別スコアデータに基づく選出ブロック４における処理動作例を、図１０に基づき説明する。
【００６７】
まず、コンテンツキーワード情報入力手段４ａにおいて、推薦対象のコンテンツのメタデータであるキーワードの集合としてのコンテンツキーワード情報を入力する（ステップＳ８０１）。次に、ユーザ別スコア算出手段４ｂにおいて、キーワード関係グループ抽出結果格納部３ｂからキーワード関係グループデータを読み込む（ステップＳ８０２）。
【００６８】
さらに、ユーザ別スコア算出手段４ｂにおいて、ステップＳ８０１で入力したコンテンツキーワード情報と、ステップＳ８０２で読み込んだキーワード関係グループデータの各グループとの類似度を所定の算出式を用いて算出する（ステップＳ８０３）。類似度はキーワード関係グループのグループｇｒごとに算出する。
【００６９】
類似度の算出式の例としては、「類似度α（ｇｒ）＝（コンテンツキーワード情報と、キーワード関係グループｇｒとの両方に含まれるキーワード数）÷（キーワード関係グループｇｒに含まれるキーワード数）」がある。また、この他にも、コンテンツキーワード情報やキーワード関係グループは、それぞれキーワード集合のため、キーワードベクトルと考えて、キーワードベクトル同士の内積、余弦演算で類似度を求めても良い。
【００７０】
上述の算出式を用いた場合、例えば、ステップＳ８０１で図１２に示すコンテンツキーワード情報を入力し、ステップＳ８０２で図８に示すキーワード関係グループデータを読み込んだ場合、グループＡに属するキーワード数は「３（＝Ｋ１，Ｋ２，Ｋ８）」で、図１２におけるコンテンツキーワード情報とグループＡとの両方に含まれるキーワード数は「０」なので、「類似度α（グループＡ）＝０÷３＝０」となる。
【００７１】
同様に、グループＢに属するキーワード数は「５（＝Ｋ３，Ｋ９，Ｋ１０，Ｋ１２，Ｋ１５）」、コンテンツキーワード情報とグループＢとの両方に含まれるキーワード数は「２（＝Ｋ３，Ｋ１５）」なので、「類似度α（グループＢ）＝２÷５＝０．４」となり、グループＣに属するキーワード数は「２」、コンテンツキーワード情報とグループＣとの両方に含まれるキーワード数は「１」なので、「類似度α（グループＣ）＝１÷２＝０．５」、グループＤに属するキーワード数は「５」、コンテンツキーワード情報とグループＤとの両方に含まれるキーワード数は「１」なので、「類似度α（グループＤ）＝１÷５＝０．２」となり、全キーワード関係グループに属するキーワード数は「１５」、コンテンツキーワード情報と全キーワード関係グループとの両方に含まれるキーワード数は「４」なので、「類似度α（全キーワード）＝４÷１５＝０．２６７」となる。
【００７２】
このようにして類似度を算出した後、ユーザ別スコア算出手段４ｂは、類似度が一番大きいキーワード関係グループのグループＩＤを選出する（ステップＳ８０４）。上述の例の場合、類似度が一番大きいキーワード関係グループのグループＩＤは、グループＣ（類似度＝０．５）である。
【００７３】
そして、ユーザ別スコア算出手段４ｂは、グループ別ユーザ別スコア格納部３ｄで格納したグループ別ユーザ別スコア「ＳＣ（グループｇｒ，ユーザｕ）」を参照して、ステップＳ８０４で選出したキーワード関係グループのユーザ別のスコアＳ（ｕ）を取得する。
【００７４】
例えば、上述の例のように、ステップＳ８０４においてグループＣが選出された場合、図９におけるグループ別ユーザ別スコアデータからグループＣのユーザ別スコアを読み込み、その結果、所得するユーザ別スコアＳ（ｕ）は、「Ｓ（ｕｓｅｒ-ａ）＝ＳＣ（グループＣ，ｕｓｅｒ-ａ）＝−６」、「Ｓ（ｕｓｅｒ-ｂ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｂ）＝＋７」、「Ｓ（ｕｓｅｒ-ｃ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｃ）＝−８」、「Ｓ（ｕｓｅｒ-ｄ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｄ）＝＋９」、「Ｓ（ｕｓｅｒ-ｅ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｅ）＝−１３」、「Ｓ（ｕｓｅｒ-ｆ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｆ）＝−１０」となる。
【００７５】
推薦対象ユーザ情報出力手段４ｃでは、このようにしてユーザ別スコア算出手段４ｂで算出されたユーザ別スコアＳ（ｕ）から、予め選出条件記憶部４ｄにおいて設定された選出条件を満たしたスコアを有するユーザを選出し（ステップＳ８０６）、選出したユーザの識別子（ユーザＩＤ）を出力する（ステップＳ８０７）。
【００７６】
例えば、ステップＳ８０５で取得したユーザ別スコアが上述した「Ｓ（ｕｓｅｒ-ａ）＝ＳＣ（グループＣ，ｕｓｅｒ-ａ）＝−６」、「Ｓ（ｕｓｅｒ-ｂ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｂ）＝＋７」、「Ｓ（ｕｓｅｒ-ｃ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｃ）＝−８」、「Ｓ（ｕｓｅｒ-ｄ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｄ）＝＋９」、「Ｓ（ｕｓｅｒ-ｅ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｅ）＝−１３」、「Ｓ（ｕｓｅｒ-ｆ）＝ＳＣ（グループＣ，ｕｓｅｒ-ｆ）＝−１０」の場合で、選出対象ユーザの設定条件が「スコアが０以上のユーザ」である場合、その選出条件を満たした「ｕｓｅｒ-ｂ」と「ｕｓｅｒ-ｄ」を選出して出力する。
【００７７】
尚、選出条件記憶部４ｄに設定する選出条件は、予めハードコーディングしておいても良い。また、設定ファイルで記述しておいても良い。さらに、選択条件としては、ユーザ数やグループに含まれるキーワード数をはじめとする値を変数とした数式で記述しておいても良い。
【００７８】
図１１に示す推薦対象コンテンツ情報は、ユーザに推薦するコンテンツに関する情報を記述しており、本例では、コンテンツ名（「ＧｏＧｏトラ物語第３話」）やそのコンテンツへアクセスするためのＵＲＬ（リンク先ＵＲＬ）、そのコンテンツのアイコンのＵＲＬ（アイコンＵＲＬ）、さらに、そのコンテンツの内容を表現する単数もしくは複数のキーワード（Ｋ３，Ｋ４，Ｋ１３，Ｋ１５）が登録されている。尚、このような推薦対象コンテンツ情報のキーワードは、そのコンテンツの説明文を形態素解析したものを用いることも可能である。
【００７９】
図１２に示すコンテンツキーワード情報は、図１１の推薦対象コンテンツ情報からキーワードだけを取り出した情報であり、「Ｋ３，Ｋ４，Ｋ１３，Ｋ１５」の各キーワードからなる。
【００８０】
図１における選出ブロック４の処理動作例としては、図１０で示したものに限定されるものではなく、例えば、図１３に示す処理動作でも良い。この図１３に示す処理動作例は、図１０の処理フローにおけるステップＳ８０４とステップＳ８０５の処理部分のみ、図１３におけるステップＳ１３０４として別手法にしたものであり、図１３におけるステップＳ１３０１〜Ｓ１３０３、および、ステップＳ１３０５，Ｓ１３０６の処理は、それぞれ、図１０におけるステップＳ８０１〜Ｓ８０３、および、ステップＳ８０６，Ｓ８０７の処理に相当する。以下、その相違するステップＳ１３０４の処理部分のみ説明する。
【００８１】
ここで、キーワード関係グループを「ｇｒ」、コンテンツキーワード情報とキーワード関係グループｇｒとの類似度を「α（ｇｒ）」、グループ別ユーザ別スコアを「ＳＣ（ｇｒ，ｕ）」とする。本図１３のステップＳ１３０４の処理において、ユーザ別スコア「Ｓ（ｕ）」は、「Ｓ（ｕ）＝Σｇｒ｛ＳＣ（ｇｒ，ｕ）×α（ｇｒ）｝として算出する。この手法を用いることによって、複数のキーワード関係グループの特徴を反映したユーザ選出が可能となる。
【００８２】
以上、図１〜図１３を用いて説明したように、本例では、ネットワークを介して配信するコンテンツの推薦対象となるユーザ（被対象ユーザ）をコンピュータ処理して選出する際、まず、スコア生成ブロック２において、ユーザのコンテンツに対する操作内容と当該コンテンツのメタデータであるキーワード（図４および図５に示す操作情報およびコンテンツ利用ログ情報）に基づき、ユーザ別、かつキーワード別に操作内容に応じたスコアを累計して表（図６に示すユーザ・キーワード間スコア情報）を生成する。
【００８３】
次に、学習ブロック３において、図６に示すユーザ・キーワード間スコア情報に基づき、キーワードをグループ分けすると共に（図８のキーワード関係グループ情報）、この図８のキーワード関係グループ情報と図６のユーザ・キーワード間スコア情報に基づき、グループ別、かつ、ユーザ別に、グループ配下の各キーワードのスコアを累計して表（図９のグループ別ユーザ別スコア情報）を生成する。
【００８４】
そして、選出ブロック４において、推薦対象のコンテンツのメタデータであるキーワード群と図８のキーワード関係グループ情報における各グループのキーワード群との類似度を算出し、例えば、最も類似するキーワード群のグループを特定し、このグループに図９に示すグループ別ユーザ別スコア情報で対応付けられた各ユーザのスコアの内、例えばスコアが一定値以上である等の所定条件に合致するスコアのユーザを求め、求めたユーザを被対象ユーザとして選出する。
【００８５】
このように、本例の構成および処理によれば、全ユーザの利用履歴を基にして生成したキーワード関係グループを用いる協調的な手法を用いたユーザ推薦（リコメンド）を行うので、被推薦ユーザにとって利用実績が無いコンテンツであっても、当該被推薦ユーザへの推薦が可能となる。また、コンテンツをキーワードベクトルとして表現するため、全ユーザの利用実績がない新しいコンテンツであっても、当該ユーザへの推薦が可能となる。さらに、あるコンテンツを、多くのユーザ中から推薦に適したユーザを選出する場合であっても、協調ユーザを選出する必要がなく、コンテンツが属するグループを選択する処理を行うだけなので、処理がユーザ数に関連して大きくならず、高速なユーザ選出処理が可能となる。
【００８６】
尚、本発明は、図１〜図１３を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、キーワード関係グループ抽出手段３ａにおける、関係あるキーワード同士をグループ化する手法として、クラスタリング処理手法を用いているが、このクラスタリング手法以外にも、データマイニングの相関ルール抽出手法によってグループを生成する手法等を用いることでも良い。
【図面の簡単な説明】
【００８７】
【図１】本発明に係わるコンテンツ推薦対象ユーザ選出装置の構成例を示すブロック図である。
【図２】本発明に係わるコンテンツ推薦対象ユーザ選出装置が組み込まれたコンテンツ推薦システムの構成例を示すブロック図である。
【図３】図２におけるコンテンツ推薦システムの詳細構成を示すブロック図である。
【図４】図１におけるスコア生成ブロックの操作情報入力手段により入力される操作情報の具体例を示す説明図である。
【図５】図１におけるスコア生成ブロックのコンテンツ利用ログ格納部で格納されるコンテンツ利用ログの具体例を示す説明図である。
【図６】図１におけるスコア生成ブロックの書式変換手段により出力されるユーザ・キーワード間スコアの具体例を示す説明図である。
【図７】図１における学習ブロックの処理動作例を示すフローチャートである。
【図８】図１における学習ブロックのキーワード関係グループ抽出手段により抽出されキーワード関係グループ抽出結果格納部で格納されるキーワード関係グループ生成結果の具体例を示す説明図である。
【図９】図１における学習ブロックのグループ別ユーザ別スコア算出手段により算出されグループ別ユーザ別スコア格納部で格納されるグループ別ユーザ別スコア生成結果の具体例を示す説明図である。
【図１０】図１における選出ブロックの処理動作例を示すフローチャートである。
【図１１】図３におけるコンテンツ推薦システムのコンテンツ配信制御装置に入力される推薦対象コンテンツ情報の具体例を示す説明図である。
【図１２】本発明に係わるコンテンツ推薦対象ユーザ選出装置に入力されるコンテンツキーワード情報の具体例を示す説明図である。
【図１３】図１における選出ブロックの他の処理動作例を示すフローチャートである。
【符号の説明】
【００８８】
１：コンテンツ推薦対象ユーザ選出装置、２：スコア生成ブロック、２ａ：操作情報入力手段、２ｂ：コンテンツ利用ログ格納部、２ｃ：書式変換手段、２ｄ：ユーザ・キーワード間スコア格納部、３：学習ブロック、３ａ：キーワード関係グループ抽出手段、３ｂ：キーワード関係グループ抽出結果格納部、３ｃ：グループ別ユーザ別スコア算出手段、３ｄ：グループ別ユーザ別スコア格納部、４：選出ブロック、４ａ：コンテンツキーワード情報入力手段、４ｂ：ユーザ別スコア算出手段、４ｃ：推薦対象ユーザ情報出力手段、４ｄ：選択条件記憶部、１０：操作情報、１１：コンテンツキーワード情報、１２：推薦対象ユーザ情報、２０：コンテンツ配信制御装置、２１：コンテンツデータベース（「コンテンツＤＢ」）、２２：ネットワーク、２３ａ〜２３ｄ：端末、２４：推薦対象コンテンツ。
【図１】
2005141486.tif 000003
【図２】
2005141486.tif 000004
【図３】
2005141486.tif 000005
【図４】
2005141486.tif 000006
【図５】
2005141486.tif 000007
【図６】
2005141486.tif 000008
【図７】
2005141486.tif 000009
【図８】
2005141486.tif 000010
【図９】
2005141486.tif 000011
【図１０】
2005141486.tif 000012
【図１１】
2005141486.tif 000013
【図１２】
2005141486.tif 000014
【図１３】
2005141486.tif 000015