(57)【特許請求の範囲】
【請求項１】
分析対象の行動ログを取得するデータ取得手段と、
前記分析対象の複数の前記行動ログに基づく行動パターンを少なくとも１以上のクラスタに分類するクラスタリング手段と、
前記クラスタリング手段により分類された前記クラスタを用いたシミュレーション結果に基づいて、前記各分析対象に対して所定のデータ処理を実施する際のデータの細分化単位である粒度をそれぞれ設定する粒度設定手段と、
を具備したことを特徴とするデータ処理装置。
【請求項２】
請求項１に記載のデータ処理装置において、
前記クラスタリング手段は、前記粒度設定手段により設定された前記粒度に基づいて前記行動パターンを分類する
ことを特徴とするデータ処理装置。
【請求項３】
請求項１又は請求項２に記載のデータ処理装置において、
前記分析対象に対して設定された前記粒度及び前記クラスタに基づいて、前記分析対象の行動を予測する行動予測手段を備えた
ことを特徴とするデータ処理装置。
【請求項４】
請求項１から請求項３のいずれか１項に記載のデータ処理装置において、
前記粒度設定手段は、取得した前記分析対象の複数の前記行動ログを、モデル生成用ログ及び検証用ログに２分割し、前記モデル生成用ログに基づく行動パターンを分類したクラスタを用いて前記粒度を変化させた際の前記分析対象の行動予測と、前記検証用ログとを比較するシミュレーション処理を実施して前記粒度を設定する
ことを特徴とするデータ処理装置。
【請求項５】
請求項４に記載のデータ処理装置において、
前記粒度設定手段は、前記行動ログのうち、前記モデル生成用ログとして用いる前記行動ログ、及び前記検証用ログとして用いる前記行動ログを所定数ずつ入れ替えて、複数回前記シミュレーション処理を実施することで、前記粒度を設定する
ことを特徴とするデータ処理装置。
【請求項６】
請求項１から請求項５のいずれか１項に記載のデータ処理装置において、
前記行動ログは、前記分析対象の行動を示す複数のパラメータに対して多値のいずれか
が選択される多値モデルであり、
前記クラスタリング手段は、多値のディリクレプロセスモデルを用いた、ノンパラメトリックベイズ法によるクラスタリング処理を実施することで、前記行動ログをクラスタリングする
ことを特徴とするデータ処理装置。
【請求項７】
コンピュータにより粒度設定処理を実施するデータ処理方法であって、
前記コンピュータは、
分析対象の行動ログを取得し、
前記分析対象の複数の前記行動ログに基づく行動パターンを少なくとも１以上のクラスタに分類し、
分類された前記クラスタを用いたシミュレーション結果に基づいて、前記各分析対象に対して所定の処理を実施する際のデータの細分化単位である粒度をそれぞれ設定する
ことを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ログデータを用いたデータ処理装置、及びデータ処理方法に関する。
【背景技術】
【０００２】
従来、ユーザの行動履歴（ログデータ）から、ユーザの行動指向を予測する装置が知られている（例えば、特許文献１参照）。
特許文献１に記載のシステムでは、行動履歴データ集合に属する履歴数と、履歴数に対する各行動履歴データの順位情報とをパラメータとしたグラフを用い、ユーザの行動指向を特定するためのべき指数を単位期間毎に算出する。そして、べき指数が小さい負の値である場合に、特定目的を達成することに特化した行動、べき指数が大きい負の値である場合に、多様性が強く、目的自体を探すのが目的であるような行動（多様性指向の行動）として、ユーザの行動指向を判定する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２８２５６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ユーザの行動ログから、当該ユーザの将来の行動予測を行う場合、ユーザ毎に行動パターンがそれぞれ異なるので、ユーザ毎に行動予測の粒度を決定する必要がある。なお、ここで述べる粒度は、データを処理する上での細分化の単位を指す。
上記特許文献１に記載のシステムでは、行動履歴データ集合に属する履歴数と、その順位情報からべき指数を単位期間毎に算出する。しかしながら、ユーザによっては、基準とする単位期間がそれぞれ異なり、全ユーザに対して同一単位期間を設定すると、正確な行動予測を実施できない。
【０００５】
例えば、１０分間隔となる時間単位で毎日同時刻に同じ行動をする行動パターンが複数種あるユーザＡ、ほぼ同時刻で同じ行動をするものの、日によって２０〜３０分の誤差がある行動パターンが複数種あるユーザＢを対象とし、各ユーザＡ，Ｂのそれぞれの複数種の行動パターンから行動予測を実施する。
ここで、行動予測の単位を１０分に設定した場合、即ち、現時点から、１０分毎のユーザの行動を予測する場合、ユーザＡは、１０分単位で決まった時間に決まった行動をするため、現時点までの行動と、複数種の行動パターンから、１０分後の行動を高精度に予測できる。これに対して、ユーザＢは、２０〜３０の誤差があるため、現時点までの行動を複数種の行動パターンから、１０分後の行動予測を実施しても、その行動が実際に的中する確率は低く、予測精度が低下する。
一方、行動予測の単位を３０分に設定した場合、即ち、現時点から、３０分毎のユーザの行動を予測する場合、ユーザＡに対する行動予測は、上記１０分単位の予測時と同様、精度が高いものの、１０分単位の行動予測と比較して、詳細な予測まで実施できない。これに対して、ユーザＢでは、１０分単位の行動予測では、低精度であったが、３０分単位の行動予測では、予測精度が向上する。
【０００６】
また、ユーザＡ，ユーザＢの行動ログに基づいて、それぞれの１０分間隔の行動パターンを生成した場合、ユーザＡでは生成した行動パターンと実際の行動との差が少なくなり、生成した行動パターンから高精度な行動予測を実施できる。しかしながら、ユーザＢでは、生成した行動パターンと実際の行動との差が大きくなり、生成した行動パターンから行動予測をする場合、精度が低下する。
また、ユーザＡ，ユーザＢの行動ログに基づいて、それぞれの３０分間隔の行動パターンを生成した場合、ユーザＡでは生成した行動パターンと実際の行動との差が少ないものの、１０分単位で生成された行動パターンよりも、詳細な行動予測を実施できない。一方、ユーザＢでは生成した行動パターンと実際の行動との差が少なくなり、１０分単位で生成された行動パターンよりも高精度な行動予測を行える。
【０００７】
以上のように、分析対象のユーザによってそれぞれ粒度が異なるが、上記特許文献１では、このような粒度を考慮しておらず、高精度な処理を実施できないという課題がある。
【０００８】
本発明では、分析対象に対して最適な粒度を設定可能なデータ処理装置、及びデータ処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明のデータ処理装置は、分析対象の行動ログを取得するデータ取得手段と、前記分析対象の複数の前記行動ログに基づく行動パターンを少なくとも１以上のクラスタに分類するクラスタリング手段と、前記クラスタリング手段により分類された前記クラスタを用いたシミュレーション結果に基づいて、前記各分析対象に対して所定のデータ処理を実施する際のデータの細分化単位である粒度をそれぞれ設定する粒度設定手段と、を具備したことを特徴とする。
【発明の効果】
【００１０】
本発明では、データ取得手段に取得された行動ログに基づいて、各分析対象に、それぞれ粒度を設定する。このため、例えば、全ての分析対象に対して同一の粒度を適用する場合等に比べて、各分析対象に対して最適な粒度を設定することができる。
【図面の簡単な説明】
【００１１】
【図１】第一実施形態のデータ処理システムの概略構成を示すブロック図。
【図２】第一実施形態のサーバ装置の概略構成を示すブロック図。
【図３】第一実施形態におけるクラスタリング処理を示すフローチャート。
【図４】ユーザのサーバ装置に対するアクセス数、及び当該アクセス数をベルヌーイ処理したデータを示す図。
【図５】クラスタリングされた各行動パターン及び各グループ、及びその代表パターンの例を示す図。
【図６】第一実施形態における粒度設定処理のフローチャート。
【図７】所定ユーザにおける行動予測処理の概略を説明するための図。
【図８】第一実施形態における行動予測処理のフローチャート。
【図９】第一実施形態において行動予測処理により得られた予測パターンと、実際のアクセスパターンとを示す図。
【図１０】（Ａ）は、デバイスの種別による行動パターンを判定せずに、行動予測を実施した場合の予測パターンと、実際のアクセスパターンを示す図、（Ｂ）は、デバイスデータ毎の行動パターンに基づいた予測データと、実際のアクセスパターンを示す図。
【図１１】（Ａ）は、利用サービスの種別による行動パターンを判定せずに、行動予測を実施した場合の予測パターンと、実際のアクセスパターンを示す図、（Ｂ）は、利用サービスデータ毎の行動パターンに基づいた予測データと、実際のアクセスパターンを示す図。
【図１２】（Ａ）は、代表パターンの一例を示す図、（Ｂ）は、当該代表パターンに対応した行動グループに含まれる実際の行動パターンを示す図。
【図１３】（Ａ）は、他のユーザにおける代表パターンの一例で示す図、（Ｂ）は、当該代表パターンに対応した行動グループに含まれる実際の行動パターンを示す図。
【発明を実施するための形態】
【００１２】
［第一実施形態］
以下、本発明に係る第一実施形態のデータ処理装置を備えたデータ処理システムについて、図面に基づいて説明する。
［全体構成］
図１は、第一実施形態のデータ処理システムの概略構成を示すブロック図である。
図１に示すように、本実施形態のデータ処理システム１は、ユーザ端末１０と、本発明のデータ処理装置として機能するサーバ装置２０と、を備え、これらのユーザ端末１０及びサーバ装置２０がネットワーク（例えばインターネット等のＷＡＮ（Wide Area Network））を介して通信可能に接続されている。
このデータ処理システム１では、ユーザ端末１０からサーバ装置２０に対してアクセスがあった際に、サーバ装置２０は、そのアクセスログ（行動ログ）を検出して蓄積する。そして、サーバ装置２０は、蓄積したアクセスログに基づいて、ユーザ端末１０の操作者であるユーザの行動を予測する。以下、各構成について詳細に説明する。
【００１３】
［ユーザ端末の構成］
ユーザ端末１０としては、例えば、デスクトップ型パーソナルコンピュータ、ノート型パーソナルコンピュータ、スマートフォン、携帯電話、タブレット端末等を例示できる。ここで、本例では、図１に示すように、デスクトップ型パーソナルコンピュータ（ＰＣ１０Ａ）、スマートフォン１０Ｂ、タブレット端末１０ＣがユーザＡにより使用されるユーザ端末１０である場合を例示する。
【００１４】
図１における、ユーザ端末１０Ｄは、一般的なユーザ端末１０の概略構成を示すブロック図である。
ユーザ端末１０は、図１に示すように、表示部１１と、入力操作部１２と、端末通信部１３と、端末記憶部１４と、端末制御部１５と、を含んで構成される。
【００１５】
表示部１１は、例えば液晶ディスプレイ等により構成され、端末制御部１５の制御の下、所定の画像を表示させる。
入力操作部１２は、ユーザ操作による操作信号を端末制御部１５に出力する。入力操作部としては、例えば、表示部１１と一体に設けられたタッチパネルや、キーボード、マウス等の入力装置等を例示できる。
端末通信部１３は、ネットワーク上の所定の装置と通信する。
【００１６】
端末記憶部１４は、例えばメモリ、ハードディスク等のデータ記録装置により構成されている。端末記憶部１４には、例えば、ユーザ端末１０のデバイスを判定するためのデバイスデータが記憶されている。このデバイスデータとしては、例えばユーザ端末１０のデバイス製造会社や、デバイスの機種名、通信会社のキャリア名等が記録される。また、ユーザによるデバイスの使用目的（例えば、私用デバイスであるか、仕事用デバイスであるか等）が記録されていてもよい。
また、端末記憶部１４には、その他、ユーザ端末を制御するための各種プログラム等が記憶される。
【００１７】
端末制御部１５は、ＣＰＵ（Central Processing Unit）等の演算回路、ＲＡＭ（Random Access Memory）等の記憶回路により構成され、ユーザ端末１０の各部を制御する。端末制御部１５は、端末記憶部１４等に記憶されているプログラムの中から所定のアプリケーション等のプログラム（ソフトウェア）をＲＡＭに展開し、ＲＡＭに展開されたプログラムとの協働で、各種処理を実行する。これにより、端末制御部１５は、サーバ装置２０に対してネットワークを介して通信可能になり、例えば、サーバ装置２０が提供する各種サービスを利用することが可能となる。この際、端末制御部１５は、サーバ装置２０に対して、ユーザ端末１０を特定するデバイスデータや、ユーザを特定するためのユーザＩＤ等を同時に送信する。
【００１８】
［サーバ装置の構成］
図２は、サーバ装置２０の概略構成を示すブロック図である。
サーバ装置２０は、コンピュータにより構成され、本発明のデータ処理装置として機能する。このサーバ装置２０は、サーバ通信部２１と、サーバ記憶部２２と、サーバ制御部２３と、等を含んで構成されている。
サーバ通信部２１は、例えばＬＡＮ等を介してネットワークに接続されており、ユーザ端末１０と通信する。
【００１９】
サーバ記憶部２２は、例えばメモリ、ハードディスク等により構成されたデータ記録装置である。このサーバ記憶部２２は、ユーザ端末１０のアクセスログを蓄積し、記憶している。また、サーバ記憶部２２には、サーバ装置２０を制御するための各種プログラムが記憶される。
【００２０】
サーバ制御部２３は、ＣＰＵ等の演算回路、ＲＡＭ等の記憶回路により構成され、サーバ記憶部２２等に記憶されているプログラム（ソフトウェア）をＲＡＭに展開し、ＲＡＭに展開されたプログラムとの協働で、各種処理を実行する。そして、サーバ制御部２３は、上記各種処理を実行することで、図２に示すように、ログ取得手段２３１、クラスタリング手段２３２、パターン生成手段２３３、パターン予測手段２３４（行動予測手段）、粒度設定手段２３５、及びサービス提供手段２３６等として機能する。
【００２１】
ログ取得手段２３１は、本発明のデータ取得手段として機能し、ユーザ端末１０からアクセスがあった際に、ユーザＩＤ、ユーザ端末１０のデバイスデータ、アクセス先のサービスである利用サービスデータ、アクセスタイム等を取得し、これらを関連付けて、アクセスログとしてサーバ記憶部２２に蓄積する。
ここで、サーバ記憶部２２には、ユーザ端末１０毎のアクセスログが記録されるが、当該アクセスログにはユーザＩＤが記録される。したがって、所定のユーザＩＤを有するアクセスログを取得することで、当該ユーザＩＤに対応した全てのアクセスログを取得できる。すなわち、本実施形態におけるアクセスログは、本発明におけるユーザ（分析対象）の行動ログに相当する。
【００２２】
アクセスログに含まれるデバイスデータは、上述したように、ユーザ端末１０のデバイスの種類である。このデバイスデータは、本発明における分析対象の行動を示す複数のパラメータの１つに相当し、多値のいずれかが選択されるデータとなる。つまり、デバイスデータは、例えば、ＰＣ１０Ａによるアクセスか、スマートフォン１０Ｂによるアクセスか、タブレット端末１０Ｃによるアクセスか、あるいはいずれにも相当しないかの４値のいずれかが選択されるパラメータとなる。なお、上記例では、４値のいずれかの例を示すが、例えば、スマートフォン１０Ｂである場合に、さらにその機種や、仕事用かプライベート用か等を階層的に分類したデータとしてもよい。また、このような階層的に分類したデータが、デバイスデータとは別にアクセスログに含まれてもよい。
【００２３】
アクセスログに含まれる利用サービスデータも、デバイスデータと同様、本発明における分析対象の行動を示す複数のパラメータの１つに相当し、多値のいずれかが選択されるデータとなる。つまり、利用サービスデータとしては、例えば、サービスのいずれにアクセスしたかを示すパラメータであり、提供されるサービス数に対応した多値のパラメータとなる。また、利用サービスデータも、階層的に分類したデータが用いられてもよい。例えば、利用サービスがニュースである場合に、さらに、ヘッドライン、スポーツ、政治、経済等、ニュースの種別に応じて細分化されたデータがアクセスログとして記録されていてもよい。
【００２４】
クラスタリング手段２３２は、サーバ記憶部２２に記憶、蓄積されたアクセスログに基づいた各ユーザの行動パターンを、複数種の行動グループ（クラスタ）に分類（クラスタリング）する。
パターン生成手段２３３は、各行動グループの代表的な行動パターンを生成する。
パターン予測手段２３４は、各ユーザの所定の開始タイミングから現時点までのアクセスログと、当該ユーザに対して生成された行動グループの行動パターンに基づいて、各ユーザの現時点から所定時間後までの行動パターンを予測する。このように、行動パターンを予測することで、サーバ装置２０は、各ユーザに対して最適な広告等の情報を提供することが可能となる。
粒度設定手段２３５は、パターン予測手段２３４により行動予測を実施する際の、データ処理の細分化の単位となる粒度を設定する。例えば、本実施形態では、粒度として各ユーザに最適な時間を設定する。これにより、パターン予測手段２３４は、設定された粒度に基づき、粒度の時間ごとのユーザの行動パターンを予測することになる。
なお、以上のサーバ制御部２３の各機能構成についての詳細な説明は後述する。
【００２５】
サービス提供手段２３６は、ユーザ端末１０からの要求に応じて、ＷＥＢ上で利用可能なサービスをユーザ端末１０に提供する。サービス提供手段２３６により提供されるサービスとしては、例えば、ニュース等の情報発信サービス、オンライン上での商取引サービス（例えば株取引やオンライショッピング等）、メールサービス等が含まれる。
【００２６】
［データ処理方法］
次に、上記のようなデータ処理システム１におけるサーバ装置２０のデータ処理方法について説明する。
サーバ装置２０は、蓄積されたアクセスログに基づいて、まず、各ユーザの行動パターンをクラスタリングして行動グループを分類し、その代表パターンを生成するクラスタリング処理を実施する。この後、サーバ装置２０は、その代表パターンを用いて、各ユーザに最適な粒度を設定する粒度設定処理を実施する。そして、サーバ装置２０は、設定された粒度に基づいて、各ユーザの将来の行動を予測する行動予測処理を実施する。
【００２７】
［クラスタリング処理］
サーバ装置２０によるクラスタリング処理について、図面に基づいて説明する。
図３は、クラスタリング処理のフローチャートである。
サーバ装置２０は、例えば、分析者からの要求があった場合に、クラスタリング処理を実施する。なお、クラスタリング処理を行うタイミングとしては、その他、ユーザ端末１０からのアクセス数が少ない深夜時間帯（例えば２：００から４：００）であってもよい。
【００２８】
クラスタリング処理では、まず、クラスタリング手段２３２は、サーバ記憶部２２に記憶されているアクセスログから、所定のユーザ（ここでは、ユーザＡとする）に対するユーザＩＤが含まれるアクセスログ、すなわち、ユーザＡの行動ログを抽出する（ステップＳ１）。
【００２９】
この後、クラスタリング手段２３２は、抽出したアクセスログに基づいて、所定期間（例えば０：００から２４：００までの期間）における行動パターンを生成する（ステップＳ２）。
図４は、ユーザＡからの所定サービス（例えばニュース）に対する所定デバイス（例えばＰＣ１０Ａ）からのアクセス数、及び当該アクセス数に基づいて処理された各データを示す図である。
このステップＳ２では、クラスタリング手段２３２は、抽出したアクセスログに基づいたアクセス数の推移（図４における上のグラフ）から、行動パターン（図４における下のグラフ）を生成する。
具体的には、クラスタリング手段２３２は、例えば１時間単位で、サーバ装置２０に対してアクセスがあったか否かを検出し、アクセスがある場合に「１」、ない場合に「０」を返した２値化データを行動パターンとして生成する。すなわち、クラスタリング手段２３２は、アクセス数の推移を、ベルヌーイ分布に落とし込んで、行動パターンを生成する。
なお、図４に示す例では、２つのデバイス（例えばＰＣ１０Ａ及びスマートフォン１０Ｂ）からのアクセス数、及び２値化データを示しているが、実際には、多値のパラメータに対応した分、行動パターンが生成される。つまり、ステップＳ２では、クラスタリング手段２３２は、各ユーザに対して、各デバイスデータ毎、各利用サービスデータ毎に、上述のような２値化データである行動パターンを生成する。
【００３０】
この後、クラスタリング手段２３２は、多値のパラメータ（アクセスデバイス、アクセスサービス等）に対する行動パターンに基づいて、各ユーザの行動パターンのうち類似パターン同士をグループ化（クラスタリング）する（ステップＳ３）。
上述のようにアクセスログは、デバイスデータや、利用アクセスデータ等、多値により表せる複数のパラメータを有する。
例えば、デバイスデータとして、ＰＣ１０Ａ、スマートフォン１０Ｂ、及びタブレット端末１０Ｃの３パターンがあるとした場合、前記行動パターンとしては、ＰＣ１０Ａのアクセスに関する行動パターン、スマートフォン１０Ｂに関する行動パターン、及びタブレット端末１０Ｃに関する行動パターンが得られる。この場合、所定の時間単位（例えば１時間単位）において、デバイスからアクセスがあるか否かを示すパラメータは、例えば、ＰＣ１０Ａのアクセスを「１」、スマートフォン１０Ｂからのアクセスを「２」、タブレット端末１０Ｃからのアクセスを「３」、いずれの端末からもアクセスがない状態を「０」とした４値で表せる。
同様に利用サービスデータに関しても、「対象となるサービスの数＋１」の値で、利用サービスに関するパラメータを表せる。クラスタリング手段２３２は、これらの多値のパラメータを有する複合ディリクレプロセスモデルを用いて、ノンパラメトリックベイズ法によりクラスタリングを実施する。
これにより、各ユーザに対して、それぞれ最適な数の行動グループが算出され、図５に示すように、行動パターンをクラスタリングした複数個の行動グループを生成することができる。なお、図５の左図に示す例は、図４と同様、簡略化のため２つのデバイスに対する行動パターンのみを例示しているが、実際には、多値のパラメータに対する行動パターンが複合的にクラスタリングされた行動グループが生成される。
【００３１】
次に、パターン生成手段２３３は、ステップＳ３により生成された各行動グループにおける代表パターンを生成する（ステップＳ４）。
このステップＳ４では、パターン生成手段２３３は、例えば、行動グループに含まれる複数の行動パターンの平均値を算出し、図５の右図に示すような代表パターンとする。
なお、代表パターンとしては、上記のような平均値に限られない。例えば、行動グループに含まれる複数の行動パターンを再クラスタリングし、最も数が多いグループのパターンを代表パターンとしてもよい。また、再クラスタリングした際に分割された各グループの中間点等を代表パターンとしてもよい。その他、行動グループに含まれる複数の行動パターンのうち、最頻値を代表パターンとしてもよい。
【００３２】
［粒度設定処理］
次に、サーバ装置２０による粒度設定処理について説明する。
図６は、粒度設定処理のフローチャートである。
サーバ装置２０は、例えば、上述したクラスタリング処理により得られた、各ユーザの複数種の行動グループに基づいて、当該各ユーザに対してそれぞれ最適な粒度を設定する。本実施形態では、上述のように、粒度として、各ユーザに対してそれぞれ最適な細分化単位となる時間を設定する。
この粒度設定処理は、例えば、上記クラスタリング処理が実施された段階で、適宜実施されることが好ましい。
【００３３】
粒度設定処理では、粒度設定手段２３５は、まず、サーバ記憶部２２に記憶されている対象ユーザのユーザＩＤが記録されたアクセスログを抽出し、これらのアクセスログをモデル生成用ログと、検証用ログとに分割する（ステップＳ１１）。
分割する各ログの個数としては、例えばモデル生成用ログの個数と、検証用ログの個数とが同数となるように分割することが好ましい。
【００３４】
この後、クラスタリング手段２３２及びパターン生成手段２３３は、モデル生成用ログを用いて、上述したステップＳ２〜ステップＳ４の処理を実施して、複数種の行動パターンのグループ（モデルパターン）を生成する（ステップＳ１２）。
この後、粒度設定手段２３５は、ステップＳ１２にて生成された各モデルパターンを用いて、粒度を様々に設定した行動予測処理を実施し、検証用ログと比較するシミュレーション処理を実施する。
【００３５】
ここで、粒度設定手段２３５により実施される予測処理は、パターン予測手段２３４による予測処理と同様であり、以下のようにして実施する。
図７は、所定ユーザにおける行動予測処理の概略を説明するための図である。なお、図７では、説明の簡略化のため、１つのデバイスからサーバ装置２０への行動パターン及び代表パターンを例示しているが、実際には、多値の各パラメータに対応した複数の行動パターン及び代表パターンに基づいた予測を行う。
図７に示すように、所定の開始時点Ｔ１から予測開始時点Ｔ２までの行動ログが与えられた場合に、粒度設定手段２３５は、検証用ログにおける当該開始時点Ｔ１から予測開始時点Ｔ２までの期間Ｌ１の行動パターンの波形と、ステップＳ１２により生成された各モデルパターン（図７における各グループの代表パターン）における同期間Ｌ１における行動パターンの波形とを取得する（ステップＳ１３）。なお、開始時点Ｔ１としては、例えば予め設定された時刻（例えば、午前０時）を開始時点Ｔ１としてもよく、例えば午前７時等、ユーザが行動を開始し始める時刻等に設定してもよい。また、期間Ｌ１としても、例えば午前中（０：００〜１２：００）を設定してもよく、その他の時刻を設定してもよい。
次に、検証用ログの期間Ｌ１の行動パターンの波形と、モデルパターンの期間Ｌ１の行動パターンの波形との類似度を算出し、算出した類似度から当該モデルパターンが検証用ログに的中する確率を算出する（ステップＳ１４）。例えば、モデルパターンに対する類似度を、各モデルパターンの類似度の和で割った値を確率とする。
【００３６】
この後、粒度設定手段２３５は、図７に示すように、各モデルパターンの予測開始時点Ｔ２から所定の粒度検証期間Ｌ２の一部に対してステップＳ１４にて算出された確率を掛けあわせた部分パターンを算出する。そして、全てのモデルパターンに対して算出された部分パターンを足し合わせたものを、期間Ｌ２における行動予測パターンとする（ステップＳ１５）。
【００３７】
次に、粒度設定手段２３５は、ステップＳ１５で予測した予測開始時点から期間Ｌ２における予測パターンと、検証用ログにおける予測開始時点から期間Ｌ２における実際の行動パターンとの類似度（粒度検証値）を算出する（ステップＳ１６）。
【００３８】
この後、粒度設定手段２３５は、予め設定された複数種の期間Ｌ２に対してシミュレーション結果の粒度検証値が算出されたか否かを判定する（ステップＳ１７）。ステップＳ１７において、Ｎｏと判定された場合は、期間Ｌ２の長さを変更し（ステップＳ１８）、再度ステップＳ１５の処理に戻り、行動予測パターンを生成し直した上で、変更した期間Ｌ２に対する粒度検証値を算出する。
【００３９】
この後、粒度設定手段２３５は、クロスバリデーションによる検証処理が終了したか否かを判定する（ステップＳ１９）。
ステップＳ１９において、Ｎｏと判定された場合、粒度設定手段２３５は、クロスバリデーション処理により、ステップＳ１２からステップＳ１８の処理を繰り返す。つまり、粒度設定手段２３５は、例えばモデル生成用ログと、検証用ログとを入れ替え（ステップＳ２０）、ステップＳ１２の処理に戻る。
なお、ここでは、ステップＳ２０として、モデル生成用ログと、検証用ログとを入れ替えてシミュレーション処理を実施する例を示すが、例えば、モデル生成用ログの一部と、検証用ログの一部とを入れ替えたシミュレーション処理を複数回実施する等の処理をしてもよい。また、本実施形態では、複数個のモデル生成用ログと、複数個の検証用ログとを用いたシミュレーション処理を実施したが、抽出されたアクセスログのうち、１つのアクセスログを検証用ログとし、その他のアクセスログをモデル生成用ログとして、検証用ログを順次入れ替えたシミュレーション処理を実施する等してもよい。
【００４０】
ステップＳ１９においてＹｅｓと判定されると、粒度設定手段２３５は、粒度検証値が最大となる期間Ｌ２を最適粒度として設定する（ステップＳ２１）。
ここで、ステップＳ１６において算出される粒度検証値としては、検証用ログの数だけ算出される。また、クロスバリデーションにより複数回のシミュレーションを実施するため、クロスバリデーションによりシミュレーションを実施した回数分、上記検証値が得られることになる。なお、上記例では、期間Ｌ１を固定としたが、例えば、期間Ｌ１を１時間間隔でずらしてもよく、この場合では、期間Ｌ１をずらした回数分、シミュレーション結果（粒度検証値）が算出されることになる。
ステップＳ２１では、粒度設定手段２３５は、１つの期間Ｌ２に対して算出された粒度検証値の代表値を取得し、その値が最大となる期間Ｌ２を粒度とする。なお、代表値としては、例えば、粒度検証値（パターンの類似度）の平均値であってもよく、メディアン値等であってもよい。
【００４１】
［行動予測処理］
次に、サーバ装置２０による行動予測処理について説明する。
図８は、行動予測処理のフローチャートである。
サーバ装置２０は、例えば、上述した粒度設定処理により得られた、各ユーザに対してそれぞれ設定された粒度に基づいて、当該各ユーザに対する将来の行動を予測する。
この行動予測処理は、上記した粒度設定手段２３５による行動予測とほぼ同じ手法により、ユーザの行動を予測する。
【００４２】
つまり、パターン予測手段２３４は、ユーザ端末１０から送信された所定の開始時点Ｔ１から予測開始時点Ｔ２までの期間におけるアクセスログから、行動パターンの波形を検出する（ステップＳ３１）。ここで、行動予測処理における開始時点Ｔ１は、例えば午前０時等、所定の開始時刻を設定してもよく、例えば、現時点から所定時間前（例えば６時間前の時点）等の現時点を基点として算出される所定時点を設定してもよい。
【００４３】
次に、パターン予測手段２３４は、クラスタリング処理において、ステップＳ４で生成された、各グループに対する代表パターンを取得する（ステップＳ３２）。
そして、パターン予測手段２３４は、ステップＳ３１で検出した期間Ｌ１における行動パターンの波形と、ステップＳ３２で取得した各代表パターンの期間Ｌ１における波形とを比較してその類似度を算出する。また、算出した類似度から代表パターンが行動パターンに的中する確率を算出する（ステップＳ３３）。この確率の算出は、ステップＳ１４と同様であり、例えば、代表パターンに対して算出された類似度を、各代表パターンの類似度の和で割った値を採用できる。
【００４４】
この後、パターン予測手段２３４は、図７に示すように、各代表パターンに対して、予測開始時点Ｔ２から、粒度設定処理により設定された粒度（期間Ｌ２）の一部に対してステップＳ３３で算出された確率を掛けあわせた部分パターンを算出する。そして、全ての代表パターンに対して算出された部分パターンを足し合わせたものを期間Ｌ２における行動予測パターンとする（ステップＳ３４）。
【００４５】
図９は、上述した行動予測処理により得られた予測パターン（実線）、及び実際のアクセスパターン（破線）の一例を示す図である。
本実施形態では、図９に示すように、行動予測処理により、予測パターンと実際のアクセスパターンとが同様のパターン形状になる。
一方、上記例では、説明の簡略化のため、ユーザ端末１０からサーバ装置２０にアクセスがあったか否かを示すパラメータにより、ユーザがサーバ装置２０に対してアクセスするか否かを示す行動予測を示したが、実際には、デバイスデータ、利用サービスデータ等に基づいた、詳細な行動予測が得られる。
【００４６】
図１０（Ａ）は、デバイスの種別による行動パターンを判定せずに、行動予測を実施した場合の予測パターン（実線）と、実際のアクセスパターン（破線）を示す図である。図１０（Ｂ）は、デバイスデータ毎の行動パターンに基づいた予測データと、実際のアクセスパターン（破線）を示す図である。図１０（Ｂ）において、パターンＰ１は、ＰＣ１０Ａに対する行動パターンから算出された予測パターン、パターンＰ２は、スマートフォン１０Ｂに対する行動パターンから算出された予測パターン、パターンＰｔは、パターンＰ１及びパターンＰ２の和である。
本実施形態では、上述したように、アクセスログのパラメータとして、デバイスデータを取得し、デバイス毎の代表パターンを生成する。そして、行動予測処理のステップＳ２１において、所定のデバイスデータを有するアクセスログから行動パターンを検出し、ステップＳ２２において、各デバイスデータ毎の代表パターンを取得する。これにより、各デバイス毎の行動予測を実施できる。この場合、例えば図１０（Ａ）の期間ＴＡに示す予測パターン及び実際のアクセスパターンに示すように、デバイスをまとめてしまうと、アクセスを予測できなかった場合でも、図１０（Ｂ）に示すように、デバイス毎の予測パターンを生成することで、アクセスを予測できる可能性が高くなる。図１０（Ｂ）では、ＰＣ１０Ａからの予測パターンに対して、実際のアクセスパターンが略一致している。
【００４７】
また、図１１（Ａ）は、利用サービスの種別による行動パターンを判定せずに、行動予測を実施した場合の予測パターン（実線）と、実際のアクセスパターン（破線）を示す図である。図１１（Ｂ）は、利用サービスデータ毎の行動パターンに基づいた予測データと、実際のアクセスパターン（破線）を示す図である。図１１（Ｂ）において、パターンＰ３は、ニュースのサービスに対する行動パターンから算出された予測パターンであり、パターンＰ４は、メールサービスに対する行動パターンから算出された予測パターンであり、パターンＰｔは、パターンＰ３及びパターンＰ４の和である。
本実施形態では、上述したように、アクセスログのパラメータとして、利用サービスデータを取得し、利用したサービス毎の代表パターンを生成する。そして、行動予測処理のステップＳ２１において、所定のサービスを有するアクセスログから行動パターンを検出し、ステップＳ２２において、各サービス毎の代表パターンを取得する。これにより、各サービス毎の行動予測を実施できる。この場合、例えば図１１（Ａ）の期間ＴＢに示す予測パターン及び実際のアクセスパターンに示すように、サービスをまとめて予測すると、アクセスを予測できなかった場合でも、図１１（Ｂ）に示すように、サービス毎の予測パターンを生成することで、アクセスを予測できる可能性が高くなる。図１１（Ｂ）では、メールサービスの予測パターンに対して、実際のアクセスパターンが一致している。
【００４８】
［第一実施形態の作用効果］
本実施形態のサーバ装置２０は、ユーザ毎のアクセスログを蓄積するサーバ記憶部２２を備える。そして、サーバ装置２０の粒度設定手段２３５は、蓄積されたアクセスログを用いて生成されるユーザ毎の行動パターンに基づいて、各ユーザに対して、それぞれ、粒度を設定する。この粒度は、例えば行動予測処理等のデータ処理を実施する上でのデータ細分化の最適な単位であり、ユーザ毎にこのような粒度を設定することで、個々のユーザに対して最適なデータ処理（行動予測処理等）を実施することができる。
【００４９】
本実施形態では、各ユーザの複数のアクセスログから複数の行動パターンを生成し、これらの行動パターンを複数の行動グループに分類するクラスタリング手段２３２、及び各行動グループに含まれる行動パターンからその代表パターンを生成するパターン生成手段２３３を備える。
粒度設定手段２３５は、サーバ記憶部２２に蓄積された各ユーザのアクセスログを、モデル生成用ログ及び検証用ログに２分割する。そして、クラスタリング手段２３２及びパターン生成手段２３３は、モデル生成用ログから複数のモデルパターンを生成し、粒度設定手段２３５は、このモデルパターンと、検証用ログと比較し、粒度を様々に変化させながら、最適な粒度を探索するシミュレーション処理を実施する。
この場合、個々のユーザに対して、そのユーザに対するアクセスログを用いたシミュレーション処理を実施するため、各ユーザ固有の生活リズムに即した精度と高い粒度を設定できる。
【００５０】
本実施形態では、粒度設定処理において、クロスバリデーションにより、モデル生成用ログと検証用ログとを入れ替えた複数回のシミュレーション処理を実施し、最適な粒度を設定する。このようなクロスバリデーション処理を実施することで、複数のモデルを用いたより信頼性の高い粒度を設定できる。
【００５１】
本実施形態では、アクセスログに、ユーザ端末１０がサーバ装置２０にアクセスしたことを示すデータ（行動データ）と、そのアクセス時間が記録されている。そして、粒度設定手段２３５は、各ユーザがサーバ装置２０にアクセスした際の時間のばらつきに応じた所定の時間単位（例えば、１０分単位、３０分単位、１時間単位等）を粒度として設定する。
このように、粒度として時間を設定することで、例えば、時間軸に沿ったユーザの行動予測処理を実施する場合に、最適な時間単位の行動予測をユーザ毎に実施できる。例えば、日々の生活において、決まったリズムで所定の行動を起こすユーザに対して、細かい粒度に設定（粒度を短い時間に設定）することで、細かい時間単位で詳細に行動予測を実施できる。また、日々の生活において、行動を起こすリズムが定まっていないユーザでは、上記のような細かい粒度を設定すると、予測した行動の的中率が低下し、予測精度が低下するが、本実施形態では、このようなユーザに対しては、粗い粒度に設定（粒度を長い時間に設定）することで、行動予測の的中率（予測精度）が向上する。
【００５２】
本実施形態では、サーバ装置２０は、上述のように、設定された粒度に基づいて各ユーザの行動を予測するパターン予測手段２３４を備えている。
このような構成では、上述のように、各ユーザにそれぞれ設定された最適な粒度に基づいて、各ユーザの将来の行動を高精度に予測できる。このような高精度な行動予測を実施することで、ユーザの行動に即したサービスをユーザの意図するタイミングで提供することができる。例えば、各ユーザの嗜好性等が登録されている場合、ユーザのアクセス時間の統計を採り、アクセスする可能性が高い複数のユーザのうち、同じ嗜好性を有するユーザのグループに分割する。このような処理をすることで、各グループに対して最適なサービス（例えば広告表示等）を行うことができる。
【００５３】
本実施形態では、クラスタリング手段２３２は、多値の複合型ディリクレモデルを用いて、ノンパラメトリックベイズ法により、行動パターンをクラスタリングする。
このようなクラスタリングでは、各ユーザのそれぞれに対して、最適な行動グループの数を設定でき、精度よく、ユーザの行動を分類することができる。したがって、例えば、予め設定されたグループに対して、ユーザの行動パターンがどのグループに属するかを判定する場合に比べて、各ユーザの固有のリズムに合わせた最適なクラスタリングを実施できる。
【００５４】
［第二実施形態］
次に、本発明に係る第二実施形態のデータ処理システムについて説明する。
上述した実施形態では、粒度設定処理において、粒度設定手段２３５は、蓄積されたアクセスログをモデル生成用ログ及び検証用ログに分割し、シミュレーション処理を実施することで粒度を設定した。
これに対して、本実施形態では、粒度設定手段は、シミュレーション処理を実施せずに粒度を設定する点で上記第一実施形態と相違する。
なお、以降の実施形態において、同一構成については、同符号を付し、その説明を省略又は簡略化する。
【００５５】
以下、本実施形態の粒度設定手段２３５が実施する処理について、説明する。
本実施形態では、粒度設定手段２３５は、クラスタリング処理（ステップＳ１〜ステップＳ４）により生成された各グループに含まれる行動パターンのばらつきに基づいて、粒度を設定する。
図１２（Ａ）は、代表パターンの一例を示す図であり、（Ｂ）は、当該代表パターンに対応した行動グループに含まれる実際の行動パターンの例である。図１３（Ａ）は、他のユーザにおける代表パターンの一例を示す図であり、（Ｂ）は、当該代表パターンに対応した行動グループに含まれる実際の行動パターンの例である。
【００５６】
具体的には、粒度設定手段２３５は、クラスタリング手段２３２に各グループに含まれる行動パターンに対して、上述したクラスタリング処理を実施させる。これにより、各グループに含まれる行動パターンは、より詳細な下層グループにクラスタリングされる。ここで、図１２に示す例では、クラスタリングされた下層グループの数が所定値よりも少なくなり、すなわち、粒度設定手段２３５は、行動パターンのばらつきが小さいと判定する。この場合、粒度設定手段２３５は、粒度をより小さい値に設定する。例えば粒度の初期値が１時間である場合、例えば３０分に設定する。
一方、図１３に示す例では、クラスタリングされた下層グループの数が所定値よりも多くなる。この場合、粒度設定手段２３５は、行動パターンのばらつきが大きいと判定する。そして、粒度設定手段２３５は、粒度をより大きい値に設定するか、若しくは、設定された粒度を維持する。例えば粒度の初期値が１時間である場合、例えば２時間に設定する。また、設定された粒度が、所定の最大値（例えば３時間等）である場合では、当該粒度を維持する。
【００５７】
本実施形態では、粒度設定手段２３５は、上述した第一実施形態にて示したシミュレーション処理を実施することなく、容易に最適な粒度を設定することができ、処理の高速化を図れる。
【００５８】
［第三実施形態］
上述した第一及び第二実施形態では、粒度設定処理により設定された粒度に基づいて、各ユーザの将来の行動を予測する行動予測処理を実施する例を示した。これに対して、第三実施形態では、第一実施形態のような行動予測処理に加え、さらに、設定された粒度に基づいて、クラスタリング処理を実施する点が上記第一実施形態と相違する。
【００５９】
具体的には、本実施形態では、クラスタリング手段２３２は、最初のクラスタリング処理におけるステップＳ２において、予め設定された初期値（例えば１時間等）単位におけるアクセスを２値化した行動パターンを生成する。また、最初のクラスタリング処理におけるステップＳ４において、クラスタリング手段２３２は、所定の時間単位を、予め設定された初期値（例えば１時間）として、多値のパラメータを有する複合ディリクレプロセスモデルを用いて、ノンパラメトリックベイズ法によりクラスタリングを実施する。
【００６０】
この後、粒度設定処理により、各ユーザに対してそれぞれ最適な粒度が設定されると、クラスタリング手段２３２は、サーバ記憶部２２に記憶されたアクセスログを再度読み出し、再クラスタリング処理（ステップＳ１〜ステップＳ４）を実施する。この際、クラスタリング手段２３２は、ステップＳ２及びステップＳ４において用いていた初期値を、設定された粒度の時間単位に置き換える。
【００６１】
本実施形態では、クラスタリング手段２３２は、設定された粒度をクラスタリング処理にフィードバックすることで、各ユーザに対してそれぞれ設定された、最適な粒度でアクセスログをクラスタリングすることができる。したがって、行動予測処理において、最適なグループの代表パターンに基づいた予測処理を実施でき、精度の高い予測パターンを得ることができる。
【００６２】
［第四実施形態］
上記第三実施形態では、第一実施形態において設定された粒度に基づいたクラスタリング処理を実施する例を示した。これに対して、第四実施形態では、第二実施形態において設定された粒度に基づいて、さらにクラスタリング処理を実施する。
【００６３】
具体的には、本実施形態では、第三実施形態と同様に、クラスタリング手段２３２は、最初のクラスタリング処理におけるステップＳ２において、予め設定された初期値（例えば１時間等）単位におけるアクセスを２値化した行動パターンを生成する。また、最初のクラスタリング処理におけるステップＳ４において、クラスタリング手段２３２は、所定の時間単位を、予め設定された初期値（例えば１時間）として、多値のパラメータを有する複合ディリクレプロセスモデルを用いて、ノンパラメトリックベイズ法によりクラスタリングを実施する。
【００６４】
この後、第二実施形態の粒度設定処理と同様の処理を実施し、各ユーザに対してそれぞれ最適な粒度を設定する。そして、クラスタリング手段２３２は、サーバ記憶部２２に記憶されたアクセスログを再度読み出し、再クラスタリング処理（ステップＳ１〜ステップＳ４）を実施する。この際、クラスタリング手段２３２は、ステップＳ２及びステップＳ４において用いていた初期値を、設定された粒度の時間単位に置き換える。
【００６５】
本実施形態では、上記第三実施形態と同様、各ユーザに対してそれぞれ設定された最適な粒度でアクセスログをクラスタリングすることができる。このため、行動予測処理においても、最適なグループの代表パターンに基づいた予測処理を実施でき、精度の高い予測パターンを得ることができる。
【００６６】
［変形例］
なお、本発明は、上述した実施形態に限定されるものではなく、本発明の目的を達成できる範囲で、以下に示される変形をも含むものである。
［変形例１］
粒度設定手段２３５は、粒度として、時間を設定したが、これに限定されない。粒度設定手段２３５により設定される粒度としては、例えば、デバイスデータの階層や、利用サービスデータの階層等を設定してもよく、また、これらのデータの階層及び時間の組み合わせ等を設定してもよい。
【００６７】
粒度設定手段２３５が、デバイスの階層をデータ処理における細分化の単位に設定する場合を説明する。アクセスログには、デバイスデータが記録され、当該デバイスデータは、各ユーザがサーバ装置２０にアクセスした際のデバイスの種類が記録される。ここで、デバイスの種類として、例えば各デバイスの機種名等が記録されていてもよく、その他、デバイスの使用目的（仕事目的、プライベート目的等）が記録されてもよい。また、デバイスデータとして、デバイスの種別が記録され、その下位階層として、デバイスの機種やマックアドレス、使用目的等が関連付けられていてもよい。
【００６８】
そして、例えば、ユーザＡに対する行動グループとして、所定時刻Ｔα１〜時刻Ｔα２に機種Ｘ１のスマートフォンを使い、時刻Ｔα２〜時刻Ｔα３に機種Ｘ２のスマートフォンを使う行動パターンが複数種あり、一方、ユーザＢに対する行動グループとして、時刻Ｔα１〜時刻Ｔα３において、スマートフォンを使う行動パターンがあるものの、機種Ｘ１のスマートフォンを使う時間及び機種Ｘ２のスマートフォンを使う時間が特に定まっていないとする。
この場合、粒度設定手段２３５は、例えば上記第一実施形態や第二実施形態と同様の処理により、デバイスデータに基づいて、デバイスの種類のばらつきに応じて、デバイスの階層単位を粒度として設定することができる。上記例では、ユーザＡに対する粒度として、例えばデバイスの種類に加え、各種デバイスの機種までを粒度として設定する。一方、ユーザＢに対する粒度として、デバイスの種類までを粒度と設定することになる。
このように、粒度としてデバイスの種類の階層を設定することで、ユーザに応じた階層単位でデバイスの種別を判定でき、どのデバイスを使用してサーバ装置２０にアクセスするかの行動パターンを精度よく予測できる。
【００６９】
次に、粒度設定手段２３５が、利用サービスの階層をデータ処理における細分化の単位に設定する場合を説明する。アクセスログには、利用サービスデータが記録され、当該利用サービスデータは、各ユーザがサーバ装置２０にアクセスした際に、どのサービス機能（Ｗｅｂページや、メール等）を利用したかのサービスの種類が記録される。ここで、サービスの種類として、例えば各サービス名等が記録されていてもよく、その他、サービスにおけるより詳細な分類情報が記録されてもよい。例えば、情報提供サービスの場合には、ニュースを提供するニュースサービスか、料理のレシピを提供するレシピ紹介サービスか等であり、さらにニュースサービスにおいても、ヘッドラインニュースや、経済ニュース、ワールドニュース等、細分化された上方が記録されていてもよい。また、これらの細分化されたより下層の階層のデータは、利用サービスデータとは別のデータとして、関連付けられていてもよい。
【００７０】
例えば、ユーザＡに対する行動グループとして、決まったタイミングで経済ニュースを閲覧する行動パターンが複数種ある場合、一方、ユーザＢに対する行動グループとして、決まったタイミングでニュースを閲覧しているものの、閲覧するニュースの内容（階層のデータ）にはばらつきがある場合を例示する。
この場合、粒度設定手段２３５は、例えば上記第一実施形態や第二実施形態と同様の処理により、利用サービスデータに基づいて、利用サービスの種類やより下層の内容のばらつきに応じて、利用サービスの階層単位を粒度として設定することができる。上記例では、ユーザＡに対する粒度として、例えばサービスの種類のさらに下位階層（サービスのより詳細なジャンル）を粒度として設定する。一方、ユーザＢに対する粒度として、利用サービスの種類までを粒度と設定する。
この場合、ユーザに応じた階層単位で利用サービスの種別を判定でき、どのサービスを利用することが多い等の行動パターンを精度よく予測できる。
【００７１】
また、上記実施形態のような時間を粒度とした処理と組み合わせることで、ユーザの生活リズムに対して、より適切な粒度を設定できる。例えば、時間単位での粒度が粗いものの、特定のデバイスで特定のサービスを利用する場合では、時間粒度を粗く、デバイス階層粒度やサービス階層粒度を細かく設定する等の処理も可能となる。
【００７２】
また、アクセス時間、デバイスデータ、利用コンテンツデータに限られず、さらに、サーバ装置２０にアクセスした際のその他のユーザの状況、例えばサーバ装置２０にアクセスした際の天気や、アクセスした際のユーザの位置等により、粒度を設定してもよい。
【００７３】
［変形例２］
上記実施形態では、分析対象として、個々のユーザを例示したが、これに限定されない。例えば、分析対象として、共通の状態を有する複数のユーザのグループであってもよい。例えば、同じ職場や同じ学校等、ユーザが属する団体を１つのグループとして、その団体における個々のユーザの行動パターンから、団体に属するユーザの平均的な行動パターンをクラスタリングし、団体に属するユーザの平均的な行動予測を行ってもよい。
また、粒度設定手段２３５は、個々のユーザに対する粒度を設定する際に、そのユーザが属する団体の行動パターンから粒度を設定してもよい。
【００７４】
また、個々のユーザに対する粒度を設定する際に、当該ユーザが所属する団体（グループ）の行動パターンに基づいて、粒度を設定してもよい。この場合、ユーザが属する団体を特定するデータが含まれているアクセスログを抽出し、抽出したアクセスログから行動パターンを検出して粒度を設定する。
【００７５】
［変形例３］
上記第二実施形態では、粒度設定手段２３５は、クラスタリング手段２３２により、グループ内の行動パターンを、再クラスタリングさせ、その結果に応じて各行動パターンの類似度を判定し、粒度を設定した。これに対して、例えば、各グループに含まれる行動パターン同士を、波の相関係数を用いてずれ量を検出し、類似度を判定してもよい。
その他、グループに含まれる各行動パターンの類似性を判定可能な処理であれば、いかなる処理を実施してもよい。
【００７６】
［変形例４］
上記実施形態では、ログ取得手段２３１がデータ取得手段として機能し、ログ取得手段２３１によりユーザ端末１０から取得され、サーバ記憶部２２に蓄積されたアクセスログに基づいて粒度を設定したが、これに限定されない。例えば、ログ取得手段２３１は、ユーザ端末１０からネットワーク上の他の装置に送信されたアクセスログ（他の装置に蓄積されたアクセスログ）を取得する構成とし、取得したアクセスログに基づいて粒度を設定する処理を実施してもよい。
【００７７】
その他、本発明の実施の際の具体的な構造および手順は、本発明の目的を達成できる範囲で他の構造などに適宜変更できる。
【符号の説明】
【００７８】
１０…ユーザ端末、２０…サーバ装置（データ処理装置）、２１…サーバ通信部、２２…サーバ記憶部、２３…サーバ制御部、２３１…ログ取得手段、２３２…クラスタリング手段、２３３…パターン生成手段、２３４…パターン予測手段（行動予測手段）、２３５…粒度設定手段、２３６…サービス提供手段。
【図１】
0005877825.tif 000002
【図２】
0005877825.tif 000003
【図３】
0005877825.tif 000004
【図４】
0005877825.tif 000005
【図５】
0005877825.tif 000006
【図６】
0005877825.tif 000007
【図７】
0005877825.tif 000008
【図８】
0005877825.tif 000009
【図９】
0005877825.tif 000010
【図１０】
0005877825.tif 000011
【図１１】
0005877825.tif 000012
【図１２】
0005877825.tif 000013
【図１３】
0005877825.tif 000014