(57)【要約】【課題】レコメンド情報生成のためのクラスタリング処理の負荷を軽減することにより、新規ユーザへのレコメンド情報の迅速な提供に資する。【解決手段】クラスタリング処理装置１は、全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と各クラスタの代表ユーザに関するコンテンツ履歴特性を求める処理とを含む全クラスタリング処理を実行する全クラスタリング処理部１０と、新規加入した新規ユーザ情報を保持する新規ユーザ情報保持部２０と、新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する差分クラスタリング処理部３０と、を備える。【選択図】図２
2013200612.tif 000002
【特許請求の範囲】
【請求項１】
全ユーザのユーザ特徴ベクトルに基づいて全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と、各クラスタを代表する代表ユーザに関するコンテンツ履歴特性を求める処理と、を含む全クラスタリング処理を実行する全クラスタリング処理部と、
全クラスタリング処理後に新規加入した新規ユーザ情報を保持する新規ユーザ情報保持部と、
新規ユーザ情報に基づいて新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する差分クラスタリング処理部と、
を備えるクラスタリング処理装置。
【請求項２】
前記差分クラスタリング処理部は、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行する、
ことを特徴とする請求項１に記載のクラスタリング処理装置。
【請求項３】
前記全クラスタリング処理部は、各クラスタの代表ユーザのユーザ特徴ベクトルとメタデータＤＢとに基づいて、ばらつきが大きくなるように、代表ユーザに関するコンテンツ履歴特性を求める、
ことを特徴とする請求項１又は２に記載のクラスタリング処理装置。
【請求項４】
前記全クラスタリング処理部は、
各クラスタの代表ユーザを決定し、各クラスタの代表ユーザのユーザ特徴ベクトルにおける各次元の値を比較し、所定の基準に基づきばらつきが大きい上位の次元を選択し、前記上位の次元と対応する特徴語をワードリストとしてリスト化し、前記ワードリスト内に規定された特徴語をキーとしてメタデータＤＢを検索し、検索で得られたヒット率の高い上位のコンテンツについての履歴有無を２進数ビット列で算出することにより、
前記代表ユーザに関するコンテンツ履歴特性を求める、
ことを特徴とする請求項３に記載のクラスタリング処理装置。
【請求項５】
クラスタリング処理装置により実行されるクラスタリング処理方法であって、
全ユーザのユーザ特徴ベクトルに基づいて全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と、各クラスタを代表する代表ユーザに関するコンテンツ履歴特性を求める処理と、を含む全クラスタリング処理を実行する全クラスタリング処理実行ステップと、
全クラスタリング処理後に新規加入した新規ユーザ情報を保持する新規ユーザ情報保持ステップと、
新規ユーザ情報に基づいて新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する差分クラスタリング処理実行ステップと、
を備えるクラスタリング処理方法。
【請求項６】
前記全クラスタリング処理実行ステップにて、クラスタリング処理装置は、各クラスタの代表ユーザのユーザ特徴ベクトルとメタデータＤＢとに基づいて、ばらつきが大きくなるように、代表ユーザに関するコンテンツ履歴特性を求める、
ことを特徴とする請求項５に記載のクラスタリング処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レコメンド情報生成のためのクラスタリング処理を行うクラスタリング処理装置およびクラスタリング処理方法に関する。
【背景技術】
【０００２】
従来より、ユーザの携帯端末におけるコンテンツ履歴に応じて、そのユーザの嗜好に適したコンテンツ情報を提供するシステムが提案されている（下記の特許文献１参照）。
【０００３】
このようなシステムでは、各ユーザを、コンテンツ履歴（即ちユーザの嗜好）の傾向ごとに設けられたユーザグループ（以下、本件では「クラスタ」と称する）に割り当てて、クラスタごとにコンテンツ履歴（ユーザの嗜好）に適したレコメンド情報を提供するのが一般的である。
【０００４】
一方、流行やユーザの嗜好は日々変化していくため、クラスタへのユーザの割当てが固定的であれば好ましくはなく、所定の周期で、当該時点のコンテンツ履歴に基づいてユーザをクラスタへ割り当て直す処理（以下「クラスタリング処理」という）を実行することが望ましい。実際には全ユーザを対象としたクラスタリング処理（以下「全クラスタリング処理」という）が所定の周期で実行される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２５２１７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、全クラスタリング処理は、非常に負荷が大きく、多くの処理時間を要するため、実際には頻繁に実行することは困難である。そのため、新規ユーザは、加入後、次に全クラスタリング処理が実行されるまでの長い期間、どのクラスタにも割り当てられていない事態が生じてしまい、当該新規ユーザに対しレコメンド情報を提供するタイミングが遅れてしまう。
【０００７】
本発明は、かかる課題を解決するために成されたものであり、レコメンド情報生成のためのクラスタリング処理の負荷を軽減することにより、新規ユーザへのレコメンド情報の迅速な提供に資することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るクラスタリング処理装置は、全ユーザのユーザ特徴ベクトルに基づいて全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と、各クラスタを代表する代表ユーザに関するコンテンツ履歴特性を求める処理と、を含む全クラスタリング処理を実行する全クラスタリング処理部と、全クラスタリング処理後に新規加入した新規ユーザ情報を保持する新規ユーザ情報保持部と、新規ユーザ情報に基づいて新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する差分クラスタリング処理部と、を備えることを特徴とする。
【０００９】
上記のクラスタリング処理装置では、全クラスタリング処理部が、全ユーザのユーザ特徴ベクトルに基づいて全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と、各クラスタを代表する代表ユーザに関するコンテンツ履歴特性を求める処理と、を含む全クラスタリング処理を実行する。全クラスタリング処理後にユーザが新規加入すると、新規ユーザ情報保持部が、当該ユーザ（全クラスタリング処理後に新規加入した新規ユーザ）の新規ユーザ情報を保持する。そして、差分クラスタリング処理部は、新規ユーザ情報に基づいて新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する。
【００１０】
このように差分クラスタリング処理は、新規ユーザのみを対象とするため、全ユーザを対象とする全クラスタリング処理に対し、処理負荷が小さく処理時間も短い。また、差分クラスタリング処理の実行周期は、全クラスタリング処理の実行周期よりも短く設定されている。そのため、処理負荷の増大および処理時間の長期化を回避しつつ、差分クラスタリング処理を高い頻度で実行することにより新規ユーザへのレコメンド情報の迅速な提供に資することができる。
【００１１】
上記クラスタリング処理装置は、差分クラスタリング処理部が、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行するよう構成してもよい。このように、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行することで、時々刻々と蓄積していく新規ユーザの履歴と整合した適切なレコメンド情報を新規ユーザに提供することができる。即ち、ある新規ユーザに対する差分クラスラスタリング処理１回目では、当該新規ユーザは加入直後であると想定され、当該新規ユーザの履歴がまだ無いため、例えば当該新規ユーザは「履歴なしユーザ用クラスタ」に割り当てられる。もし、この時点で当該新規ユーザを差分クラスタリング処理の対象から外してしまうと、その後、当該新規ユーザがコンテンツ参照等をして当該新規ユーザの履歴が蓄積されても、当該新規ユーザに提供されるレコメンド情報が、次の全クラスタリング処理実行時まで変わらず、時々刻々と蓄積していく当該新規ユーザの履歴とは整合しないおそれがある。そこで、差分クラスタリング処理部が、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行することにより、時々刻々と蓄積していく新規ユーザの履歴と整合した適切なレコメンド情報を新規ユーザに提供することができる。
【００１２】
また、上記クラスタリング処理装置は、全クラスタリング処理部が、各クラスタの代表ユーザのユーザ特徴ベクトルとメタデータＤＢとに基づいて、ばらつきが大きくなるように、代表ユーザに関するコンテンツ履歴特性を求めるよう構成してもよい。より具体的には、全クラスタリング処理部は、各クラスタの代表ユーザを決定し、各クラスタの代表ユーザのユーザ特徴ベクトルにおける各次元の値を比較し、所定の基準に基づきばらつきが大きい上位の次元を選択し、当該上位の次元と対応する特徴語をワードリストとしてリスト化し、ワードリスト内に規定された特徴語をキーとしてメタデータＤＢを検索し、検索で得られたヒット率の高い上位のコンテンツについての履歴有無を２進数ビット列（0,1ビット列）で算出することによって、代表ユーザに関するコンテンツ履歴特性を求めてもよい。これにより、代表ユーザのユーザ特徴ベクトルにおける所定の基準に基づきばらつきが大きい上位の次元に基づいて、各代表ユーザに関するコンテンツ履歴特性（上記の２進数ビット列）をばらつきが大きくなるように設定することができる。そのため、新規ユーザを対象とする差分クラスタリング処理において、コンテンツの傾向の偏りをより少なくした上で、新規ユーザを適正なクラスタへ割り当てることができる。
【００１３】
上述したクラスタリング処理装置に係る発明は、クラスタリング処理方法に係る発明としても捉えることができ、以下のように記述することができる。以下のクラスタリング処理方法に係る発明は、同様の作用・効果を奏する。
【００１４】
即ち、本発明に係るクラスタリング処理方法は、クラスタリング処理装置により実行されるクラスタリング処理方法であって、全ユーザのユーザ特徴ベクトルに基づいて全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と、各クラスタを代表する代表ユーザに関するコンテンツ履歴特性を求める処理と、を含む全クラスタリング処理を実行する全クラスタリング処理実行ステップと、全クラスタリング処理後に新規加入した新規ユーザ情報を保持する新規ユーザ情報保持ステップと、新規ユーザ情報に基づいて新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する差分クラスタリング処理実行ステップと、を備えることを特徴とする。
【００１５】
また、上記のクラスタリング処理方法では、全クラスタリング処理実行ステップにて、クラスタリング処理装置が、各クラスタの代表ユーザのユーザ特徴ベクトルとメタデータＤＢとに基づいて、ばらつきが大きくなるように、代表ユーザに関するコンテンツ履歴特性を求めてもよい。
【発明の効果】
【００１６】
本発明によれば、クラスタリング処理の負荷を軽減することにより、新規ユーザへのレコメンド情報の迅速な提供に資することができる。
【図面の簡単な説明】
【００１７】
【図１】クラスタリング処理装置を含むシステム全体の構成図である。
【図２】第１実施形態のクラスタリング処理装置の機能構成を示すブロック図である。
【図３】第１実施形態のクラスタリング処理装置にて実行される処理のフロー図である。
【図４】クラスタリング処理の実行頻度を示す図である。
【図５】第２実施形態のクラスタリング処理装置の機能構成を示すブロック図である。
【図６】第２実施形態のクラスタリング処理装置にて実行される処理のフロー図である。
【図７】代表ユーザのコンテンツ履歴特性算出処理のサブルーチンを示すフロー図である。
【図８】図７のステップＳ１２の処理を説明するための図である。
【図９】図７のステップＳ１３の処理を説明するための図である。
【図１０】図７のステップＳ１４の処理を説明するための図である。
【図１１】図７のステップＳ１５の処理および差分クラスタリング処理を説明するための図である。
【図１２】クラスタリング処理装置のハードウェア構成図である。
【図１３】第２実施形態におけるビット列の距離を示す表である。
【発明を実施するための形態】
【００１８】
添付図面を参照しながら本発明の各種実施形態を説明する。可能な場合には、同一の部分には同一の符号を付して、重複する説明を省略する。
【００１９】
［第１実施形態］
第１実施形態では、全クラスタリング処理とは別に、新規ユーザを対象とする差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する実施形態を説明する。
【００２０】
図１には、本実施形態に係るクラスタリング処理装置１を内蔵したレコメンド情報生成装置１００を含むシステム全体の構成図を示す。この図１に示すように、レコメンド情報生成装置１００は、ネットワークを介して携帯端末２Ａ、２Ｂ、２Ｃ（以下「携帯端末２」と総称する）と無線通信可能であり、所定のタイミングで（例えば、携帯端末２からレコメンド要求があったとき、あるエリア内に携帯端末２が位置したとき、予め定められた時刻になったとき等）、携帯端末２向けのレコメンド情報を生成し配信する構成とされている。なお、図１には、レコメンド情報生成装置１００が無線ネットワーク網を介して携帯端末２と接続される構成を例示したが、レコメンド情報生成装置１００が接続されるクライアント装置は、携帯端末に限定されるものではなく、据え置き型のコンピュータなどのさまざまな情報通信装置を適用可能であり、ネットワークは、無線ネットワーク網に限定されるものではなく、有線ネットワーク網であってもよい。
【００２１】
図２には、レコメンド情報生成装置１００に内蔵された、本発明に関連するクラスタリング処理装置１の機能ブロック構成を示す。この図２に示すように、クラスタリング処理装置１は、全クラスタリング処理部１０と、新規ユーザ情報保持部２０と、差分クラスタリング処理部３０とを備える。なお、図２および後述する第２実施形態に係る図５では、本発明の理解を容易にするため、レコメンド情報生成装置１００の機能ブロック構成のうち、内蔵されたクラスタリング処理装置１に係る機能ブロック構成のみを示したが、レコメンド情報生成装置１００は、クラスタリング処理装置１以外のレコメンド情報生成処理に係る図示しない機能ブロックを備えることは言うまでもない。
【００２２】
全クラスタリング処理部１０は、全ユーザのユーザ特徴ベクトルに基づいて全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理と、各クラスタを代表する代表ユーザに関するコンテンツ履歴特性を求める処理と、を含む全クラスタリング処理を実行する部分である。なお、上記のうち、全ユーザをコンテンツ履歴に応じたクラスタへ割り当てる処理は、例えば、クラスタリングを行うための既存のアルゴリズムＫ−ｍｅａｎｓ法に基づく処理を採用してもよい。
【００２３】
新規ユーザ情報保持部２０は、全クラスタリング処理後に新規加入した新規ユーザ情報を保持する部分である。新規ユーザ情報保持部２０は、例えば新規ユーザを含む全てのユーザの情報をユーザテーブルにより管理し、新規ユーザ（差分クラスタリング処理の対象）のみに、新規ユーザを示すフラグを付けて管理する。ただし、この管理方法に限定されるものではなく、例えば、新規ユーザ情報保持部２０により、新規ユーザのみの情報を格納した新規ユーザテーブルと新規ユーザ以外のユーザの情報を格納したユーザテーブルとを別々に管理してもよい。また別の態様として、新規ユーザ情報保持部２０により、新規ユーザのみの情報を格納した新規ユーザテーブルを管理し、図示しないユーザ管理部により、新規ユーザ以外のユーザの情報を格納したユーザテーブルを管理してもよい。
【００２４】
差分クラスタリング処理部３０は、新規ユーザ情報に基づいて新規ユーザに関するコンテンツ履歴特性を求め、新規ユーザに関するコンテンツ履歴特性と各クラスタの代表ユーザに関するコンテンツ履歴特性とに基づいて、新規ユーザを当該新規ユーザのコンテンツ履歴に応じたクラスタへ割り当てる差分クラスタリング処理を、全クラスタリング処理の実行周期よりも短い周期で実行する部分である。本実施形態では、差分クラスタリング処理部３０が、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行する例を示す。ただし、このように新規ユーザについて差分クラスタリング処理を繰り返し実行することは必須要件ではない。
【００２５】
図１２には、クラスタリング処理装置１のハードウェア構成例を示す。クラスタリング処理装置１は、物理的には、ＣＰＵ１Ａ、主記憶装置であるＲＡＭ１Ｂ及びＲＯＭ１Ｃ、入力デバイスであるキーボード及びマウス等の入力装置１Ｄ、ディスプレイ等の出力装置１Ｅ、ネットワークカード等のデータ送受信デバイスである通信モジュール１Ｆ、ハードディスク等の補助記憶装置１Ｇなどを含むコンピュータシステムとして構成されている。図２において説明した各機能は、図１２に示すＣＰＵ１Ａ、ＲＡＭ１Ｂ等のハードウェア上に所定のコンピュータソフトウェアを読み込ませて実行することにより、ＣＰＵ１Ａの制御のもとで入力装置１Ｄ、出力装置１Ｅ、通信モジュール１Ｆを動作させ、ＲＡＭ１Ｂや補助記憶装置１Ｇにおけるデータの読み出し及び書き込みを行うことで実現される。
【００２６】
以下、図３、図４、図１１を用いて、クラスタリング処理装置１にて実行されるクラスタリング処理方法に係る処理について説明する。
【００２７】
図３に示すように、全クラスタリング処理の実行タイミングになると（ステップＳ１で肯定）、全クラスタリング処理部１０は、レコメンド情報提供に係るシステムが把握している全ユーザを対象とするクラスタリング処理を実行する（ステップＳ２）。この処理は、例えば、クラスタリングを行うための既存のアルゴリズムＫ−ｍｅａｎｓ法に基づく処理を採用してもよい。また、このとき全クラスタリング処理部１０は、当該時点の新規ユーザ情報をリセットする（ステップＳ２）。この新規ユーザ情報のリセットにより、後述する差分クラスタリング処理は、上記の全ユーザを対象とするクラスタリング処理の実行後に新規加入した新規ユーザのみを対象として実行されることとなる。
【００２８】
次に、全クラスタリング処理部１０は、各クラスタの代表ユーザを決定し、後述する差分クラスタリング処理で用いられる各代表ユーザに関するコンテンツ履歴特性を算出する（ステップＳ３）。代表ユーザの決定については、例えば、各クラスタ内で最も履歴の多いユーザを代表ユーザとして決定してもよい。また、第１、第２実施形態では、「コンテンツ履歴特性」としては、一例として、各コンテンツについての、当該コンテンツを参照したことを示すビット「１」又は当該コンテンツを参照しなかったことを示すビット「０」から成る0,1ビット列（以下単に「ビット列」ともいう）が採用される。
【００２９】
その後、新規ユーザが加入すると（ステップＳ４で肯定）、新規ユーザ情報保持部２０は、当該新規加入した新規ユーザ情報を保持する（ステップＳ５）。
【００３０】
そして、差分クラスタリング処理の実行タイミングになると（ステップＳ６で肯定）、差分クラスタリング処理部３０は、当該時点で新規ユーザ情報保持部２０により保持されている新規ユーザ情報に基づき、新規ユーザに関するコンテンツ履歴特性を算出する（ステップＳ７）。そして、差分クラスタリング処理部３０は、例えば以下の式を用いて、新規ユーザのビット列と各代表ユーザのビット列との距離Ｄを算出し、距離が最小である代表ユーザのクラスタへ新規ユーザを割り当てる（ステップＳ８）。
【数１】
2013200612.tif 000003
【００３１】
例えば、各代表ユーザのビット列が図１１（ａ）に示すビット列で、新規ユーザのビット列が図１１（ｂ）に示すビット列である場合は、距離Ｄが図１１（ｃ）に示すように算出される。ここで、差分クラスタリング処理部３０は、新規ユーザＩＤが「101」の新規ユーザ（新規ユーザ101）については、代表ユーザ001との距離Ｄが「０」で最小なので、この新規ユーザ101を代表ユーザ001のクラスタへ割り当て、新規ユーザＩＤが「102」の新規ユーザ（新規ユーザ102）については、代表ユーザ004との距離Ｄが「１」で最小なので、この新規ユーザ102を代表ユーザ004のクラスタへ割り当てる。
【００３２】
以後、図３の処理では、全クラスタリング処理の実行タイミングになると、ステップＳ２、Ｓ３が実行され、新規ユーザが加入すると、ステップＳ５が実行され、差分クラスタリング処理の実行タイミングになると、ステップＳ７、Ｓ８が実行される。このような処理が繰り返される。
【００３３】
図４に示すように、差分クラスタリング処理の実行周期は、全クラスタリング処理の実行周期よりも短く設定されている。例えば図４の例では、差分クラスタリング処理の実行周期が全クラスタリング処理の実行周期の「約１／８」に設定され、全クラスタリング処理の実行タイミングでは差分クラスタリング処理の重複実行を回避する（即ち差分クラスタリング処理を実行しない）よう設定されている。また、差分クラスタリング処理は、新規ユーザのみを対象とするため、全ユーザを対象とする全クラスタリング処理に対し、処理負荷が小さく処理時間も短い。そのため、第１実施形態によれば、処理負荷の増大および処理時間の長期化を回避しつつ、差分クラスタリング処理を高い頻度で実行することにより新規ユーザへのレコメンド情報の迅速な提供に資することができる。
【００３４】
また、差分クラスタリング処理部３０は、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行する。例えば図４において矢印Ａの時点で加入した新規ユーザについては、差分クラスタリング処理が計６回繰り返し実行され、矢印Ｂの時点で加入した新規ユーザについては、差分クラスタリング処理が計３回繰り返し実行される。ある新規ユーザに対する差分クラスラスタリング処理１回目では、当該新規ユーザはサービス加入直後であると想定され、当該新規ユーザの履歴がまだ無いため、当該新規ユーザは「履歴なしユーザ用クラスタ」に割り当てられる。この時点で当該新規ユーザを差分クラスタリング処理の対象から外してしまうと、その後、当該新規ユーザがコンテンツ参照等をして当該新規ユーザの履歴が蓄積されても、当該新規ユーザに提供されるレコメンド情報が、次の全クラスタリング処理実行時まで変わらず、時々刻々と蓄積していく当該新規ユーザの履歴とは整合しないおそれがある。そこで、差分クラスタリング処理部３０は、次の全クラスタリング処理が実行されるまでの間、新規ユーザについて差分クラスタリング処理を繰り返し実行することで、時々刻々と蓄積していく新規ユーザの履歴と整合した適切なレコメンド情報を新規ユーザに提供することができる。
【００３５】
［第２実施形態］
第２実施形態では、第１実施形態の処理において更に、差分クラスタリング処理で用いられる代表ユーザに関するコンテンツ履歴特性（0,1ビット列）を、ばらつきが大きくなるように作成する実施形態を説明する。なお、図１のシステム構成は、第１実施形態と同様であるので、重複した説明を省略する。
【００３６】
図５には、第２実施形態におけるクラスタリング処理装置１の機能ブロック構成を示す。この図５に示すように、クラスタリング処理装置１は、全クラスタリング処理部１０と、ユーザ管理部２０Ａと、差分クラスタリング処理部３０とを備える。クラスタリング処理装置１のハードウェア構成例は、第１実施形態で述べた図１２の構成と同様であるので、重複した説明を省略する。
【００３７】
全クラスタリング処理部１０は、全ユーザを対象とするクラスタリング処理を実行するための部分であり、クラスタリング処理部１１、代表ユーザ決定部１２、ユーザ特徴ベクトルばらつき算出部１３、特徴辞書管理部１４、ワードリスト管理部１５、メタデータ管理部１６、クラスタリング用コンテンツリスト管理部１７、および代表ユーザビット列算出部１８を備える。このうち、クラスタリング処理部１１は全クラスタリング処理を実行する部分であり、代表ユーザ決定部１２は各クラスタの代表ユーザを決定する部分である。この代表ユーザ決定部１２は例えば、各クラスタ内で最も履歴の多いユーザを代表ユーザとして決定してもよい。
【００３８】
ユーザ特徴ベクトルばらつき算出部１３は、各クラスタの代表ユーザのユーザ特徴ベクトルにおける各次元の値を比較し、所定の基準に基づきばらつきが大きい上位の次元（例えば、上位のＭ次元や、分散値がある閾値以上の次元など）を選択する部分である。なお、本実施形態では、ばらつきが大きい上位のＭ次元を選択する例を説明する。特徴辞書管理部１４は、特徴辞書を保持し管理する部分であり、ワードリスト管理部１５は、特徴辞書に予め規定された特徴語のうち上記選択された上位の次元と対応する特徴語をワードリストとしてリスト化する部分である。
【００３９】
メタデータ管理部１６は、メタデータＤＢを保持し管理する部分であり、クラスタリング用コンテンツリスト管理部１７は、ワードリスト内に規定された特徴語をキーとしてメタデータＤＢを検索し、ヒット率の高い順にコンテンツを並べクラスタリング用コンテンツリストを作成し管理する部分である。ここで、「ヒット率」とは、特徴語をキーとしてメタデータＤＢを検索した際に、コンテンツがヒットした特徴語の、キーとして使用した全特徴語に対する割合を意味する。そして、代表ユーザビット列算出部１８は、各代表ユーザについて、クラスタリング用コンテンツリスト内に記載された上位のコンテンツについて履歴有無を0,1ビット列で算出し保持する部分である。ここでの「上位のコンテンツ」とは、(1)上位ｎ個（ｎは予め定められた値）のコンテンツでもよいし、(2)クラスタリング用コンテンツリストに規定されたコンテンツの上から順に、履歴有無を示す0,1ビットを立てて行き、どの代表ユーザの0,1ビット列も他の代表ユーザと重複しなくなるために必要な数だけの上位のコンテンツでもよい。なお、本実施形態では、「上位のコンテンツ」を、上記の(1)上位ｎ個（ｎは予め定められた値）のコンテンツとする例について説明する。
【００４０】
ユーザ管理部２０Ａは、新規ユーザを含む全てのユーザの情報をユーザテーブル２１により管理する部分である。ユーザ管理部２０Ａは、例えばユーザテーブル２１において新規ユーザ（差分クラスタリング処理の対象）のみに、新規ユーザを示すフラグを付けて管理する。ただし、この管理方法に限定されるものではなく、ユーザ管理部２０Ａは、例えば、新規ユーザのみの情報を格納した新規ユーザテーブルと新規ユーザ以外のユーザの情報を格納したユーザテーブルとを別々に管理してもよい。
【００４１】
差分クラスタリング処理部３０は、新規ユーザを対象とするクラスタリング処理を実行するための部分であり、新規ユーザビット列算出部３１とクラスタリング処理部３２とを備える。新規ユーザビット列算出部３１は、差分クラスタリング処理に用いられる「新規ユーザのビット列」を算出する部分である。クラスタリング処理部３２は、後述する差分クラスタリング処理（新規ユーザのみを対象とするクラスタリング処理）を実行する部分である。
【００４２】
以下、図６〜図１１を用いて、クラスタリング処理装置１にて実行されるクラスタリング処理方法に係る処理について説明する。
【００４３】
図６に示すように、第２実施形態における処理の全体の流れは、第１実施形態における処理（図３）とほぼ同じであり、全クラスタリング処理の実行タイミングになると、ステップＳ２、Ｓ３Ａが実行され、新規ユーザが加入すると、ステップＳ５が実行され、差分クラスタリング処理の実行タイミングになると、ステップＳ７、Ｓ８が実行され、このような処理が繰り返される。
【００４４】
ただし、全クラスタリング処理部１０により実行されるステップＳ３Ａの処理が第１実施形態の処理とは異なるため、このステップＳ３Ａの処理を図７に基づき詳細に説明し、他のステップの説明は省略する。
【００４５】
全クラスタリング処理の実行タイミングになると（図６のステップＳ１で肯定）、クラスタリング処理部１１は、レコメンド情報提供に係るシステムが把握している全ユーザを対象とするクラスタリング処理を実行するとともに、当該時点の新規ユーザ情報をリセットする（ステップＳ２）。ここでの新規ユーザ情報のリセットにより、後述する差分クラスタリング処理は、上記の全ユーザを対象とするクラスタリング処理の実行後に新規加入した新規ユーザのみを対象として実行されることとなる。
【００４６】
そして、全クラスタリング処理部１０は、以下のようなステップＳ３Ａの処理（即ち、差分クラスタリング処理で用いられる各代表ユーザに関するコンテンツ履歴特性を算出するための処理）を実行する。
【００４７】
図７に示すように、まず、代表ユーザ決定部１２が各クラスタの代表ユーザを決定する（ステップＳ１１）。代表ユーザの決定については、例えば、各クラスタ内で最も履歴の多いユーザを代表ユーザとして決定してもよい。
【００４８】
次に、ユーザ特徴ベクトルばらつき算出部１３が、各クラスタの代表ユーザのユーザ特徴ベクトルにおける各次元の値を比較し、所定の基準に基づきばらつきが大きい上位の次元（ここでは一例として、ばらつきが大きい上位Ｍ次元）を選択する（ステップＳ１２）。例えば、図８には、各クラスタの代表ユーザ（代表ユーザＩＤ＝001,002,003,004）のユーザ特徴ベクトル（ここでは１６次元）の一例を示す。ここで、ユーザ特徴ベクトルばらつき算出部１３が、各次元について、代表ユーザ（代表ユーザＩＤ＝001,002,003,004）のユーザ特徴ベクトルの分散を算出し、代表ユーザのユーザ特徴ベクトルにおけるばらつきとする。そして、ばらつき（分散）が大きい上位Ｍ次元（ここでは上位５次元）、即ち次元１２、１６、１０、４、１を選択する。
【００４９】
次に、ワードリスト管理部１５が、特徴辞書管理部１４により管理された特徴辞書に予め規定された特徴語のうち、上記選択されたＭ次元（次元１２、１６、１０、４、１）と対応する特徴語をワードリストとしてリスト化する（ステップＳ１３）。例えば、図９には、特徴辞書に予め規定された１６次元の特徴語の一例を示す。ここで、ワードリスト管理部１５が、１６次元の特徴語のうち、上記選択された次元１２、１６、１０、４、１とそれぞれ対応する特徴語「映画」、「ドラマ」、「グルメ」、「J-POP」および「サッカー」をワードリストとしてリスト化する。
【００５０】
次に、クラスタリング用コンテンツリスト管理部１７が、ワードリスト内に規定された特徴語をキーとしてメタデータＤＢを検索し、ヒット率の高い順にコンテンツを並べ、クラスタリング用コンテンツリストを作成する（ステップＳ１４）。例えば図１０に示すように、クラスタリング用コンテンツリスト管理部１７が、ワードリスト内に規定された特徴語「映画」、「ドラマ」、「グルメ」、「J-POP」および「サッカー」のそれぞれをキーとしてメタデータＤＢを検索し、メタデータＤＢで管理している全コンテンツＮ個をヒット率の高い順に並べる。例えば、コンテンツ＃１が、特徴語「映画」、「ドラマ」をキーとしてメタデータＤＢを検索した際にコンテンツ＃１がヒットし、特徴語「グルメ」、「J-POP」、「サッカー」をキーとしてメタデータＤＢを検索した際にコンテンツ＃１がヒットしなかった場合は、ヒット率は２／５＝0.4となる。こうして得られたリスト（コンテンツ＃１、コンテンツ＃２、…、コンテンツ＃Ｎ）を、クラスタリング用コンテンツリストとする。
【００５１】
次に、代表ユーザビット列算出部１８が、各代表ユーザについて、クラスタリング用コンテンツリスト内に記載された上位のコンテンツ（ここでは一例として、上位ｎ個（ｎは予め定められた値）のコンテンツ）について履歴有無を0,1ビット列で算出し保持する（ステップＳ１５）。例えば図１１（ａ）には、ｎ＝４の場合に算出された代表ユーザ（代表ユーザＩＤ＝001,002,003,004）についての、コンテンツ履歴有無を示す0,1ビット列の一例を示す。ステップＳ１５で得られた各代表ユーザについての0,1ビット列は、次に全クラスタリング処理が実行されるまでの間、差分クラスタリング処理において用いられる。
【００５２】
このようにして、代表ユーザのユーザ特徴ベクトルにおけるばらつき（分散）が大きい上位Ｍ次元（ここでは上位５次元）に基づいて、各代表ユーザに関するコンテンツ履歴特性（0,1ビット列）をばらつきが大きくなるように設定することができる。
【００５３】
その後、差分クラスタリング処理の実行タイミングになると（図６のステップＳ６で肯定）、差分クラスタリング処理部３０は、当該時点で新規ユーザ情報保持部２０により保持されている新規ユーザ情報に基づき、新規ユーザに関するコンテンツ履歴特性を算出する（ステップＳ７）。そして、差分クラスタリング処理部３０は、例えば以下の式を用いて、新規ユーザのビット列と各代表ユーザのビット列との距離Ｄを算出し、距離が最小である代表ユーザのクラスタへ新規ユーザを割り当てる（ステップＳ８）。
【数２】
2013200612.tif 000004
上記の式は、第１実施形態の式と比較すると、新規ユーザのビット列と各代表ユーザのビット列の各次元における距離（ｂx,i−ｂy,i）2をビット列の各次元のインデックスｉで割っている点に違いがある。これは、上述のクラスタリング用コンテンツリスト管理部１７の処理において、全コンテンツＮ個をヒット率の高い順に並べており、インデックスｉが小さいコンテンツほどヒット率が高いコンテンツ（即ち、ユーザにとって重要なコンテンツ）となっているため、インデックスｉの値が小さいほど重みを大きくする重みづけを行うことを意味している。
【００５４】
例えば、各代表ユーザのビット列が前述したステップＳ１５で得られた図１１（ａ）のビット列で、新規ユーザのビット列が図１１（ｂ）のビット列である場合は、距離Ｄが図１３に示すように算出される。ここで、差分クラスタリング処理部３０は、新規ユーザＩＤが「101」の新規ユーザ（新規ユーザ101）については、代表ユーザ001との距離Ｄが「０」で最小なので、この新規ユーザ101を代表ユーザ001のクラスタへ割り当て、新規ユーザＩＤが「102」の新規ユーザ（新規ユーザ102）については、代表ユーザ003との距離Ｄが「0.83」で最小なので、この新規ユーザ102を代表ユーザ003のクラスタへ割り当てる。
【００５５】
以上説明した第２実施形態によれば、代表ユーザのユーザ特徴ベクトルにおける所定の基準に基づきばらつきが大きい上位の次元に基づいて、各代表ユーザに関するコンテンツ履歴特性（0,1ビット列）をばらつきが大きくなるように設定することができ、これにより、新規ユーザを対象とする差分クラスタリング処理において、コンテンツの傾向の偏りをより少なくしたうえで、新規ユーザを適正なクラスタへ割り当てることができる。
【符号の説明】
【００５６】
１…クラスタリング処理装置、１Ａ…ＣＰＵ、１Ｂ…ＲＡＭ、１Ｃ…ＲＯＭ、１Ｄ…入力装置、１Ｅ…出力装置、１Ｆ…通信モジュール、１Ｇ…補助記憶装置、２…携帯端末、１０…全クラスタリング処理部、１１…クラスタリング処理部、１２…代表ユーザ決定部、１３…ユーザ特徴ベクトルばらつき算出部、１４…特徴辞書管理部、１５…ワードリスト管理部、１６…メタデータ管理部、１７…クラスタリング用コンテンツリスト管理部、１８…代表ユーザビット列算出部、２０…新規ユーザ情報保持部、２０Ａ…ユーザ管理部、２１…ユーザテーブル、３０…差分クラスタリング処理部、３１…新規ユーザビット列算出部、３２…クラスタリング処理部、１００…レコメンド情報生成装置。
【図１】
2013200612.tif 000005
【図２】
2013200612.tif 000006
【図３】
2013200612.tif 000007
【図４】
2013200612.tif 000008
【図５】
2013200612.tif 000009
【図６】
2013200612.tif 000010
【図７】
2013200612.tif 000011
【図８】
2013200612.tif 000012
【図９】
2013200612.tif 000013
【図１０】
2013200612.tif 000014
【図１１】
2013200612.tif 000015
【図１２】
2013200612.tif 000016
【図１３】
2013200612.tif 000017