(57)【特許請求の範囲】
【請求項１】
一のアクセスユーザがサービスへアクセスする際に、各ユーザの分類を示す複数のクラスタから一のクラスタを選択するクラスタ選択装置であって、
前記アクセスユーザが前記サービスへ前回アクセスした際に、前記アクセスユーザの分類として選択されたクラスタを特定するクラスタ特定手段と、
前記アクセスユーザによる前記サービスへの前回のアクセスから、当該前回のアクセスから所定期間経過した後のアクセスである今回のアクセスまでのアクセス間隔に基づいて、前記クラスタ特定手段により特定されたクラスタに対する評価値であるユーザ評価値を算出するユーザ評価値算出手段と、
前記ユーザ評価値算出手段により算出されたユーザ評価値に基づいて今回のアクセスのクラスタを選択するクラスタ選択手段と、
を備えるクラスタ選択装置。
【請求項２】
前記サービスにより提供される複数コンテンツのユーザ毎の利用履歴情報に基づいて、各ユーザを前記複数のクラスタにクラスタリングするクラスタリング手段と、
前記クラスタリング手段によりクラスタリングされた複数のクラスタの各クラスタに対応する前記利用履歴情報に基づいたコンテンツの利用度合いと、前記アクセスユーザの利用履歴情報に基づいたコンテンツの利用度合いとを比較した比較値を算出する比較値算出手段をさらに備え、
前記クラスタ選択手段は、前記比較値算出手段により算出された比較値をさらに基づいて今回のアクセスのクラスタを選択する、請求項１に記載のクラスタ選択装置。
【請求項３】
前記ユーザ評価値算出手段は、各ユーザにおけるアクセス間隔に基づく確率分布から定められる値をさらに用いてユーザ評価値を算出する、請求項２に記載のクラスタ選択装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラスタを選択するクラスタ選択装置に関する。
【背景技術】
【０００２】
ユーザが過去に利用したコンテンツに基づいて、ユーザを分類する技術がある。例えば、特許文献１には、ある一つのコンテンツに対して、その再生回数やブロック番号を集計し、そのコンテンツの視聴傾向に基づいてユーザを分類することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１２３００５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のように、利用したコンテンツのみに基づいてユーザを分類しても、その分類結果がユーザにとって必ずしも適切でない可能性もある。例えば、ユーザが、単に他の分類に属するコンテンツ（他の分類に属するユーザによってよく利用されているコンテンツ）を知らないだけで、実はそちらの方が好きである場合や、もともとの分類のコンテンツには飽きてしまった場合が考えられる。このことを考慮して、ユーザから当該分類に対する評価が得られれば、その評価値に基づいて再度ユーザを分類し直した方がより正確にユーザを分類することができる。
【０００５】
そこで、過去に選択した分類に対するユーザの評価を考慮して、正確にユーザを分類するクラスタ選択装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係るクラスタ選択装置は、一のアクセスユーザがサービスへアクセスする際に、各ユーザの分類を示す複数のクラスタから一のクラスタを選択するクラスタ選択装置であって、アクセスユーザがサービスへ前回アクセスした際に、アクセスユーザの分類として選択されたクラスタを特定するクラスタ特定手段と、アクセスユーザによるサービスへの前回のアクセスから、当該前回のアクセスから所定期間経過した後のアクセスである今回のアクセスまでのアクセス間隔に基づいて、クラスタ特定手段により特定されたクラスタに対する評価値であるユーザ評価値を算出するユーザ評価値算出手段と、ユーザ評価値算出手段により算出されたユーザ評価値に基づいて今回のアクセスのクラスタを選択するクラスタ選択手段と、を備える。
【０００７】
このような本発明に係るクラスタ選択装置によれば、前回のアクセスから今回のアクセスまでのアクセス間隔によるユーザ評価値を算出し、算出したユーザ評価値に基づいて、今回のアクセス時のクラスタを選択する。このように、過去に選択したクラスタに対するユーザ評価値を考慮してクラスタを選択するので、より適切にユーザを分類することができる。
【０００８】
本発明に係るクラスタ選択装置では、サービスにより提供される複数コンテンツのユーザ毎の利用履歴情報に基づいて、各ユーザを複数のクラスタにクラスタリングするクラスタリング手段と、クラスタリング手段によりクラスタリングされた複数のクラスタの各クラスタに対応する利用履歴情報に基づいたコンテンツの利用度合いと、アクセスユーザの利用履歴情報に基づいたコンテンツの利用度合いとを比較した比較値を算出する比較値算出手段をさらに備え、クラスタ選択手段は、比較値算出手段により算出された比較値をさらに基づいて今回のアクセスのクラスタを選択してもよい。
【０００９】
このような本発明に係るクラスタ選択装置によれば、ユーザの評価値だけでなく、類似度を用いてクラスタを選択するので、総合的に評価した結果に基づいてクラスタを選択でき、より適切にクラスタを選択することができる。
【００１０】
本発明に係るクラスタ選択装置では、ユーザ評価値算出手段は、各ユーザにおけるアクセス間隔に基づく確率分布から定められる値をさらに用いてユーザ評価値を算出してもよい。
【００１１】
このような本発明に係るクラスタ選択装置によれば、確率分布を使用することにより、ユーザ評価値が極端な値にならないようにして、比較値とのバランスを取ってクラスタを選択することができるので、適切な評価値に基づいてユーザを分類することができる。
【発明の効果】
【００１２】
本発明によれば、過去に選択した分類に対するユーザの評価を考慮して、正確にユーザを分類することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態に係るサーバのブロック図である。
【図２】サーバ１０のハードウェア構成を示す図である。
【図３】ユーザログ記憶部１２が記憶する情報のデータ構造を示す図である。
【図４】クラスタリング結果記憶部１４が記憶する情報のデータ構造を示す図である。
【図５】各クラスタのコンテンツ利用確率を示す図である。
【図６】ユーザのコンテンツ利用率の例を示す図である。
【図７】ユーザの類似度を示す図である。
【図８】ユーザの類似度を示す図である。
【図９】再訪問時間記憶部１７が記憶する情報のデータ構造を示す図である。
【図１０】再訪問時間の分布を示す図である。
【図１１】各ユーザの評価値の変化を示す図である。
【図１２】総合評価記憶部２０が記憶する情報のデータ構造を示す図である。
【図１３】クラスタを選択する処理を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して、本発明の好適な実施形態について詳細に説明する。なお、図面の説明において同一又は相当要素には同一符号を付し、重複する説明は省略する。
【００１５】
図１に本実施形態に係るサーバ１０（クラスタ選択装置）を示す。サーバ１０は、ユーザに最適なクラスタを選択する装置である。クラスタとは、ユーザの分類を示す。例えば、ユーザが定期的に利用するサービスにおける利用傾向（過去に利用したサービスのコンテンツ、ユーザの嗜好性）に基づいた分類である。
【００１６】
サーバ１０は、インターネット等のネットワークに接続されるサーバ装置である。サーバ１０は、図示しないポータルサイトを提供するサーバ（ポータルサーバ）と接続し、当該ポータルサーバから当該ポータルサーバを利用したユーザのログであるユーザログ（利用履歴情報）を取得する。サーバ１０は、当該ユーザログを用いてクラスタを選択する。
【００１７】
ポータルサーバは、動画配信サービスを提供するサーバである。例えば、一のアクセスユーザが所持する端末（例えば、携帯電話、スマートフォン等）からユーザＩＤ（ユーザを識別する識別子）を送信すると共にポータルサーバへアクセス要求(動画配信サービス要求)があると、最初に、動画のコンテンツを選択可能な代表ページ（ＴＯＰページ）を端末へ出力する。ポータルサーバは、ユーザが属するクラスタに基づいて代表ページの内容を変えて出力する。このように、ポータルサーバは、ユーザに合わせて代表ページの内容を変えることにより、代表ページをパーソナライズしている。これは、ユーザの再訪問率（再度動画配信サービス要求する確率）を上げるためである。なお、当該コンテンツには、当該コンテンツの属性を示す情報（想定する対象ユーザを示す情報等）が対応付けられている。
【００１８】
ユーザによる代表ページの選択操作に応じて、端末は、動画のコンテンツの配信要求をポータルサーバへ行う。ポータルサーバは、配信要求を受け付けると、選択されたコンテンツを端末へ提供すると共に、当該コンテンツを利用した旨のユーザログを生成し、当該ユーザログを記憶する。具体的に、ポータルサーバは、ユーザログを識別するユーザログＩＤを生成し、当該ユーザログＩＤと、配信要求対象のコンテンツの識別子であるコンテンツＩＤと、アクセス要求したユーザのユーザＩＤと、動画配信要求した時刻とを関連付けたユーザログを生成し、当該ユーザログを記憶する。ポータルサーバは、サーバ１０からの要求に応じてユーザログを送信する。また、ポータルサーバは、ユーザからのアクセスを受け付けると、当該ユーザを示すユーザＩＤをサーバ１０へ送信すると共に、当該ユーザＩＤに対応するクラスタに基づくユーザ傾向情報の要求をサーバ１０へ送信する。
【００１９】
ユーザ傾向情報とは、ユーザのコンテンツの嗜好傾向を示す情報である。例えば、ユーザが属するクラスタに基づく情報である。サーバ１０は、ユーザＩＤと共に上記のユーザ傾向情報の要求を受信すると、複数のクラスタから一のクラスタを選択し、当該クラスタに基づくユーザ傾向情報をポータルサーバへ送信する。このように、サーバ１０は、ユーザがサービスへアクセスする際に、複数のクラスタから一のクラスタを選択する。ポータルサーバは、上記ユーザ傾向情報をサーバ１０から受信すると、当該ユーザ傾向情報に合わせた代表ページを端末へ出力する。
【００２０】
引き続いて、本実施形態に係るサーバ１０の機能について詳細に説明する。図１に示すように、サーバ１０は、ユーザログ取得部１１と、ユーザログ記憶部１２と、クラスタリング計算部１３（クラスタリング手段）と、クラスタリング結果記憶部１４と、要求受付部１５と、類似度算出部１６（比較値算出手段）と、再訪問評価値算出部１７（クラスタ特定手段、ユーザ評価値算出手段）と、再訪問時間記憶部１８と、クラスタ選択部１９（クラスタ選択手段）と、総合評価記憶部２０とを備えて構成される。
【００２１】
図２は、サーバ１０のハードウェア構成図である。図２に示すように、サーバ１０は、ＣＰＵ１０１、主記憶装置であるＲＡＭ（Random Access Memory）１０２及びＲＯＭ（Read Only Memory）１０３、通信を行うための通信モジュール１０４、並びにハードディスク等の補助記憶装置１０５等のハードウェアを備えるコンピュータを含むものとして構成される。これらの構成要素がプログラム等により動作することにより、図１に示す各機能要素による機能が発揮される。なお、サーバ１０は複数台のコンピュータによるコンピュータシステムによって構成されていてもよい。以下、図１に示す各機能要素について説明する。
【００２２】
ユーザログ取得部１１は、各ユーザによって利用されたコンテンツを示すユーザログを取得する。ユーザログ取得部１１は、例えば、ポータルサーバに対してユーザログを要求することで、上記のユーザログを取得する。
【００２３】
なお、ユーザログ取得部１１は、全ユーザのユーザログをポータルサーバから取得するようにしてもよいし、任意の複数のユーザのユーザログをポータルサーバから取得するようにしてもよい。また、ユーザログ取得部１１は、一定期間毎（例えば、１日毎）にポータルサーバに対してユーザログを要求するようにしてもよい。ユーザログ取得部１１は、各ユーザのユーザログを取得すると、ユーザログ記憶部１２へ記憶する。
【００２４】
ユーザログ記憶部１２は、ユーザログを記憶するデータベースである。ここで、ユーザログ記憶部１２が記憶する情報の例を図３に示す。図３に示すように、ユーザログ記憶部１２は、ユーザログＩＤと、ユーザＩＤと、コンテンツＩＤを示すct_idと、利用時間（利用開始時間）とを対応付けて記憶している。このように、ユーザログは、サービスにより提供される複数コンテンツのユーザ毎の利用履歴情報である。
【００２５】
ユーザログＩＤが「UsrLogID_001」、「UsrLogID_002」、及び「UsrLogID_003」であるレコードに示されるように、ユーザＩＤ「UsrID_001」に係るユーザが、コンテンツＩＤ「Ctid_001」、「Ctid_003」、及び「Ctid_009」に係るコンテンツを９月１日に利用したことを示す。
【００２６】
また、ユーザログＩＤが「UsrLogID_003」及び「UsrLogID_007」であるレコードに示されるように、ユーザＩＤ「UsrID_001」に係るユーザが７１時間経過後に再度アクセス（再訪問）している。また、ユーザログＩＤが「UsrLogID_006」及び「UsrLogID_009」であるレコードに示されるように、ユーザＩＤ「UsrID_002」に係るユーザが９６時間経過後に再度アクセスしている。
【００２７】
再訪問とは、ポータルサーバへアクセスした後に、一度ポータルサーバとの接続を終了して、再度ポータルサーバへアクセスすることをいう。サーバ１０は、ユーザがポータルサーバへアクセスした時刻から、当該ユーザにおける直近のユーザログの利用時間までの間隔を算出し、当該間隔が予め定められた間隔の閾値以上である場合に、再訪問であると判定する。例えば「６時間以上ユーザログが無かった場合、次の利用を再訪問とする」などが考えられる。上記間隔は、アクセスした時刻と、直近のユーザログの利用時間との差としているが、コンテンツの「利用終了時刻」を取得し「利用し終了時刻」と再訪問時の「利用時間（利用開始時間）」としてもよい。また、上記間隔の閾値は、サービス内容や適用環境によって異なるように設定されていてもよい。例えば、ユーザが頻繁にアクセスすることが想定されるサービスについては、閾値を短く設定することが考えられる。
【００２８】
クラスタリング計算部１３は、ユーザログに基づいて、複数のクラスタにクラスタリングする部分である。クラスタリング計算部１３は、ユーザログ記憶部１２からユーザＩＤとコンテンツＩＤとを取得する。クラスタリング計算部１３は、ユーザログ記憶部１２から一部のユーザのユーザＩＤとコンテンツＩＤとを取得する。なお、クラスタリング計算部１３は、全てのユーザのユーザＩＤとコンテンツＩＤとを取得してもよい。クラスタリング計算部１３は、取得したユーザＩＤとコンテンツＩＤを用いてクラスタリングをする。クラスタリング計算部１３は、ユーザＩＤに係るユーザが利用したコンテンツＩＤに係るコンテンツの利用状況に基づいてクラスタリングを行う。すなわち、クラスタリング計算部１３は、利用するコンテンツ間の類似度が近いユーザ同士を同一クラスタとするようにクラスタを形成する。
【００２９】
具体的に、クラスタリング計算部１３は、ＬＤＡ（Latent Dirichlet allocation）やＫ−ｍｅａｎｓなどの公知のクラスタリング技術を用いて、クラスタを形成する。クラスタリング計算部１３は、クラスタ毎にそれぞれのコンテンツの利用回数を算出する。クラスタリング計算部１３は、上記のように、クラスタ毎にそれぞれのコンテンツの利用回数をクラスタリング結果記憶部１４へ記憶する。
【００３０】
クラスタリング結果記憶部１４は、コンテンツ毎の各クラスタにおける利用回数を記憶する。ここで、クラスタリング結果記憶部１４が記憶する情報例を図４に示す。図４に示すように、クラスタリング結果記憶部１４は、各クラスタにおける、各コンテンツの利用回数を記憶している。後述する類似度算出部１６は、クラスタリング結果記憶部１４に記憶されている情報を用いて、アクセスユーザのコンテンツ利用状況と、各クラスタに対応するコンテンツ利用状況との類似度を算出する。
【００３１】
要求受付部１５は、ポータルサーバからユーザＩＤを受信すると共にユーザ傾向情報の要求を受け付ける部分である。要求受付部１５は、ポータルサーバから受信したユーザＩＤを類似度算出部１６及び再訪問評価値算出部１７へ通知する。また、要求受付部１５は、当該ユーザＩＤと受信した時刻を再訪問評価値算出部１７へ通知する。
【００３２】
類似度算出部１６は、複数のクラスタの各クラスタに対応するユーザログに基づいたコンテンツの利用度合いと、アクセスユーザのユーザログに基づいたコンテンツの利用度合いとの類似度を算出する部分である。
【００３３】
まず、類似度算出部１６は、要求受付部１５からユーザＩＤを受信すると、クラスタリング結果記憶部１４から各クラスタの各コンテンツ利用回数を取得する。そして、類似度算出部１６は、各クラスタにおける各コンテンツ利用率を算出する。例えば、類似度算出部１６は、図４に示したクラスタリング結果記憶部１４を参照して、クラスタ「ｃｌａｓｓ＿１」の各コンテンツの利用回数の合計を算出する。この合計値は、１０１５７になる。続いて、類似度算出部１６は、各コンテンツの利用回数と当該合計値との除算結果を算出して、クラスタ「ｃｌａｓｓ＿１」の各コンテンツ利用率を算出する。また、類似度算出部１６は、クラスタ「ｃｌａｓｓ＿２」〜クラスタ「ｃｌａｓｓ＿１０」についても同様に各コンテンツの利用率を算出する。
【００３４】
類似度算出部１６が、各クラスタにおける各コンテンツの利用率を算出した結果を図５に示す。クラスタ「ｃｌａｓｓ＿１」の各コンテンツの利用回数の合計は１０１５７であり、当該クラスタ「ｃｌａｓｓ＿１」のｃｔ＿ｉｄ「Ｃｔｄｉ＿００１」の利用回数が２であるので、クラスタ「ｃｌａｓｓ＿１」におけるｃｔ＿ｉｄ「Ｃｔｄｉ＿００１」の利用率は、０．０００１９６９である。
【００３５】
続いて、類似度算出部１６は、要求受付部１５から取得したユーザＩＤに係るユーザの各コンテンツの利用率を算出する。類似度算出部１６は、ユーザログ記憶部１２から当該ユーザＩＤに対応するユーザログを取得する。例えば、図３に示したユーザログ記憶部１２に記憶されているユーザログが示す９月４日時点でユーザＩＤ「ＵｓｒＩＤ＿００１」に係るユーザからアクセスがあった場合（９月４日時点で、ポータルサーバからユーザＩＤ「ＵｓｒＩＤ＿００１」と共にユーザ傾向情報の要求を受け付けた場合）と９月６日時点でユーザＩＤ「ＵｓｒＩＤ＿００２」に係るユーザからアクセスがあった場合の例を説明する。
【００３６】
類似度算出部１６は、ユーザＩＤ「ＵｓｒＩＤ＿００１」に係るユーザからアクセスがあった場合、ユーザログ記憶部１２からユーザＩＤが「ＵｓｒＩＤ＿００１」であるユーザログを取得する。上記のように９月４日の時点であるので、類似度算出部１６は、利用時間が９月４日以前である９月１日のユーザログを取得する。具体的に、類似度算出部１６は、ユーザＩＤが「ＵｓｒＩＤ＿００１」であり、ｃｔ＿ｉｄが「Ｃｔｉｄ＿００１」、「Ｃｔｉｄ＿００３」、「Ｃｔｉｄ＿００９」である３件のユーザログを取得する。
【００３７】
また、類似度算出部１６は、ユーザＩＤ「ＵｓｒＩＤ＿００２」からアクセスがあった場合、ユーザログ記憶部１２からユーザＩＤが「ＵｓｒＩＤ＿００２」であるユーザログを取得する。上記のように９月６日の時点であるので、類似度算出部１６は、利用時間が９月６日以前である９月１日のユーザログを取得する。具体的に、類似度算出部１６は、ユーザＩＤが「ＵｓｒＩＤ＿００２」であり、ｃｔ＿ｉｄが「Ｃｔｉｄ＿００２」、「Ｃｔｉｄ＿００３」、「Ｃｔｉｄ＿００９」である３件のユーザログを取得する。
【００３８】
続いて、類似度算出部１６は、取得したユーザログを用いて、各ユーザのコンテンツ利用率を算出する。具体的に、類似度算出部１６は、各コンテンツの利用回数と各ユーザのユーザログ件数（各ユーザの全利用回数）との除算結果を算出する。ユーザＩＤ「ＵｓｒＩＤ＿００１」及びユーザＩＤ「ＵｓｒＩＤ＿００２」の各コンテンツ利用率の算出結果を図６に示す。上記のユーザＩＤ「ＵｓｒＩＤ＿００１」の場合、ｃｔ＿ｉｄ「Ｃｔｉｄ＿００１」、「Ｃｔｉｄ＿００３」、「Ｃｔｉｄ＿００９」のそれぞれ１回ずつ利用しており、ユーザの全利用回数が３であるので、それぞれのコンテンツの利用率は、０．３３３となる。また、ｃｔ＿ｉｄ「Ｃｔｉｄ＿００１」、「Ｃｔｉｄ＿００３」、「Ｃｔｉｄ＿００９」以外のコンテンツは、利用回数が無い。後述する類似度を算出する際に極限値になることを防止するため、類似度算出部１６は、利用回数が無いコンテンツの利用率を任意の小さい値とする。本実施形態では、「０．００１」とする。
【００３９】
ユーザＩＤ「ＵｓｒＩＤ＿００２」の場合、ｃｔ＿ｉｄ「Ｃｔｉｄ＿００２」、「Ｃｔｉｄ＿００３」、「Ｃｔｉｄ＿００９」のそれぞれ１回ずつ利用しており、全体の利用回数が３であるので、それぞれのコンテンツの利用率は、０．３３３となる。また、類似度算出部１６は、ｃｔ＿ｉｄ「Ｃｔｉｄ＿００２」、「Ｃｔｉｄ＿００３」、「Ｃｔｉｄ＿００９」以外のコンテンツの利用率を上述のようにコンテンツの利用率を「０．００１」とする。
【００４０】
続いて、類似度算出部１６は、ユーザのコンテンツ利用率の分布と、各クラスタのコンテンツ利用率の分布との類似度を算出する。具体的に、類似度算出部１６は、Ｐ（ｉ）を各ユーザのコンテンツ利用率とし、Ｑ（ｉ）を各クラスタのコンテンツ利用率として、以下に示す式により、カルバック・ライブラー・ダイバージェンス（ＫＬＤ）値を算出する。このＫＬＤ値が類似度Ｇとなる。ｉは、ｉ番目のコンテンツを示す。なお、分布間の距離を算出する他の方法（内積やコサイン距離）を用いるようにしてもよい。
【数１】
0006570978.tif 000002
【００４１】
上記のＫＬＤ値は、小さいほどそれぞれの分布の距離が小さいことを示す。すなわち、それぞれの分布が類似していることを示す。ユーザＩＤ「ＵｓｒＩＤ＿００１」の場合における、ユーザのコンテンツ利用率の分布と、各クラスタのコンテンツ利用率の分布とに基づいた類似度Ｇの例を図７に示す。
【００４２】
図７に示すように、類似度算出部１６は、クラスタ毎に、ユーザのコンテンツ利用率と、クラスタのコンテンツ利用率との比率を用いた類似度を算出する。図７に示す類似度Ｇによれば、クラスタ「ｃｌａｓｓ＿５」がユーザＩＤ「ＵｓｒＩＤ＿００１」のコンテンツ利用率に最も類似することを示している。
【００４３】
ユーザＩＤ「ＵｓｒＩＤ＿００２」の場合における、ユーザのコンテンツ利用率の分布と、各クラスタのコンテンツ利用率の分布とに基づいた類似度Ｇの例を図８に示す。
【００４４】
図８に示す類似度Ｇによれば、クラスタ「ｃｌａｓｓ＿８」がユーザＩＤ「ＵｓｒＩＤ＿００２」のコンテンツ利用率に最も類似することを示している。
【００４５】
類似度算出部１６は、各クラスタの類似度Ｇ及びユーザＩＤをクラスタ選択部１９へ通知する。クラスタ選択部１９は、この類似度Ｇを用いてクラスタを選択する。
【００４６】
再訪問評価値算出部１７は、アクセスユーザによるサービスへの前回のアクセスから、当該前回のアクセスから所定期間経過した後のアクセスである今回のアクセスまでのアクセス間隔に基づいて、前回のアクセスのクラスタに対するユーザ評価値を算出する部分である。再訪問評価値算出部１７は、要求受付部１５からユーザＩＤ及び受信した時刻を取得する。
【００４７】
再訪問評価値算出部１７は、ユーザＩＤ及び直近に選択されたクラスタを有する総合評価記憶部２０からアクセスユーザが前回アクセスした時に、クラスタ選択部１９によって選択されたクラスタを取得する。このように、再訪問評価値算出部１７は、アクセスユーザがサービスへ前回アクセスした際に、選択されたクラスタを特定する。
【００４８】
再訪問評価値算出部１７は、ユーザログ記憶部１２を参照して、要求受付部１５から取得したユーザＩＤを検索キーとして、最も直近の利用時間を前回のアクセスの時間として取得する。再訪問評価値算出部１７は、受信した時刻と、当該最も直近の利用時間との差分を、前回のアクセスから今回のアクセスまでのアクセス間隔（再訪問時間）として算出する。なお、再訪問評価値算出部１７は、当該間隔が上述の間隔の閾値を下回る場合、再度ユーザログ記憶部１２を参照して、上記ユーザＩＤを検索キーとして、次に近い利用時間（前回のアクセスの時間）を取得するようにしてもよい。このように、再訪問評価値算出部１７は、前回のアクセスから所定期間経過後のアクセスである今回のアクセスまでのアクセス間隔を算出する。
【００４９】
再訪問評価値算出部１７は、当該アクセス間隔に基づいて再訪問時間記憶部１８に記憶されている情報を更新する。ここで、再訪問時間記憶部１８が記憶している情報例を図９に示す。図９に示すように、クラスタと、ユーザＩＤと、再訪問時間と、回数とを対応付けて記憶している。これは、各クラスタでユーザがアクセスした場合における、再訪問するまでの平均時間と、当該再訪問の回数とを記憶していることを意味する。
【００５０】
再訪問評価値算出部１７は、要求受付部１５から取得したユーザＩＤと、総合評価記憶部２０から取得したクラスタとに対応する再訪問時間及び回数を更新する。また、再訪問評価値算出部１７は、再訪問時間記憶部１８に記憶されている情報を用いて、上記総合評価記憶部２０から取得したクラスタに過去にアクセスした全ユーザの再訪問時間の平均時間を算出する。具体的には、再訪問評価値算出部１７は、上記総合評価記憶部２０から取得したクラスタを有する全レコードの再訪問時間の平均値と回数を取得し、当該平均値と回数とを用いて全ユーザの再訪問時間の平均時間を算出する。
【００５１】
続いて、再訪問評価値算出部１７は、上記総合評価記憶部２０から取得したクラスタにおける標準偏差を算出する。具体的には、再訪問評価値算出部１７は、上記総合評価記憶部２０から取得したクラスタを有する全レコードの再訪問時間の平均値と回数を取得し、当該平均値と回数とを用いて全ユーザの再訪問時間の標準偏差を算出する。再訪問評価値算出部１７は、各ユーザが、再訪問の平均時間で回数分アクセスしたとみなして標準偏差を算出する。なお、再訪問時間記憶部１８が、毎回ユーザがアクセスした時間をクラスタ毎に全て記憶しておき、再訪問評価値算出部１７は、この時間に基づいて、標準偏差を算出するようにしてもよい。
【００５２】
再訪問評価値算出部１７は、以下の式により、前回のアクセスのクラスタに対するユーザ評価値Ｈを算出する。
【数２】
0006570978.tif 000003
【００５３】
AveRes_kは、前回のアクセスのクラスタに属する全ユーザの再訪問時間の平均時間であり、Res_u_kは、アクセスユーザの前回のアクセスから今回のアクセスまでのアクセス間隔であり、s_kは、全ユーザの再訪問時間の標準偏差である。Normalは、正規分布を示す。このように、再訪問評価値算出部１７は、各ユーザにおけるアクセス間隔に基づく確率分布から定められる値をさらに用いてユーザ評価値Ｈを算出する。なお、Res_u_kを他の再訪問時間としてもよい。例えば、ユーザが再訪問するまでの平均時間としてもよい。また、s_kを、全ユーザの再訪問時間の標準偏差としたが、当該ユーザの再訪問の標準偏差としてもよい。この場合、突出した少数のユーザ影響を小さくすることができる。また、正規分布ではなく、他の分布としてもよい。例えば、比較的ユーザ再訪問率が高いサービスであれば、ポアソン分布が考えられる。
【００５４】
ここで、図１０に、クラスタ「ｃｌａｓｓ＿５」の正規分布の例を示す。平均値（Ave_Res_k）は、６２．２５であり、標準偏差が２９．２６０７である。よって、クラスタ「ｃｌａｓｓ＿５」におけるNormal(AveRes_k、s_k^2)の値は、０．０１３６３４となる。そうすると、ユーザＩＤ「ＵｓｒＩＤ＿００１」のユーザ評価値は、（６２．２５−７１）＊（０．０１３６３４）≒−０．１１９となる。また、クラスタ「ｃｌａｓｓ＿８」の平均が５８．１０であり、標準偏差が３０．５０である場合、Normal(AveRes_k、s_k^2)の値は、０．０１３０８０となる。そうすると、ユーザＩＤ「ＵｓｒＩＤ＿００２」のユーザ評価値は、（５８．１０−９６）＊（０．０１３０８０）≒−０．４９５となる。
【００５５】
再訪問評価値算出部１７は、ユーザ評価値Ｈを算出する際に、正規分布による確率値を乗算することにより、ユーザ評価値Ｈが非常に極端な値となってしまうことを防止している。すなわち、再訪問評価値算出部１７は、ユーザが長期間アクセスしなかった結果、Res_u_kが大きくなり、ユーザ評価値Ｈが非常に極端な値になってしまうことを防止する。再訪問評価値算出部１７は、上記ユーザ評価値を算出すると、当該ユーザ評価値をクラスタ選択部１９へ送出する。
【００５６】
クラスタ選択部１９は、再訪問評価値算出部１７により算出されたユーザ評価値Ｈと、類似度算出部１６により算出された類似度Ｇとに基づいて今回のアクセスのクラスタを選択する部分である。クラスタ選択部１９は、類似度算出部１６からユーザＩＤと共に各クラスタの類似度Ｇを取得する。また、クラスタ選択部１９は、再訪問評価値算出部１７からユーザＩＤと共にユーザ評価値Ｈを取得する。
【００５７】
クラスタ選択部１９は、以下の式を用いてユーザのクラスタごとの総合評価値Ｆを計算する。
【数３】
0006570978.tif 000004
【００５８】
上記式のαとβは、それぞれ類似度Ｇとユーザ評価値Ｈとにかける重みであり、任意に決めてよい。例えば、αを−１．０、βを５．０とする。αに負の値を設定したのは、ＫＬＤ値を用いていることにより、「類似度Ｇが高いほどスコアが小さくなる」ためである。αをこのように設定することにより、クラスタ選択部１９は、総合評価値Ｆの値が最大のクラスタを更新クラスタ（今回のアクセスのクラスタ）に決定する。このように、クラスタ選択部１９は、再訪問評価値算出部１７により算出されたユーザ評価値Ｈと、類似度算出部１６により算出された類似度Ｇとに基づいて今回のアクセスのクラスタを選択する。
【００５９】
ここで、上記総合評価値Ｆの例を図１１に示す。図１１（Ａ）は、前回の訪問時における総合評価値Ｆであり、図１１（Ｂ）は、再訪問時における総合評価値Ｆである。
【００６０】
図１１（Ａ）では、ユーザＩＤ「ＵｓｒＩＤ＿００１」については、クラスタ「ｃｌａｓｓ＿５」が最も大きい値となるので、サーバ１０は、クラスタ「ｃｌａｓｓ＿５」に分類して、その分類した結果（クラスタの選択）に基づくユーザ傾向情報をポータルサーバへ送信する。また、ユーザＩＤ「ＵｓｒＩＤ＿００２」については、クラスタ「ｃｌａｓｓ＿８」が最も大きい値となるので、サーバ１０は、クラスタ「ｃｌａｓｓ＿８」に分類して、その分類した結果に基づくユーザ傾向情報をポータルサーバへ送信する。
【００６１】
図１１（Ｂ）では、ユーザＩＤ「ＵｓｒＩＤ＿００１」については、クラスタ「ｃｌａｓｓ＿５」に対して、ユーザ評価値Ｈが加わった結果、クラスタ「ｃｌａｓｓ＿８」の方が大きくなったため、サーバ１０は、クラスタ「ｃｌａｓｓ＿８」に分類して、その分類した結果に基づくユーザ傾向情報をポータルサーバへ送信する。ユーザＩＤ「ＵｓｒＩＤ＿００２」については、クラスタ「ｃｌａｓｓ＿８」に対して、ユーザ評価値Ｈが加わった結果、クラスタ「ｃｌａｓｓ＿３」の方が大きくなったため、サーバ１０は、クラスタ「ｃｌａｓｓ＿３」に分類して、その分類した結果に基づくユーザ傾向情報をポータルサーバへ送信する。
【００６２】
このように、クラスタ選択部１９は、ユーザ評価値Ｈを用いてクラスタを選択するので、過去に選択したクラスタに対するユーザの評価を加えて適切にクラスタを選択することができる。
【００６３】
また、クラスタ選択部１９は、ユーザＩＤと、選択したクラスタと、再訪問日時とを関連付けた情報を総合評価記憶部２０へ記憶する。ここで、総合評価記憶部２０が記憶する情報の例を図１２に示す。図１２に示すように、総合評価記憶部２０は、ユーザＩＤと、選択したクラスタ（更新クラスタ）と、再訪問日時とを関連付けた情報を記憶している。再訪問評価値算出部１７が当該総合評価記憶部２０を参照して、前回のクラスタを特定することができる。
【００６４】
クラスタ選択部１９は、選択したクラスタに基づいたユーザ傾向情報をポータルサーバへ送信する。例えば、クラスタ選択部１９は、クラスタリング結果記憶部１４を参照し、選択したクラスタにおける利用回数が多い（例えば、上位数件）コンテンツのct_idをユーザ傾向情報として取得して、取得したct_idと、ユーザＩＤとを対応付けてポータルサーバへ送信する。これにより、ポータルサーバは、サーバ１０から取得したct_idに係るコンテンツをレコメンドすることができる。また、ポータルサーバは、サーバ１０から取得したct_idに係るコンテンツの共通の属性に応じた出力をすることができる。例えば、上記コンテンツが共通して女性向けである旨の属性を有している場合、代表ページ（ＴＯＰページ）の色調やデザインを女性向けのものを出力する。
【００６５】
続いて、図１３のフローチャートを用いて、サーバ１０が実行する処理手順の説明をする。図１３に示すフローチャートは、クラスタを選択する全体処理を示す図である。まず、ユーザログ取得部１１は、ポータルサーバからユーザログを取得し、ユーザログ記憶部１２へ記憶する（ステップＳ１）。続いて、クラスタリング計算部１３は、ユーザログ記憶部１２に記憶されているユーザログを用いて、クラスタリングをして、当該クラスタリングをした結果をクラスタリング結果記憶部１４へ入力する（ステップＳ２）。ここまでのステップＳ１及びステップＳ２の処理は、バッチ処理（オフライン処理）で行う。例えば、毎日０時に前日までのユーザログからクラスタリングをして、当該クラスタリングの結果を入力する。
【００６６】
続いて、要求受付部１５が、ポータルサーバからユーザＩＤと共に要求を受け付けると、類似度算出部１６は、ユーザログ記憶部１２に記憶されているユーザログから、上記ユーザＩＤの各コンテンツの利用率を算出する。そして、類似度算出部１６は、クラスタリング結果記憶部１４に記憶されている情報を用いて、クラスタ毎のコンテンツ利用率を算出する。そして、類似度算出部１６は、ユーザＩＤの各コンテンツの利用率と、クラスタ毎のコンテンツ利用率とを用いて、類似度Ｇを算出する（ステップＳ３）。続いて、再訪問評価値算出部１７は、前回アクセスした時から今回アクセスした時までのアクセス間隔に基づいてユーザ評価値Ｈを算出する（ステップＳ４）。続いて、クラスタ選択部１９は、類似度Ｇとユーザ評価値Ｈとを用いて、総合評価値Ｆを算出し（ステップＳ５）、当該総合評価値Ｆに基づいてクラスタを選択し（ステップＳ６）、処理を終了する。ステップＳ３以降の処理は、特定のタイミングを起点として、リアルタイムに処理を行う。例えば、ユーザの再訪問を起点としてもよいし、一定回数を超えた時の訪問としてもよい。
【００６７】
上述の実施形態では、コンテンツの履歴情報であるユーザログに基づいてクラスタリングする場合について述べたが、他の情報に基づいてクラスタリングするようにしてもよい。例えば、ユーザ特徴ベクトルを示す情報に基づいてクラスタリングするようにしてもよい。
【００６８】
上述の実施形態では、クラスタ毎の利用率に基づく値とユーザのコンテンツの利用率に基づく値との類似度Ｇを用いる場合について述べたが、他の任意の値を各クラスタに割り当てるようにしてもよい。また、ユーザ評価値と当該ユーザ評価値の閾値とを比較して、その比較結果に基づいてクラスタを変えるか否かを判断するようにしてもよい。
【００６９】
上述の実施形態では、正規分布による確率値を用いる場合について述べたが、当該確率値を用いずにユーザ評価値Ｈを算出するようにしてもよい。例えば、βの値を調整して、ユーザ評価値Ｈが大きな値を取らないように調整してもよい。
【００７０】
続いて、作用効果について説明する。サーバ１０では、再訪問評価値算出部１７が、アクセスユーザが前回アクセスした際に、ユーザの分類として選択されたクラスタを特定する。再訪問評価値算出部１７が、アクセスユーザによるサービスへの前回のアクセスから今回のアクセスまでのアクセス間隔に基づいて、特定したクラスタに対する評価値であるユーザ評価値Ｈを算出する。クラスタ選択部１９は、ユーザ評価値Ｈに基づいて、今回のアクセスのクラスタを選択する。
【００７１】
サーバ１０は、前回のアクセスから今回のアクセスまでのアクセス間隔によるユーザ評価値を算出し、算出したユーザ評価値Ｈに基づいて、今回のアクセス時のクラスタを選択する。このように、過去に選択したクラスタに対するユーザ評価値Ｈを考慮してクラスタを選択するので、より適切にユーザを分類することができる。また、ユーザ評価値Ｈは、前回のアクセスのクラスタに属する全ユーザの再訪問時間の平均時間と、アクセスユーザの前回のアクセスから今回のアクセスまでのアクセス間隔とを比較した値である。このように、再訪問評価値算出部１７が、両者を比較した値を算出した結果に基づいて、前回選択したクラスタに対するユーザの評価を推定することができる。例えば、上記アクセス間隔が上記平均時間より短ければ、前回選択したクラスタに対するユーザの評価が高いと推定することができる。
【００７２】
クラスタリング計算部１３は、サービスにより提供される複数コンテンツのユーザ毎のユーザログに基づいて、複数のクラスタにクラスタリングする。類似度算出部１６は、複数のクラスタの各クラスタに対応するユーザログに基づいたコンテンツの利用度合いと、アクセスユーザのユーザログに基づいたコンテンツの利用度合いとの類似度Ｇを算出する。クラスタ選択部１９は、類似度算出部１６により算出された類似度Ｇをさらに基づいて今回のアクセスのクラスタを選択する。この場合、ユーザ評価値Ｈだけでなく、類似度Ｇを用いてクラスタを選択するので、総合的に評価した結果に基づいてクラスタを選択でき、より適切にクラスタを選択することができる。
【００７３】
再訪問評価値算出部１７は、各ユーザにおけるアクセス間隔に基づく確率分布から定められる値をさらに用いてユーザ評価値Ｈを算出する。この場合、確率分布を使用することにより、ユーザ評価値Ｈが極端な値にならないようにして、類似度Ｇとのバランスを取ってクラスタを選択することができるので、適切な評価値に基づいてユーザを分類することができる。
【符号の説明】
【００７４】
１０…サーバ、１１…ユーザログ取得部、１２…ユーザログ記憶部、１３…クラスタリング計算部、１４…クラスタリング結果記憶部、１５…要求受付部、１６…類似度算出部、１７…再訪問評価値算出部、１８…再訪問時間記憶部、１９…クラスタ選択部、２０…総合評価記憶部、１０１…ＣＰＵ、１０２…ＲＡＭ、１０３…ＲＯＭ、１０４…通信モジュール、１０５…補助記憶装置。
【図１】
0006570978.tif 000005
【図２】
0006570978.tif 000006
【図３】
0006570978.tif 000007
【図４】
0006570978.tif 000008
【図５】
0006570978.tif 000009
【図６】
0006570978.tif 000010
【図７】
0006570978.tif 000011
【図８】
0006570978.tif 000012
【図９】
0006570978.tif 000013
【図１０】
0006570978.tif 000014
【図１１】
0006570978.tif 000015
【図１２】
0006570978.tif 000016
【図１３】
0006570978.tif 000017