(57)【特許請求の範囲】
【請求項１】
複数のイベントノードと、前記複数のイベントノードのうちイベントに関与した一対のイベントノードを結ぶイベントリンクと、を含む第１ネットワーク情報を取得する第１ネットワーク情報取得手段と、
前記複数のイベントノード及び複数の時刻ノードと、前記一対のイベントノードと前記イベントのあった時刻を示す前記時刻ノードをそれぞれ結ぶ少なくとも２本の時刻リンクと、を含む第２ネットワーク情報を取得する第２ネットワーク情報取得手段と、
前記第１ネットワーク情報について、前記複数のイベントノード間を前記イベントリンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノードが属する第１コミュニティを１以上生成する第１コミュニティ生成手段と、
前記第２ネットワーク情報について、前記複数のイベントノード及び前記複数の時刻ノードからなるノード群を前記時刻リンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノード及び前記複数の時刻ノードが属する第２コミュニティを１以上生成する第２コミュニティ生成手段と、
を備える情報処理装置。
【請求項２】
前記複数のイベントノードのうち１の前記第２コミュニティに属する１以上の注目ノードについて、前記１以上の注目ノードが属する前記第１コミュニティが２以上ある場合に、当該１の前記第２コミュニティを、当該２以上の前記第１コミュニティに従って２以上に分解するコミュニティ分解手段をさらに備える
請求項１に記載の情報処理装置。
【請求項３】
前記第２ネットワーク情報は、前記イベントのあった時刻を示す前記時刻ノードと、他の前記時刻ノードとを結び、前記イベントのあった時刻から遠ざかるほど小さくなる重みを有する時間相関リンクをさらに含み、
前記第２コミュニティ生成手段は、前記ノード群を前記時刻リンク及び前記時間相関リンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノード及び前記複数の時刻ノードが属する第２コミュニティを１以上生成する
請求項１又は２に記載の情報処理装置。
【請求項４】
前記重みは、前記イベントのあった時刻と相関のある時間範囲を示す相関長パラメータを含む関数により定められる
請求項３に記載の情報処理装置。
【請求項５】
前記第２ネットワーク情報は、前記一対のイベントノードと、前記イベントのあった時刻を示す前記時刻ノード及び前記イベントのあった時刻と相関のある時間範囲を示す前記時刻ノードと、をそれぞれ結ぶ偶数本の時間相関時刻リンクを含む
請求項１又は２に記載の情報処理装置。
【請求項６】
前記第１コミュニティ生成手段及び前記第２コミュニティ生成手段は、互いの計算結果を用いて交互に逐次計算を行うことにより、第１コミュニティ及び第２コミュニティをそれぞれ生成する
請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
情報処理装置に備えられたコンピュータを、
複数のイベントノードと、前記複数のイベントノードのうちイベントに関与した一対のイベントノードを結ぶイベントリンクと、を含む第１ネットワーク情報を取得する第１ネットワーク情報取得手段、
前記複数のイベントノード及び複数の時刻ノードと、前記一対のイベントノードと前記イベントのあった時刻を示す前記時刻ノードをそれぞれ結ぶ少なくとも２本の時刻リンクと、を含む第２ネットワーク情報を取得する第２ネットワーク情報取得手段、
前記第１ネットワーク情報について、前記複数のイベントノード間を前記イベントリンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノードが属する第１コミュニティを１以上生成する第１コミュニティ生成手段、
前記第２ネットワーク情報について、前記複数のイベントノード及び前記複数の時刻ノードからなるノード群を前記時刻リンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノード及び前記複数の時刻ノードが属する第２コミュニティを１以上生成する第２コミュニティ生成手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来、ベクトル型データについていわゆるコミュニティ（クラスタ）分解を行い、大域的特徴を解析する場合があった。コミュニティ分解は、ノードと、ノードを結ぶリンクとを含むネットワーク型データ（ネットワーク情報）に対して行われる場合もある。
【０００３】
下記特許文献１には、作業者に装着されるセンサデバイスに割り当てられた識別子及び二人以上の作業者が対面した時刻から、会合に参加した二人以上の作業者からなるグループをコミュニティとして特定するセンサネットワークシステムが記載されている。
【０００４】
下記特許文献２には、転送又は返信の電子メールの情報に基づき、電子メールを転送する関係にあるユーザ群を１つのコミュニティとするプログラムが記載されている。
【０００５】
下記特許文献３には、同一文書に対するアクセスを実行した異なるユーザを、コミュニティ関係を有するユーザとして選択抽出するコミュニティ分析装置が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−０２７５８９号公報
【特許文献２】特開２００５−２４４６４７号公報
【特許文献３】特開２００７−１０２６５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ネットワーク情報は、イベントによりノード間がリンクで結ばれることにより、時間的に内容が変化する場合がある。例えば、互いに引用関係を有する複数の文書データに対して、複数のユーザがアクセスする場合、アクセスというイベント毎に文書データとユーザとの間にリンクが形成され、時間的に内容が変化するネットワーク情報が構成される。また、複数のユーザのネットワークにおいて、ユーザが互いに電子メールを送受信する場合、電子メールの送受信というイベントが発生した時にユーザ間にリンクが形成され、時間的に内容が変化するネットワーク情報が構成される。
【０００８】
時間的に内容が変化するネットワーク情報について、コミュニティを生成する方法が研究されている。例えば、ネットワーク情報を一定時間間隔でスライスして、各スライス時点におけるネットワーク情報と、各スライス間のリンクとを取得してコミュニティを生成することが考えられる。
【０００９】
しかしながら、ネットワーク情報をスライスしてコミュニティ生成を行う方法では、ネットワーク情報を一定時間間隔でスライスするため、より良い精度でコミュニティ生成を行おうとしてスライス間隔を狭くすると、イベントの発生回数とは無関係に計算量が増大する。
【００１０】
そこで、本発明は、内容が時間的に変化するネットワーク情報のコミュニティ生成を、イベントの発生回数に応じた計算量で行う情報処理装置及びプログラムの提供を目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、請求項１に記載の情報処理装置は、複数のイベントノードと、前記複数のイベントノードのうちイベントに関与した一対のイベントノードを結ぶイベントリンクと、を含む第１ネットワーク情報を取得する第１ネットワーク情報取得手段と、前記複数のイベントノード及び複数の時刻ノードと、前記一対のイベントノードと前記イベントのあった時刻を示す前記時刻ノードをそれぞれ結ぶ少なくとも２本の時刻リンクと、を含む第２ネットワーク情報を取得する第２ネットワーク情報取得手段と、前記第１ネットワーク情報について、前記複数のイベントノード間を前記イベントリンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノードが属する第１コミュニティを１以上生成する第１コミュニティ生成手段と、前記第２ネットワーク情報について、前記複数のイベントノード及び前記複数の時刻ノードからなるノード群を前記時刻リンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノード及び前記複数の時刻ノードが属する第２コミュニティを１以上生成する第２コミュニティ生成手段と、を備える。
【００１２】
また、請求項２に記載の情報処理装置は、前記複数のイベントノードのうち１の前記第２コミュニティに属する１以上の注目ノードについて、前記１以上の注目ノードが属する前記第１コミュニティが２以上ある場合に、当該１の前記第２コミュニティを、当該２以上の前記第１コミュニティに従って２以上に分解するコミュニティ分解手段をさらに備える。
【００１３】
また、請求項３に記載の情報処理装置は、前記第２ネットワーク情報は、前記イベントのあった時刻を示す前記時刻ノードと、他の前記時刻ノードとを結び、前記イベントのあった時刻から遠ざかるほど小さくなる重みを有する時間相関リンクをさらに含み、前記第２コミュニティ生成手段は、前記ノード群を前記時刻リンク及び前記時間相関リンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノード及び前記複数の時刻ノードが属する第２コミュニティを１以上生成する。
【００１４】
また、請求項４に記載の情報処理装置は、前記重みは、前記イベントのあった時刻と相関のある時間範囲を示す相関長パラメータを含む関数により定められる。
【００１５】
また、請求項５に記載の情報処理装置は、前記第２ネットワーク情報は、前記一対のイベントノードと、前記イベントのあった時刻を示す前記時刻ノード及び前記イベントのあった時刻と相関のある時間範囲を示す前記時刻ノードと、をそれぞれ結ぶ偶数本の時間相関時刻リンクを含む。
【００１６】
また、請求項６に記載の情報処理装置は、前記第１コミュニティ生成手段及び前記第２コミュニティ生成手段は、互いの計算結果を用いて交互に逐次計算を行うことにより、第１コミュニティ及び第２コミュニティをそれぞれ生成する。
【００１７】
また、請求項７に記載のプログラムは、情報処理装置に備えられたコンピュータを、複数のイベントノードと、前記複数のイベントノードのうちイベントに関与した一対のイベントノードを結ぶイベントリンクと、を含む第１ネットワーク情報を取得する第１ネットワーク情報取得手段、前記複数のイベントノード及び複数の時刻ノードと、前記一対のイベントノードと前記イベントのあった時刻を示す前記時刻ノードをそれぞれ結ぶ少なくとも２本の時刻リンクと、を含む第２ネットワーク情報を取得する第２ネットワーク情報取得手段、前記第１ネットワーク情報について、前記複数のイベントノード間を前記イベントリンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノードが属する第１コミュニティを１以上生成する第１コミュニティ生成手段、前記第２ネットワーク情報について、前記複数のイベントノード及び前記複数の時刻ノードからなるノード群を前記時刻リンクに沿って移動する場合における確率分布を用いて、前記複数のイベントノード及び前記複数の時刻ノードが属する第２コミュニティを１以上生成する第２コミュニティ生成手段、として機能させる。
【発明の効果】
【００１８】
請求項１及び７に記載の発明によれば、内容が時間的に変化するネットワーク情報のコミュニティ生成を、イベントの発生回数に応じた計算量で行う情報処理装置及びプログラムが得られる。
【００１９】
請求項２に記載の発明によれば、時間的に重複した範囲に複数のコミュニティが生成される情報処理装置が得られる。
【００２０】
請求項３に記載の発明によれば、イベントの影響が及ぶ時間的範囲にコミュニティが生成される情報処理装置が得られる。
【００２１】
請求項４に記載の発明によれば、イベントの影響が及ぶ時間的範囲を単一のパラメータによって調整する情報処理装置が得られる。
【００２２】
請求項５に記載の発明によれば、リンクの種類を増やすこと無く、イベントの影響が及ぶ時間的範囲にコミュニティが生成される情報処理装置が得られる。
【００２３】
請求項６に記載の発明によれば、精度を逐次向上させてコミュニティを生成する情報処理装置が得られる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態に係る情報処理装置の機能ブロック図である。
【図２】本発明の実施形態に係る情報処理装置に取得される第１ネットワーク情報の例を示す図である。
【図３】本発明の実施形態に係る情報処理装置に取得される第２ネットワーク情報の例を示す図である。
【図４】本発明の実施形態に係る情報処理装置に取得される第２ネットワーク情報の時間相関リンクの例を示す図である。
【図５】本発明の実施形態に係る情報処理装置に取得される第２ネットワーク情報の時間相関時刻リンクの例を示す図である。
【図６】本発明の実施形態に係る情報処理装置における、第１コミュニティ生成のフローチャートである。
【図７】本発明の実施形態に係る情報処理装置における、第２コミュニティ生成のフローチャートである。
【図８】本発明の実施形態に係る情報処理装置により算出された第２重要度と第２分類割合の積のうちイベントノード［ｎ］についての値を示すグラフである。
【図９】本発明の実施形態に係る情報処理装置により算出された第２重要度と第２分類割合の積の値を示すグラフである。
【図１０】本発明の実施形態に係る情報処理装置により分解された第２コミュニティを示すグラフである。
【発明を実施するための形態】
【００２５】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００２６】
図１は、本発明の実施形態に係る情報処理装置１の構成図である。情報処理装置１は、第１ネットワーク情報１００、第２ネットワーク情報１１０、解像度１３、相関長パラメータ１４及びリンク重み１５を取得し、入力部１２、制御部１６、記憶部１７及び表示部１８を含む。
【００２７】
記憶部１７は、例えばRAM（Random Access Memory）やROM（Read Only Memory）を含む。記憶部１７は、制御部１６が実行するプログラムを格納するとともに、制御部１６のワークメモリとしても機能する。なお、記憶部１７に格納される制御部１６が実行するプログラムは、電気通信回線を介して提供されるものであってもよいし、半導体記憶素子等のコンピュータで読み取り可能な情報記憶媒体に格納されて提供されるものであってもよい。
【００２８】
第１ネットワーク情報１００は、複数のイベントノードと、複数のイベントノードのうちイベントに関与した一対のイベントノードを結ぶイベントリンクと、を含む。第１ネットワーク情報１００は、例えば組織における人物の所属関係のデータ、友人関係のデータ等であってよい。友人関係のデータが第１ネットワーク情報１００である場合、イベントノードは人物に対応し、イベントリンクは人物間における連絡（電子メールの送受信等）に対応する。第１ネットワーク情報１００は、少なくともイベントノード間の結び付きの関係（イベントノードとイベントリンクの関係）を示すものであればよく、イベントノードが含む具体的な内容（人物名等）を示すものでなくてもよい。
【００２９】
第２ネットワーク情報１１０は、複数のイベントノード及び複数の時刻ノードと、複数のイベントノードのうちイベントに関与した一対のイベントノードとイベントのあった時刻を示す時刻ノードをそれぞれ結ぶ少なくとも２本の時刻リンクと、を含む。第２ネットワーク情報１００は、第１ネットワーク情報１００を包含するネットワーク情報であり、イベントノードの他に時刻ノードを含む。時刻ノードは、イベントのあった時刻を表すために用いられるノードである。また、第２ネットワーク情報１１０は、イベントリンクの他に時刻リンクを含む。時刻リンクは、イベントのあった時刻を示す時刻ノードと、イベントに関与した一対のイベントノードとを結ぶ。例えば、友人関係のデータが第１ネットワーク情報１００である場合、人物間において連絡があると、連絡のあった時刻に対応する時刻ノードと連絡に関与した人物に対応する一対のイベントノードとの間に時刻リンクが形成される。このように、本実施形態に係る情報処理装置１は、時刻ノード及び時刻リンクを含む第２ネットワーク情報１１０を取得することで、内容が時間的に変化するネットワーク情報を扱うこととなる。
【００３０】
入力部１２は、例えばキーボードやマウス等であり、ユーザの指示を制御部１６に伝達する。解像度１３は、正の実数であって、情報処理装置１によって第１ネットワーク情報１００及び第２ネットワーク情報１１０よりコミュニティを生成する場合に、コミュニティの大きさを定めるパラメータである。
【００３１】
制御部１６は、例えばＣＰＵ（Central Processing Unit）を含んでおり、記憶部１７に格納されるプログラムを実行することにより、情報処理装置１の全体を制御する。制御部１６は、機能的に、第１ネットワーク情報取得部１６０、第１コミュニティ生成部１６１、第２ネットワーク情報取得部１６２及び第２コミュニティ生成部１６３を含む。ここで、第１コミュニティ生成部１６１は、第１分類割合算出部１６１ａ、第１重要度算出部１６１ｂ及び第１帰属度算出部１６１ｃを含む。また、第２コミュニティ生成部１６３は、第２分類割合算出部１６３ａ、第２重要度算出部１６３ｂ、第２帰属度算出部１６３ｃ及びコミュニティ分解部１６３ｄを含む。制御部１６の行う制御については、後に詳細に説明する。
【００３２】
記憶部１７は、例えばRAM（Random Access Memory）やROM（Read Only Memory）を含んで構成される。記憶部１７は、制御部１６が実行するプログラムを格納するとともに、制御部１６のワークメモリとしても機能する。なお、記憶部１７に格納される制御部１６が実行するプログラムは、電気通信回線を介して提供されるものであってもよいし、半導体記憶素子等のコンピュータで読み取り可能な情報記憶媒体に格納されて提供されるものであってもよい。表示部１８は、制御部１６により処理された情報をユーザに表示するものであり、例えば液晶表示装置である。
【００３３】
なお、第１ネットワーク情報１００、第２ネットワーク情報１１０、解像度１３、相関長パラメータ１４及びリンク重み１５は、入力部１２によりユーザによって入力されるものであってもよいし、記憶部１７に格納されるものであってもよいし、電気通信回線を介して提供されるものであってもよい。
【００３４】
図２は、本発明の実施形態に係る情報処理装置１に取得される第１ネットワーク情報１００の例を示す図である。本例の第１ネットワーク情報１００は、７つのイベントノード１０１と、６つのイベントリンク１０２を含むものである。各イベントノード１０１には、１から７までのイベントノード番号が付与されており、例えばイベントノード番号１であるノード（以下、イベントノード［１］と表す）は、イベントノード［２］とイベントリンクで結ばれている。本実施形態では、説明を簡明にするため７つのイベントノードを有する第１ネットワーク情報１００の例を示すが、イベントノード数及びイベントリンク数はこれより多くてもよく、例えば１０万程度であってもよい。本例の第１ネットワーク情報１００では、イベントノード間を結ぶイベントリンクは方向を持たないこととしているが、イベントリンクは一方通行であってもよい。なお、同図には、第２ネットワーク情報に含まれる時刻ノード及び時刻リンクを破線で示している。第２ネットワーク情報については、次図において詳細に説明する。
【００３５】
図３は、本発明の実施形態に係る情報処理装置１に取得される第２ネットワーク情報１１０の例を示す図である。本例の第２ネットワーク情報１１０は、７つのイベントノード１０１と、６つの時刻ノード１１１と、１１の時刻リンクと、を含むものである。各イベントノード１０１には、１から７までのイベントノード番号が付与されており、各時刻ノード１１１には、ＡからＦまでの記号が付与されている。同図には、時間の進行方向を示す矢印が表されており、時刻ノード１１１は、時刻ノード［Ａ］が最も過去の時刻を表す時刻ノード１１１であり、時刻ノード［Ａ］〜［Ｆ］は時間順に並んでいる。例えば、時刻ノード［Ａ］は、２０１５年５月１日に対応するノードであり、時刻ノード［Ｂ］〜［Ｆ］は、２０１５年５月２日〜２０１５年５月６日の各日に対応するものであってよい。また、各ノードは日ではなく、月や時分秒に対応するものであってもよいし、時刻ノード１１１の対応する時刻の時間間隔は等間隔でなくてもよい。なお、同図には、第１ネットワーク情報１００に含まれるイベントリンクを破線で示している。
【００３６】
第２ネットワーク情報１１０に含まれる時刻リンク１１２は、イベントノード１０１と時刻ノード１１１とを結び、イベントの発生した時刻を示すものである。例えば、本例では、時刻リンク［Ａ］と、イベントノード［３］及び［４］とは、それぞれ時刻リンク１１２で結ばれている。これにより、イベントノード［３］と［４］の関与したイベントが時刻ノード［Ａ］で示される時刻に発生したという情報を表している。同様に、イベントノード［５］と［７］の関与したイベントが時刻ノード［Ｂ］で示される時刻に発生し、イベントノード［６］と［７］の関与したイベントが時刻ノード［Ｃ］で示される時刻に発生し、イベントノード［１］と［２］の関与したイベントが時刻ノード［Ｅ］で示される時刻に発生したことが読み取れる。また、時刻ノード［Ｆ］で示される時刻には、イベントノード［１］と［４］の関与したイベントと、イベントノード［４］と［５］の関与したイベントとが発生したことが読み取れる。
【００３７】
時刻リンク１１２は、イベントリンク１０２の重みを１としたとき、それに対してリンク重み１５により定められる重みωを有する。ここで、ωは０より大きい実数である。なお、ωは１以上であってもよい。これにより、後述する第１コミュニティ生成部１６１と第２コミュニティ生成部１６３による交互の逐次計算において、イベントリンク１０２に対する時刻リンク１１２の影響の大きさを調整することができる。
【００３８】
第２ネットワーク情報１１０は、時刻リンク１１２を含むことで、イベントの発生した時刻を記録する。ここで、イベントは、時間相関をもって発生する場合がある。例えば、人物間の電子メールの送受信というイベントによりネットワーク情報が形成される場合、１通の電子メールが送信されると、返信メールが一定期間やり取りされることが予想される。このように、１つのイベントに起因して、ある時間範囲に集中してイベントが発生する状況を扱うため、第２ネットワーク情報１１０は、時刻ノード１１１同士を結ぶ時間相関リンクを含んでもよい。又は、第２ネットワーク情報１１０は、イベントノード１０１と時刻ノード１１１を結ぶ時刻リンク１１２に付随する時間相関時刻リンクを含んでもよい。時間相関リンクについては、次図において詳細に説明する。また、時間相関時刻リンクについては、図５において詳細に説明する。
【００３９】
図４は、本発明の実施形態に係る情報処理装置１に取得される第２ネットワーク情報１１０の時間相関リンク１１３の例を示す図である。同図では、説明を簡明にするため、図３に示す第２ネットワーク情報１１０に含まれるノードのうち、イベントノード［６］及び［７］、並びに時刻ノード［Ａ］乃至［Ｆ］を示している。イベントノード［６］及び［７］と、時刻ノード［Ｃ］とは、それぞれ時刻リンク１１２で結ばれており、当該イベントが時刻ノード［Ｃ］で示される時刻に発生したことを表している。さらに、同図には、当該イベントのあった時刻を示す時刻ノード［Ｃ］と、他の時刻ノード［Ａ］、［Ｂ］、［Ｄ］及び［Ｅ］とを結び、当該イベントのあった時刻から遠ざかるほど小さくなる重みを有する時間相関リンク１１３が表され、当該イベントと時間相関のある時間範囲を示している。時間相関は、イベントのあった時刻から遠ざかるほど小さくなるため、時間相関リンク１１３は、イベントのあった時刻を示す時刻ノード［Ｃ］から遠い時刻ノードを結ぶものほど小さい重みを有する。なお、同図に示す例では、時間相関リンク１１３が、イベントのあった時刻を示す時刻ノード［Ｃ］を中心に対称に設けられているが、時間相関リンク１１３は、イベントのあった時刻を示す時刻ノードを中心に非対称に設けてもよい。例えば、時間相関リンクを、イベントのあった時刻より前の時刻を示す時刻ノードとの間にのみ設けてもよい。イベントのあった時刻より前の時刻を示す時刻ノードとの間にのみ時間相関リンク１１３を設けることにより、イベントの因果関係を表すことができる。このように、時間相関リンク１１３を含む第２ネットワーク情報１１０を取得することで、イベントの影響が及ぶ時間的範囲にコミュニティが生成される。
【００４０】
時間相関リンク１１３の重みは、イベントのあった時刻と相関のある時間範囲を示す相関長パラメータτを含む関数により定められる。本実施形態に係る情報処理装置１では、時刻リンク１１２の重みを１として、時間相関リンク１１３の重みを定める関数をｅｘｐ（−（［ｔ］−［ｅ］）２／２τ２）で与える。ここで、（［ｔ］−［ｅ］）は、注目する時刻ノード［ｔ］とイベントが発生した時刻を示す時刻ノード［ｅ］との時間差を表す。なお、上記の関数を定数倍した関数を、重みを定める関数としてもよいし、異なる関数を採用してもよい。例えば、イベントのあった時刻から遠ざかるに従って線形に重みが小さくなり、イベントのあった時刻を中心に相関長パラメータτの範囲にだけ値を有する関数を用いてもよい。このように、相関長パラメータτを含む関数によって時間相関リンク１１３の重みを定めることで、イベントと相関のある時間的範囲が単一のパラメータによって調整され、時間相関の取り扱いが容易となる。
【００４１】
図５は、本発明の実施形態に係る情報処理装置１に取得される第２ネットワーク情報１１０の時間相関時刻リンク１１４の例を示す図である。同図では、説明を簡明にするため、図３に示す第２ネットワーク情報１１０に含まれるノードのうち、イベントノード［６］及び［７］、並びに時刻ノード［Ａ］乃至［Ｆ］を示している。イベントノード［６］及び［７］と、時刻ノード［Ｃ］とは、それぞれ時刻リンク１１２で結ばれており、イベントノ当該イベントが時刻ノード［Ｃ］で示される時刻に発生したことを表している。さらに、同図には、イベントに関与した一対のイベントノード［６］及び［７］と、イベントのあった時刻を示す時刻ノード［Ｃ］及びイベントのあった時刻と相関のある時間範囲を示す時刻ノード（時刻ノード［Ａ］及び［Ｂ］）と、をそれぞれ結ぶ偶数本の時間相関時刻リンク１１４を示している。時間相関時刻リンク１１４は、時刻ノード［Ａ］及び［Ｂ］についてそれぞれ２本あり、時刻ノード［Ｃ］で示される時刻に発生したイベントと相関のある時間範囲は、時刻ノード［Ａ］及び［Ｂ］で示される時刻であることを表している。なお、同図では、イベントのあった時刻より前の時刻を示す時刻ノードとの間に時間相関時刻リンク１１４を設ける例を示しているが、時間相関時刻リンク１１４は、イベントのあった時刻より後の時刻を示す時刻ノードとの間に設けられてもよい。また、時間相関時刻リンク１１４の重みとして、イベントのあった時刻から遠ざかるほど小さくなる重みを与えることとしてもよい。このように、時間相関時刻リンク１１４を導入することで、時刻リンク１１２以外にリンクの種類を増やすこと無く、イベントの影響が及ぶ時間的範囲にコミュニティが生成される。
【００４２】
図６は、本発明の実施形態に係る情報処理装置１における、第１コミュニティ生成のフローチャートである。本実施形態に係る第１コミュニティ生成部１６１は、第１ネットワーク情報１００について、複数のイベントノード１０１間をイベントリンク１０２に沿って移動する場合における確率分布を用いて、複数のイベントノード１０１が属する第１コミュニティを１以上生成する。以下、第１コミュニティ生成部１６１による第１コミュニティ生成の流れを詳細に説明する。
【００４３】
はじめに、第１コミュニティ生成部１６１は、第１ネットワーク情報取得部１６０により、第１ネットワーク情報１００を取得する（Ｓ１）。次に、第１ネットワーク情報１００に含まれるイベントノード１０１間をイベントリンク１０２に沿って移動する場合における第１定常確率分布ｐｓｔ（Ｉ）（ｎ）を算出する（Ｓ２）。第１定常確率分布ｐｓｔ（Ｉ）（ｎ）は、Ｅ個のイベントノード１０１間をイベントリンクに沿ってランダムに遷移する場合における定常確率分布である。第１定常確率分布ｐｓｔ（Ｉ）（ｎ）は、以下の数式（１）で定められる連立Ｅ次方程式を解くことにより求められる。定常確率分布ｐｓｔ（Ｉ）（ｎ）は、行列Ｔ（Ｉ）の固有ベクトルであって、固有値が１のものである。
【数１】
0006511971.tif 000002
【００４４】
ここで、行列Ｔ（Ｉ）は、イベントノード１０１間をイベントリンク１０２に沿ってランダムに遷移する場合における遷移確率を表すものである。図２に示す第１ネットワーク情報１００の例により説明すると、イベントノード［１］を起点としてイベントリンク１０２に沿ってランダムに他のイベントノードに遷移する場合、１／２の確率でイベントノード［２］に遷移し、１／２の確率でイベントノード［４］に遷移する。これらの遷移確率をまとめて表したものが、行列Ｔ（Ｉ）の第１列である。他の行列要素についても同様に構成されている。一般に、イベントノード［ｎ］とイベントノード［ｍ］がイベントリンクで接続されている場合にＡｎｍ＝１、イベントノード［ｎ］とイベントノード［ｍ］がイベントリンクで接続されていない場合にＡｎｍ＝０となる行列Ａを用いて、ノードの総数をＮとする場合に、行列Ｔ（Ｉ）は、Ｔ（Ｉ）ｎｍ＝Ａｎｍ／ΣｓＡｓｍで定義される。遷移確率の総和は１であるから、任意のイベントノード［ｍ］について、ΣｎＴ（Ｉ）ｎｍ＝１が成り立つ。
【００４５】
いわゆるランクシンク等の問題が懸念され、定常確率分布の値が特定のノードに集中するおそれがある場合、数式（１）を変形し、例えば、ｐｓｔ（Ｉ）（ｎ）＝（１−ｒ）ΣｍＴ（Ｉ）ｎｍｐｓｔ（Ｉ）（ｍ）＋ｒという関係によって第１定常確率分布ｐｓｔ（Ｉ）（ｎ）を求めることとしてもよい。ここで、ｒは０以上１以下の実数である。ｒは、イベントノード間をイベントリンクに沿わずにランダムに遷移する確率を表す。
【００４６】
次に、複数のイベントノード間を複数のイベントリンクに沿ってランダムに遷移する場合に通過するイベントノードを示す複数の第１通過情報τｎ（Ｉ）（ｄ）を生成する（Ｓ３）。本実施形態では、第１通過情報は、第１定常確率分布ｐｓｔ（Ｉ）（ｎ）に従って選出されたイベントノード［ｎ］についてτｎ（Ｉ）（ｄ）＝１、かつ、イベントノード［ｎ］を起点としてイベントノード［ｍ］に遷移する確率を与えるＴ（Ｉ）ｍｎに従って選出されたイベントノード［ｍ］についてτｍ（Ｉ）（ｄ）＝１として生成する。このようなＥ次元ベクトルを、Ｄ回生成する。第１通過情報τｎ（ｄ）は、Σｎτｎ（Ｉ）（ｄ）＝２を満たす量である。第１通過情報τｎ（Ｉ）（ｄ）は、仮想エージェントがイベントノード間をイベントリンクに沿ってランダムに遷移する場合に、仮想エージェントをイベントノード［ｎ］とイベントノード［ｍ］とを結ぶイベントリンク上に見出す場合を表している。
【００４７】
本実施形態に係る第１分類割合算出部１６１ａ及び第１重要度算出部１６１ｂは、逐次計算により第１分類割合ｐ（Ｉ）（ｎ｜ｋ）及び第１重要度π（Ｉ）（ｋ）をそれぞれ算出する。第１分類割合算出部１６１ａは、第１ネットワーク情報１００の予め定められた数の複数のコミュニティそれぞれに注目するイベントノードが分類される分類割合を、複数のコミュニティそれぞれに、注目イベントノードとイベントリンクで結ばれる隣接イベントノードが分類される分類割合と、所与の解像度１３に応じた相関を有するようにして算出する。逐次計算を開始するにあたって、ｐ０（Ｉ）（ｎ｜ｋ）、π０（Ｉ）（ｋ）、γ０（Ｉ）（ｄ）（ｋ）を仮決めする（Ｓ４）。ここで、Σｎｐ０（Ｉ）（ｎ｜ｋ）＝１、Σｋπ０（Ｉ）（ｋ）＝１を満たす値を与えるものとする。ｐ０（Ｉ）（ｎ｜ｋ）は、ｋ＝１〜Ｃの成分について、ｎ＝１〜Ｅのイベントノードが分類される割合を示すものであるから、仮決めではＣ×Ｅ−１個の正の実数を与えることになる。また、π０（Ｉ）（ｋ）は、ｋ＝１〜Ｃに分類されたネットワークのコミュニティについて、重要度を示すものであるから、仮決めではＣ−１個の正の実数を与えることになる。γ０（Ｉ）（ｄ）（ｋ）は、複数のコミュニティ全体に対するコミュニティ［ｋ］が占める割合を表す係数であり、ｄ＝１〜Ｄの通過情報τ（Ｉ）（ｄ）に対応して定まる係数であるから、仮決めではＣ×Ｄ個の正の実数を与えることになる。
【００４８】
また、本実施形態に係る第１分類割合算出部１６１ａ及び第１重要度算出部１６１ｂは、ネットワークのコミュニティの大きさを定めるパラメータとして、正の実数αである解像度１３を用いる。ここで、αはユーザが自由に定めることのできる値であるが、第１ネットワーク情報１００のコミュニティ分類が、十分に細かくなるような値を設定することが望ましい。
【００４９】
逐次計算の第１ステップでは、第ｔ回目の逐次計算による分類割合ｐｔ（ｎ｜ｋ）を計算する（Ｓ５）。ここで、ｔは正の整数であり、逐次計算の回数を表す。ｐｔ（ｎ｜ｋ）は、１つ前の逐次計算により得られるｐｔ−１（ｎ｜ｋ）、πｔ−１（ｋ）、及びγｔ−１（ｄ）（ｋ）より算出される。例えば、仮決め（Ｓ３）の後行われる第一回目の逐次計算では、ｐ０（Ｉ）（ｎ｜ｋ）、π０（Ｉ）（ｋ）、及びγ０（Ｉ）（ｄ）（ｋ）を用いてｐ１（ｎ｜ｋ）を求めることになる。
【００５０】
本実施形態に係る第１分類割合算出部１６１ａは、以下の数式（２）で定められる関係により第ｔ回目の逐次計算による分類割合ｐｔ（ｎ｜ｋ）を算出する（Ｓ５）。
【数２】
0006511971.tif 000003
【００５１】
本実施形態では、解像度１３は、αが０に近付くほどコミュニティ分解の粒度が細かくなり、αが無限大に近付くほどコミュニティ分解の粒度が粗くなるパラメータである。また、Ｄｔ−１（ｋ）はγｔ−１（ｄ）（ｋ）から定まる係数であり、Ｄｔ−１（ｋ）＝Σｄγｔ−１（ｄ）（ｋ）である。
【００５２】
分類割合ｐｔ（ｎ｜ｋ）は、イベントノード［ｎ］とイベントリンクで結ばれるイベントノード（Ｔ（Ｉ）ｎｍ≠０であるイベントノード［ｍ］）のコミュニティ［ｋ］に関する分類割合ｐｔ−１（ｍ｜ｋ）が大きいほど大きな値となる第１の寄与（右辺第一項）と、複数のコミュニティ全体に対するコミュニティ［ｋ］が占める割合γｔ−１（ｄ）（ｋ）が大きいほど大きな値となる第２の寄与（右辺第二項）とから構成される値により算出される。
【００５３】
また、第１の寄与は、解像度１３を粗くすると（αを無限大に近付けると）１に近付く第１の係数α／（α＋２Ｄｔ−１（ｋ））と、イベントノード［ｎ］との間でイベントリンクを有するイベントノード（Ｔ（Ｉ）ｎｍ≠０であるイベントノード［ｍ］）に関して直前に算出された分類割合ｐｔ−１（ｍ｜ｋ）と、から定められる。また、第２の寄与は、解像度１３を粗くすると（αを無限大に近付けると）０に近付く第２の係数１／（α＋２Ｄｔ−１（ｋ））と、複数の第１通過情報τｎ（Ｉ）（ｄ）と、複数のコミュニティ全体に対するコミュニティ［ｋ］が占める割合γｔ−１（ｄ）（ｋ）と、から定められる。なお、以下に示すように、複数のコミュニティ全体に対するコミュニティ［ｋ］が占める割合γｔ−１（ｄ）（ｋ）は、直前に算出された分類割合ｐｔ−１（ｎ｜ｋ）及び重要度πｔ−１（ｋ）から算出される。
【００５４】
次に、直前に算出された分類割合ｐｔ−１（ｎ｜ｋ）及び重要度πｔ−１（ｋ）、並びに複数の第１通過情報τｎ（Ｉ）（ｄ）から、複数のコミュニティ全体に対するコミュニティ［ｋ］が占める割合γｔ（ｄ）（ｋ）を算出する（Ｓ６）。本実施形態では、以下の数式（３）により割合γｔ（ｄ）（ｋ）を算出する。割合γｔ（ｄ）（ｋ）は、コミュニティ全体の中で重要度が相対的に大きいコミュニティについて大きな値をとる。
【数３】
0006511971.tif 000004
【００５５】
さらに、ネットワークのコミュニティ［ｋ］の重要度πｔ（ｋ）を算出する（Ｓ７）。重要度πｔ（ｋ）は、複数のコミュニティ全体に対するコミュニティ［ｋ］が占める割合γｔ（ｄ）（ｋ）が大きいほど大きな値となるように算出される。第１重要度算出部１６１ｂは、複数のコミュニティのうち１つのコミュニティ［ｋ］の重要度πｔ（ｋ）を、複数のコミュニティ全体に対して当該１つのコミュニティ［ｋ］が占める割合γｔ（ｄ）（ｋ）が大きいほど大きな値となるように、第１分類割合算出部１６１ａにより算出された分類割合ｐｔ−１（ｎ｜ｋ）を用いて算出する。本実施形態では、以下の数式（４）によりコミュニティ［ｋ］の重要度πｔ（ｋ）を算出する。
【数４】
0006511971.tif 000005
【００５６】
以上の数式（２）、（３）及び（４）により、直前に算出された分類割合ｐｔ−１（ｎ｜ｋ）、重要度πｔ−１（ｋ）及び割合γｔ−１（ｄ）（ｋ）、並びに第１通過情報τｎ（Ｉ）（ｄ）から、分類割合ｐｔ（ｎ｜ｋ）、重要度πｔ（ｋ）及び割合γｔ（ｄ）（ｋ）が算出される。
【００５７】
第１分類割合算出部１６１ａ及び第１重要度算出部１６１ｂにより行われる逐次計算を終了するか否かは、逐次計算の前後における評価値Ｑｔの差の絶対値｜Ｑｔ−Ｑｔ−１｜が予め定められた基準値εより小さいか否かによって判定される（Ｓ８）。本実施形態において、評価値Ｑｔは以下の数式（５）で定められる量である。
【数５】
0006511971.tif 000006
【００５８】
｜Ｑｔ−Ｑｔ−１｜＜εが成立しない場合、最新の分類割合ｐｔ（ｎ｜ｋ）、重要度πｔ（ｋ）及び割合γｔ（ｄ）（ｋ）を直前の分類割合、重要度及び割合であるとして更新する（Ｓ９）。その後、分類割合ｐｔ＋１（ｎ｜ｋ）を算出する工程（Ｓ５）、割合γｔ＋１（ｄ）（ｋ）を算出する工程（Ｓ６）、重要度πｔ＋１（ｋ）を算出する工程（Ｓ７）を行い、｜Ｑｔ＋１−Ｑｔ｜＜εが成立するか否かを判定する（Ｓ８）、という一連の工程を繰り返す。本実施形態に係る第１分類割合算出部１６１ａ及び第１重要度算出部１６１ｂは、評価値の差の絶対値が予め定められた値より小さくなるまで、以上の工程を繰り返し、逐次計算により第１分類割合及び第１重要度を算出する。これにより、第１ネットワーク情報１００のコミュニティ分類が漸近的に行われる。
【００５９】
一方、｜Ｑｔ−Ｑｔ−１｜＜εが成立する場合、イベントノード［ｎ］がコミュニティ［ｋ］に分類される第１分類割合をｐ（Ｉ）（ｎ｜ｋ）＝ｐｔ（ｎ｜ｋ）により定め、コミュニティ［ｋ］の第１重要度をπ（Ｉ）（ｋ）＝πｔ（ｋ）により定める（Ｓ１０）。ここで、添字（Ｉ）は、これらの値が第１コミュニティ生成のために用いられる値であることを示す。本実施形態に係る情報処理装置１によれば、予め定められた値εを調整することで、任意の精度で第１分類割合ｐ（Ｉ）（ｎ｜ｋ）及び第１重要度π（Ｉ）（ｋ）を求め、ネットワークのコミュニティ分類を任意の精度で行う。なお、逐次計算の回数を予め定めておき、定められた回数だけ逐次計算を行った場合におけるｐｔ（ｎ｜ｋ）及びπｔ（ｋ）の値を、それぞれ第１分類割合ｐ（Ｉ）（ｎ｜ｋ）及び第１重要度π（Ｉ）（ｋ）と決定することとしてもよい。
【００６０】
次に、第１帰属度算出部１６１ｃにより、複数のイベントノードそれぞれについて、イベントノード［ｎ］がコミュニティ［ｋ］に分類される第１分類割合ｐ（Ｉ）（ｎ｜ｋ）が大きいほど、大きな値となるように第１帰属度を算出する（Ｓ１１）。本実施形態では、イベントノード［ｎ］がコミュニティ［ｋ］に帰属する第１帰属度ｑ（Ｉ）（ｋ｜ｎ）は、以下の数式（６）によって求められる。
【数６】
0006511971.tif 000007
【００６１】
数式（６）から読み取れるように、第１帰属度ｑ（Ｉ）（ｋ｜ｎ）は、Σｋｑ（Ｉ）（ｋ｜ｎ）＝１を満たす量である。すなわち、あるイベントノードが各コミュニティに帰属する第１帰属度の総和は１となる。第１帰属度ｑ（Ｉ）（ｋ｜ｎ）は、あるイベントノード［ｎ］が、コミュニティ［ｋ］に帰属する度合いをコミュニティ全体に関して相対的に測った量である。
【００６２】
第１コミュニティ生成部１６１は、解像度１３の値αに応じた相関を有するようにして算出された、注目イベントノード［ｎ］に関する第１分類割合ｐ（Ｉ）（ｎ｜ｋ）から、注目イベントノード［ｎ］が属する、第１ネットワーク情報１００の１以上の第１コミュニティを生成する（Ｓ１２）。第１コミュニティ生成部１６１は、注目イベントノード［ｎ］がコミュニティ［ｋ］に属する割合を、第１分類割合ｐ（Ｉ）（ｎ｜ｋ）の値によって定めてよい。また、第１コミュニティ生成部１６１は、第１分類割合ｐ（Ｉ）（ｎ｜ｋ）及び第１重要度π（Ｉ）（ｋ）から算出される第１帰属度ｑ（Ｉ）（ｋ｜ｎ）に基づき、注目イベントノード［ｎ］が属する第１コミュニティを生成してもよい。その場合、注目イベントノード［ｎ］がコミュニティ［ｋ］に属する割合を、第１帰属度ｑ（Ｉ）（ｋ｜ｎ）の値によって定める。いずれの場合も、第１コミュニティ生成部１６１は、注目イベントノード［ｎ］が属する２以上の第１コミュニティを生成する。そのため、本実施形態に係る第１コミュニティ生成部１６１によれば、１つのノードが複数の属性を有する場合を表現したコミュニティ分類が行われる。
【００６３】
図７は、本発明の実施形態に係る情報処理装置１における、第２コミュニティ生成のフローチャートである。本実施形態に係る第２コミュニティ生成部１６３は、第２ネットワーク情報１１０について、複数のイベントノード１０１及び複数の時刻ノード１１１からなるノード群を時刻リンク１１２に沿って移動する場合における確率分布を用いて、複数のイベントノード１０１及び複数の時刻ノード１１１が属する第２コミュニティを１以上生成する。第２コミュニティ生成部１６３は、ノード群を時刻リンク１１２及び時間相関リンク１１３に沿って移動する場合における確率分布を用いて、複数のイベントノード１０１及び複数の時刻ノード１１１が属する第２コミュニティを１以上生成してもよい。また、時刻リンク１１２として、時間相関時刻リンク１１４が含まれていてもよい。第２コミュニティ生成部１６３による第２コミュニティ生成の流れは、第１コミュニティ生成部１６１による第１コミュニティ生成の流れに類似するため、相違点について詳細に説明し、繰返しの説明は省略する。
【００６４】
はじめに、第２コミュニティ生成部１６３は、第２ネットワーク情報取得部１６２により、第２ネットワーク情報１１０を取得する（Ｓ２１）。次に、第２ネットワーク情報１１０に含まれる複数のイベントノード１０１及び複数の時刻ノード１１１からなるノード群を時刻リンク１１２に沿って移動する場合における第２定常確率分布ｐｓｔ（ＩＩ）（Ｎ）を算出する（Ｓ２２）。ここで、図３に示す第２ネットワーク情報１１０の場合、記号Ｎは、イベントノード［１］〜［７］を表すＮ＝１〜７と、時刻ノード［Ａ］〜［Ｆ］を表すＮ＝８〜１３の値を取り得る。第２定常確率分布ｐｓｔ（ＩＩ）（Ｎ）は、Ｅ個のイベントノード１０１及びＴ個の時刻ノード１１１からなるノード群を時刻リンク１１２に沿ってランダムに遷移する場合における定常確率分布である。第２定常確率分布ｐｓｔ（ＩＩ）（Ｎ）は、数式（１）における行列Ｔ（Ｉ）を行列Ｔ（ＩＩ）に置き換えた関係式により定められる連立（Ｅ＋Ｔ）次方程式を解くことにより求められる。ここで、行列Ｔ（ＩＩ）は、（Ｅ＋Ｔ）×（Ｅ＋Ｔ）行列であり、イベントノード１０１及び時刻ノード１１１間を時刻リンク１１２に沿ってランダムに遷移する場合における遷移確率である。図３に示す第２ネットワーク情報１１０の例により説明すると、イベントノード［１］を起点として時刻リンク１１２に沿ってランダムに時刻ノードに遷移する場合、１／２の確率で時刻ノード［Ｅ］に遷移し、１／２の確率で時刻ノード［Ｆ］に遷移する。これらの遷移確率をまとめて表したものが、行列Ｔ（ＩＩ）の第１列である。また、時刻ノード［Ａ］を起点として時刻リンク１１２に沿ってランダムにイベントノードに遷移する場合、１／２の確率でイベントノード［３］に遷移し、１／２の確率でイベントノード［４］に遷移する。これらの遷移確率をまとめて表したものが、行列Ｔ（ＩＩ）の第８列である。ここで、任意のノード［Ｎ］について、ΣＮＴ（ＩＩ）ＮＭ＝１が成り立つ。
【００６５】
第２ネットワーク情報１１０が時間相関リンク１１３を含む場合、行列Ｔ（ＩＩ）は、イベントノード１０１及び時刻ノード１１１間を時刻リンク１１２及び時間相関リンク１１３に沿ってランダムに遷移する場合における遷移確率を表すものである。また、第２ネットワーク情報１１０が時間相関時刻リンク１１４を含む場合、行列Ｔ（ＩＩ）は、イベントノード１０１及び時刻ノード１１１間を時刻リンク１１２及び時間相関時刻リンク１１４に沿ってランダムに遷移する場合における遷移確率を表すものである。
【００６６】
次に、複数のイベントノード及び複数の時刻ノードからなるノード群を複数の時刻リンクに沿ってランダムに遷移する場合に通過するイベントノード及び時刻ノードを示す複数の第２通過情報τＮ（ＩＩ）（ｄ）を生成する（Ｓ２３）。本実施形態では、第２通過情報は、第２定常確率分布ｐｓｔ（ＩＩ）（Ｎ）に従って選出されたノード［Ｎ］（イベントノード及び時刻ノードからなるノード群に含まれるノード）についてτＮ（ＩＩ）（ｄ）＝１、かつ、ノード［Ｎ］を起点としてノード［Ｍ］に遷移する確率を与えるＴ（ＩＩ）ＭＮに従って選出されたノード［Ｍ］についてτＭ（ＩＩ）（ｄ）＝１として生成する。このようなＥ＋Ｔ次元ベクトルを、Ｄ回生成する。
【００６７】
本実施形態に係る第２分類割合算出部１６３ａ及び第２重要度算出部１６３ｂは、逐次計算により第２分類割合ｐ（ＩＩ）（Ｎ｜Ｋ）及び第２重要度π（ＩＩ）（Ｋ）をそれぞれ算出する。逐次計算を開始するにあたって、ｐ０（ＩＩ）（Ｎ｜Ｋ）、π０（ＩＩ）（Ｋ）、γ０（ＩＩ）（ｄ）（Ｋ）を仮決めする（Ｓ２４）。また、ネットワークのコミュニティの大きさを定めるパラメータとして、正の実数αである解像度１３を用いる。
【００６８】
本実施形態に係る第２コミュニティ生成部１６３は、第１コミュニティ生成部１６１の計算結果を用いて第２コミュニティ生成を行う。具体的に、本実施形態に係る第２分類割合算出部１６３ａ及び第２重要度算出部１６３ｂは、仮決めの値であるｐ０（ＩＩ）（Ｎ｜Ｋ）のうちイベントノード１０１に係る値（Ｎ＝１〜Ｅの場合の値）と、π０（ＩＩ）（Ｋ）の値と、γ０（ＩＩ）（ｄ）（Ｋ）の値とを、第１分類割合算出部１６１ａ及び第１重要度算出部１６１ｂにより算出された第１分類割合ｐ（Ｉ）（ｎ｜ｋ）、第１重要度π（Ｉ）（ｋ）及び最新の割合γｔ（ｄ）（ｋ）の値によって定める。このように定めることで、仮決めの値を任意に定める場合に比較して計算量が少なくなり、第２コミュニティ生成に要する時間が短縮化される。また、より高精度な第２コミュニティ生成が行われる。
【００６９】
逐次計算の第１ステップでは、第ｔ回目の逐次計算による分類割合ｐｔ（ｎ｜ｋ）を、数式（２）における行列Ｔ（Ｉ）及び第１通過情報τｎ（Ｉ）（ｄ）を行列Ｔ（ＩＩ）及び第２通過情報τＮ（ＩＩ）（ｄ）に置き換えた関係式によって算出する（Ｓ２５）。
【００７０】
次に、直前に算出された分類割合ｐｔ−１（Ｎ｜Ｋ）及び重要度πｔ−１（Ｋ）、並びに複数の第２通過情報τＮ（ＩＩ）（ｄ）から、複数のコミュニティ全体に対するコミュニティ［Ｋ］が占める割合γｔ（ｄ）（Ｋ）を算出する（Ｓ２６）。割合γｔ（ｄ）（Ｋ）は、数式（３）における第１通過情報τｎ（Ｉ）（ｄ）を第２通過情報τＮ（ＩＩ）（ｄ）に置き換えた関係式によって算出する。
【００７１】
さらに、ネットワークのコミュニティ［Ｋ］の重要度πｔ（Ｋ）を数式（４）により算出する（Ｓ２７）。また、第２分類割合算出部１６３ａ及び第２重要度算出部１６３ｂによる逐次計算を終了するか否かを、逐次計算の前後における評価値Ｑｔの差の絶対値｜Ｑｔ−Ｑｔ−１｜が予め定められた基準値εより小さいか否かによって判定する（Ｓ２８）。ここで、評価値Ｑｔは、数式（５）における行列Ｔ（Ｉ）及び第１通過情報τｎ（Ｉ）（ｄ）を行列Ｔ（ＩＩ）及び第２通過情報τＮ（ＩＩ）（ｄ）に置き換えた関係式によって与えられる。
【００７２】
｜Ｑｔ−Ｑｔ−１｜＜εが成立しない場合、最新の分類割合ｐｔ（Ｎ｜Ｋ）、重要度πｔ（Ｋ）及び割合γｔ（ｄ）（Ｋ）を直前の分類割合、重要度及び割合であるとして更新する（Ｓ２９）。一方、｜Ｑｔ−Ｑｔ−１｜＜εが成立する場合、ノード［Ｎ］がコミュニティ［Ｋ］に分類される第２分類割合をｐ（ＩＩ）（Ｎ｜Ｋ）＝ｐｔ（Ｎ｜Ｋ）により定め、コミュニティ［Ｋ］の第２重要度をπ（ＩＩ）（Ｋ）＝πｔ（Ｋ）により定める（Ｓ３０）。
【００７３】
また、第２帰属度算出部１６３ｃにより、ノード群に含まれるイベントノード及び時刻ノードそれぞれについて、ノード［Ｎ］がコミュニティ［Ｋ］に分類される第２分類割合ｐ（ＩＩ）（ｎ｜ｋ）が大きいほど、大きな値となるように第２帰属度ｑ（ＩＩ）（Ｋ｜Ｎ）を算出する（Ｓ３１）。第２帰属度ｑ（ＩＩ）（Ｋ｜Ｎ）は、数式（６）の第１分類割合ｐ（Ｉ）（ｎ｜ｋ）及び第１重要度π（Ｉ）（ｋ）を第２分類割合ｐ（ＩＩ）（Ｎ｜Ｋ）及び第２重要度π（ＩＩ）（Ｋ）に置き換えた関係式により与えられる。
【００７４】
第２コミュニティ生成部１６３は、解像度１３の値αに応じた相関を有するようにして算出された、注目ノード［Ｎ］に関する第２分類割合ｐ（ＩＩ）（Ｎ｜Ｋ）から、注目ノード［Ｎ］が属する、第２ネットワーク情報１１０の１以上の第２コミュニティを生成する（Ｓ３２）。第２コミュニティ生成部１６３は、注目ノード［Ｎ］がコミュニティ［Ｋ］に属する割合を、第２分類割合ｐ（ＩＩ）（Ｎ｜Ｋ）の値によって定めてよい。また、第２コミュニティ生成部１６３は、第２分類割合ｐ（ＩＩ）（Ｎ｜Ｋ）及び第２重要度π（ＩＩ）（Ｋ）から算出される第２帰属度ｑ（ＩＩ）（Ｋ｜Ｎ）に基づき、注目ノード［Ｎ］が属する第２コミュニティを生成してもよい。その場合、注目ノード［Ｎ］がコミュニティ［Ｋ］に属する割合を、第２帰属度ｑ（ＩＩ）（Ｋ｜Ｎ）の値によって定める。いずれの場合も、第２コミュニティ生成部１６３は、注目ノード［Ｎ］が属する２以上の第２コミュニティを生成する。そのため、本実施形態に係る第２コミュニティ生成部１６３によれば、１つのノードが複数の属性を有する場合を表現したコミュニティ分類が行われる。
【００７５】
本実施形態に係る第１コミュニティ生成部１６１は、第２コミュニティ生成部１６３の計算結果を用いて第１コミュニティ生成を再び行う。具体的に、本実施形態に係る第１分類割合算出部１６１ａ及び第１重要度算出部１６１ｂは、仮決めの値であるｐ０（Ｉ）（ｎ｜ｋ）、π０（Ｉ）（ｋ）及びγ０（Ｉ）（ｄ）（ｋ）を、第２分類割合算出部１６３ａ及び第２重要度算出部１６３ｂにより算出された第２分類割合ｐ（ＩＩ）（Ｎ｜Ｋ）、第２重要度π（ＩＩ）（Ｋ）及び最新の割合γｔ（ｄ）（Ｋ）の値によって定めて、第１分類割合及び第１重要度の算出を再び行い、第１帰属度の算出を再び行う。このように、本実施形態に係る第１コミュニティ生成部１６１及び第２コミュニティ生成部１６３は、互いの計算結果を用いて交互に逐次計算を行うことにより、第１コミュニティ及び第２コミュニティをそれぞれ生成する。交互に逐次計算する回数は、予め定められた回数であってよい。また、第１コミュニティ生成部１６１における繰返し計算の繰返し回数と、第２コミュニティ生成部１６３における繰返し計算の繰返し回数との比が、リンク重み１５の値ωとなるようにして、互いの計算結果の影響の度合いを調整することとしてもよい。このように、第１コミュニティ生成と第２コミュニティ生成とを、互いの計算結果に基づいて交互に繰り返すことで、コミュニティ生成の精度が逐次向上する。
【００７６】
本実施形態に係る情報処理装置１は、イベントに関与したイベントノードを表すイベントリンクを含む第１ネットワーク情報１００を取得し、第１コミュニティ生成部１６１によって第１コミュニティを生成する。また、イベントの発生回数に応じた本数の時刻リンクを含む第２ネットワーク情報１１０を取得し、第２コミュニティ生成部１６３によって第２コミュニティを生成する。コミュニティ生成に要する計算量を決定する支配的な要因は、ネットワーク情報に含まれるリンクの本数である。そのため、本実施形態に係る情報処理装置１によれば、内容が時間的に変化するネットワーク情報のコミュニティ生成が、イベントの発生回数に応じた計算量で行われる。
【００７７】
図８は、本発明の実施形態に係る情報処理装置１により算出された第２重要度と第２分類割合の積のうちイベントノード［ｎ］についての値π（ＩＩ）（Ｋ）ｐ（ＩＩ）（ｎ｜Ｋ）を示すグラフである。同図のグラフは、１００個のイベントノード１０１を含む第１ネットワーク情報１００と第２ネットワーク情報１１０についての交互計算によって、π（ＩＩ）（Ｋ）ｐ（ＩＩ）（ｎ｜Ｋ）を算出した結果を示したものである。グラフの横軸はｎ＝１〜１００のイベントノード番号を表し、縦軸は第２重要度と第２分類割合の積の値を表している。グラフには、Ｋ＝１〜５の場合における値がプロットされている。
【００７８】
π（ＩＩ）（Ｋ＝１）ｐ（ＩＩ）（ｎ｜Ｋ＝１）の値に注目すると、ｎ＝１〜２０について比較的大きな値をとり、それ以外のイベントノード（ｎ＝２１〜１００のイベントノード）について比較的小さな値をとっている。Ｋ＝２〜５の場合のπ（ＩＩ）（Ｋ）ｐ（ＩＩ）（ｎ｜Ｋ）の値も加味すると、ｎ＝１〜２０のイベントノードは、Ｋ＝１のコミュニティに属する割合が大きく、Ｋ＝２〜５のコミュニティに属する割合が小さいことが読み取れる。同様に、ｎ＝２１〜４０のイベントノードは、Ｋ＝２のコミュニティに属する割合が大きく、Ｋ＝１、３〜５のコミュニティに属する割合が小さいことが読み取れる。また、ｎ＝４１〜６０のイベントノードは、Ｋ＝３のコミュニティに属する割合が大きく、Ｋ＝１、２、４、５のコミュニティに属する割合が小さいことが読み取れる。また、ｎ＝６１〜８０のイベントノードは、Ｋ＝４のコミュニティに属する割合が大きく、Ｋ＝１〜３、５のコミュニティに属する割合が小さいことが読み取れる。また、ｎ＝８１〜１００のイベントノードは、Ｋ＝５のコミュニティに属する割合が大きく、Ｋ＝２〜４のコミュニティに属する割合が小さいことが読み取れる。これらの情報から、ｎ＝１〜２０のイベントノードを含むコミュニティ［１−１］と、ｎ＝２１〜４０のイベントノードを含むコミュニティ［１−２］と、ｎ＝４１〜６０のイベントノードを含むコミュニティ［１−３］と、ｎ＝６１〜８０のイベントノードを含むコミュニティ［１−４］と、ｎ＝８１〜１００のイベントノードを含むコミュニティ［１−５］と、という５つの第１コミュニティが生成されることが読み取れる。
【００７９】
しかしながら、イベントノード１０１のコミュニティ分類は、イベントリンク１０２がいかなる時刻に形成されたものかという情報を含まないため、生成される５つのコミュニティは、時間的に異なるタイミングで形成されたイベントリンク１０２に基づいて形成されている場合がある。そのため、イベントノード１０１に基づいてコミュニティを生成するだけでは、ネットワーク情報の時間的構造が捉えられない場合がある。この点、本実施形態に係る情報処理装置１では、時刻ノード１１１のコミュニティ分類を併せて行うことで、ネットワーク情報の時間的構造を捉える。
【００８０】
図９は、本発明の実施形態に係る情報処理装置１により算出された第２重要度と第２分類割合の積の値π（ＩＩ）（Ｋ）ｐ（ＩＩ）（Ｎ｜Ｋ）を示すグラフである。同図では、１００個のイベントノード１０１を含む第１ネットワーク情報１００と第２ネットワーク情報１１０についての交互計算によって算出された第２重要度と第２分類割合の積の値π（ＩＩ）（Ｋ）ｐ（ＩＩ）（Ｎ｜Ｋ）を示す。当該第２ネットワーク情報１１０は、１００個のイベントノード１０１と、３６５個の時刻ノードとを含む。ここで、３６５個の時刻ノードは、１年間の日に対応した時刻ノードである。当該第２ネットワーク情報１１０では、イベントの発生した日を示す時刻ノードとイベントノードとを時刻リンクで結ぶことで、イベントの発生日を記録している。
【００８１】
同図の左側には、５つのグラフを示しており、各グラフの横軸はｎ＝１〜１００のイベントノード番号を表し、縦軸は第２重要度と第２分類割合の積の値のうちイベントノードに関する値（Ｎ＝１〜１００の場合におけるπ（ＩＩ）（Ｋ）ｐ（ＩＩ）（Ｎ｜Ｋ）の値）を表している。また、同図の右側には、時刻ノードに関する第２重要度と第２分類割合の積の値のグラフを示しており、グラフの縦軸はｔ＝１〜３６５の時刻ノード番号を表し、横軸は第２帰属度の値のうち時刻ノードに関する値（Ｎ＝１０１〜４６５の場合におけるπ（ＩＩ）（Ｋ）ｐ（ＩＩ）（Ｎ｜Ｋ）の値）を表している。
【００８２】
π（ＩＩ）（Ｋ＝１）ｐ（ＩＩ）（Ｎ｜Ｋ＝１）の値に注目すると、イベントノードに関して、ｎ＝１〜２０について比較的大きな値をとり、それ以外のイベントノード（ｎ＝２１〜１００のイベントノード）について比較的小さな値をとっている。また、時刻ノードに関して、ｔ＝１〜７３について比較的大きな値をとり、それ以外の時刻ノード（ｔ＝７４〜３６５の時刻ノード）について比較的小さな値をとっている。Ｋ＝２〜４の場合のπ（ＩＩ）（Ｋ）ｐ（ＩＩ）（Ｎ｜Ｋ）の値を加味すると、ｎ＝１〜２０のイベントノード及びｔ＝１〜７３の時刻ノードは、Ｋ＝１のコミュニティに属する割合が大きく、Ｋ＝２〜５のコミュニティに属する割合が小さいことが読み取れる。また、π（ＩＩ）（Ｋ＝２）ｐ（ＩＩ）（Ｎ｜Ｋ＝２）の値に注目すると、イベントノードに関して、ｎ＝２１〜４０及び６１〜８０について比較的大きな値をとり、それ以外のイベントノード（ｎ＝１〜２０、４１〜６０、８１〜１００のイベントノード）について比較的小さな値をとっている。また、π（ＩＩ）（Ｋ＝２）ｐ（ＩＩ）（Ｎ｜Ｋ＝２）の値は、時刻ノードに関して、ｔ＝７４〜１４６について比較的大きな値をとり、それ以外の時刻ノード（ｔ＝１〜７３、１４７〜３６５の時刻ノード）について比較的小さな値をとっている。このことから、ｎ＝２１〜４０及び６１〜８０のイベントノード並びにｔ＝７４〜１４６の時刻ノードは、Ｋ＝２のコミュニティに属する割合が大きく、Ｋ＝１、３〜５のコミュニティに属する割合が小さいことが読み取れる。また、ｎ＝４１〜６０のイベントノード及びｔ＝１４７〜２１９の時刻ノードは、Ｋ＝３のコミュニティに属する割合が大きく、Ｋ＝１、２、４、５のコミュニティに属する割合が小さいことが読み取れる。また、ｎ＝６１〜８０のイベントノード及びｔ＝２２０〜２９２の時刻ノードは、Ｋ＝４のコミュニティに属する割合が大きく、Ｋ＝１〜３、５のコミュニティに属する割合が小さいことが読み取れる。また、ｎ＝８１〜１００のイベントノード及びｔ＝２９３〜３６５の時刻ノードは、Ｋ＝５のコミュニティに属する割合が大きく、Ｋ＝１〜４のコミュニティに属する割合が小さいことが読み取れる。
【００８３】
これらの情報から、ｎ＝１〜２０のイベントノード及びｔ＝１〜７３の時刻ノードを含むコミュニティ［２−１］と、ｎ＝２１〜４０及び６１〜８０のイベントノード並びにｔ＝７４〜１４６の時刻ノードを含むコミュニティ［２−２］と、ｎ＝４１〜６０のイベントノード及びｔ＝１４７〜２１９の時刻ノードを含むコミュニティ［２−３］と、ｎ＝６１〜８０のイベントノード及びｔ＝２２０〜２９２の時刻ノードを含むコミュニティ［２−４］と、ｎ＝８１〜１００のイベントノード及びｔ＝２９３〜３６５の時刻ノードを含むコミュニティ［２−５］と、という５つの第２コミュニティが生成されることが読み取れる。
【００８４】
ここで、π（ＩＩ）（Ｋ＝２）ｐ（ＩＩ）（Ｎ｜Ｋ＝２）に対応する第２のコミュニティは、ｎ＝２１〜４０及び６１〜８０のイベントノードを含む。つまり、ｔ＝７４〜１４６の時刻ノードで示される時刻に発生したイベントは、ｎ＝２１〜４０のイベントノードと、ｎ＝６１〜８０のイベントノードという２つのまとまりを包含していることがわかる。
【００８５】
本実施形態に係るコミュニティ分解部１６３ｄは、複数のイベントノード１０１のうち１の第２コミュニティに属する１以上の注目ノードについて、１以上の注目ノードが属する第１コミュニティが２以上ある場合に、当該１の第２コミュニティを、当該２以上の第１コミュニティに従って２以上に分解する。図８及び９の例で説明すると、１以上の注目ノードであるｎ＝２１〜４０及び６１〜８０のイベントノードは、１の第２コミュニティ（コミュニティ［２−２］）に属し、２以上の第１コミュニティ（コミュニティ［１−２］及びコミュニティ［１−４］）に属する。従って、コミュニティ分解部１６３ｄは、１の第２コミュニティであるコミュニティ［２−２］を、コミュニティ［１−２］及びコミュニティ［１−４］に従って、ｎ＝２１〜４０のイベントノード及びｔ＝７４〜１４６の時刻ノードを含むコミュニティ［２−２ａ］と、ｎ＝６１〜８０のイベントノード及びｔ＝７４〜１４６の時刻ノードを含むコミュニティ［２−２ｂ］と、に分解する。このように、第１コミュニティを参照して第２コミュニティを分解することで、時間的に重複した範囲に複数のイベントが発生している場合であっても、イベントノードのコミュニティ分解が行われ、コミュニティが生成される。
【００８６】
図１０は、本発明の実施形態に係る情報処理装置１により分解された第２コミュニティを示すグラフである。同図では、横軸にｎ＝１〜１００のイベントノード番号を表し、縦軸にｔ＝１〜３６５の時刻ノード番号を表している。グラフ中の「Ｋ＝１」と書かれた矩形領域は、ｎ＝１〜２０のイベントノード及びｔ＝１〜７３の時刻ノードを含むコミュニティ［２−１］１２０を表している。また、グラフ中の「Ｋ＝２ａ」と書かれた矩形領域は、ｎ＝２１〜４０のイベントノード及びｔ＝７４〜１４６の時刻ノードを含むコミュニティ［２−２ａ］１２１を表している。また、また、グラフ中の「Ｋ＝２ｂ」と書かれた矩形領域は、ｎ＝６１〜８０のイベントノード及びｔ＝７４〜１４６の時刻ノードを含むコミュニティ［２−２ｂ］１２２を表している。また、グラフ中の「Ｋ＝３」と書かれた矩形領域は、ｎ＝４１〜６０のイベントノード及びｔ＝１４７〜２１９の時刻ノードを含むコミュニティ［２−３］１２３を表している。また、グラフ中の「Ｋ＝４」と書かれた矩形領域は、ｎ＝６１〜８０のイベントノード及びｔ＝２２０〜２９２の時刻ノードを含むコミュニティ［２−４］１２４を表している。また、グラフ中の「Ｋ＝５」と書かれた矩形領域は、ｎ＝８１〜１００のイベントノード及びｔ＝２９３〜３６５の時刻ノードを含むコミュニティ［２−５］１２５を表している。
【００８７】
同図より、例えば、ｎ＝６１〜８０のイベントノードについては、ｔ＝７４〜１４６の時刻ノードで示される時間範囲と、ｔ＝２２０〜２９２の時刻ノードで示される時間範囲の２度にわたってイベントが発生していることが読み取れる。このように、同じイベントノードについて時間的に異なるタイミングで異なるイベントが発生する場合、第１コミュニティ生成では時間的先後関係を捉えられない場合があるが、第２コミュニティを生成することで時間的構造を捉えたコミュニティ生成が行われる。
【符号の説明】
【００８８】
１  情報処理装置、１０  第１ネットワーク情報、１１  第２ネットワーク情報、１２  入力部、１３  解像度、１４  相関長パラメータ、１５  リンク重み、１６  制御部、１７  記憶部、１８  表示部、１００  第１ネットワーク情報、１０１  イベントノード、１０２  イベントリンク、１１０  第２ネットワーク情報、１１１  時刻ノード、１１２  時刻リンク、１１３  時間相関リンク、１１４  時間相関時刻リンク、１２０  コミュニティ［２−１］、１２１  コミュニティ［２−２ａ］、１２２  コミュニティ［２−２ｂ］、１２３  コミュニティ［２−３］、１２４  コミュニティ［２−４］、１２５  コミュニティ［２−５］、１６０  第１ネットワーク情報取得部、１６１  第１コミュニティ生成部、１６１ａ  第１分類割合算出部、１６１ｂ  第１重要度算出部、１６１ｃ  第１帰属度算出部、１６２  第２ネットワーク情報取得部、１６３  第２コミュニティ生成部、１６３ａ  第２分類割合算出部、１６３ｂ  第２重要度算出部、１６３ｃ  第２帰属度算出部、１６３ｄ  コミュニティ分解部。
【図１】
0006511971.tif 000008
【図２】
0006511971.tif 000009
【図３】
0006511971.tif 000010
【図４】
0006511971.tif 000011
【図５】
0006511971.tif 000012
【図６】
0006511971.tif 000013
【図７】
0006511971.tif 000014
【図８】
0006511971.tif 000015
【図９】
0006511971.tif 000016
【図１０】
0006511971.tif 000017