(57)【特許請求の範囲】
【請求項１】
ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成するフィルタ部と、
前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う分析部と
を備えることを特徴とするデータフロー解析装置。
【請求項２】
前記パケットストリームに含まれるキーワードの分布から、前記モデル上の潜在状態の数の増減と、前記フィルタ部の選別パラメータの更新とを行う機能を有する
ことを特徴とする請求項１に記載のデータフロー解析装置。
【請求項３】
前記パケットストリームから前記キーワードを抽出する処理、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめる処理、又は前記モデル上の潜在状態の数の増減と、前記フィルタ部の選別パラメータの更新とを行う機能の少なくとも１つが、ストリーム処理可能なアルゴリズムで、並列処理可能なプロセッサ上で実装されている
ことを特徴とする請求項１又は２に記載のデータフロー解析装置。
【請求項４】
前記キーワードの発生確率を時系列的に保持するモデルが、前記特徴ベクトルの系列を低い次元に射影したものである
ことを特徴とする請求項１から３のいずれか１項に記載のデータフロー解析装置。
【請求項５】
前記特定のパケットストリームの選別が、前記パケットストリームのパケットヘッダ及びパケットペイロードの内容を、所定の条件に基づいて検査することで行われる
ことを特徴とする請求項１から４のいずれか１項に記載のデータフロー解析装置。
【請求項６】
前記ユーザの潜在的な興味状態の変化を潜在状態系列として出力する処理が、予め登録されたキーワードに関する情報を用いた比較処理を含むものである
ことを特徴とする請求項１から５のいずれか１項に記載のデータフロー解析装置。
【請求項７】
前記特徴ベクトルが、所定の時間幅に対応づけられている
ことを特徴とする請求項１から６のいずれか１項に記載のデータフロー解析装置。
【請求項８】
ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成するフィルタ部と、
前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う分析部と
を有するデータフロー解析装置と、
前記パケットストリームを、前記データフロー解析装置へ送信し又は前記データフロー解析装置から受信する複数の端末と、
前記データフロー解析装置から前記分析部の出力結果に応じた情報を受け取る１又は複数の端末と
を備えることを特徴とするデータフロー解析システム。
【請求項９】
フィルタ部が、ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成する過程と、
分析部が、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う過程と
を含むことを特徴とするデータフロー解析方法。
【請求項１０】
ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成する過程と、
前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う過程と
をコンピュータによって実行させるための指令を含むことを特徴とするデータフロー解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク（以下、ＮＷ）上のデータフローを解析するためのデータフロー解析装置、データフロー解析システム、データフロー解析方法およびデータフロー解析プログラムに関する。
【背景技術】
【０００２】
ＮＷ上で、複数のストリームを処理する方式に関する技術としては非特許文献１、及び特許文献１に記載されたものが存在する。この技術は、ＮＷ上の特殊ブリッジを操作し、所望の処理をグラフ状に組み合わせることで、ＮＷ上に散在する処理サーバに、任意のストリームを迂回経由させて、様々な処理を適用することが可能となるという特徴を持っている。
【０００３】
ストリーム処理に関する従来技術の方向性としては、非特許文献２に記載された技術があり、主に処理をネットワーク化して並列化する非特許文献３やＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と呼ばれる特殊プロセッサ上で高速に処理することを目的とした非特許文献４に記載された技術が存在する。これらは、基本的には非常に少ないメモリと計算資源という制約があるため、厳密解の計算を諦め、確率的に解く算出方法を用いている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−０４９９０５号公報
【非特許文献】
【０００５】
【非特許文献１】Ｓａｔｏｓｈｉ  Ｋｏｎｄｏｈ，  Ｔａｋａａｋｉ  Ｍｏｒｉｙａ，  Ｈｉｒｏｙｕｋｉ  Ｏｈｎｉｓｈｉ，  ａｎｄ  Ｍｉｋｉ  Ｈｉｒａｎｏ，“Ａ  Ｍｅｔｈｏｄ  ｏｆ  ｂｒｉｄｇｉｎｇ  ａｎｄ  ｐｒｏｃｅｓｓｉｎｇ  Ｍｅｄｉａ  ｓｔｒｅａｍ  ｏｎ  Ｎｅｔｗｏｒｋ，”  Ｇｌｏｂａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｃｏｎｆｅｒｅｎｃｅ，  ２００８  （ＩＥＥＥ  Ｇｌｏｂｅｃｏｍ  ２００８），  ＩＥＥＥ，  ２００８年，  ＣＳ０１Ｍ１−５
【非特許文献２】有村博紀、「大規模データストリームのためのマイニング技術の動向」、電子情報通信学会論文誌、２００５年３月、Ｄ−Ｉ  Ｖｏｌ．Ｊ８８−Ｄ−Ｉ  Ｎｏ．３  ｐｐ．５６３−５７５
【非特許文献３】榑林亮介、片山勝、山中直明、塩本公平、「ハッシュ型オートマトンによる文字列検索の並列化手法」、信学技報、社団法人電子情報通信学会、２００４年３月８日、ＣＡＳ２００３−１１４  ＤＳＰ２００３−２１６、  ｐｐ．４９−５４
【非特許文献４】Ｎｉｇｅｌ  Ｊａｃｏｂ，  Ｃａｒｌａ  Ｂｒｏｄｌｅｙ，  “Ｏｆｆｌｏａｄｉｎｇ  ＩＤＳ  Ｃｏｍｐｕｔａｔｉｏｎ  ｔｏ  ｔｈｅ  ＧＰＵ，”  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２２ｎｄ  Ａｎｎｕａｌ  Ｃｏｍｐｕｔｅｒ  Ｓｅｃｕｒｉｔｙ  Ａｐｐｌｉｃａｔｉｏｎｓ  Ｃｏｎｆｅｒｅｎｃｅ  （ＡＣＳＡＣ’０６），  ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ，  ２００６年，  ｐｐ．  ３７１−３８０
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載されている技術では、トラフィックデータの送受信ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）／ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス／ポートからストリームを選別して、上位のデータ処理サーバに転送や迂回等をさせていた。この方法では、Ｌ２（ＯＳＩ（Ｏｐｅｎ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ）参照モデルの２層（データリンク層））、Ｌ３（３層（ネットワーク層））、Ｌ４（４層（トランスポート層））で予め決定可能なデータフローは、データ解析が可能だが、Ｌ７（７層（アプリケーション層））に含まれるデータでデータフローを選別する場合は、全てのデータフローをデータ解析サーバに転送するため、データ解析サーバの負荷が高くなるという問題があった。
【０００７】
また、データストリーム処理による統計量の算出では、省メモリを優先させるため、種類数、平均、偏りなどの簡単な統計に限られていた。並列化手法としても文字列等のパターン照合や一部構文解析などに限定されていた。更にパターン認識の基となるオートマトン等も一度構築すると、傾向が変わった際の再構築には非常にコストがかかるという問題があった。
【０００８】
本発明は、上記の事情に鑑み、ＮＷ上で、高速かつ連続に到達するトラフィックデータに対し、データの蓄積が非常に少ない状態で、行動解析等に対して高度な計算を行うことが可能となるデータフロー解析装置、データフロー解析システム、データフロー解析方法およびデータフロー解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、請求項１記載の発明は、ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成するフィルタ部と、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う分析部とを備えることを特徴とするデータフロー解析装置である。
【００１０】
請求項２記載の発明は、前記パケットストリームに含まれるキーワードの分布から、前記モデル上の潜在状態の数の増減と、前記フィルタ部の選別パラメータの更新とを行う機能を有することを特徴とする。
【００１１】
請求項３記載の発明は、前記パケットストリームから前記キーワードを抽出する処理、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめる処理、又は前記モデル上の潜在状態の数の増減と、前記フィルタ部の選別パラメータの更新とを行う機能の少なくとも１つが、ストリーム処理可能なアルゴリズムで、並列処理可能なプロセッサ上で実装されていることを特徴とする。
【００１２】
請求項４記載の発明は、前記キーワードの発生確率を時系列的に保持するモデルが、前記特徴ベクトルの系列を低い次元に射影したものであることを特徴とする。
【００１３】
請求項５記載の発明は、前記特定のパケットストリームの選別が、前記パケットストリームのパケットヘッダ及びパケットペイロードの内容を、所定の条件に基づいて検査することで行われることを特徴とする。
【００１４】
請求項６記載の発明は、前記ユーザの潜在的な興味状態の変化を潜在状態系列として出力する処理が、予め登録されたキーワードに関する情報を用いた比較処理を含むものであることを特徴とする。
【００１５】
請求項７記載の発明は、前記特徴ベクトルが、所定の時間幅に対応づけられていることを特徴とする。
【００１６】
請求項８記載の発明は、ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成するフィルタ部と、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う分析部とを有するデータフロー解析装置と、前記パケットストリームを、前記データフロー解析装置へ送信し又は前記データフロー解析装置から受信する複数の端末と、前記データフロー解析装置から前記分析部の出力結果に応じた情報を受け取る１又は複数の端末とを備えることを特徴とするデータフロー解析システムである。
【００１７】
請求項９記載の発明は、フィルタ部が、ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成する過程と、分析部が、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う過程とを含むことを特徴とするデータフロー解析方法である。
【００１８】
請求項１０記載の発明は、ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別した前記パケットストリームを複製し、複製した一方の前記パケットストリームを前記ネットワークに出力し、複製した他方の前記パケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成する過程と、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を潜在状態系列として出力し、さらに、当該潜在状態系列を新たな更新情報として前記モデルに基づいた学習処理を行う過程とをコンピュータによって実行させるための指令を含むことを特徴とするデータフロー解析プログラムである。
【発明の効果】
【００１９】
本発明は、ネットワーク上で転送されるパケットストリームから、特定のパケットストリームを選別し、選別されたパケットストリームに含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成するフィルタ部と、前記特徴ベクトルの系列に対して前記キーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を系列として出力する分析部とを備えるので、一般にＮＷ上で、高速かつ連続に到達するトラフィックデータに対し、データを蓄積が非常に少ない状態で、行動解析等に高度な計算を行うことが可能となる。これにより、ＮＷを介したユーザの行動を、端末、サーバを跨ぐという点で広範囲に収集することが可能となる。また、ＮＷで認識処理を行うことで、端末やサーバに特別なソフトウェアをインストールする必要がなくても、データ処理対象として扱えるため、別のサービス利用に関する行動を、簡単に解析対象とすることができるという拡張性もある。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施の形態としてのフローベース行動解析システムの構成例を示すシステム図である。
【図２】図１のフローベース行動解析装置１０１の機能構成例を示すブロック図である。
【図３】図２のフィルタ部２１０の動作シーケンスを示すシーケンス図である。
【図４】図２のフィルタ部２１０における特徴ベクトル抽出例を示す説明図である。
【図５】図２の分析部２２０における動作シーケンスを示すシーケンス図である。
【図６】図１のフローベース行動解析装置１０１で用いられる潜在状態遷移モデルの一例を説明するための説明図である。
【図７】図１のフローベース行動解析装置１０１による潜在状態の分割方法と、出力系列の決定方法の一例を説明するための説明図である。
【図８】図１のフローベース行動解析装置１０１の広告推薦サービスへの応用例を示すシステム図である。
【図９】図１のフローベース行動解析装置１０１のライフログサービスへの応用例を示すシステム図である。
【発明を実施するための形態】
【００２１】
本発明が適用されるフローベース行動解析装置を主要な構成要素とするフローベース行動解析システムの実施形態について、まず、本実施形態の基本的構成の概要について説明した後、実施形態の構成及び動作について図面を参照しながら詳細に説明する。なお、本願において、データフロー解析装置あるいはデータフロー解析システムとは、フローベース行動解析装置及びそれを含むフローベース行動解析システムの両方を含むものであるとする。
【００２２】
まず、本実施形態の基本的構成の概要を説明する。本実施形態は、ＮＷを通るトラフィックから高度な行動解析等の処理を行う上で、汎用的に利用できるデータ抽出及び変換方式を実現するため、一次解析部として構文解析等により、ＮＷ上のトラフィックすなわちデータフロー（本実施形態ではパケットストリームで代表する）から所望の単語（キーワード）を抽出するフィルタ部を用意している。このフィルタ部において、検索、Ｗｅｂ（ウェブ）閲覧、コメント投稿等に伴うデータフローを補足した際に、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）／ＧＥＴ（指定したＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）のデータを取得するメソッド）やＰＯＳＴ（指定したＵＲＩにデータを登録するメソッド）、またはＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）内のｍｅｔａ（メタ）タグ内から、キーワードを抽出してこれをある時間幅でスコア付けしたものを各要素（各成分）とするベクトルとすることで、以降の処理を、様々なアルゴリズム（すなわち統計的データ解析）が適用し易くなるようにしている。
【００２３】
なお、本願では、抽出したキーワードに基づいて生成したベクトルを特徴ベクトルと呼ぶこととする。なお、この特徴ベクトルの各要素（あるいは各成分）は、各キーワードに対応するある時間幅でのスコアを表し、このスコアは各キーワードの出現頻度や重要度によって設定することができる。また、特徴ベクトルは所定の時間幅に対応づけられたものとなっている。
【００２４】
また、このようにキーワードに係る情報をベクトル化することでＧＰＵ等の並列計算機による高速化がなされ易いようにもすることができる。
【００２５】
また、本実施形態は、ストリーム処理において、サービスに有効である高度な行動解析モデルを用いた効率的な計算方法を実現するため、行動解析モデル（ユーザの行為の態様を抽象化したモデルであって、ユーザの潜在的な興味状態の変化を系列として示すものであり、本実施形態ではパケットストリーム中のテキストに含まれる単語（キーワード）の発生確率を時系列的に保持するモデルすなわち潜在状態遷移モデルとして定義される）を、フィルタ部で抽出したベクトルの系列に対して当てはめることによって、ユーザの潜在的な興味状態の変化を系列として出力する分析部を用意している。さらに、行動解析モデルの学習を、データを与えながら逐次的に行えるようにし、潜在状態系列との比較によって行動系列の判別を統計的データ解析によって実行するとともに、潜在状態系列の更新処理も実行する。またこの更新の際に、ストリーム処理による分散計算を用いることで計算量を削減することを可能にしている。
【００２６】
次に、本発明が適用される、フローベース行動解析システムの実施形態について図面を参照しながら説明する。
【００２７】
まず図１は本実施形態に係るシステム全体の構成図であり、ＮＷ１００の転送経路上に、フローベース行動解析装置１０１が存在し、フローベース行動解析装置１０１は、ユーザ等の端末１０２から、検索、Ｗｅｂ閲覧、コメント投稿機能等の各種サービスを提供するサーバ等のサーバ１０３に向けて送出されるパケットストリーム１０４をＮＷ転送経路上で受信する。フローベース行動解析装置１０１は、受信したパケットストリーム１０４から、行動解析結果となるデータ１０５を生成し、予め指定された広告配信サーバ等のサーバ１０６に送信する。
【００２８】
次に図１のフローベース行動解析装置１０１の実装について図２を用いて説明する。フローベース行動解析装置１０１はフィルタ部２１０と、分析部２２０から成る。この場合、フローベース行動解析装置１０１は、コンピュータ及びその周辺装置と、そのコンピュータによって実行されるプログラムとを用いて実現することができる。フィルタ部２１０と分析部２２０の各部は、フローベース行動解析装置１０１を構成するコンピュータによって実行されるプログラムとして構成されていたり、記憶装置等の周辺装置のハードウェア資源とそれを制御あるいは利用するためのプログラムとの組み合わせによって構成されていたりする。
【００２９】
また、フィルタ部２１０は、パケットヘッダ検査部２１１と、パケットペイロード検査部２１２と、検査振分（ふりわけ）パラメータＤＢ（データベース）２１３と、特徴ベクトル生成部２１４と、特徴抽出関数ＤＢ２１５と、パケット複製部２１６と、それら各部を制御するフィルタ制御部２１７とから成る。分析部２２０は、状態遷移判定部２２１と、潜在状態ＤＢ２２２と、最適情報決定部２２３と、出力情報登録ＤＢ２２４から構成される。
【００３０】
図２のフィルタ部２１０は、パケットストリーム１０４から特定のパケットストリーム１０４を選別し、選別したパケットストリーム１０４（あるいはパケットストリーム１０４に含まれるテキストストリーム）から構文解析等によって単語（キーワード）を検出することで特徴ベクトルの系列を生成して、分析部２２０に出力する機能を提供する。すなわち、フィルタ部２１０は、ネットワーク上で転送されるパケットストリーム１０４から、特定のパケットストリーム１０４を選別し、選別されたパケットストリーム１０４に含まれる複数のキーワードに基づいて、各キーワードのスコアを各要素とする特徴ベクトルを生成する。その際、パケットストリームのパケットヘッダ及びパケットペイロードの内容を、所定の条件に基づいて検査することで、検索、Ｗｅｂ閲覧、コメント投稿によって発生する特定のパケットストリーム等が選別される。
【００３１】
パケットヘッダ検査部２１１は、図１の端末１０２、サーバ１０３等に対応する図２のパケットストリーム送信端末２０１からパケットストリーム１０４を受け取り、受け取ったパケットストリーム１０４のパケットヘッダを検査し、所定の検査条件に基づいて、検索、Ｗｅｂ閲覧、コメント投稿によって発生する特定のパケットストリーム等を選別する。パケットヘッダの検査条件は、検査振分ＤＢ２１３に格納されている情報に基づいて設定される。パケットヘッダ検査部２１１は、受け取ったパケットストリーム１０４のパケットヘッダが、設定されている検査条件に適合するか否かを検査する。パケットヘッダ検査部２１１は、適合した場合、当該パケットストリーム１０４をパケット複製部２１６へ出力し、適合しなかった場合、当該パケットストリーム１０４をパケットペイロード検査部２１２へ出力する。
【００３２】
パケットペイロード検査部２１２は、パケットヘッダ検査部２１１からパケットストリーム１０４を受け取り、受け取ったパケットストリーム１０４のペイロード（パケットストリーム１０４のデータ部）を検査する。ペイロードの検査条件は、検査振分ＤＢ２１３に格納されている情報に基づいて設定される。パケットペイロード検査部２１２は、受け取ったパケットストリーム１０４のデータ部が、設定されている検査条件に適合するか否かを検査する。パケットペイロード検査部２１２は、適合した場合、当該パケットストリーム１０４をパケット複製部２１６へ出力し、適合しなかった場合、当該パケットストリーム１０４を、図１のサーバ１０３、端末１０２等に対応する図２のパケットストリーム受信端末２０２へ出力する。
【００３３】
パケット検査設定ＤＢ２１３は、パケットヘッダ検査部２１１に設定されるパケットヘッダ検査条件、パケットペイロード検査部２１２に設定されるペイロード検査条件等の情報を格納している。
【００３４】
パケット複製部２１６は、パケットヘッダ検査部２１１またはパケットペイロード検査部２１２において検査条件に適合すると判定されたパケットストリーム１０４を複製し、一方を特徴ベクトル生成部２１４へ出力し、他方をパケットストリーム受信端末２０２へ出力する。
【００３５】
特徴ベクトル生成部２１４は、予め特徴抽出関数ＤＢ２１５から抽出関数の情報がロードされ、それに基づいて、パケット複製部２１６から渡されたパケットストリーム１０４を、多次元ベクトルストリームに変換して、上位の分析部２２０（の状態遷移判定部２２１）に出力する。多次元ベクトルストリームは、パケットストリーム１０４によって表されるＨＴＴＰ／ＧＥＴやＰＯＳＴ内またはＨＴＭＬ内のｍｅｔａタグ内から抽出された複数のキーワードに対応するスコアを各要素とする特徴ベクトルを時系列に並べた情報である。
【００３６】
特徴抽出関数ＤＢ２１５は、パケットストリーム１０４から所定の複数のキーワードを抽出する際の処理や条件を示す関数を格納している。
【００３７】
一方、分析部２２０は、フィルタ部２１０（の特徴ベクトル生成部２１４）から渡された多次元ベクトルストリームを用いて行動解析処理を実行する。より具体的には、分析部２２０は、選別されたパケットストリーム１０４で表されるテキストストリーム（テキスト列）に含まれる単語（キーワード）の発生確率を、時系列的に保持するモデル（すなわち潜在状態遷移モデル）に統計的処理で当てはめることにより、ユーザの潜在的な興味状態の変化を系列として出力するための処理を行う。すなわち、分析部２２０は、フィルタ部２１０で生成された特徴ベクトルの系列に対してキーワードの発生確率を時系列的に保持するモデルに当てはめることによって、ユーザの潜在的な興味状態の変化を系列として出力する。
【００３８】
状態遷移判定部２２１は、特徴ベクトル生成部２１４から多次元ベクトルストリームを受け取ると、多次元ベクトルストリーム内の各特徴ベクトルに基づいて潜在状態系列を計算する。状態遷移判定部２２１は、潜在状態ＤＢ２２２から予め登録されている潜在状態のネットワークを取得し、それを基に特徴ベクトルの系列に対して最も確率の高い（尤度の高い）潜在状態系列を求める。ここで潜在状態とは、複数のキーワードに応じた多次元ベクトルストリームに対応する、ガウス分布等のパラメトリックな確率分布によるベクトルの発生源である。また、潜在状態系列とは潜在状態の一定の順序による並びであり、潜在状態のネットワークとは、相互に関連性がある複数の潜在状態を組み合わせたものである。なお、一般的には、特徴ベクトルの系列に基づく潜在状態系列の計算は、行列の特異値分解という線形代数の理論に基づく高次元のデータ列を低次元のデータ列に射影する計算となる。
【００３９】
また、状態遷移判定部２２１は、パケットストリーム１０４に含まれるキーワードの分布から、時系列なモデル上の潜在状態の数を増減させるための情報を、フィルタ制御部２１７に対してフィードバックする。
【００４０】
潜在状態ＤＢ２２２には、潜在状態のネットワークが複数組、予め登録されている。
【００４１】
最適情報決定部２２３は、状態遷移判定部２２１によって得られた潜在状態系列と、出力情報登録ＤＢ２２４から取得した情報とに基づき、出力に関する情報系列を決定する。最適情報決定部２２３は、出力情報登録ＤＢ２２４から、出力したい何らかの登録情報とそれに付随されるベクトルデータを取得する。ここで、登録情報に付随するベクトルは、上記の特徴ベクトルの系列あるいは潜在状態系列と同じ種類のもの、すなわち潜在状態系列と比較可能な形態を有するものである。この付随ベクトルと潜在状態系列との統計的な比較結果に基づき最適情報決定部２２３は、図１のサーバ１０６等に対応する図２の行動解析データ受信端末２０３へ出力する情報を決定する。この場合、最適情報決定部２２３によって、ユーザの潜在的な興味状態の変化を系列として出力する処理が、予め登録されたキーワードに関する情報を用いた比較処理を含むものとなっている。
【００４２】
また、最適情報決定部２２３は、パケットストリーム１０４に含まれるキーワードの分布から、フィルタ部２１０のパケットストリーム１０４の選別パラメータの更新するための情報を、フィルタ制御部２１７に対してフィードバックする。
【００４３】
次に、図３を参照して、図２のフィルタ部２１０における処理の流れについて説明する。図３はフィルタ部２１０がパケットストリーム１０４から特徴ベクトルの系列を分析部２２０に出力する際の基本的なシーケンスである。
【００４４】
パケットストリーム１０４が、ＮＷ転送経路上のフローベース行動解析装置１０１に到達した際、パケットストリーム１０４は、まずフィルタ部２１０のパケット検査部２１１に入力される（ステップＳ１０６）。但し、フィルタ制御部２１７の指令をトリガとして（ステップＳ１０２）、パケットヘッダ検査部２１１は予め検査振分パラメータＤＢ２１３から、如何なるパケットヘッダを検出するかのヘッダ検査（条件）設定を受け取っているものとする（ステップＳ１０４）。ここでパケットヘッダ検査部２１１に渡される条件設定とは、例えば５Ｔｕｐｐｌｅ（タプル）（送受信ＩＰアドレス、送受信ポート番号、プロトコル）とすることができる。ただし、この場合の条件の内容は、一例的であって、例えば、将来的にヘッダ領域が拡張された場合でもそれに対応するように適宜変更することが可能である。その場合でも以降の処理には影響はない。
【００４５】
この状態で、（ａ）のように、パケットストリームのヘッダが検査条件に適合する場合には、そのパケットストリームがパケット複製部２１６に渡される（ステップＳ１０７）。パケット複製部２１６では、パケットストリームを複製（ミラーリング）し、片方を特徴ベクトル生成部２１４に（ステップＳ１０９）、もう片方を本来の宛先となるパケットストリーム受信端末２０２に出力する（ステップＳ１０８）。
【００４６】
また、（ｂ）のように、パケットヘッダ条件には不適合であった場合、パケットストリームは、パケットヘッダ検査部２１１から、パケットペイロード検査部２１２に渡される（ステップＳ１１１〜Ｓ１１２）。パケットペイロード検査部２１２には、フィルタ制御部２１７の指令により（ステップＳ１０２）、予め検査振分パラメータＤＢ２１３からペイロード（条件）設定が成されているものとする（ステップＳ１０３）。ここでのペイロード検査設定は、照合文字列の集合、若しくは正規表現によるパターン記述等を用いることができる。ただし、この場合の設定例は、一例的であって、ヘッダ検査設定と同様、それら以外の処理を拡張として搭載しても以降の処理には矛盾しない。
【００４７】
パケットペイロード検査部２１２で条件に適合した場合、当該パケットストリームは、パケット複製部２１６に渡され（ステップＳ１１３）、ミラーリングが行われた後、特徴ベクトル生成部２１４とパケットストリーム受信端末２０２にそれぞれ出力される（ステップＳ１１４、Ｓ１１５）。
【００４８】
また、図３には記載していないが、パケットヘッダ検査部２１１及びパケットペイロード検査部２１２の両方ともの条件に適合しなかった場合には、パケットストリームはパケット複製部２１６には渡されず、そのままパケットストリーム受信端末２０２に出力される。
【００４９】
特徴ベクトル生成部２１４では、フィルタ制御部２１７の指令の下（ステップＳ１０１）、予め特徴抽出関数ＤＢ２１５から抽出関数の情報がロードされているものとし（ステップＳ１０５）、それに基づいて、パケット複製部２１６から受け取ったパケットストリームを（ステップＳ１０９、Ｓ１１５）、多次元ベクトルストリームに変換して、上位の分析部２２０（の状態遷移判定部２２１）に渡す処理を行う（ステップＳ１１０、Ｓ１１６）。
【００５０】
図４に特徴ベクトル生成部２１４による、多次元ベクトルストリームを構成する特徴ベクトルの生成の具体例を示す。抽出対象としては、（１ａ）検索クエリリクエスト（図４（Ａ））、（２ａ）Ｗｅｂページ閲覧レスポンス（図４（Ｂ））、（３ａ）コメント投稿等におけるＰＯＳＴリクエスト（図４（Ｃ））、が挙げられる。
【００５１】
（１ａ）の検索クエリは、図４（Ａ）に示すようにパケットストリーム１０４中のＧＥＴメソッドの末端に‘＋'（プラス記号）等をデリミタ（区切り文字）としたキーワードの列が付随するため、このデリミタで挟まれた単語（キーワード）を抽出することで右記の特徴ベクトル２１４ａを生成する。この際、特徴ベクトルの各要素は、キーワードに対応するスコアを表すものとし、このスコアは出現頻度や重要度を想定している。この例では、キーワード「ＮｏｔｅＰＣ」、「ＧＰＵ」、「Ｓ△△」に対応する特徴ベクトルの各要素に「１」が設定された期間ｔ０〜ｔ１の特徴ベクトル＝（「ＮｏｔｅＰＣ」に対応するスコア，「ＧＰＵ」に対応するスコア，「Ｓ△△」に対応するスコア，…）Ｔ＝（１，１，１，…）Ｔ（ただしＴは転置を表す。）が算出（抽出）されている。
【００５２】
また（２ａ）は、ＷｅｂページＨＴＭＬ１０３１に存在するＳＥＯ（Ｓｅａｒｃｈ  Ｅｎｇｉｎｅ  Ｏｐｔｉｍｉｚａｔｉｏｎ）対策のためのＭｅｔａタグ内のキーワードを対象にベクトルを生成する場合である。Ｍｅｔａタグ内は、‘，’（カンマ）をデリミタとしているので、それらに挟まれるキーワードを抽出する。そして、右記の特徴ベクトル２１４ｂが生成される。この例では、キーワード「ハイブリッド」、「エコロジカル」に対応する特徴ベクトルの各要素に「１」が設定された期間ｔ０〜ｔ１の特徴ベクトル＝（…，「ハイブリッド」に対応するスコア，「エコロジカル」に対応するスコア，…）Ｔ＝（…，１，１，…）Ｔが算出されている。
【００５３】
最後に（３ａ）は、ブログ等のコメント投稿における文章をベクトルのソースとする場合である。この場合、適当なデリミタが存在しないため、構文解析による単語抽出と、ＴＦ・ＩＤＦ（Ｔｅｒｍ  Ｆｒｅｑｕｅｎｃｙ，  Ｉｎｖｅｒｓｅ  Ｄｏｃｕｍｅｎｔ  Ｆｒｅｑｕｅｎｃｙ）などの所定の重要度付けアルゴリズムを組み合わせて、スコアを付与するものとする。同時に、抽出時間を、ある範囲で区切りその値を付与するものとする。これにより、検索クエリやＷｅｂページ閲覧の発生に逐一、ベクトルを生成する必要は無くなり、サンプリングと同様の効果から分析部２２０の処理負荷の低減を図ることが可能となる。そして、右記の特徴ベクトル２１４ｃが生成される。この例では、キーワード「デスクトップ」、「Ｇ△△△△」に対応する特徴ベクトルの各要素に「１」が設定された期間ｔ０〜ｔ１の特徴ベクトル＝（…，「デスクトップ」に対応するスコア，…，「Ｇ△△△△」に対応するスコア，…）Ｔ＝（…，１，…，１，…）Ｔが算出されている。
【００５４】
上記は、テキストデータを主に扱ったが、それ以外の例えばメディアデータであったとしても、最終的な出力さえベクトル然としていれば以降の処理は（インターフェース上は）問題なく処理可能である。
【００５５】
図５は、前述したようにして算出（抽出）された特徴ベクトルを用いて、分析部２２０が実行する行動解析シーケンスである。特徴ベクトルの列（ｘの上に→で表した記号）を以下のように表す。ここでｔは、時間幅Δｔで区切られ離散化した時間に対するインデックスを表すものとする。なお、特徴量次元数ｍは、この場合、特徴ベクトルで用いられているキーワードの個数である。
【００５６】
【数１】
0005424781.tif 000002
【００５７】
上記特徴ベクトルは、まず状態遷移判定部２２１に渡され（ステップＳ２０１）、状態遷移判定部２２１は潜在状態系列を計算する。状態遷移判定部２２１では、潜在状態ＤＢ２２２から潜在状態のネットワークを取得し（ステップＳ２０２〜Ｓ２０３）、それを基に最も確率の高い状態系列を求める。ここで潜在状態とは、ガウス分布等のパラメトリックな確率分布によるベクトルの発生源である。ここで状態数をＫとした時、１  ｏｆ  Ｋ方式で潜在状態のネットワークは、以下のようにベクトル表現で表される。
【００５８】
【数２】
0005424781.tif 000003
【００５９】
潜在状態ベクトルが事前に与えられた際の出力事後確率は、図６（Ａ）のようになり、下記のように記述される。
【００６０】
【数３】
0005424781.tif 000004
【００６１】
ここで、
【００６２】
【数４】
0005424781.tif 000005
【００６３】
はガウス分布を表すとし、
【００６４】
【数５】
0005424781.tif 000006
【００６５】
はガウス分布の平均や分散を表すパラメータである。これらの定式化により、一見異なる次元同士にも関連度を設定することが可能となる他、本質的な低い次元に射影することで、処理負荷を軽減するだけでなく、過学習を防ぐことも可能になる。すなわち、キーワードの発生確率を時系列的に保持するモデルが、特徴ベクトルの系列を低い次元に射影したものとなっている。
【００６６】
潜在状態系列が算出されたら、状態遷移判定部２２１は、それを最尤系列として最適情報決定部２２３へ出力する（ステップＳ２０４）。この際、各潜在状態が持つ平均ベクトル
【００６７】
【数６】
0005424781.tif 000007
【００６８】
と、特徴ベクトル
【００６９】
【数７】
0005424781.tif 000008
【００７０】
も合わせて最適情報決定部２２３に通知する。最適情報決定部２２３では以下のように特徴ベクトルを補正して比較を行う。
【００７１】
【数８】
0005424781.tif 000009
【００７２】
但し上記においてｍａｘは、同じ次元で要素の大きい方を選択するものとする。
【００７３】
また、状態遷移判定部２２１は、潜在状態系列を更新情報として潜在状態ＤＢ２２２の登録情報すなわち行動解析モデル（すなわち潜在状態遷移モデル）の学習処理を行う（ステップＳ２０５）。学習処理の内容としては、例えば、パケットストリームに含まれる単語（キーワード）の分布から、時系列なモデル上の潜在状態の数を増減させるようにしている。その際、行動解析モデルの学習は、最尤系列を示すデータを与えながら逐次的に行えるようにし、行動系列の判別をすると同時に更新できるようにしている。またこの更新の際に、ストリーム処理（ストリームデータ処理）による分散計算を用いることで計算量を削減することが可能である。
【００７４】
次に、ステップＳ２０４で送られた最尤系列に関する情報を基に、最適情報決定部２２３で、出力に関する情報系列を決定する。出力情報登録ＤＢ２２４から、出力したい何らかの登録情報とそれに付随されるベクトルデータを取得する（ステップＳ２０７、Ｓ２０８）。ここで、登録情報に付随するベクトルは、前述で扱った特徴ベクトルと種類は同じものとする。この付随ベクトルと、上記の補正ベクトルとの距離を測定しその距離がある閾値を超えたら登録情報が現れるような出力系列を決定できる。このとき距離は、設定によりユークリッド距離やマハラノビス距離等を利用することができる。決定された出力系列は、出力情報列として行動解析データ受信端末２０３へ送出され（ステップＳ２０９）、また、出力情報の算出に関するフィードバック情報がフィルタ制御部２１７へ送出される（ステップＳ２１０）。ステップＳ２１０では、最適情報決定部２２３が、算出内容に基づくフィードバック情報をフィルタ制御部２１７へ返すことで、パケットストリームに含まれる単語（キーワード）の分布に基づいて、フィルタ部２１０の選別パラメータの更新を行わせるための機能が実現されるようになっている。
【００７５】
図６（Ｂ）、（Ｃ）は潜在状態の遷移モデルの例を表しており、時間と共に潜在状態が遷移する。この遷移の様子をトレリス図で表したものが図（Ｄ）であり、このようなモデルを置くことで、最尤系列を例えばＶｉｔｅｒｂｉアルゴリズム（ビタビアルゴリズム）により効率的に計算可能となる。Ｖｉｔｅｒｂｉアルゴリズムは、最尤系列となる潜在状態系列を動的計画法で求めるアルゴリズムである。
【００７６】
次に、図７を参照して、適切な潜在状態の数の設定、及び出力確率の設定方法について記述する。
【００７７】
［ＳＴＥＰ０］図７左側のように、潜在状態により特徴ベクトルの出力分布が決定されるものと仮定し、最初は１状態から開始する。状態は、自身に所属するデータの個数、平均値、分散を保持するものとする。
【００７８】
［ＳＴＥＰ１］新たに発生した特徴ベクトル系列
【００７９】
【数９】
0005424781.tif 000010
【００８０】
に対し、例えばＶｉｔｅｒｂｉアルゴリズムを適用し、最尤状態系列
【００８１】
【数１０】
0005424781.tif 000011
【００８２】
を計算する。
【００８３】
［ＳＴＥＰ２］最尤系列に含まれる状態番号に出力ベクトルが所属すると考え、各状態が出力する確率分布を更新する。ガウス分布を場合は、個数、平均、分散値から更新する。このとき分散は２次モーメントの近似統計手法を用いて計算する。同時に、追加したベクトルを状態中に一定確率で蓄積するようにし、データ分布を粗視化する。
【００８４】
［ＳＴＥＰ３］また図７右側のように、分散値が特定の閾値を超える場合、粗視化したサンプルを基に２ｍｅａｎｓ（テキストを距離の情報を用いて非階層的にグループ分けするクラスター分析の一手法）により状態を分割し、それぞれの状態の平均値、及び分散を新たに設定する。また分割された状態から別の状態に遷移する確率を個数の比率により配分し、ＳＴＥＰ１に戻る。
【００８５】
なお、図７は、図１のフローベース行動解析装置１０１による潜在状態の分割方法と、出力系列の決定方法の一例を説明するための説明図であり、状態遷移判定部２２１内等に設けられた記憶手段であるストリーム収集基盤２２１１を用いて時系列の特徴ベクトル
から最尤状態系列を算出する処理を模式的に示している。この例では、出力情報登録ＤＢ２２４内に「インテリア」、「グリーン」、「ハイブリッド」からなる登録メタキーワードが格納されるとともに、それに対応づけて広告対象についての情報が格納されている。また、最尤系列に対応するものとして「インテリア」、「グリーン」、「ハイブリッド」の各キーワードからなるベクトルが算出されている。
【００８６】
図８は、図１のフローベース行動解析装置（システム）１０１を広告推薦サービスに応用したものである。予め広告事業者は、本システムに対し、推薦したい広告と、それに付随するキーワードを登録しておくものとする。なお、図１と同一の構成には同一の符号を用いている。ユーザは端末１０２を用いて様々な場所から、Ｗｅｂサーバ等のサーバ１０３に対し検索、ページ閲覧、コメント投稿等を行なうためにデータ（パケットストリーム１０４）を送受信する。フローベース行動解析装置１０１は送信されたパケットストリーム１０４からリアルタイムに行動を解析し、登録された広告系列を行動解析結果１０５として広告事業者側に返す。最終的に広告事業者は、この広告系列を基に、ユーザの端末１０２にメールやＷｅｂのＰＯＰ（ポップ）などにより、適切な広告提示を行う。これにより、広告事業者自体がユーザの行動を把握するために、クローリング等を行う必要なく複数のサーバに跨るデータを収集することが出来、効果的な広告推薦が可能となる。
【００８７】
図９は、ライフログに図１のフローベース行動解析装置（システム）１０１を応用した例である。図１と同一の構成には同一の符号を用いている。この場合、行動解析結果として何らかの行動ラベルを予め登録しておくものとする。また行動ラベルと、コミュニティ情報とを紐付けておく。これにより、Ｗｅｂ閲覧などの行動を後から視覚的に把握する履歴機能や、類似した行動をするユーザ同士のコミュニティを形成することができる。この際、端末やサーバに何もインストールする必要がない上、特定のユーザの複数の端末、サーバに跨る情報を簡単に取得可能となるため、より詳細度の高いログ、およびコミュニティ形成が期待できる。
【００８８】
以上のように、本発明の実施形態では、一次解析部として構文解析等により、単語（キーワード）を検出するフィルタ部２１０を用意している。このフィルタ部２１０において、検索、Ｗｅｂ閲覧、コメント投稿等に伴うデータを補足した際に、ＨＴＴＰ／ＧＥＴやＰＯＳＴ、またはＨＴＭＬ内のｍｅｔａタグ内からキーワードを抽出してこれをある時間幅でスコア付けして抽出した単語列をベクトルとして把握することで、以降の処理を、様々なアルゴリズムが適用し易くなるようにしている。また、ベクトル化することでＧＰＵ等の並列計算機による高速化がなされ易いようにもすることができる。
【００８９】
また、行動解析モデルの学習を、データを与えながら逐次的に行えるようにし、行動系列の判別をすると同時に更新できるようにしている。またこの更新の際に、ストリーム処理による分散計算を用いることで計算量を削減することを可能にしている。
【００９０】
したがって、本実施形態によれば、一般にＮＷ上で、高速かつ連続に到達するトラフィックデータに対し、データを蓄積が非常に少ない状態で、行動解析等に高度な計算を行うことが可能となる。これにより、ＮＷを介したユーザの行動を、端末、サーバを跨ぐという点で広範囲に収集することが可能となる。また、ＮＷで認識処理を行うことで、端末やサーバに特別なソフトウェアをインストールする必要がなくても、データ処理対象として扱えるため、別のサービス利用に関する行動を、簡単に解析対象とすることができるという拡張性もある。
【００９１】
なお、本発明の実施の形態は上記のものに限定されず、例えば、フローベース行動解析装置１０１の構成としては、ＮＷ上に配置され、ＮＷ上において、パケットストリームを受信し、取得したパケットストリームから自動で統計的にユーザの行動内容を把握することができるように構成されたものであれば、ＮＷの構成や装置の配置に特に限定はない。例えばフローベース行動解析装置１０１を複数設けて連携して動作するようにしたり、フローベース行動解析装置１０１内の特定の処理部（例えば特徴ベクトル生成部２１４や状態遷移判定部２２１、あるいは各ＤＢ）を複数並列的に設けたり、ＮＷを介して分散して配置するようにすることが可能である。また、パケットストリームから所望の単語（キーワード）を抽出する処理、及び特徴ベクトルの系列に対してキーワードの発生確率を時系列的に保持するモデルに当てはめる処理、または時系列なモデル上の潜在状態の数の増減と、フィルタ部２１０の選別パラメータの更新とを行う機能の少なくとも１つが、ストリーム処理可能なアルゴリズムで、並列処理可能なプロセッサ上で実装するようにすること等の変更が適宜可能である。
【００９２】
また、データフロー解析装置の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、データフロー解析装置を実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
【００９３】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００９４】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））のように、一定時間プログラムを保持しているものも含むものとする。
【００９５】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００９６】
なお、本発明は、上記のようにＮＷ上のデータフローを解析するための装置に係るものであるが、ＮＷ上でデータフローから情報を抽出することを目的とするものでもあるため、一種のトラフィック解析の技術分野に属するものであるということもできる。また、トラフィック解析との違いとして、Ｌ３／Ｌ４までの低位な情報だけでなく、高位のアプリケーション層（Ｌ７）に至るデータから人間の行動といった情報の解析を行うため、パターン認識の技術分野にも関するものであるということもできる。これらの解析結果は、検索や広告といった応用先に適用できるため、検索や広告推薦の技術分野にも属する。またＮＷ上を連続に終わり無く送信され続けるストリームデータを高速に処理することが必要となることから、ストリームマイニングの技術分野にも関するものであるということもできる。
【符号の説明】
【００９７】
１００  ＮＷ（ネットワーク）
１０１  フローベース行動解析装置
１０２  端末
１０３、１０６  サーバ
１０４  パケットストリーム
１０５  行動解析結果
２１０  フィルタ部
２２０  分析部
２１１  パケットヘッダ検査部
２１２  パケットペイロード検査部
２１３  検査振分パラメータＤＢ
２１４  特徴ベクトル生成部
２１５  特徴抽出関数ＤＢ
２１６  パケット複製部
２１７  フィルタ制御部
２２１  状態遷移判定部
２２２  潜在状態ＤＢ
２２３  最適情報決定部
２２４  出力情報登録ＤＢ
【図１】
0005424781.tif 000012
【図２】
0005424781.tif 000013
【図３】
0005424781.tif 000014
【図４】
0005424781.tif 000015
【図５】
0005424781.tif 000016
【図６】
0005424781.tif 000017
【図７】
0005424781.tif 000018
【図８】
0005424781.tif 000019
【図９】
0005424781.tif 000020