(57)【特許請求の範囲】
【請求項１】
時系列データから傾向変化や異常を示す変化点を検出する装置に搭載されたコンピュータを機能させる変化点検出プログラムであって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定する相互相関データ決定手段と、
当該基準となる時系列データと、決定された時系列データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成する特徴量生成手段と、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定する変化点決定手段と
してコンピュータを機能させることを特徴とする変化点検出プログラム。
【請求項２】
前記変化点検出プログラムは、当該基準となる時系列データについて、所定条件を満たす高い自己相関を示す時系列データを生成する自己相関データ生成手段としてコンピュータを更に機能させ、
前記特徴量生成手段は、当該所定条件を満たす高い自己相関を示す時系列データを、当該相関行列を生成するための時系列データ群に含める
ことを特徴とする請求項１に記載の変化点検出プログラム。
【請求項３】
前記特徴量生成手段は、当該時系列データ群に含まれる時系列データ毎に、当該時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルについての特徴量を生成し、各時点において当該時系列データ毎に生成された複数の特徴量の組を含む特徴量時系列データを生成し、
前記変化点決定手段は、当該特徴量時系列データでの特徴量の変動に基づいて、変化点を発生させた時系列データを特定する
ことを特徴とする請求項１又は２に記載の変化点検出プログラム。
【請求項４】
前記相互相関データ決定手段は、変化点を検出する対象となる複数の時系列データの各々を、基準となる時系列データとし、当該基準となる時系列データ毎に、当該高い相互相関を示す１つ又は複数の時系列データを決定し、
前記特徴量生成手段は、当該基準となる時系列データ毎に、当該特徴量時系列データを生成する
ことを特徴とする請求項１から３のいずれか１項に記載の変化点検出プログラム。
【請求項５】
前記相互相関データ決定手段は、当該基準となる時系列データとの間で、ある正のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを含む時系列データリストを生成し、
前記変化点検出プログラムは、前記変化点決定手段によって変化点が１つの時点で決定された時系列データについての当該時系列データリストに含まれた時系列データにおいて、当該１つの時点から当該正のタイムラグに係る時間の経過後に、変化点が発生することを予測する変化点予測手段としてコンピュータを更に機能させる
ことを特徴とする請求項１から４のいずれか１項に記載の変化点検出プログラム。
【請求項６】
前記特徴量生成手段は、第Ｎ（Ｎ≧１）の期間に係る当該時系列データ群から、第Ｎの時点での相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を、第Ｎの時点での当該１つの時系列データに係る特徴量とし、次いで、第Ｎの期間から見て時間単位分だけ時間経過方向にずれた第（Ｎ＋１）の期間に係る当該時系列データ群から、第Ｎの時点に次ぐ第（Ｎ＋１）の時点での相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を、第（Ｎ＋１）の時点での当該１つの時系列データに係る特徴量とする処理を、Ｎ値を順次増分させる形で繰り返して、当該特徴量時系列データを生成することを特徴とする請求項１から５のいずれか１項に記載の変化点検出プログラム。
【請求項７】
前記特徴量生成手段は、部分空間追跡法を用いて、当該時系列データ群に係る新たな時点でのデータに基づいて、当該相関行列の固有ベクトルを更新し、当該時系列データ群に含まれる１つの時系列データにおける他の時系列データとの間の相関係数から生成されるベクトルと、更新された当該固有ベクトルとの向きの差に対応するスカラ値を、当該新たな時点での特徴量とすることを特徴とする請求項１から６のいずれか１項に記載の変化点検出プログラム。
【請求項８】
時系列データから傾向変化や異常を示す変化点を検出する装置に搭載されたコンピュータを機能させる変化点検出プログラムであって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定する相互相関データ決定手段と、
部分空間追跡法を用い、当該基準となる時系列データと、決定された時系列データとを含む時系列データ群に係る新たな時点でのデータに基づいて、予め設定された初期の固有ベクトル又は前時点で更新された固有ベクトルを更新し、当該時系列データ群に含まれる１つの時系列データにおける他の時系列データとの間の相関係数から生成されるベクトルと、更新された当該固有ベクトルとの向きの差に対応するスカラ値を、当該新たな時点での特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成する特徴量生成手段と、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定する変化点決定手段と
してコンピュータを機能させることを特徴とする変化点検出プログラム。
【請求項９】
時系列データから傾向変化や異常を示す変化点を検出する変化点検出装置であって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定する相互相関データ決定手段と、
当該基準となる時系列データと、決定された時系列データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成する特徴量生成手段と、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定する変化点決定手段と
を有することを特徴とする変化点検出装置。
【請求項１０】
前記相互相関データ決定手段は、当該基準となる時系列データとの間で、ある正のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを含む時系列データリストを生成し、
前記変化点検出装置は、前記変化点決定手段によって変化点が１つの時点で決定された時系列データについての当該時系列データリストに含まれた時系列データにおいて、当該１つの時点から当該正のタイムラグに係る時間の経過後に、変化点が発生することを予測する変化点予測手段を更に有する
ことを特徴とする請求項９に記載の変化点検出装置。
【請求項１１】
時系列データから傾向変化や異常を示す変化点を検出する装置における変化点検出方法であって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定するステップと、
当該基準となる時系列データと、決定された時系列データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成するステップと、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定するステップと
を有することを特徴とする変化点検出方法。
【請求項１２】
当該基準となる時系列データとの間で、ある正のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを含む時系列データリストを生成するステップと、
前記変化点を決定するステップで変化点が１つの時点で決定された時系列データについての当該時系列データリストに含まれた時系列データにおいて、当該１つの時点から当該正のタイムラグに係る時間の経過後に、変化点が発生することを予測するステップと
を更に有することを特徴とする請求項１１に記載の変化点検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データにおけるデータ値の傾向変化や異常を検出する技術に関する。
【背景技術】
【０００２】
近年、ＩＣＴ（Information and Communication Technologies）システムの普及に伴い、様々な状況において膨大な量の時系列データが生成されている。現在、このような時系列データを解析し、事業に有用な情報を取得する試みが盛んに行われている。１つの例として、セルラ通信に代表される無線通信サービスの時系列データについて以下に説明する。
【０００３】
無線通信サービスでは、通常、数十メートルから数キロメートルのエリアをカバーする無線基地局を複数設置し、多数のユーザがどこにいても通信できるように広い通信カバレッジが提供されている。また、１つの周波数帯域では収容しきれないほどの多数のユーザを抱えるエリアでは、例えば、複数の周波数帯域を利用した無線通信サービスが提供される。これにより、ユーザは、移動等に伴う接続先基地局の変更を意識することなく、シームレスに通信サービスを利用することができる。
【０００４】
このような通信サービスの下では、ユーザの移動状況や利用される通信関連アプリケーションの相違等によって、基地局毎のトラヒック（例えば通信量）の時間変化情報、すなわち時系列トラヒックデータに違いが生じる。
【０００５】
無線通信サービス事業者は、このようなトラヒックの時間変化を監視することによって、基地局の容量を超えるトラヒックの流入や設備故障による処理トラヒック量の低下等を発見することができる。実際に、基地局内のトラヒックが大きく変化する要因としては、時間帯や曜日等に起因する周期的なトラヒックの時間変化を除くと、
（ａ）ユーザによる通信トラヒックの変化、（ｂ）ユーザ数の変化、
（ｃ）基地局でのパラメータの変更、（ｄ）基地局の新設や廃局、
（ｅ）設備における故障や障害の発生
が挙げられる。
【０００６】
ここで、（ａ）におけるユーザによる通信トラヒックは、例えば、大容量のアプリケーションを利用する頻度の変化等によって変動するものであり、緩やかに変化する傾向がある。また、（ｂ）のユーザ数の変化は、通信サービスエリア内における新たな人口密集スポットが出現した場合や、当該スポット周囲の動線変化によってユーザの空間的及び／又は時間的な分布が変動する場合に起こり得る。さらに、上記（ｃ）及び（ｄ）は、例えば、トラヒックマネジメントとして事業者が基地局の調整を行うことによって発生する。また、（ｅ）における設備は、ネットワーク設備や、基地局、サーバ等の機器であり、このような設備に故障が発生し障害が起こった場合、トラヒックが通常とは異なる傾向を示すことになる。
【０００７】
以上に述べたトラヒック変化の要因、特に、（ｅ）の設備における故障や障害の発生を突き止めるために、時系列トラヒックデータにおける変化点を検出する技術が非常に重要となるのである。
【０００８】
さらに、このような変化点検出技術は、通信ネットワークにおける攻撃検知や侵入検知といったセキュリティ手段に適用したり、例えば製造システムにおける異常監視や故障検出・障害検知等のために利用したりすることもできる。このような事情から、時系列データにおける変化点検出技術は、様々な分野で注目されている。
【０００９】
例えば、特許文献１には、過去の時系列データを用いて時系列予測モデルを構築し、予測値と実績値の差を逐次検定することにより構造変化の有無を判断し、変化点を検出する技術が開示されている。また、特許文献２には、２段階の自己回帰モデルのオンライン忘却学習アルゴリズムを利用して、変化点を検出する技術が開示されている。
【００１０】
さらに、特許文献３は、時系列データを逐次読み込みながら時系列モデルを更新するとともに、入力データの１つ１つに対してパラメータを逐次的に読み込んで損失関数を計算し、損失関数の値を足し合わせたものを、入力した時系列データへのモデルの当てはめ誤差（コンプレキシティ）として算出する技術を開示している。この技術では、全ての変化点候補に対し、変化点前後の時系列データに対するコンプレキシティを読み出した上で、これらコンプレキシティの和と、変化点を仮定しない場合の全時系列データに対するコンプレキシティとを比較し、その差分値に基づいて計算した変化点度合いの大きさに基づいて、変化点が検出されている。
【００１１】
また、特許文献４には、入力された全ての時系列データを対象として、最新の時系列データから得られるベクトル又は空間と、過去の一定期間の時系列データから得られる部分空間のベクトル又は空間との間で類似度を算出し、算出された類似度に基づいて異常点や変化点を検出する技術が開示されている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００４−１７８４７３号公報
【特許文献２】特開２００４−０５４３７０号公報
【特許文献３】特開２００５−００４６５８号公報
【特許文献４】特開２００６−１０７１７９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、特許文献１〜４に記載されたような従来技術では、漏れなく変化点を検出するために計算コストが膨大になったり、検出のリアルタイム性に欠けたりする問題が生じてしまう。
【００１４】
例えば、特許文献１〜３に記載の技術では、時系列データ毎に変化点の検出を実施しなければならない。その結果、時系列データの数が増えると計算コストが線形的に増大してしまう。実際、時系列データを取り扱う多くの現場、例えば多数の無線基地局を有する無線通信サービス提供の現場では、取得される膨大な時系列データから、変化点を漏れなく検出しなければならない。従って、計算コストの増大は重大な問題となる。
【００１５】
また、特許文献４に記載の技術では、全時系列データを同時に扱ってはいるが、時系列データにおける過去の一定期間より取得される特徴ベクトル又は空間を利用するため、遅延が生じ、リアルタイム性に欠けるという問題が生じる。また、長い周期性を持つ時系列データが存在する場合、最新時刻に時間的に近い部分空間では特徴が異なるので、類似性は低くなってしまう。これに対処するため、周期分の過去の時系列データを参照する必要が生じ、結局、周期分だけ検出の遅延が発生してしまう。
【００１６】
さらに、時系列データ毎の変動の相関性が低い場合、部分空間は時刻によって異なってしまい、類似度が安定せず、その結果、安定して変化点検出を行うことができなくなってしまう。また、入力された複数の時系列データ群について、データ群毎に固有の周期性が存在する可能性もあるが、このような場合、データ群毎に類似度を算出するための期間を適切に決定することが容易ではなく、結果的に、安定して変化点検出を行うことができない場合も生じ得る。
【００１７】
そこで、本発明は、計算コストの増大を抑制しつつ、時系列データから変化点を適宜検出可能なプログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明によれば、時系列データから傾向変化や異常を示す変化点を検出する装置に搭載されたコンピュータを機能させる変化点検出プログラムであって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定する相互相関データ決定手段と、
当該基準となる時系列データと、決定された時系列データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成する特徴量生成手段と、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定する変化点決定手段と
してコンピュータを機能させる変化点検出プログラムが提供される。
【００１９】
この本発明による変化点検出プログラムの一実施形態として、本変化点検出プログラムは、当該基準となる時系列データについて、所定条件を満たす高い自己相関を示す時系列データを生成する自己相関データ生成手段としてコンピュータを更に機能させ、
特徴量生成手段は、当該所定条件を満たす高い自己相関を示す時系列データを、当該相関行列を生成するための時系列データ群に含めることも好ましい。
【００２０】
また、本発明による変化点検出プログラムにおいて、特徴量生成手段は、当該時系列データ群に含まれる時系列データ毎に、当該時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルについての特徴量を生成し、各時点において当該時系列データ毎に生成された複数の特徴量の組を含む特徴量時系列データを生成し、
変化点決定手段は、当該特徴量時系列データでの特徴量の変動に基づいて、変化点を発生させた時系列データを特定することも好ましい。
【００２１】
さらに、本発明による変化点検出プログラムにおいて、相互相関データ決定手段は、変化点を検出する対象となる複数の時系列データの各々を、基準となる時系列データとし、当該基準となる時系列データ毎に、当該高い相互相関を示す１つ又は複数の時系列データを決定し、
特徴量生成手段は、当該基準となる時系列データ毎に、当該特徴量時系列データを生成することも好ましい。
【００２２】
また、本発明による変化点検出プログラムの他の実施形態として、相互相関データ決定手段は、当該基準となる時系列データとの間で、ある正のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを含む時系列データリストを生成し、
本変化点検出プログラムは、変化点決定手段によって変化点が１つの時点で決定された時系列データについての当該時系列データリストに含まれた時系列データにおいて、当該１つの時点から当該正のタイムラグに係る時間の経過後に、変化点が発生することを予測する変化点予測手段としてコンピュータを更に機能させることも好ましい。
【００２３】
さらに、本発明による変化点検出プログラムにおいて、特徴量生成手段は、第Ｎ（Ｎ≧１）の期間に係る当該時系列データ群から、第Ｎの時点での相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を、第Ｎの時点での当該１つの時系列データに係る特徴量とし、次いで、第Ｎの期間から見て時間単位分だけ時間経過方向にずれた第（Ｎ＋１）の期間に係る当該時系列データ群から、第Ｎの時点に次ぐ第（Ｎ＋１）の時点での相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を、第（Ｎ＋１）の時点での当該１つの時系列データに係る特徴量とする処理を、Ｎ値を順次増分させる形で繰り返して、当該特徴量時系列データを生成することも好ましい。
【００２４】
また、本発明による変化点検出プログラムの更なる他の実施形態として、特徴量生成手段は、部分空間追跡法を用いて、当該時系列データ群に係る新たな時点でのデータに基づいて、当該相関行列の固有ベクトルを更新し、当該時系列データ群に含まれる１つの時系列データにおける他の時系列データとの間の相関係数から生成されるベクトルと、更新された当該固有ベクトルとの向きの差に対応するスカラ値を、当該新たな時点での特徴量とすることも好ましい。
【００２５】
本発明によれば、また、時系列データから傾向変化や異常を示す変化点を検出する装置に搭載されたコンピュータを機能させる変化点検出プログラムであって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定する相互相関データ決定手段と、
部分空間追跡法を用い、当該基準となる時系列データと、決定された時系列データとを含む時系列データ群に係る新たな時点でのデータに基づいて、予め設定された初期の固有ベクトル又は前時点で更新された固有ベクトルを更新し、当該時系列データ群に含まれる１つの時系列データにおける他の時系列データとの間の相関係数から生成されるベクトルと、更新された当該固有ベクトルとの向きの差に対応するスカラ値を、当該新たな時点での特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成する特徴量生成手段と、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定する変化点決定手段と
してコンピュータを機能させる変化点検出プログラムが提供される。
【００２６】
本発明によれば、さらに、時系列データから傾向変化や異常を示す変化点を検出する変化点検出装置であって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定する相互相関データ決定手段と、
当該基準となる時系列データと、決定された時系列データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成する特徴量生成手段と、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定する変化点決定手段と
を有する変化点検出装置が提供される。
【００２７】
この本発明による変化点検出装置の一実施形態として、相互相関データ決定手段は、当該基準となる時系列データとの間で、ある正のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを含む時系列データリストを生成し、
本変化点検出装置は、変化点決定手段によって変化点が１つの時点で決定された時系列データについての当該時系列データリストに含まれた時系列データにおいて、当該１つの時点から当該正のタイムラグに係る時間の経過後に、変化点が発生することを予測する変化点予測手段を更に有することも好ましい。
【００２８】
本発明によれば、また、時系列データから傾向変化や異常を示す変化点を検出する装置における変化点検出方法であって、
基準となる時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを決定するステップと、
当該基準となる時系列データと、決定された時系列データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素をベクトル成分としたベクトルである代表ベクトルとの向きの差に対応するスカラ値を特徴量として、各時点での当該特徴量を含む特徴量時系列データを生成するステップと、
当該特徴量時系列データでの特徴量の変動に基づいて、当該１つの時系列データの変化点を決定するステップと
を有する変化点検出方法が提供される。
【００２９】
この本発明による変化点検出方法の一実施形態として、本変化点検出方法は、
当該基準となる時系列データとの間で、ある正のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データを含む時系列データリストを生成するステップと、
上記の変化点を決定するステップで変化点が１つの時点で決定された時系列データについての当該時系列データリストに含まれた時系列データにおいて、当該１つの時点から当該正のタイムラグに係る時間の経過後に、変化点が発生することを予測するステップと
を更に有することも好ましい。
【発明の効果】
【００３０】
本発明の変化点検出プログラム、装置及び方法によれば、計算コストの増大を抑制しつつ、時系列データから変化点を適宜検出することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明による変化点検出装置の一実施形態における機能構成を示す機能ブロック図である。
【図２】自己相関データ生成部及び相互相関データ決定部での処理の一実施例を示すグラフである。
【図３】生成された相関行列及び時系列データリストの一実施例を示すテーブルである。
【図４】特徴量生成部における特徴量時系列データを生成する処理の一実施形態を説明するための模式図である。
【図５】変化点決定部における変化点検定処理の一実施形態を説明するための模式図である。
【図６】特徴量生成部における特徴量生成処理の他の実施形態を説明するための模式図である。
【図７】本発明による変化点検出方法の一実施形態を示すフローチャートである。
【発明を実施するための形態】
【００３２】
以下、本発明の実施形態について、図面を用いて詳細に説明する。
【００３３】
［変化点検出装置］
図１は、本発明による変化点検出装置の一実施形態における機能構成を示す機能ブロック図である。
【００３４】
図１に示した本実施形態の変化点検出装置１は、通信インタフェース１０１を介して複数の時系列データを受信し、これらの時系列データにおける傾向変化や異常を示す変化点を検出する装置である。変化点検出装置１は、例えば、本発明による変化点検出プログラムの搭載されたサーバ、又はパーソナルコンピュータ（ＰＣ）とすることができる。
【００３５】
ここで、複数の時系列データとは、互いに出所の異なる又はデータ種の異なる時系列データである。例えば、無線通信サービスでは、時系列データとして、設置された１つの基地局における所定時刻毎の（又は所定単位時間経過毎の）トラヒック（通信量）データを採用することができる。例えば、１つの時刻でのトラヒックデータは、この時刻よりも所定時間単位だけ前の時点からこの時刻までの間の通信量としてもよい。ここで、通常、通信エリアには複数の基地局が設置されているので、基地局（又は基地局アンテナ）の数だけの複数の時系列データが取得される。
【００３６】
さらに、トラヒックデータとして、通信量ではなく、呼接続数や、接続試行数等を採用することも可能である。さらにまた、取り扱う複数の時系列データとして、トラヒックデータに通信量を採用したものと、呼接続数（又は接続試行数）を採用したものとを取り混ぜて採用することも可能である。この場合、例えば呼の数が増加しても通信量は減少する、といった通常とは異なる事態を変化点として検出することも可能となる。
【００３７】
ここで、変化点検出装置１の検出する時系列データにおける変化点とは、時系列データにおけるデータ値の推移の傾向が変化する箇所（時点）、及びデータ値が正常な傾向からかけ離れた箇所（時点）のことである。
【００３８】
変化点検出装置１を用いて時系列データにおける変化点を検出することによって、例えばセルラ通信に代表される無線通信サービスでは、ネットワーク設備や、基地局、サーバ等の機器における故障や障害の発生を突き止めることができる。すなわち、このような設備等に故障が発生し障害が起こった場合、トラヒックが通常と異なる傾向を示したり通常の傾向からかけ離れたりするので、時系列トラヒックデータの変化点を検出することにより、故障・障害を検知することが可能となるのである。
【００３９】
なお、変化点検出装置１による変化点検出は、当然に、ネットワーク設備等の故障や障害の発生を検知するためだけに利用されるものではない。例えば、通信ネットワークにおける攻撃検知や侵入検知といったセキュリティ手段として利用されてもよく、製造システムにおける異常監視や故障検出・障害検知等に適用されてもよい。実際、様々な要因によってデータ値が変動し得るような複数の時系列データを取得できる環境であれば、変化点検出装置１を用いて、その要因の発生を検知することが可能となるのである。
【００４０】
この本発明による変化点検出装置１は、その特徴として、
（Ａ）基準となる時系列データ（以後、「基準時系列データ」と略称）との間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す１つ又は複数の時系列データ（以後、「高相互相関データ」と略称）を決定し、
（Ｂ）「基準時系列データ」と、決定された「高相互相関データ」とを含む時系列データ群から、１つの時点に係る相関行列を生成し、当該相関行列の「固有ベクトル」と、当該時系列データ群に含まれる１つの時系列データに係る行列要素から生成される「代表ベクトル」との向きの差に対応するスカラ値を「スカラ特徴量」として、各時点での「スカラ特徴量」を含む特徴量時系列データを生成し、
（Ｃ）当該特徴量時系列データでの「スカラ特徴量」の変動に基づいて、当該１つの時系列データの変化点を決定する。
【００４１】
変化点検出装置１では、このように、スカラ値であるが故に比較的算出処理負担の小さい「スカラ特徴量」を利用するので、複数の時系列データを取り扱っていても、変化点検出のための計算コストの増大を抑制することができる。さらに、各時点での「スカラ特徴量」を含む特徴量時系列データから変化点を決定するので、リアルタイムに近い形で変化点を適宜検出することが可能となる。また、スカラ量の時系列の処理となるので、変化点決定のための計算量も少なくて済む。言い換えると、逐次的にスカラ特徴量を算出することによって、変化点を少ない計算量で随時検出することができるのである。
【００４２】
また、変化点検出装置１では、複数の時系列データをまとめて処理して特徴量を算出するので、時系列データ毎の個別の変動に大きく影響されずに、より確実に安定して変化点検出を行うことも可能となる。
【００４３】
この点、変化点検出装置１は、特に、「基準時系列データ」との間で高い相互相関を示す「高相互相関データ」を、相関行列を生成するための時系列データ群にグルーピングしている。また、後に詳述するよう一実施形態として、「基準時系列データ」との間で高い自己相関を示す「高自己相関データ」を、この時系列データ群に含めることもできる。
【００４４】
このようなグルーピングによって、互いに所定以上の高い相関を有する複数の時系列データから「固有ベクトル」を算出するので、より確実に安定して変化点検出を行うことが可能となる。すなわち、まとめて処理する複数の時系列データ間での変動の相関性が低いために安定した変化点検出ができなくなるような事態を回避することができる。
【００４５】
ちなみに、「高相互相関データ」が「基準時系列データ」との間で高い相互相関を示すのは、負のタイムラグ値においてである。従って、「基準時系列データ」についての相関行列を生成するのに使用される「高相互相関データ」としては、「基準時系列データ」の発生に関して原因（因）となるものが選択されていることになる。このように、「基準時系列データ」についての相関行列において、「基準時系列データ」よりも時間的に前の状況に係るデータを取り入れることにより、より確実に変化点検出を捉えることが可能となる。
【００４６】
さらに、このようにタイムラグを考慮して、相関行列を生成するための時系列データをグルーピングすることによって、因果関係の認められる時系列データを逃さずに相関行列に取り入れることができるのである。例えば、ある装置の異常が、１時間前に発生した別の装置の異常に起因して発生した場合、タイムラグを考慮せずに両装置の時系列データの相関のみを考慮すると、両時系列データを同じグループとして取り入れた相関行列を生成しないことも十分に考えられる。これに対し、変化点検出装置１のように、両時系列データの因果関係を考慮することにより、両時系列データを取り入れた相関行列を生成し、データの異常検知をより確実に行うことが可能となるのである。
【００４７】
ちなみに、１つの例として、無線通信ネットワークの各基地局で生成される通信トラヒックに係る時系列データにおいては、例えば基地局の設置位置の違いによって互いの間にタイムシフトが生じ、基地局毎の時系列データの間に因果関係が生じる場合も少なくない。本発明によれば、このような因果関係を有するトラヒック時系列データをも適切にグルーピングして相関行列を生成することができる。
【００４８】
また、変化点検出装置１は、後に詳細に説明するが、本発明の一実施形態として、変化点を検出した際、グルーピングされた時系列データのいずれにおいて変化点が検出されたのかを特定することもできる。さらに、時系列データにおける変化点発生を予測することも可能となる。このような変化点発生データの特定処理及び変化点発生の予測処理も、時系列データ間の因果関係を考慮することによって可能となるのである。
【００４９】
［装置の機能構成］
同じく、図１に示した機能ブロック図によれば、変化点検出装置１は、通信インタフェース１０１と、時系列データ蓄積部１０２と、相関データ記憶部１０３と、特徴量時系列記憶部１０４と、変化点情報記憶部１０５と、時系列データリスト蓄積部１０６と、ディスプレイ（ＤＰ）１０７と、キーボード（ＫＢ）１０８と、プロセッサ・メモリとを有する。ここで、プロセッサ・メモリは、変化点検出装置１のコンピュータを機能させるプログラムを実行することによって、変化点検出機能を実現させる。
【００５０】
さらに、このプロセッサ・メモリは、機能構成部として、時系列データアクセス部１１１と、自己相関データ生成部１１２と、相互相関データ決定部１１３と、特徴量生成部１１４と、変化点決定部１１５と、変化点予測部１１６と、入出力制御部１１７とを有する。ここで、図１における装置１の機能構成部間を矢印で接続して示した処理の流れは、本発明による変化点検出方法の一実施形態としても理解される。
【００５１】
同じく図１において、通信インタフェース１０１は、複数の基地局のそれぞれにおいて取得される複数の時系列トラヒックデータ、といったような複数の時系列データを、アクセスネットワーク（事業者通信網）やインターネットを介して受信する。ここで、各時系列データには、データの出所、すなわち系列を識別するための識別子、例えば基地局識別子が付与されていることも好ましい。
【００５２】
時系列データ蓄積部１０２は、受信（取得）された時系列データを、系列毎に区別して逐次記憶する。ここで、各系列において（例えば基地局毎に）、一定期間のデータを蓄積することも好ましい。例えば、常時、所定時間前から現在までの期間に係るデータのみを蓄積し、新たに受信したデータを蓄積する一方、所定時間前の時点よりも過去となった時点に係るデータを破棄していってもよい。または、新たに受信したデータを蓄積する一方で、データ長が所定閾値以内となるように最古のデータの破棄／維持を行ってもよい。
【００５３】
時系列データアクセス部１１１は、適宜、例えば時系列データのデータ時間間隔経過毎に、蓄積された複数の時系列データにおける所定期間分のデータを、又は複数の系列のそれぞれにおいて新たに取得されたデータを、自己相関データ生成部１１２及び相互相関データ決定部１１３に出力する。
【００５４】
自己相関データ生成部１１２は、（入力された）基準となる基準時系列データについて、ピリオドグラム（periodogram）から決定される周期tpだけタイムシフトさせた時系列データである高自己相関データを生成する。ここで、ピリオドグラムは、自己相関関数（ＡＣＦ，Auto-Correlation Function）のフーリエ変換に相当する関数であり、周波数（１／周期）についての関数となっている。このピリオドグラムを用いた高自己相関データの生成については、後に図２を用いて詳細に説明する。
【００５５】
相互相関データ決定部１１３は、入力された時系列データの中から、（同じく入力された）基準となる基準時系列データとの間で、ある負のタイムラグ値において所定条件を満たす高い相互相関を示す時系列データである高相互相関データを決定する。ここで、タイムラグは、相互相関関数（ＣＣＦ，Cross-Correlation Function）における２つの時系列データの時間パラメータのシフト分（時間差）である。この相互相関関数を考慮した高相互相関データの決定についても、次に、図２を用いて詳細に説明する。
【００５６】
図２は、自己相関データ生成部１１２及び相互相関データ決定部１１３での処理の一実施例を示すグラフである。
【００５７】
図２（Ａ）によれば、変化点検出対象の時系列データとして、３つの時系列データA、B及びCが取得（入力）されており、このうち、時系列データAを基準時系列データとした場合の処理が図２（Ｂ）及び（Ｃ）に示されている。最初に、基準時系列データAから高自己相関データA'を生成する処理を説明する。
【００５８】
図２（Ｂ）に示すように、自己相関データ決定部１１２は、基準時系列データAの自己相関関数（ＡＣＦ）からピリオドグラムを生成する。この基準時系列データAの自己相関関数R(τ)は、次式
（１）  R(τ)＝T-1Σt=1T A(t)・A(t+τ)
によって算出される。上式（１）において、A(t)は基準時系列データAの時刻tでのデータ値であり、A(t+τ)は時刻(t+τ)でのデータ値である。また、Σt=1Tは、時刻tについてのt＝1, 2, ・・・, Tでの総和（summation）である。ここで、時刻tは、１時間単位だけ経過すると１だけ増分する値となっている。また、それ故に、上式（１）におけるTは、基準時系列データAのデータ数と一致している。
【００５９】
次いで、基準時系列データAのピリオドグラムp(f)は、上式（１）のR(τ)を用いて、次式
（２）  p(f)＝Στ=-TT exp(-i2πfτ)・R(τ)
によって算出される。ここで、fは周波数（１／周期）であり、Στ=-TTは、τについての−TからTまでの総和（summation）である。なお、上式（２）のexp内のiは虚数単位である。
【００６０】
図２（Ｂ）のグラフに示された時系列データAのピリオドグラムは、周波数f＝0.14でピーク値（極大値）をとり、その周期tp（＝1／f）は7となっている。自己相関データ決定部１１２は、
（ａ）基準時系列データAにおいて、ピリオドグラムから求めたこの周期tp（＝7）だけタイムシフトさせた時系列データA'を生成し、
（ｂ）基準時系列データAの自己相関関数において、周期tp＝7での自己相関関数値ACF7が所定閾値以上であるならば、生成した時系列データA'を、高自己相関データA'として、相関行列を生成するための時系列データ群に加える。
ここで、所定閾値が例えば0.80であれば、ACF7は0.81であるから、時系列データA'は、高自己相関データA'として時系列データ群に加えられることになる。
【００６１】
実際には、自己相関データ生成部１１２は、入力された時系列データの各々を基準時系列データとし、当該基準時系列毎に、上記（ａ）及び（ｂ）の手順に従ってピリオドグラムを生成して周期tpを導出し、この周期tpを用いて生成した高自己相関データを、相関行列生成用の時系列データ群の要素とすることができる。なお、基準時系列データAをタイムシフトしていき、自己相関関数値が最大となるタイムシフト分だけタイムシフトした時系列データを時系列データA'とする等、ピリオドグラムを用いずに高自己相関データを生成することも可能である。次に、基準時系列データAから高相互相関データを決定する処理を説明する。
【００６２】
図２（Ｃ）に示すように、相互相関データ決定部１１３は、まず、時系列データAと時系列データBとの相互相関関数（ＣＣＦ）を生成する。この相互相関関数CAB(tg)は、次式
（３）  CAB(tg)＝T-1Σt=1T A(t)・B(t+tg)
によって算出される。ここで、A(t)は基準時系列データAの時刻tでのデータ値であり、B(t+tg)は時系列データBの時刻t+tgでのデータ値である。また、tgは、基準時系列データAに対する時系列データBのタイムラグである。次に、相互相関データ決定部１１３は、時系列データAと時系列データCとの相互相関関数CAC(tg)も、次式
（４）  CAC(tg)＝T-1Σt=1T A(t)・C(t+tg)
によって算出する。
【００６３】
図２（Ｃ）に示された（上式（３）で算出された）相互相関関数CAB(tg)においては、相互相関関数値CCFの絶対値は、タイムラグtg＝＋6において0.8となり最大値をとる。このように時系列データA及びBのCCFの絶対値が最大となるタイムラグtgをtABとすると、本実施例ではtAB＝＋6である。ここで、本実施例のように、CCFの絶対値が最大となるタイムラグが正値をとる場合（tAB＞0）、基準となる時系列データ（A）が原因（因）となって、結果（果）としての相関調査対象の時系列データ（B）が生じている、と捉えることが可能となる。
【００６４】
相互相関データ決定部１１３は、この基準時系列データAに対して「果」となる時系列データBを、後に詳細に説明する、変化点予測の際に利用する時系列データリストに加える。
【００６５】
一方、図２（Ｃ）に示された（上式（４）で算出された）相互相関関数CAC(tg)においては、相互相関関数値CCFの絶対値は、タイムラグtg＝−6において0.8となり最大値をとる。このように時系列データA及びCのCCFの絶対値が最大となるタイムラグtgをtACとすると、本実施例ではtAC＝−6である。ここで、本実施例のように、CCFの絶対値が最大となるタイムラグが負値をとる場合（tAC＜0）、相関調査対象の時系列データ（C）が原因（因）となって、結果（果）としての基準時系列データ（A）が生じている、と捉えることが可能となる。
【００６６】
相互相関データ決定部１１３は、この基準時系列データAに対して「因」となる時系列データCを高相互相関データとして、相関行列を生成するための時系列データ群に加える。
【００６７】
実際には、相互相関データ生成部１１３は、
（ａ）入力された全ての時系列データに対し、pairwiseの相互相関関数を生成し、すなわち、入力された時系列データから選択される全ての時系列データの（順序を考慮した）ペアについて相互相関関数を生成し、
（ｂ）時系列データX及びYのペアにおいて、相互相関関数値CCFXYの絶対値が最大となるタイムラグ値tXYを算出して、このtXYを当該ペアに対応付けて記録し、
（ｃ）上記（ｂ）の処理を全てのペアについて実施し、
（ｄ）入力された時系列データの各々を基準時系列データとして、当該基準時系列データ（X）毎に、ペアの相手である時系列データ（Y）についての記録されたタイムラグ（tXY）が正値であって、且つこのタイムラグ値（tXY）での相互相関関数値（CCFXY）の絶対値が所定閾値以上であれば、当該時系列データ（Y）を、時系列データリストに加え、
（ｅ）一方、タイムラグ（tXY）が負値であって、且つこのタイムラグ値（tXY）での相互相関関数値（CCFXY）の絶対値が所定閾値以上であれば、当該時系列データ（Y）を、相関行列を生成するための時系列データ群の要素とする
ことができる。
【００６８】
なお、自己相関データ生成部１１２及び相互相関データ決定部１１３に入力される複数の時系列データについては、これらの機能構成部で処理される直前の前処理として、各時系列データにおいてトレンド成分を抽出し、当該時系列データから当該トレンド成分を除外した時系列データを準備してもよい。ここで、時系列データからのトレンド成分の抽出は、公知の方法、例えば回帰分析等を用いて実施することができる。
【００６９】
ちなみに、時系列データのトレンド成分は、例えば通信サービスにおける時系列トラヒックデータの場合、対象地域において通信を行うユーザ数が増加していったり、ユーザの用いる通信端末がより通信量の多くなるスマートフォン等に移行していったりすることで発生する。このような変化点発生の要因とはならないトレンド成分を予め除去しておくことによって、より確実に変化点を検出することが可能となるのである。
【００７０】
図１に戻って、相関データ記憶部１０３は、自己相関データ生成部１１２で生成された高自己相関データを、相関相手となる基準時系列データに対応付けて記憶する。また、相互相関データ決定部１１３で決定された高相互相関データを、相関相手となる基準時系列データに対応付けて記憶する。また、相関データ記憶部１０３は、要求に応じて又は適宜、記憶した基準時系列データ、高自己相関データ、及び高相互相関データを、特徴量生成部１１４へ出力する。
【００７１】
また、時系列データリスト蓄積部１０６は、相互相関データ決定部１１３で生成された時系列データリストを相関相手となる基準時系列データに対応付けて蓄積し、また、当該リストに加わった時系列データの情報を入力して、時系列データリストを更新する。さらに、時系列データリスト蓄積部１０６は、要求に応じて又は適宜、記憶した時系列データリストを、変化点予測部１１６へ出力する。
【００７２】
同じく図１において、特徴量生成部１１４は、
（ａ）相関行列生成部１１４ｃにおいて、相関データ記憶部１０３から入力した基準時系列データと、対応付けられた高自己相関データと、同じく対応付けられた高相互相関データとを含む時系列データ群から、１つの時点に係る相関行列を生成し、
（ｂ）主成分分析PCA(Principle Component Analysis)によって、生成した相関行列の（第一主成分）固有ベクトルを算出し、
（ｃ）算出した固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素から生成される代表ベクトルとのなす内積（角度）に相当するスカラ値を算出して、特徴量とし、
（ｄ）各時点において上記（ａ）の相関行列を生成して、算出した特徴量を含む特徴量時系列データを生成する。
【００７３】
ここで、特徴量生成部１１４は、上記（ａ）において、高自己相関データを使用せずに（当該時系列データ群に含めずに）相関行列を生成することも可能である。例えば、基準時系列データに周期性が無く、高自己相関データを生成することができない場合でも相関行列を生成することができる。当然、意図的に高自己相関データを含めずに相関行列を生成してもよい。このような場合、基準時系列データ及び高相互相関データの各々において、単独で変化点が発生した際に、この変化点を検出することができる。
【００７４】
一方、上記（ａ）のように、高自己相関データも使用して（当該時系列データ群に含めて）相関行列を生成することにより、相関行列を構成する時系列データ全体におけるデータの傾向変化や異常をも変化点発生として捉えることが可能となるのである。
【００７５】
ここで、上述した相関行列を用いた特徴量生成処理の前処理として、相関行列を生成するための時系列データ群に含まれる時系列データに対し、ボリューム比をそろえる正規化処理を行うことも好ましい。ここで、ボリューム比とは、各時系列データを横軸が時間であるグラフに表した場合における縦軸スケールの互いの比である。
【００７６】
例えば、当該時系列データ群内の時系列データにおいて、他の時系列データに比べてボリューム比の小さいものがある場合、この時系列データのデータ値に変化が生じたとしても特徴量（固有ベクトルと代表ベクトルとのなす角度）には相応する変化が生じにくい。すなわち、ボリューム比のより小さな時系列データにおけるデータ値の変動は、ボリューム比のより大きなデータにまぎれてしまい、特徴量に反映されにくい。
【００７７】
そこで、当該時系列データ群内の時系列データにおける縦軸スケールを揃える（ボリューム比を一定にする又は所定範囲内に収める）、すなわちデータ値を正規化することによって、各時系列データに表れているデータ値の変化を、確実に特徴量に反映させるようにする。その結果、より漏れの少ない確実な変化点検出を実施することが可能となるのである。特に、特徴量生成部１１４では、複数の時系列データをまとめて特徴量生成処理を行うので、正規化処理を行うことは非常に有効となる。
【００７８】
なお、以上に説明した相関行列生成部１１４ｃで生成される相関行列は、相関係数に相当する値を行列要素とするものだけでなく、例えば、この相関係数に対応する分散・共分散に相当する値を行列要素とするものも含むものとする。言い換えると、時系列データの相関行列生成処理と数学的に同様の意味を有する処理は、相関行列生成部１１４ｃでの処理に含まれるとする。
【００７９】
図３は、生成された相関行列及び時系列データリストの一実施例を示すテーブルである。
【００８０】
図３には、図２に示した実施例において特徴量生成部１１４で生成された相関行列と、相互相関データ決定部１１３で生成された時系列データリストとが示されている。このうち、相関行列は、基準時系列データA、高自己相関データA'及び高相互相関データCを含む時系列データ群から構成されている。また、時系列データリストは、基準時系列データAに対して「果」となる時系列データBをそのリストに含んでいる。これらの相関行列及び時系列データリストは、図３のように、基準時系列データAの属性（補助データ）として記録されていることも好ましい。
【００８１】
図４は、特徴量生成部１１４における特徴量時系列データを生成する処理の一実施形態を説明するための模式図である。
【００８２】
図４によれば、最初に、１つの基準時系列データ、対応する１つの高自己相関データ、及び対応する１つ又は複数の高相互相関データを含む時系列データ群の各時系列について、時刻(t-M)から時刻tまでのデータを有する時系列データを取得する。図４では、時刻(t-M)から時刻tまでのウィンドウによって取り出された時刻(t-M)〜tにおける、基準時系列データ、高自己相関データ及び高相互相関データの３つが取り出されている。
【００８３】
次に、これらの時系列データを、系列k（＝1, 2,・・・, Nk）の時系列データXkとして、次式
（５）  Xk＝[xk1, xk2,・・・, xk(M+1)]
で表すと、グループ内の各時系列データを列データとした行列Xの転置行列XTは、
（６）  XT＝[X1, X2,・・・, XNk]
の形で表される。次いで、このような行列XT（X）を用いて、時刻tでの相関行列（疑似相関行列）Ctを、次式
（７）Ct＝m-1 X・XT
によって生成する。また、さらに、この生成した相関行列Ctの第一主成分固有ベクトルwを算出する。
【００８４】
次に、生成した相関行列Ctの各列成分（各行成分）をベクトル成分とした、列毎（行毎）の代表ベクトルを生成する。この列毎（行毎）の代表ベクトルakは、基準時系列データ、高自己相関データ、及び1つ以上の高相互相関データのうち、当該列（行）に対応するいずれか１つの時系列データについての代表ベクトルとなっている。
【００８５】
次いで、算出した固有ベクトルwと、時系列データXkについての代表ベクトルakとのなす角度Fk(t)を、次式
（８）  Fk(t)＝cos-1(wT・ak)
によって算出する。この時刻tにおいて算出された角度Fk(t)を、時系列データXkのスカラ特徴量とし、さらに、次式
（９）  F(t)＝[F1(t), F2(t),・・・, FNk(t)]
で表された時刻tでの特徴量の組F(t)を算出する。
【００８６】
次いで、以上に述べた時刻tでの特徴量の組F(t)の算出処理を、tを１単位だけ増分させた時刻t+1において繰り返し、時刻t+1での特徴量の組F(t+1)を算出する。具体的には、時刻(t-M+1)から時刻(t+1)までのウィンドウによって取り出された時刻(t-M+1)〜(t+1)の時系列データから特徴量の組F(t+1)を算出する。このように、順次経過する時刻t+p（p＝1, 2,・・・）毎に、特徴量の組F(t+p)を算出して記憶していくことで、F(t), F(t+1), F(t+2),・・・といったデータ列である特徴量時系列データを生成することができる。ここで、t+pは、時刻tから見て、時系列データに係る時刻の時間単位（増分）のp倍だけの時間が経過した時点の時刻を表している。
【００８７】
以上説明した特徴量時系列データの生成処理をまとめると、以下の通りとなる。
（ａ）最初に第Ｎ（Ｎ≧１）の期間（ウィンドウ）に係る相関行列生成用の時系列データ群から、第Ｎの時点での（疑似）相関行列を生成し、
（ｂ）生成した（疑似）相関行列の第一主成分固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素から生成される代表ベクトルとのなす角度（向きの差）に対応するスカラ値を、第Ｎの時点での当該１つの時系列データに係る特徴量とし、
（ｃ）次いで、第Ｎの期間から見て時間単位分だけ時間経過方向にずれた第（Ｎ＋１）の期間（ウィンドウ）に係る当該時系列データ群から、第Ｎの時点に次ぐ第（Ｎ＋１）の時点での（疑似）相関行列を生成し、
（ｄ）生成した（疑似）相関行列の固有ベクトルと、当該時系列データ群に含まれる１つの時系列データに係る行列要素から生成される代表ベクトルとのなす角度（向きの差）に対応するスカラ値を、第（Ｎ＋１）の時点での当該１つの時系列データに係る特徴量とし、
（ｅ）このような処理を、Ｎ値を順次１だけ増分させる形で繰り返して、特徴量時系列データを生成する。
このように、時刻の経過とともにウィンドウをずらして新たな時系列データのバッチが取得される毎に固有値解析を行い、特徴量時系列データを導出するバッチ処理が行われるのである。
【００８８】
なお、実際には、特徴量生成部１１４は、変化点検出対象として入力された時系列データの各々を基準時系列データとして、当該基準時系列データ（X）毎に、特徴量の組F(t)の時系列である特徴量時系列データを算出することができる。この場合、変化点検出対象として入力された時系列データの数だけ、相関行列及び特徴量時系列データが生成されることになる。
【００８９】
図１に戻って、特徴量生成部１１４は、生成した特徴量時系列データを、対応する基準時系列データに対応付けた形で特徴量時系列記憶部１０４に出力する。特徴量時系列記憶部１０４は、入力した特徴量時系列データを記憶するとともに、要求に応じて又は適宜、記憶した特徴量時系列データを変化点決定部１１５に出力する。
【００９０】
変化点決定部１１５は、入力した特徴量時系列データでの特徴量の変動に基づいて、１つの時系列データにおいて発生した変化点を決定する。ここで、上式（９）によって算出される特徴量の組F(t)の時系列データを取得した場合、このF(t)の特徴量時系列データでの特徴量の変動に基づいて、変化点を発生させた時系列データを特定することもできる。
【００９１】
図５は、変化点決定部１１５における変化点検定処理の一実施形態を説明するための模式図である。
【００９２】
図５（Ａ）〜（Ｄ）には、図２に示した実施例における、各時刻Tでの相関行列と、特徴量生成部１１４で生成された特徴量時系列データとが示されている。このうち、相関行列は、基準時系列データA、高自己相関データA'及び高相互相関データCを含む時系列データ群から生成されている。また、特徴量時系列データは、
（ａ）この相関行列の第一主成分固有ベクトルと、基準時系列データAの代表ベクトルとのなす角度であるスカラ特徴量FWA[t]、
（ｂ）この相関行列の第一主成分固有ベクトルと、高自己相関データA'の代表ベクトルとのなす角度であるスカラ特徴量FWA'[t]、及び
（ｃ）この相関行列の第一主成分固有ベクトルと、高相互相関データCの代表ベクトルとのなす角度であるスカラ特徴量FWC[t]
を含むスカラ特徴量の組から構成されている。
【００９３】
変化点決定部１１５は、各時刻において、この特徴量時系列データのスカラ特徴量Fにおける1つ前の時刻での値からの変化分の絶対値が所定閾値FTH以上になった場合、このスカラ特徴量Fの代表ベクトルに係る時系列データにおいて変化点が発生したと判定する。具体的に、図５の実施例においては、この所定閾値FTHを0.1とすると、時刻T＝1（図５（Ａ））から時刻T＝t（図５（Ｃ））までの間、いずれのスカラ特徴量Fにも、この所定閾値FTH以上となる変化は見られない。
【００９４】
しかしながら、時刻T＝t＋1（図５（Ｄ））では、高相互相関データCに係るスカラ特徴量Fについて、
（１０）  FWC[t+1]−FWC[t]＝0.45−0.24＝0.21＞0.1＝FTH
となり、所定以上の変化があったと判定される。これにより、変化点決定部１１５は、時刻t＋1において時系列データCに変化点が発生したことを決定し、また、変化点の発生した時系列データを、時系列データCであると特定する。
【００９５】
このように、変化点決定部１１５によれば、特徴量Fの組から構成される特徴量時系列データを生成し利用することによって、変化点の発生を検出するだけではなく、当該変化点が発生した時系列データがいずれであるかを特定することも可能となるのである。
【００９６】
ここで、１つの例として、無線通信ネットワークにおいて通信トラヒックに変化点が発生した基地局単体を特定するためには、従来、膨大な計算処理コストがかかっていた。これに対し、変化点決定部１１５によれば、特定対象となるいずれの時系列データについても、スカラ量の計算に基づいて変化点を検出するので、変化点を発生させた基地局（時系列）の特定処理における計算コストを抑えることが可能となる。
【００９７】
以上説明したように、変化点決定部１１５は、
（ａ）ある時刻でのスカラ特徴量Fと１つ前の時刻でのスカラ特徴量Fとの差が、予め設定された所定閾値FTHを以上となる場合に、当該ある時刻において変化点が発生したと決定する
ことができる。
【００９８】
この場合、具体的には、生成した特徴量時系列データから、時刻毎に、当該時刻でのスカラ特徴量Fと１つ前の時刻でのスカラ特徴量Fとの差（特徴量差）を対応付けて記録した特徴量差時系列データを生成しておき、この特徴量差時系列データを用いて変化点を決定することも好ましい。ここで、この特徴量差を変化点検出スコアとして、この変化点検出スコアが所定スコア以上となる場合に、当該時刻において変化点が発生したと決定してもよい。
【００９９】
また、変化点決定の他の方法として、変化点決定部１１５は、
（ｂ）特徴量時系列データにおけるある時刻でのスカラ特徴量Fと、予め設定された時系列予測モデルにおける当該時刻でのデータ値との差分（誤差）を算出し、この誤差が予め設定された所定閾値以上となる場合に、当該時刻において変化点が発生したと決定する
ことも可能である。
【０１００】
ここで、このような時系列予測モデルとの比較処理は、変化点決定部１１５のモデル比較部１１５ｍで実施される。また、予め設定される時系列予測モデルとして、例えば、時系列データを予測するのに一般的に用いられるＡＲ（自己回帰）モデルを採用してもよい。線形のＡＲモデルでは、目的変数は目的変数の過去値を説明変数とし、モデルを表す多項式の係数は、通常、最尤法で決定される。
【０１０１】
図１に戻って、変化点決定部１１５で決定された変化点の情報は、いずれの時刻において、いずれの時系列データで変化点が発生したかを示す情報を含む変化点検出情報として、変化点情報記憶部１０５に記録される。また、この変化点検出情報は、入出力制御部１１７を介し、ディスプレイ１０７に表示されてもよく、または、通信インタフェース１０１から外部の情報処理装置に送信されてもよい。変化点検出情報は、さらに、キーボード１０８等の入力デバイスから入力された変化点検出情報の要求信号に従って、以上に説明したように出力されてもよい。
【０１０２】
変化点予測部１１６は、変化点決定部１１５によって変化点が１つの時点において１つの時系列データで検出された際、
（ａ）当該１つの時系列データについての時系列データリストを、時系列データリスト蓄積部１０６から取得し、
（ｂ）取得した時系列データリストが時系列データを含んでいる（Nullではない）場合、すなわち、当該１つの時系列データを「因」とする（正のタイムラグ値が対応付けられた）時系列データが存在する場合、当該リストに含まれている時系列データ（の各々）において、当該１つの時点から当該正のタイムラグ値に係る時間の経過後に、変化点が発生することを予測する。
【０１０３】
例えば、図２に示した実施例の場合であって図３に示したような時系列データリストが生成されている場合において、時刻T＝t'で時系列データAに変化点が発生したと判定（特定）された際、変化点予測部１１６は、時刻T＝t'+6において、時系列データBに変化点が発生する、と予測することができる。
【０１０４】
この時系列データリストに含まれている時系列データは、すでに説明したように、基準時系列データに対して「果」となるデータであり、基準時系列データでの変化を原因とした変化を起こし得る時系列データとなっている。変化点予測部１１６によれば、このような時系列データリストを利用することによって、変化点の発生を検出するだけではなく、将来の１つの時点で１つの時系列データにおいて変化点が発生する、との予測情報を決定することも可能となるのである。
【０１０５】
ここで、１つの例として、従来、無線通信ネットワークでは、通信トラヒックにおける変化点発生を予測することが困難であった。これに対し、変化点予測部１１６によれば、自己相関解析によって生成した自己相関時系列データと、スカラ量の計算によって検出した変化点とに基づいて変化点発生を予測するので、計算コストを抑えつつ、変化点を発生させる基地局（時系列）を事前に特定（予測）することが可能となるのである。
【０１０６】
ちなみに、変化点予測部１１６は、特徴量生成部１１４で生成された相関行列を用いて、変化点の発生を予測することもできる。例えば、図５に示した実施例において、時刻T＝t＋1で時系列データCに変化点が発生したと判定された際、変化点予測部１１６は、この判定結果を受け、この時系列データCに対して「果」の関係にある時系列データAについて、時刻Tが、
T＝(t＋1)＋|tAC|＝t＋1＋6＝t＋7  （ここで、タイムラグ値tAC＝-6）
において変化点が発生する、と予測することができる。
【０１０７】
この変化点予測部１１６で決定された変化点予測情報は、入出力制御部１１７を介し、ディスプレイ１０７に表示されてもよく、または、通信インタフェース１０１から外部の情報処理装置に送信されてもよい。変化点予測情報は、さらに、キーボード１０８等の入力デバイスから入力された変化点予測情報の要求信号に従って、以上に説明したように出力されてもよい。次に、機能・処理としては遡るが、特徴量生成部１１４における特徴量生成処理において、部分空間追跡法を用いた他の実施形態について説明する。
【０１０８】
図６は、特徴量生成部１１４における特徴量生成処理の他の実施形態を説明するための模式図である。
【０１０９】
特徴量生成処理の他の実施形態として、特徴量生成部１１４の部分空間追跡部１１４ｐ（図１）によって実施される、部分空間追跡法を用いた特徴量生成処理について、以下に説明する。
【０１１０】
最初に、比較のため、図４を用いてすでに説明した特徴量生成バッチ処理の概要を、図６（Ａ）に示す。このバッチ処理における特徴量の算出では、時系列データにおける新たな時点でのデータが追加される毎に、所定期間のウィンドウ（図４）内の時系列データのバッチに対し、特徴量算出のための固有値解析を実施することが必要となる。
【０１１１】
一方、図６（Ｂ）によれば、部分空間追跡部１１４ｐ（図１）は、部分空間追跡法を用い、複数の時系列データに係る新たな時点でのデータに基づいて、
（ａ）当初は、予め設定された初期の固有ベクトルを更新し、
（ｂ）前時点で更新された固有ベクトルが存在する場合、当該前時点で更新された固有ベクトルをさらに更新し、
更新された固有ベクトルと、時系列データ群に含まれる１つの時系列データにおける他の時系列データとの間の相関係数（相互相関関数値）から生成される代表ベクトルとの向きの差（角度）に対応するスカラ値を、この新たな時点での特徴量として、各時点での特徴量を含む特徴量時系列データを生成する。
【０１１２】
具体的には、ＰＡＳＴＤアルゴリズムとして、時刻tにおいて取得される（時刻(t-M)〜tでの）時系列データを、時刻tでの観測ベクトルxtとして表し、時刻tでの固有ベクトルwtを、次式
（１１）  yt＝wTt-1・xt
dt＝β・dt-1＋yt2
et＝xt−wt-1・yt
wt＝wt-1＋et・yt／dt
を用いて算出する。ここで、dtは、時刻tの観測ベクトルxtによって更新された固有値相当量であり、βは忘却係数である。上式（１１）によって算出された時刻tでの固有ベクトルwtは、時刻tの観測ベクトルxtによって更新された固有ベクトルに相当する。
【０１１３】
次いで、算出された固有ベクトルwtと代表ベクトルatとの時刻tでの特徴量Ftを、次式
（１２）  Ft＝cos-1(wtT・at)
を用いて算出する。このような上式（１１）及び（１２）を用いた処理を、経過する時刻毎に、全ての時系列データの代表ベクトルについて行って特徴量Fの組を算出することにより、当該特徴量Fの組の時系列で構成される特徴量時系列データが生成される。ちなみに、このアルゴリズムの初期パラメータとしての初期固有ベクトルw(0)、及び初期固有値d(0)はそれぞれ、ゼロベクトル以外の任意のベクトル、及びゼロ以外の任意のスカラ値とすることができる。
【０１１４】
このように、各時系列で時刻tのデータが追加される毎に、この追加データに対し部分空間追跡法を適用することによって、部分空間追跡法の各種パラメータを更新し、結果として、特徴量Ftも更新されるのである。従って、本実施形態では、データが追加される毎に固有値解析を実施するといった処理の必要がなく、比較的簡易な計算によって特徴量が算出されるので、計算量が低減し処理負担がより軽減される。
【０１１５】
ちなみに、特徴量生成部１１４（部分空間追跡部１１４ｐ）は、変更態様として、
（ａ）当初、図４に示したようなバッチ処理によって、時系列データ群の（疑似）相関行列を生成して、第一主成分固有ベクトル及び対応する固有値を算出し、
（ｂ）初回の時刻だけ、又は初回の時刻から所定数の時間単位経過後の時刻まで、上記（ａ）の固有値解析によって、当該時刻での特徴量Fを算出し、
（ｃ）その直後の時刻において、上記（ｂ）で算出された固有ベクトルを初期固有ベクトルとし、部分空間追跡法を用いて、複数の時系列データに係る当該時刻でのデータに基づき、この初期固有ベクトルを更新して、時系列データ群に含まれる１つの時系列データにおける他の時系列データとの間の相関係数（相互相関関数値）から生成される代表ベクトルと、更新された初期固有ベクトルとの向きの差（角度）に対応するスカラ値を、当該新たな時点での特徴量Fとし、
（ｄ）その後、各時刻において、図６（Ｂ）に示したような部分空間追跡法を用いた処理によって特徴量Fの組を算出し、特徴量時系列データを生成する
ことも好ましい。
【０１１６】
なお、さらなる変更態様として、上記（ｄ）での処理に引き続き、
（ｅ）当初から所定期間経過後の時刻において、再度、当該時刻に係る時系列データの（疑似）相関行列を生成し、第一主成分固有ベクトル（及び対応する固有値）を算出して、特徴量Fの組を算出する
ことも好ましい。この後は、新たな時刻毎に、引き続き固有値解析を行って特徴量Fの組を算出してもよいし、または、これらの固有ベクトル及び固有値を部分空間追跡法のパラメータとして順次更新して、当該時刻での特徴量Fの組を算出してもよい。
【０１１７】
［変化点検出方法］
【０１１８】
図７は、本発明による変化点検出方法の一実施形態を示すフローチャートである。以下、図７（Ａ）及び図７（Ｂ）を用いて、本実施形態の変化点検出方法におけるフローの概要を説明する。
【０１１９】
最初に、図７（Ａ）に、時系列データアクセス部１１１における処理フローを示す。
（Ｓ１１）各系列の最新時系列データを取得する。
（Ｓ１２）系列毎に、時系列データを、時系列データ蓄積部１０２に蓄積する。
【０１２０】
（Ｓ１３）各時系列データにおいて、データ長が所定閾値を超えているか否かを判定する。ここで、偽の判定が行われた場合、判定された時系列データをそのまま、次の変化点検出対象とする。
（Ｓ１４）一方、ステップＳ１３において真の判定が行われた場合、判定された時系列データにおける最古データから順次、データ長が所定閾値以内となるまでデータを削除した上で、当該時系列データを次の変化点検出対象とする。
【０１２１】
次いで、図７（Ｂ）に、変化点検出データ特定・変化点予測処理フローを示す。
（Ｓ２１）データ長を調整された変化点検出対象の全時系列データを読み込む。
（Ｓ２２）基準時系列データ毎に、高自己相関データを生成し、相関行列を生成するための時系列データ群に加える。
（Ｓ２３）基準時系列データ毎に、正のタイムラグ値で所定以上の高相互相関を示すデータを生成し、変化点発生予測のために用いる時系列データリストに加える。
（Ｓ２４）基準時系列データ毎に、高相互相関データを決定し、相関行列を生成するための時系列データ群に加える。
【０１２２】
（Ｓ２５）基準時系列データ毎に、高自己相関データ及び高相互相関データを含む時系列データ群を用いて相関行列を生成し、当該相関行列の固有ベクトルを算出する。
（Ｓ２６）基準時系列データ毎に、算出された固有ベクトルと代表ベクトルとのなす角度に相当するスカラ値を特徴量とし、各時刻での特徴量の組から特徴量時系列データを生成・更新する。
（Ｓ２７）生成・更新した特徴量時系列データの変動に基づいて変化点を検出し、当該変化点を発生させた時系列データを特定する。
（Ｓ２８）生成・更新した時系列データリストを用いて、変化点を発生させる時系列データを、その推定発生時刻とともに予測する。
以上、ステップＳ１１からステップＳ２８までの処理を各時刻において実施することによって、本変化点検出方法の実施が完了する。
【０１２３】
以上、詳細に説明したように、本発明によれば、変化点検出において、スカラ値であるが故に比較的算出処理負担の小さいスカラ特徴量を利用するので、複数の時系列データを取り扱っていても、変化点検出のための計算コストの増大を抑制することができる。さらに、各時点でのスカラ特徴量を含む特徴量時系列データから変化点を決定するので、リアルタイムに近い形で変化点を適宜検出することが可能となる。
【０１２４】
また、複数の時系列データをまとめて処理して特徴量を算出するので、時系列データ毎の個別の変動に大きく影響されずに、より確実に安定して変化点検出を行うことも可能となる。
【０１２５】
特に、基準時系列データとの間で高い相互相関を示す高相互相関データを、相関行列を生成するための時系列データ群にグルーピングしている。また、一実施形態として、基準時系列データとの間で高い自己相関を示す高自己相関データを、この時系列データ群に含めることもできる。このようなグルーピングを行い、互いに所定以上の高い相関を有する複数の時系列データから固有ベクトルを算出するので、より確実に安定して変化点検出を行うことが可能となるのである。
【０１２６】
さらに、本発明の一実施形態として、変化点を検出した際、グルーピングされた時系列データのいずれにおいて変化点が検出されたのかを特定することも可能となる。また、時系列データにおける変化点発生を予測することもできる。このような特定処理及び予測処理も、時系列データ間の因果関係を考慮することによって可能となるのである。これにより、例えば無線通信ネットワークにおいて、通信トラヒックに変化点を発生させた基地局（時系列）を特定したり、変化点を発生させる基地局（時系列）を事前に特定（予測）したりすることが、計算コストを抑えつつ可能となるのである。
【０１２７】
ちなみに、時系列データの発生源は、当然に、基地局のような通信中継装置に限定されるものではない。例えば、通信ネットワークを構成する各種端末やサーバ等、製造システムを構成する製造装置、搬送装置及び管理装置等、さらには、マーケット・金融システムを構成する端末、認証サーバ及び顧客管理サーバ等、様々な装置・設備が時系列データの発生源となる。本発明は、当然、そのような発生源を含むシステムにも適用可能なものとなっている。さらに、これらの発生源からの時系列データにおける変化点の検出は、故障検出や障害検知を目的とするものに限定されず、例えば異常監視やアクセスの急変の検知、さらには攻撃・侵入検知等、様々の用途・目的のために有用となるのである。
【０１２８】
また、本発明によれば、今後大きく進展することが予想されるＩｏＴ（Internet of Things）の分野でも、多数のセンサや、機器・デバイスから出力される時系列データにおける変化点を検出することによって、監視・管理対象における異常を確実に検知したり、システム環境の変化を適切に把握したりすることが可能となるのである。
【０１２９】
以上に述べた本発明の種々の実施形態について、本発明の技術思想及び見地の範囲内での種々の変更、修正及び省略は、当業者によれば容易に行うことができる。以上に述べた説明はあくまで例示であって、何ら制約を意図するものではない。本発明は、特許請求の範囲及びその均等物によってのみ制約される。
【符号の説明】
【０１３０】
１  変化点検出装置
１０１  通信インタフェース
１０２  時系列データ蓄積部
１０３  相関データ記憶部
１０４  特徴量時系列記憶部
１０５  変化点情報記憶部
１０６  時系列データリスト蓄積部
１０７  ディスプレイ
１０８  キーボード
１１１  時系列データアクセス部
１１２  自己相関データ生成部
１１３  相互相関データ決定部
１１４  特徴量生成部
１１４ｃ  相関行列生成部
１１４ｐ  部分空間追跡部
１１５  変化点決定部
１１５ｍ  モデル比較部
１１６  変化点予測部
１１７  入出力制御部
【図１】
0006602256.tif 000002
【図２】
0006602256.tif 000003
【図３】
0006602256.tif 000004
【図４】
0006602256.tif 000005
【図５】
0006602256.tif 000006
【図６】
0006602256.tif 000007
【図７】
0006602256.tif 000008