(57)【要約】【課題】例えば、ネットワークで送受信されるデータ量などのトラヒックの異常検知を高精度に、かつ効率的に行うことを可能とする。【解決手段】所定の時間間隔単位で時系列に集計されるデータの量が周期的に増減する際の、データの量の異常を判定する基準値を予測するものであり、選択器３は、一周期分のデータを予め設定されたタイムスロット単位で時系列に分割して出力し、パラメタ推定器４ａ〜４ｎは、選択器３から出力された各タイムスロット内のそれぞれのデータに対して、例えばＥＭアルゴリズム等の第１の時系列解析手法を用いて、基準値を予測するためのパラメタを推定し、この推定したパラメタ推定値と過去周期の同じタイムスロットにおけるパラメタ推定値の重み付け平均値を次周期におけるパラメタとして算出し、予測器６ａ〜６ｎは、各パラメタ推定器４ａ〜４ｎが算出した次周期におけるパラメタを用いた例えばカルマンフィルタ等の時系列解析モデルを利用した第２の時系列解析手法により基準値を算出する。【選択図】図１
2008311720.tif 000002
【特許請求の範囲】
【請求項１】
所定の時間間隔単位で時系列に集計されるデータ量が周期的に増減する際の、該データ量の正常性の判定に用いる基準値を、プログラムされたコンピュータによって予測する方法であって、
プログラムされたコンピュータの処理手段として、選択手段と複数のパラメタ推定手段と予測手段とを具備し、
前記選択手段は、
前記集計されたデータ量情報を入力する度に、入力したデータ量情報を、予め一周期を分割して設定された複数のタイムスロットに順次に対応付けて記憶装置に記録する第１の手順を実行し、
前記複数のパラメタ推定手段は、
前記選択手段が記録した各タイムスロット内のそれぞれのデータ量情報を読み出し、各データ量情報に対して第１の時系列解析手法を用いて、前記基準値を予測するためのパラメタを推定し、該推定したパラメタ推定値と過去周期の同じタイムスロットにおけるパラメタ推定値の重み付け平均値を次周期におけるパラメタとして算出する第２の手順を実行し、
前記予測手段は、
前記入力したデータ量情報と前記パラメタ推定手段が算出した前記次周期におけるパラメタを用いた第２の時系列解析手法により前記基準値を算出する第３の手順を実行する
ことを特徴とする基準値予測方法。
【請求項２】
請求項１に記載の基準値予測方法であって、
前記予測手段は、前記第３の手順でベーストラヒックを算出する際に、時系列解析モデルを利用することを特徴とする基準値予測方法。
【請求項３】
請求項２に記載の基準値予測方法であって、
前記予測手段は、前記第３の手順で利用する時系列解析モデルとしてカルマンフィルタを用いることを特徴とする基準値予測方法。
【請求項４】
請求項１から請求項３のいずれかに記載の基準値予測方法であって、
前記パラメタ推定手段による前記第２の手順における前記パラメタ推定値の重み付け平均値の算出を、コンフィグ情報として複数設定された周期別に実行し、
プログラムされたコンピュータの処理手段として設けられた混合手段により、複数の周期別に算出された重み付け平均値を合成することを特徴とする基準値予測方法。
【請求項５】
請求項１から請求項３のいずれかに記載の基準値予測方法であって、
前記パラメタ推定手段による前記第２の手順における前記パラメタ推定値の重み付け平均値の算出を、コンフィグ情報として複数設定されたタイムスロット別に実行し、
プログラムされたコンピュータの処理手段として設けられた混合手段により、複数のタイムスロット別に算出された重み付け平均値を合成することを特徴とする基準値予測方法。
【請求項６】
請求項１から請求項３のいずれかに記載の基準値予測方法であって、
前記パラメタ推定手段による前記第２の手順における前記パラメタ推定値の重み付け平均値の算出を、コンフィグ情報として複数設定された周期別およびタイムスロット別に実行し、
プログラムされたコンピュータの処理手段として設けられた混合手段により、複数の周期分別および複数のタイムスロット別に算出された重み付け平均値を合成することを特徴とする基準値予測方法。
【請求項７】
請求項４から請求項６のいずれかに記載の基準値予測方法であって、
前記パラメタ推定手段による前記第２の手順における前記パラメタ推定値の重み付け平均値の算出において、各コンフィグ情報の基での観測値と予測値の差を予測精度として求め、該予測精度の良いコンフィグ情報の基でのパラメタ推定値に対して大きな重みを付加することを特徴とする基準値予測方法。
【請求項８】
請求項１から請求項７のいずれかに記載の基準値予測方法であって、
前記所定の時間間隔単位で時系列に集計される周期的に増減するデータ量は、ネットワークトラヒックであることを特徴とする基準値予測方法。
【請求項９】
所定の時間間隔単位で時系列に集計されるデータ量が周期的に増減する際の、該データ量の正常性の判定に用いる基準値を、プログラムされたコンピュータによって予測するシステムであって、
プログラムされたコンピュータの処理手段として、請求項１から請求項８のいずれかに記載の各手順を実行する手段を有することを特徴とする基準値予測システム。
【請求項１０】
コンピュータに、請求項１から請求項８のいずれかに記載の基準値予測方法における各手順を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時々刻々と観測される周期を持ったトラヒック時系列データの分析技術に係り、特に、周期性を利用して、観測されるネットワークトラヒック等の異常判定に用いる基準値（ベーストラヒック、ベースライン）の予測を高精度に行うのに好適な技術に関するものである。
【背景技術】
【０００２】
日々増大するネットワーク需要を背景に、ＤＤｏＳ（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄｅｎｉａｌ  ｏｆ  Ｓｅｒｖｉｃｅ）攻撃にあげられるようなネットワークトラヒック資源を大量消費する不正行為が増えてきた。このような不正行為でネットワーク帯域が浪費されてしまえば、一般ユーザの通信品質を著しく劣化させることにつながる。そのため、このＤＤｏＳ攻撃のような異常トラヒックが発生したことを一刻も早く検知し、対策することがネットワーク管理者に求められている。
【０００３】
異常トラヒックの発生を検知する技術として、観測トラヒックのボリューム変化に着目する技術がある。ここで観測トラヒックとは、ある決められた時間間隔毎に測定される、パケット数やバイト数などのデータ量の時間推移を言う。この技術では、観測トラヒックが基準値からある一定量以上の逸脱を示したとき、トラヒックに異常が発生したと判定する。従来、この「基準値（ベーストラヒック）」と「ある一定量（閾値）」は、オペレータの経験により決定されていた。
【０００４】
しかし、大規模ネットワークの綿密な監視を想定したとき、監視対象が膨大となるため、人手により全てを管理することは不可能に近い。何故なら、それぞれの監視対象におけるトラヒックデータは、通常のトラヒック量やトラヒック量の変動幅も異なるため、ベーストラヒック（基準値）と閾値（一定量）は監視対象毎個別に設定する必要があるためである。そこで、ベーストラヒック（基準値）設定と閾値（一定量）設定を自動化することが望まれる。
【０００５】
閾値設定を自動化する技術として、観測トラヒックの平均値や標準偏差といった統計量を用い、統計的根拠に基づいた外れ値判定を利用する技術がある。例えば非特許文献１において記載されているように、移動平均値をベーストラヒック（基準値）、標準偏差を閾値（一定量）として用いるボリンジャーバンドと呼ばれる技術が、特に多用されている。
【０００６】
しかし、このボリンジャーバンドをそのままトラヒックの異常検知に適用しても、精度の良い異常検知を行うことは難しい。その理由は、ボリンジャーバンドは観測トラヒックにおける統計的性質の変化を検出できるが、実際の観測トラヒックでは統計的性質の変化がそのまま異常であるとは言い切れないためである。
【０００７】
すなわち、トラヒックの生成が人間の生活サイクルに依存し、この場合、トラヒックデータは一日単位、一週間単位、一年単位といった周期性を見せることがある。
【０００８】
例えば、ネットワークトラヒックにおいては、一日単位の周期的傾向としては、人々の活動が少ない深夜から朝にかけてはトラヒック量が少なく、人々の活動が活発となる昼から夜にかけてはトラヒック量が増加するという傾向が見られ、また、一週間単位の周期的傾向としては、平日はトラヒック量が多く、休日はトラヒック量が減少するという傾向が見られ、さらに、一年単位の周期的傾向としては、長期休暇が見られる時期はトラヒック量が少なく、休暇明けと見られる時期にはトラヒック量が増加するという傾向が見られるといったものである。
【０００９】
また、観測トラヒックのばらつき具合も、トラヒック量と共に周期的な増減を見せる。
【００１０】
以上のように、トラヒック量が周期性を見せる場合、特定の時間帯でトラヒックの統計的性質が劇的に変化したとしても、毎周期起こっている変化であれば正常だといえる。
【００１１】
しかし、ボリンジャーバンドのように、近傍過去の観測値のみを利用する移動平均値では、ベーストラヒックの統計的性質の周期的な変化に対応することができない。また、トラヒック量の観測値のばらつきを示す標準偏差も、近傍過去の観測値のみを利用するのであれば同様の問題が生じる。
【００１２】
このように、ボリンジャーバンドは周期性を考慮する仕組みがないため、周期的トラヒックを対象とした場合、精度の良い異常検知を行うのは難しい。
【００１３】
一方、周期性を考慮した異常検知技術として、例えば非特許文献２に記載のＨｏｌｔ−Ｗｉｎｔｅｒｓ法を用いる技術が知られている。この技術は、直近の過去の情報の他にも、より遠い過去の情報も利用し、周期性を考慮したベースラインの予測による異常検知を実現している。
【００１４】
しかし、この技術では、複数のパラメタをトラヒックにあわせて経験的に調節する必要があり、複数の観測トラヒックを対象とした異常検知に用いるのは困難である。
【００１５】
【非特許文献１】Ｊｏｈｎ  Ａ．  Ｂｏｌｌｉｎｇｅｒ（ジョン・Ａ・ボリンジャー）著，長尾慎太郎監修，飯田恒夫訳，“ボリンジャーバンド入門”，パンローリング株式会社，２００２，ｐｐ．９５−１１７，３５１．
【非特許文献２】Ｊａｋｅ  Ｄ．Ｂｒｕｔｌａｇ，“Ａｂｅｒｒａｎｔ  Ｂｅｈａｖｉｏｒ  Ｄｅｔｅｃｔｉｏｎ  ｉｎ  Ｔｉｍｅ  Ｓｅｒｉｅｓ  ｆｏｒ  Ｎｅｔｗｏｒｋ  Ｍｏｎｉｔｏｒｉｎｇ”，１４ｔｈ  Ｓｙｓｔｅｍｓ  ａｄｍｉｎｉｓｔｒａｔｉｏｎ  ｃｏｎｆｅｒｅｎｃｅ（ＬＩＳＡ２０００），Ｄｅｃ．２０００，ｐｐ．１３８−１４６．
【発明の開示】
【発明が解決しようとする課題】
【００１６】
解決しようとする問題点は、従来の技術のボリンジャーバンドでは周期性を考慮する仕組みがないため、周期的トラヒックを対象とした場合、精度の良い異常検知を行うのは難しい点と、従来技術のＨｏｌｔ−Ｗｉｎｔｅｒｓ法を用いる技術では、複数のパラメタをトラヒックにあわせて経験的に調節する必要があり、複数の観測トラヒックを対象とした異常検知に用いるのが困難な点である。
【００１７】
本発明の目的は、これら従来技術の課題を解決し、例えば、ネットワークで送受信されるデータ量などのトラヒックの異常検知を高精度に、かつ、効率的に行うことを可能とすることである。
【課題を解決するための手段】
【００１８】
上記目的を達成するため、本発明では、所定の時間間隔単位で時系列に集計されるデータの量が周期的に増減する際の、このデータの量の正常性（異常）の判定に用いる基準値を、プログラムされたコンピュータによって予測するために、一周期をスロットへと分割して統計情報を精密に取り扱うことで、周期的に統計的性質が変化する時系列データに対するベーストラヒック予測の精度を向上させる。すなわち、プログラムされたコンピュータが実行する処理手段として、選択手段と複数のパラメタ推定手段および予測手段を設け、選択手段は、一周期分のデータを、予め設定されたタイムスロット単位で時系列に分割して出力し、各パラメタ推定手段は、選択手段から出力された各タイムスロット内のそれぞれのデータに対して、例えばＥＭアルゴリズム等の第１の時系列解析手法を用いて、基準値を予測するためのパラメタを推定し、この推定したパラメタ推定値と過去周期の同じタイムスロットにおけるパラメタ推定値の重み付け平均値を次周期におけるパラメタとして算出し、予測手段は、各パラメタ推定手段が算出した次周期におけるパラメタを用いた例えばカルマンフィルタ等の時系列解析モデルを利用した第２の時系列解析手法により基準値を算出する。
【発明の効果】
【００１９】
本発明によれば、一周期をスロットへと分割して統計情報を精密に取り扱うことにより、周期的に統計的性質が変化する時系列データに対するベーストラヒック予測の精度を向上させることが可能となる。
【発明を実施するための最良の形態】
【００２０】
以下、図を用いて本発明を実施するための最良の形態例を説明する。図１は、本発明に係る基準値予測システムの構成例を示すブロック図であり、図２は、本発明に係る基準値予測処理のスロット割り当ての第１の例を示す説明図、図３は、本発明に係る基準値予測処理のスロット割り当ての第２の例を示す説明図、図４は、本発明に係る基準値予測処理のスロット割り当ての第３の例を示す説明図、図５は、本発明に係る基準値予測処理動作例を示すフローチャートである。
【００２１】
図１における基準値予測システム１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）や主メモリ、表示装置、入力装置、外部記憶装置からなるコンピュータ構成からなり、光ディスク駆動装置等を介してＣＤ−ＲＯＭ等の記憶媒体に記録されたプログラムやデータを外部記憶装置内にインストールした後、この外部記憶装置から主メモリに読み込みＣＰＵで処理することにより、所定の時間間隔単位で時系列に集計されるデータの量が周期的に増減する際の、データの量の異常を判定する基準値を予測するシステムであって、プログラムされたコンピュータの処理機能として、分配器２、選択器３、複数のパラメタ推定器４ａ〜４ｎ、複数の混合器５ａ〜５ｎ、予測器６ａ〜６ｎを有する。
【００２２】
本例では、所定の時間間隔単位で時系列に集計されるデータの量をネットワーク上のトラヒックとし、集計したネットワークトラヒックに異常が発生したと判断する際に用いる基準値をベーストラヒックとし、このベーストラヒックを予測する動作を説明する。
【００２３】
本例で想定するトラヒックとは、トラヒック観測装置で観測されたネットワーク上で送受信されるパケット数やバイト数などを、一定間隔毎に集約したものを言う。例えば、一分間隔に集約するなら、一時間の観測トラヒックは6０個のデータ時系列となる。
【００２４】
観測できるものであれば、フロー数やルータのメモリ使用量などをトラヒックとして取り扱っても良い。
【００２５】
本例では、正常なトラヒック量の基準（ベーストラヒック）を予測することが目的であり、ここで、ベーストラヒックを予測することの必要性は、新しく受け取った観測値が異常値であるかどうかを迅速に判定したいことにある。そして、トラヒックの傾向変化に応じたトラヒック予測をするため、本例では過去周期の情報を参照する。
【００２６】
具体的には、観測トラヒックを周期毎に取り扱い、現時刻におけるベーストラヒック予測に、過去周期の同時刻に対応するトラヒック傾向を利用する。
【００２７】
また、このベーストラヒック予測において、パラメタ設定の簡略化を実現する。
【００２８】
このように、本例では、予め定められる一定期間にネットワーク上で計測されたフロー数やバイト数などの観測値について、一定期間に計測された観測値の時間変化をトラヒックと呼ぶ。また、観測値が記録されるタイミングを時刻と呼ぶ。
【００２９】
このトラヒックについて、本例では、最初に、一周期分のデータ長を決定し、一周期分のデータをスロットと呼ぶさらに小さな単位に分割する。ただし、各スロットは一つ以上の時刻を含むとする。
【００３０】
この一周期の長さとスロットの分割パターンは、本システムを制御するコンフィグ情報として予め定められるものとする。例えば、一周期の長さは監視対象によって様々な値をとる可能性はあるものの、人間の活動に依存するトラヒックであれば、一日、一週間、一年等が妥当である。
【００３１】
また、本例では、スロット毎にパラメタ推定を行うため、スロットの大きさはトラヒック傾向が推定できるある程度の大きさ、例えば３０分、一時間、二時間等が妥当となる。
【００３２】
このようにトラヒックデータを分割する理由は、トラヒックの統計的性質が周期的に変化することを利用しやすくするためである。これは、本例のベーストラヒック予測において、統計量に基づく予測手法やカルマンフィルタなどの時系列解析手法を利用していることによる。
【００３３】
このようなベーストラヒック予測手法のいずれにおいても、トラヒックを正確に予測するためには正確な入力パラメタを必要とする。例えば、統計的手法に基づく予測手法では、次に観測される値が現時刻の観測値からどの程度増減するかを示す増加率が、また、時系列解析手法においては、アルゴリズムを制御するための一つ以上の入力値がパラメタである。
【００３４】
これらのパラメタは、予測を行う時刻におけるトラヒックの統計的性質を反映しているほど正確と言え、正確なパラメタであれば正確なベーストラヒックの予測を実現することができる。
【００３５】
本例では、過去周期のあるスロットにおけるトラヒック傾向を、将来の同じ位置にあるスロットにおけるトラヒック傾向に近いとして、スロット単位でパラメタを見積もる。例えば、過去周期の対応するスロットにおけるトラヒックが増加傾向であれば、将来もそのスロットにおいては同様の傾向が観測されるだろうというものである。
【００３６】
このとき、パラメタ推定はスロット内のデータを用いて行われるため、パラメタ推定のタイミングは該当スロットに含まれるデータが全て観測された後となる。この周期性を利用したパラメタ推定により、より正確な入力パラメタ設定が実現され、各予測手法におけるトラヒック予測精度が向上する。
【００３７】
本例において、スロット単位で統計的性質を見積もる理由は、（ａ）十分なサンプルデータ数を確保することによる各周期における統計量の推定精度を向上させるためと、（ｂ）トラヒックの統計的性質変化を精密に推定できる粒度に一周期を分割するためと、（ｃ）トラヒックにおける統計的性質変化のタイミングについて周期毎の時間のずれを許容するためである。
【００３８】
パラメタ推定は、推定に利用できるデータ数が多いほど推定精度が高まるため、スロットサイズはある程度の大きさにするほうが良い。ただし、トラヒックの統計的性質が時間経過と共に変化する場合、スロットサイズを大きくしすぎるとその変化を考慮できなくさせ、結果的にパラメタ推定精度の低下を招く。
【００３９】
このように、スロットサイズは大きすぎても小さすぎてもパラメタ推定精度が劣化するものの、人間の生活サイクルに依存するトラヒックであれば、一時間、二時間といったスロットサイズが妥当となる。
【００４０】
このとき、各スロットにいくつの時刻（データ）が含まれるかにより、該当スロットでのパラメタ推定精度が左右される。本例では、パラメタ推定値の精度を向上させるため、過去周期のスロットにおけるパラメタ推定値と現在周期のスロットにおける最新のパラメタ推定値の重み付け平均値を、次周期で用いるパラメタとして採用する。
【００４１】
このように、本例では、パラメタ推定に間接的に過去データを利用しているため、スロットサイズが小さい場合においても正確なパラメタ設定を実現できる。
【００４２】
過去の推定値と現在の推定値を加重平均することは、偶発的なトラヒック傾向変化による推定精度の劣化を抑えることと、持続的なトラヒック傾向変化を学習することを可能とする。
【００４３】
この加重平均における、過去の推定値と現在の推定値とに付与する重みは、周期的変化が安定している場合は過去の推定値の重みを大きくし、周期的変化が不安定な場合は現在の推定値の重みを大きくすれば良い。
【００４４】
また、スロットにある程度の幅を持たせることで、時刻単位で見た場合に、各周期の統計的性質が完全な一致を見せなくとも、スロット単位で見た場合は、各周期の統計的性質はほぼ一致するとみなせる。
【００４５】
このように、統計的性質の時間変化を見積もる粒度を粗くすることで、結果的により精度の良いパラメタ推定を実現させることができる。
【００４６】
本例において予め定めるコンフィグは、以上のように、（１）一周期の長さ、（２）スロットの分割パターン、（３）過去のパラメタとの加重平均を取る重みの３つとなる。
【００４７】
ただし、これらのコンフィグはＨｏｌｔ−Ｗｉｎｔｅｒｓ法のように精密に定める必要はない。何故なら、トラヒックの傾向変化は連続的に生じるものであり、一周期の長さやスロットの分割パターンに多少のずれがあっても、パラメタ推定値への影響は少ない。
【００４８】
また、観測トラヒックが周期性を有しているとき、スロット内の統計的性質は各周期で似通ったものとなる。そのため、パラメタ推定における加重平均の重みについても、設定値の差が予測精度に与える影響は少ない。
【００４９】
また、パラメタ推定精度向上の手法として、複数のコンフィグによるパラメタ推定値について重み付け平均をとることも考えられる。これは、例えばトラヒックの周期が複合的構造となっている場合に有効な手法となる。ここで、複合的構造とは、一日周期、一週間周期、一年周期というように、より大きな周期の中に小さな周期が見られるトラヒック構造を指す。
【００５０】
このような複合的周期構造を持つトラヒックに対して、複数のコンフィグによるパラメタ推定を行い、推定されたそれぞれのパラメタを各時刻で合成することにより、短期的傾向、中期的傾向、長期的傾向を反映した、ベーストラヒック予測のためのより詳細なパラメタ設定を実現することができる。
【００５１】
また、この手法は、周期毎のパラメタ推定精度を確保するだけのスロットサイズを維持しつつ、そのスロットサイズより細かな時間粒度でのトラヒックの時間変動に対応するためにも有効であると考えられる。
【００５２】
例えば、図４のように、スロットの分割時刻を半分ずらした二つのパラメタ推定値を合成すれば、スロットサイズの半分の時間粒度でパラメタ設定を実現できる。
【００５３】
さらに、いずれの場合も、パラメタ推定値の重み付けを自動化させる技術として以下の手法が考えられる。
【００５４】
まず、あるコンフィグにおけるパラメタ推定値に基づくある時刻の予測について、予測誤差を観測値と予測値の差として定義する。この場合、予測誤差の時間累積である累積予測誤差が小さいほど予測精度が高いと言える。
【００５５】
次に、累積予測誤差に反比例する量を、各コンフィグにおけるパラメタ推定値の重みとする。これにより、精度の良いパラメタ推定値は大きな重みが設定される。このように設定される重みで重み付け平均を行うことにより、精度の良いパラメタが強く反映されるベーストラヒック予測が実現される。
【００５６】
このように、図１における基準予測システム１は、所定の時間間隔単位で時系列に集計されるデータの量が周期的に増減する際の、このデータ量の正常性を判定するのに用いる基準値を、一周期をスロットへと分割して統計情報を精密に取り扱うことで、周期的に統計的性質が変化する時系列データに対するベーストラヒック予測の精度を向上させる。
【００５７】
すなわち、基準予測システム１は、プログラムされたコンピュータが実行する処理手段として、分配器２、選択器３、パラメタ推定器４ａ〜４ｎ、混合器５ａ〜５ｎ、予測器６ａ〜６ｎを具備し、分配器２は入力された観測値（所定の時間間隔単位で時系列に集計されるデータ量）を選択器３および予測器６ａ〜６ｎに出力し、選択器３は、入力された観測値の一周期分を、予め設定されたタイムスロット単位で時系列に分割して各タイムスロット毎に設けられたパラメタ推定器４ａ〜４ｎに出力する。
【００５８】
各パラメタ推定器４ａ〜４ｎは、選択器３から出力された各タイムスロット内のそれぞれのデータに対して、例えば、「Ｒ．Ｈ．Ｓｈｕｍｗａｙ  ａｎｄ  Ｄ．Ｓ．Ｓｔｏｆｆｅｒ，“Ｄｙｎａｍｉｃ  Ｌｉｎｅａｒ  Ｍｏｄｅｌｓ  Ｗｉｔｈ  Ｓｗｉｔｃｈｉｎｇ”  Ｊｏｕｒｎａｌ  ｏｆ  ｔｈｅ  Ａｍｅｒｉｃａｎ  Ｓｔａｔｉｓｔｉｃａｌ  Ａｓｓｏｃｉａｔｉｏｎ，Ｓｅｐｔｅｍｂｅｒ  １９９１，  Ｖｏｌ．８６，  Ｎｏ．４１５」に記載の「ＥＭアルゴリズム」等の第１の時系列解析手法を用いて、基準値を予測するためのパラメタを推定し、この推定したパラメタ推定値と過去周期の同じタイムスロットにおけるパラメタ推定値の重み付け平均値を次周期におけるパラメタとして算出し、予測器６ａ〜６ｎは、各パラメタ推定器４ａ〜４ｎが算出した次周期におけるパラメタを用いた例えばカルマンフィルタ等の時系列解析モデルを利用した第２の時系列解析手法により基準値を算出する。
【００５９】
図１の基準値予測システム１は、各パラメタ推定器４ａ〜４ｎによるパラメタ推定精度を向上させるため、特に、トラヒックの周期が、一日周期、一週間周期、一年周期というように、より大きな周期の中に小さな周期が見られるトラヒック構造（複合的構造）となっている場合に有効とするために、複数のコンフィグによるパラメタ推定値について重み付け平均をとるようにしている。
【００６０】
このような複合的周期構造を持つトラヒックに対して、各パラメタ推定器４ａ〜４ｎにおいて、複数のコンフィグによるパラメタ推定を行い、推定されたそれぞれのパラメタを、混合器５ａ〜５ｎにおいて、各時刻で合成することにより、短期的傾向、中期的傾向、長期的傾向を反映した、ベーストラヒック予測のためのより詳細なパラメタ設定を実現することができる。
【００６１】
尚、このように、複数のコンフィグによるパラメタ推定値について重み付け平均をとるようにすることにより、例えば、図４のように、スロットの分割時刻を半分ずらした二つのパラメタ推定値を合成することにより、スロットサイズの半分の時間粒度でパラメタ設定を実現できる。すなわち、周期毎のパラメタ推定精度を確保するだけのスロットサイズを維持しつつ、そのスロットサイズより細かな時間粒度でのトラヒックの時間変動に対応するためにも有効である。
【００６２】
以下、このような基準値予測システム１の動作の詳細を説明する。
【００６３】
周期Ｔを持つトラヒックデータｙ１，ｙ２，…について、一周期分のデータを予め定められる大きさのスロット（タイムスロット）と呼ぶ小さな単位に分割する。各スロットは時間の順に１，２，…，Ｎと番号付けをする。
【００６４】
現在の周期をｉとあらわし、周期ｉに属するトラヒックデータを下記の式（数１）と表すとき、数２に示される各スロットに属するデータｙｔは、数３〜数５で示されるように、（イ）重なりがない、（ロ）混ざりがない、（ハ）もれがない、という性質を持つ。
【００６５】
【数１】
2008311720.tif 000003
【００６６】
【数２】
2008311720.tif 000004
【００６７】
【数３】
2008311720.tif 000005
【００６８】
【数４】
2008311720.tif 000006
【００６９】
【数５】
2008311720.tif 000007
【００７０】
さらに、数６に示すように、（ニ）各スロットの大きさは任意で良いが、各周期でスロットサイズは不変とする。
【００７１】
【数６】
2008311720.tif 000008
【００７２】
このような分割を一つの観測トラヒックに対し複数通り用意しても良い。例えば、図２は各スロットを均一のサイズにした場合である。
【００７３】
また、観測トラヒックの統計的性質の変化において、時刻により密な部分と疎な部分が存在する場合、図３のように分割することにより、保持すべき統計量を少なくすることもできる。
【００７４】
また、統計的性質が時間によって変化するトラヒックにおいても、小さなスロットに分割することで、スロット内データの統計的性質をほぼ一定とみなすことができる。
【００７５】
また、周期性がある場合、過去周期の対応スロットにおける統計的性質も一致するため、
過去周期における統計量を利用することも可能となる。
【００７６】
次に、具体的なトラヒック予測手法について、カルマンフィルタを用いる場合を以下で説明する。
【００７７】
観測トラヒックは大きな周期成分であるベーストラヒックと、小さな周期成分である瞬時変動の合成トラヒックとして考えられる。
【００７８】
ただし、この二つの周期成分を分離して観測することはできない。そのため、カルマンフィルタを利用し、ベーストラヒックをシステム発展、瞬時変動を観測誤差として扱うことにより、ベーストラヒックの予測を行う。
【００７９】
今、現時刻をｔと表す。カルマンフィルタを利用する際、まずトラヒックのモデル化を行う。本例では、周期ｉ、スロットjにおけるトラヒックモデルは、観測値ｙｔと明示的には観測できないシステムの状態値ｘｔにより、下記の数７の観測式、数８のシステム状態発展式で表現される。
【００８０】
【数７】
2008311720.tif 000009
【００８１】
【数８】
2008311720.tif 000010
【００８２】
尚，増加率を数９、観測誤差分散を数１０およびシステム誤差分散を数１１とし、観測誤差ｖｔとシステム誤差ｗｔは平均０で分散が、それぞれ数１２の互いに独立な正規分布に従うと仮定する。
【００８３】
【数９】
2008311720.tif 000011
【００８４】
【数１０】
2008311720.tif 000012
【００８５】
【数１１】
2008311720.tif 000013
【００８６】
【数１２】
2008311720.tif 000014
【００８７】
ここで，増加率、観測誤差分散、およびシステム誤差分散は、周期ｉ、スロットｊにおけるトラヒックモデルの観測できない真のパラメタであり、例えば、ＥＭアルゴリズムと呼ばれる手法により自動的に推定される。
【００８８】
カルマンフィルタは，観測値ｙｔのほかにシステムの数１３に示す状態推定値を利用する。
【００８９】
【数１３】
2008311720.tif 000015
【００９０】
ここで、数１４に示す表記は，時刻ｔまでの観測系列が与えられたときの時刻ｉのシステム状態推定値を表す。
【００９１】
【数１４】
2008311720.tif 000016
【００９２】
また，周期ｉ、スロットｊにおけるＥＭアルゴリズムによるパラメタ推定値を数１５と表す。
【００９３】
【数１５】
2008311720.tif 000017
【００９４】
カルマンフィルタは，観測値を受け取るたび、状態推定ステップと状態予測ステップを交互に繰り返す。
【００９５】
具体的には、時刻ｔの観測トラヒックｙｔを受け取ると、次のような更新式によりシステムの状態値推定（数１６）、モデル分散値推定（数１７）へとフィードバックする。尚、モデル分散値は、推定したトラヒックモデルの良さを表す指標である。また、時刻ｔが周期ｉ、スロットｊに属していると仮定する。
【００９６】
【数１６】
2008311720.tif 000018
【００９７】
【数１７】
2008311720.tif 000019
【００９８】
ここで、ｋｔはカルマンゲインと呼ばれる量で、次の数１８の式で与えられる。
【００９９】
【数１８】
2008311720.tif 000020
【０１００】
カルマンフィルタによる状態予測値は、システム状態の推定値ｘｔ｜ｔよりシステム状態発展式に基づき、数１９に示すように計算される。
【０１０１】
【数１９】
2008311720.tif 000021
【０１０２】
したがって、本例におけるベースライン予測値（数２０）は、次の数２１の式で与えられる。
【０１０３】
【数２０】
2008311720.tif 000022
【０１０４】
【数２１】
2008311720.tif 000023
【０１０５】
尚、モデル分散値ｐｔも時間発展し、次の数２２の式により計算される。
【０１０６】
【数２２】
2008311720.tif 000024
【０１０７】
2008311720.tif 000025
【０１０８】
【数２３】
2008311720.tif 000026
【０１０９】
次に各スロットの統計量を計算する手法に言及する。
【０１１０】
カルマンフィルタでベーストラヒック予測を実施する際、必要となる統計量は次の数２４に示す入力パラメタである。
【０１１１】
【数２４】
2008311720.tif 000027
【０１１２】
このパラメタは、スロット内の観測データがそろっていればＥＭアルゴリズムで推定できるが、ベーストラヒックを予測する際、事前に推定することはできない。
【０１１３】
しかし、本例では観測トラヒックの周期性を仮定しているので、これらの入力パラメタは過去周期に推定されたパラメタが利用できる。
【０１１４】
また、スロット内のデータ数が少ない場合には推定精度は劣化するが、予め定められるパラメタηを用い、過去に推定された統計量を利用して以下の数２５に示すように推定することで精度を向上させる。
【０１１５】
【数２５】
2008311720.tif 000028
【０１１６】
ここで、次の数２６に示すものは、前周期における同一スロットの観測時系列（数２７に示す）に対する、ＥＭアルゴリズムによるパラメタ推定値とした。
【０１１７】
【数２６】
2008311720.tif 000029
【０１１８】
【数２７】
2008311720.tif 000030
【０１１９】
過去の推定値と新たな推定値を混合することにより、偶然のトラヒック傾向変化による影響を抑えることと、長期間継続するトラヒック傾向を学習することを両立している。
【０１２０】
また、推定された統計量のみを保持しておけばよく、過去の系列全てを保持する必要はない。
【０１２１】
次に、複数種類の分割方法を併用する手法を以下に示す。
【０１２２】
統計量推定において推定に利用するサンプルデータが少ない場合、一般的に推定精度が悪くなる。そのため統計量推定の精度を高めるには、スロットを大きくしてサンプルデータを増やす必要があるが、スロットを大きくすると、統計量の時間変化を精密に取り扱えなくなってしまうという問題が生じる。
【０１２３】
スロットの分割方法を数種類準備するのはこの問題を解決するためで、それぞれの分割パターンで推定された統計情報を混合することで推定精度の向上と、時間変化の精密な推定を両立する。
【０１２４】
例えば一時間間隔のスロット分割において、１２:００からの分割と１２:３０からの分割とを準備する。この場合、それぞれの分割パターンでは一時間毎の時間変化しか推定できないが、それぞれで推定された統計量を合成することで、３０分毎の時間変化を推定することが可能となる（図４参照）。
【０１２５】
より一般的には、あるスロット分割パターンをＳｎとし、時刻ｔにおける観測値が属するＳｎ内のスロットをＳ（ｔ，Ｓｎ）とあらわす。
【０１２６】
Ｎ通りの異なる分割パターンＳｎを準備するとき、時刻ｔにおける統計量θｔは、時刻ｔについての各スロットＳ（ｔ，Ｓｎ）で推定された統計量，θｓ（ｔ，Ｓｎ）より、
次の数２８に示すように計算される。
【０１２７】
【数２８】
2008311720.tif 000031
【０１２８】
ここで、（ｕ１，…，ｕＮ）は予め定められる重み付け係数とした。
【０１２９】
このように、複数の分割パターンを併用することで、より粒度が細かく推定値の安定した統計量推定が可能となる。
【０１３０】
次に、図５を用いて、図１における基準値予測システム１の処理手順例を説明する。
【０１３１】
まず、図示していない処理手段により、予め記録媒体に記録された、あるいは入力装置から入力された、コンフィグ情報（ネットワークトラヒックの一周期分のデータ長、タイムスロットのサイズ等）を読み込み、コンフィグ設定ファイルとして記憶装置に格納する（ステップＳ５０１）。
【０１３２】
分配器２を介して観測データが入力される度に、選択器３は、コンフィグ設定ファイルを参照して、一周期分の観測データをスロット別データとして取り扱うために、入力された観測値データを、予め一周期を分割して設定された複数のタイムスロットに順次に対応付けて記憶装置に出力する（ステップＳ５０２）。
【０１３３】
各タイムスロットに対応して設けられたパラメタ推定器４ａ〜４ｎは、選択器３から出力された各タイムスロット内のそれぞれのデータをスロット別データから読み出し、それぞれのデータに対して、例えばＥＭアルゴリズム等の第１の時系列解析手法を用いて、基準値を予測するためのパラメタを推定し（ステップＳ５０３）、この推定したパラメタ推定値と過去周期の同じタイムスロットにおけるパラメタ推定値の重み付け平均値を次周期におけるパラメタとして算出し、パラメタファイルとして記憶装置に出力する（ステップＳ５０４）。
【０１３４】
予測器６ａ〜６ｎは、パラメタファイルから、各パラメタ推定器４ａ〜４ｎが算出した次周期におけるパラメタを読み出し、各パラメタと分配器２を介して入力された観測データを用いた例えばカルマンフィルタ等の時系列解析モデルを利用した第２の時系列解析手法により基準値を算出し、予測ベーストラヒックヒックファイルとして記憶装置に出力する（ステップＳ５０５）。
【０１３５】
尚、ステップＳ５０１の処理手順において、各パラメタ推定器４ａ〜４ｎによるパラメタ推定精度を向上させるため、複数のコンフィグによるパラメタ推定値について重み付け平均をとるようにした場合、各コンフィグ毎に各パラメタ推定器４ａ〜４ｎを設け、ステップＳ５０２において、選択器３は、各コンフィグ毎の各パラメタ推定器４ａ〜４ｎに対して、各一周期分の観測値データを、各タイムスロット単位に分割して出力し、ステップＳ５０３，Ｓ５０４において、各パラメタ推定器４ａ〜４ｎは、複数のコンフィグによるパラメタ推定を行い、推定されたそれぞれのパラメタを、混合器５ａ〜５ｎにおいて、各時刻で合成し、ステップＳ５０５において、予測器６ａ〜６ｎは、混合器５ａ〜５ｎで合成（混合）された各コンフィグ毎の各パラメタ推定器４ａ〜４ｎが算出した次周期におけるパラメタを用いて基準値を算出する。
【０１３６】
以上、図１〜図５を用いて説明したように、本例では、観測したネットワークトラヒックが、例えば、基準値から一定量以上逸脱したとき、トラヒックに異常が発生したと判定する際に用いる、基準値を意味するベーストラヒックを予測するために、観測したネットワークトラヒックの一周期分のデータ長を決定すると共に、一周期分のデータをスロットと名付ける小単位に分割し、各スロット内のデータに対し、例えばＥＭアルゴリズム等の時系列解析手法を用いてベーストラヒックを予測するためのパラメタを推定し、推定したパラメタ推定値と過去周期の該当スロットにおけるパラメタ推定値の重み付け平均値を次周期におけるパラメタとして求め、この次周期におけるパラメタを用いた、例えばカルマンフィルタ等の時系列解析手法によりベーストラヒックを算出する。
【０１３７】
このように、本例では、一周期をスロットへと分割して統計情報を精密に取り扱うことにより、周期的に統計的性質が変化する時系列データに対するベーストラヒック予測の精度を向上させることが可能となる。
【０１３８】
また、重み付け平均値は、複数のコンフィグと名付けた、一周期分のデータ長およびスロットの指定方法によるパラメタ推定値について取り、複数のコンフィグによるパラメタ推定値について重み付け平均を取る場合においては、それぞれのコンフィグにおける予測精度を観測値と予測値の差として定義し、予測精度のよいコンフィグによるパラメタ推定値に対して大きな重みを付加する。
【０１３９】
このように、複数のコンフィグによるパラメタ推定値について重み付け平均をとるようにすることにより、例えば、図４に示したように、スロットの分割時刻を半分ずらした二つのパラメタ推定値を合成することにより、スロットサイズの半分の時間粒度でパラメタ設定を実現でき、周期毎のパラメタ推定精度を確保するだけのスロットサイズを維持しつつ、そのスロットサイズより細かな時間粒度でのトラヒックの時間変動に対応するためにも有効である。
【０１４０】
尚、本発明は、図１〜図５を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、時系列解析モデルとしてカルマンフィルタを取り上げたが、本発明の適用範囲はこの限りではない。例えば、各スロット内の時系列データについて、最小自乗推定などで直線近似し、スロット毎につなぎ合わせても良い。このとき保持されるパラメタは、各スロットの近似直線の傾きとなる。
【０１４１】
また、本例では、ネットワークにおける通信トラヒックを例に説明したが、道路上での交通量測定や施設への入場者数測定などにも適用することが可能である。
【０１４２】
また、コンピュータ構成例に関しても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良く、また、記録媒体としても光ディスクに限らずＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）等を用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【図面の簡単な説明】
【０１４３】
【図１】本発明に係る基準値予測システムの構成例を示すブロック図である。
【図２】本発明に係る基準値予測処理のスロット割り当ての第１の例を示す説明図である。
【図３】図３は、本発明に係る基準値予測処理のスロット割り当ての第２の例を示す説明図である。
【図４】本発明に係る基準値予測処理のスロット割り当ての第３の例を示す説明図である。
【図５】図５は、本発明に係る基準値予測処理動作例を示すフローチャートである。
【符号の説明】
【０１４４】
１：基準予測システム、２：分配器、３：選択器、４ａ〜４ｎ：パラメタ推定器、５ａ〜５ｎ：混合器、６ａ〜６ｎ：予測器。
【図１】
2008311720.tif 000032
【図２】
2008311720.tif 000033
【図３】
2008311720.tif 000034
【図４】
2008311720.tif 000035
【図５】
2008311720.tif 000036