(57)【要約】  本発明の１つの実施形態によれば、アプローチは、時系列データセットの異常または外れ値を正確に検知する。時系列データセットの特定のデータ要素が外れ値であるかどうかを識別するための方法は、この特定のデータ要素の値を予測することと、データ要素の実際値が外れ値であるかどうかを予測値に対して定義する閾値を取得することとを含む。本発明の実施形態の１つの態様において、閾値は、時系列データセットの特定のデータ要素の時間的に前にあるデータ要素と関連付けられた履歴誤差値に基づいて生成される。
2021524954.tif 000002
【特許請求の範囲】
【請求項１】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ実行方法であって、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得することと、
前記予測データを使用して、前記データ要素の予測値を予測することと、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得することと、
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得することと、
前記データ要素の前記閾値、前記予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定することと
を含む、方法。
【請求項２】
前記予測データが、前記データ要素より時間的に前にある前記時系列データセットの所定の数の他のデータ要素を含む、請求項１に記載のコンピュータ実行方法。
【請求項３】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項１に記載のコンピュータ実行方法。
【請求項４】
閾値を取得することが、前記履歴誤差値の最大値に基づいて、各履歴誤差値をスケーリングして０と１の間の値にすることを含む、請求項１に記載のコンピュータ実行方法。
【請求項５】
閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項１に記載のコンピュータ実行方法。
【請求項６】
前記閾値を取得することが、前記閾値を取得するために、前記履歴誤差値の前記標準偏差に所定の数を掛けることを含む、請求項５に記載のコンピュータ実行方法。
【請求項７】
前記閾値を取得することが、チェビシェフの不等式を使用して前記所定の数を計算することを含む、請求項６に記載のコンピュータ実行方法。
【請求項８】
前記第２のデータ要素が、前記データ要素の前に所定の期間の倍数だけ取得された前記時系列データセットのデータ要素に対応する、請求項１に記載のコンピュータ実行方法。
【請求項９】
前記所定の期間が、１時間、１日、または１週間である、請求項８に記載のコンピュータ実行方法。
【請求項１０】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項１に記載のコンピュータ実行方法。
【請求項１１】
前記データ要素が、前記時系列データセットのデータ・ポイントである、請求項１に記載のコンピュータ実行方法。
【請求項１２】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ・プログラム製品であって、プログラム命令が含まれるコンピュータ可読ストレージ媒体を備え、前記プログラム命令が、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得することと、
前記予測データを使用して、前記データ要素の予測値を予測することと、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得することと、
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得することと、
前記データ要素の前記閾値、前記予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定することと
を含む方法を処理ユニットに行わせるように前記処理ユニットによって実行可能な、コンピュータ・プログラム製品。
【請求項１３】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１４】
閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１５】
前記第２のデータ要素が、前記データ要素の前に所定の期間の倍数だけ取得された前記時系列データセットのデータ要素に対応する、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１６】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項１２に記載のコンピュータ・プログラム製品。
【請求項１７】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ・システムであって、
少なくとも１つのプロセッサであって、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得すること、
前記予測データを使用して、前記データ要素の予測値を予測すること、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得すること、
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得すること、ならびに
前記データ要素の前記閾値、前記予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定すること
を行うように構成された、前記少なくとも１つのプロセッサ
を備える、コンピュータ・システム。
【請求項１８】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項１７に記載のコンピュータ・システム。
【請求項１９】
閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項１７に記載のコンピュータ・システム。
【請求項２０】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項１７に記載のコンピュータ・システム。
【請求項２１】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのシステムであって、
少なくとも１つのプロセッサであって、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得するように適合された第１の取得ユニットと、
前記予測データを使用して、前記データ要素の予測値を予測するように適合された予測ユニットと、
第２の取得ユニットであって、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得すること、および
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得すること
を行うように適合された、前記第２の取得ユニットと
前記データ要素の前記閾値、前記識別した予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定するように適合された判定ユニットと
を含む、前記少なくとも１つのプロセッサ
を備える、システム。
【請求項２２】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項２１に記載のシステム。
【請求項２３】
閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項２１に記載のシステム。
【請求項２４】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項２１に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は異常検知に関し、詳細には、データ・モデリング・アプローチを使用した異常の検知に関する。本発明の実施形態は、さらに、システムのプロセッサがこのような方法を実行できるようにするコンピュータ可読プログラム・コードを含むコンピュータ・プログラム製品に関する。本発明の実施形態は、さらに、異常を検知するためのシステムに関する。このようなシステムは、様々な異なるドメインにわたって見られるいずれかのデータの異常を識別するために使用されてもよい。このようなデータは、例えば、（例えば、普通ではない検査結果を検知するための）健康データ、（例えば、詐欺行為／侵入の検知のための）セキュリティ・データ、または（例えば、伝送エラーを検知するための）通信データを含んでもよい。
【背景技術】
【０００２】
異常検知は、データ・ポイントまたはパターンの期待される挙動から外れているデータ・ポイントまたはデータのパターン（例えば異常）を識別することを目標とする。別の分野では、異常は、代替として、外れ値、不調和観察、例外、逸脱、驚き、異様さ、または汚染物と呼ばれることもある。
【０００３】
異常検知は、様々な応用分野（例えば、健康、詐欺行為／侵入検知のためのセキュリティ、システム）において有用であり、そうしないと、サービス停止、およびメンテナンス・コストの増加になり得る性能悪化を、５Ｇネットワーク・オペレータがタイムリに回避または検知するのに特に有益である。目的は、初期段階において是正措置を適用して、悪化のインパクトを最小化し、コストを減らすことができるようにするために、事前対応的（例えば、悪化の発生前に準備する）または事後対応的（例えば、悪化の発生後に対応する）手法で悪化を検知することである。
【０００４】
ｉ）外れ値検知の一般的な表現は、多次元データにおける普通ではないポイントを、隣のポイントへのこれらの距離で見つけることである事実に基づく方法、および（ｉｉ）監視される事実の正常な挙動をモデル化し、期待される正常な挙動と実際の挙動との間の偏差を異常検知のための誤差基準値としてさらに使用することになる概説モデルが予め作り出される別の一般的なアプローチである明確な一般化法、という、用いられる戦略のタイプに基づいて分類可能な、非常に多くの異常検知技法がある。
【０００５】
実際のシステムで活用される最も一般的な既存の技法は、閾値ベースの方法を用い、パラメトリック法、および非パラメトリック法にカテゴライズすることができる。パラメトリック法は、データセットの基礎となる分布を仮定し、分布に基づいて閾値を決定する。しかし、この仮定は、多くの場合、非現実的であり、実際に破られる。さらに、非パラメトリック法は、このように仮定しないようにし、その場限りの手法で閾値を決定する。しかし、両方のアプローチは、一般に非現実的であり、入ってくるデータセットのパターン変化に適合せず、閾値の調整にかなりの努力を必要とすることが多い。
【０００６】
より複雑な異常検知技法は機械学習方法を用い、教師あり（supervised）、半教師あり（semi-supervised）、および教師なし（unsupervised）という３つのクラスに分けることができる。教師あり学習異常検知は、各インスタンスがラベル付けされ、典型的には、訓練セットに対して分類装置を訓練することを伴うデータセットを必要とする。入力正常訓練データセットから正常な挙動を表すためのモデルを組み立てるものなどの、半教師ありアルゴリズムは、テスト・データセットがモデルによって生成される可能性を計算するためのモデルに従う。教師なしモデルは、ラベル付きデータセットを必要とせず、大多数のデータ・ポイントが正常であり、残りのデータ・ポイントを外れ値として返すという仮定の下で動作する。
【０００７】
しかし、統計モデルおよび確率モデルなどのほとんどのアプローチは、典型的には、単一の基準値が一度に監視される一変量データセットに適している。これは、各基準値のためのモデルを構築することによって複数の基準値に拡張されることが可能であるが、これは、基準値間のどのような相関関係も直接考慮しないはずである。したがって、これらのアプローチは、潜在的に異常な挙動を識別するために基準値間の相関関係が使用され得る多変量解析に簡単に拡張できない。さらに、既存のアプローチは、典型的には、グランド・トゥルース・ラベルを収めるデータセットに依存し、ここで、異常は、データ・ポイントに具体的に正確に示される。これは、ラベル付きデータが高価であり、データにラベル付けする際に人間のエラーによる影響を受ける可能性のある専門知識を必要とするので、現実のシナリオにおいて集めるのが難しい可能性がある。さらに、初期のモデルは、再訓練されない限り新しいタイプの異常に適用されない可能性があり、このことにより、異常検知モデルを導入している全期間、専門知識を必要とする。これは、５Ｇネットワークのような動的環境でこれらのアプローチが活用されるのを非現実的にする。
【発明の概要】
【０００８】
本発明の実施形態は、時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するための方法を提供しようとする。
【０００９】
本発明の実施形態は、データ処理システムのプロセッサで実行されたときに方法を実行するためのコンピュータ・プログラム・コードを含むコンピュータ・プログラム製品をさらに提供しようとする。
【００１０】
本発明の実施形態は、このコンピュータ・プログラム・コードを実行するように適合されたシステムをさらに提供しようとする。
【００１１】
本発明の実施形態は、時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのシステムをさらに提供しようとする。
【００１２】
本発明の１つの実施形態によれば、時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ実行方法が提供される。方法は、データ要素より時間的に前にある時系列データセットの第１のデータから、データ要素の値を予測するために予測データを取得することと、予測データを使用して、データ要素の予測値を予測することとを含む。方法は、時系列データセットの履歴誤差値を取得することをさらに含み、各履歴誤差値は、データ要素より時間的に前にある時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである。方法は、１つまたは複数の履歴誤差値に基づいて、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得することと、データ要素の閾値、予測値、および値に基づいて、データ要素が外れ値であるかどうかを判定することとをさらに含む。
【００１３】
閾値の生成時に履歴誤差値を使用すると、外れているデータ値を識別する際の正解率（accuracy）を向上させる。具体的には、データ要素と関連付けられた誤差値が正常な範囲または期待される範囲に入るかどうかを識別するために、期待される誤差値から（例えば、履歴データ値から）現在の誤差値が逸脱したかどうかが容易に分かる。
【００１４】
したがって、履歴誤差値を使用すると、時系列データセットの外れているデータ要素を識別する際の正解率および適合率（precision）が改善する。
【００１５】
履歴誤差値は、それぞれ、２乗誤差値であってもよい。２乗誤差値は、データ要素の予測値とデータ要素の実際値との間の差の２乗である。平均２乗誤差値が、複数の値を含むデータ要素の履歴誤差値として使用されてもよい。
【００１６】
履歴２乗誤差値を使用して閾値を計算すると、ベンチマーク・テストに基づいて外れ値データを識別する際の正解率および適合率が改善する。この効果は、閾値を比較して、調査したデータ要素が外れ値であるかどうかを判定するために、調査中のデータ要素の２乗誤差値が使用されるときに特に目立つ。
【００１７】
本発明のいくつかの実施形態において、各履歴誤差値は、０と１の間の値にスケーリングされる（例えば、正規化される）。これは、特定の履歴誤差値が、閾値の計算に不釣合いに影響を及ぼさないことを保証する。（調査中の）データ要素の、閾値と比較される誤差値も、改善された一貫性のために、（例えば、履歴値に対するものと同じスケーリング・ファクタを使用して）０と１の間にスケーリングされてもよい。
【００１８】
本発明のさらなる実施形態において、履歴誤差値の標準偏差は、閾値を計算するため、またはそうでなければ、取得するために使用される。標準偏差は、システムの正常な挙動または期待される挙動を表すものなので、履歴誤差値の標準偏差を使用して閾値を生成すると、外れ値を正確に識別できるようになる。
【００１９】
外れているデータ要素を識別するのに適した閾値を標準偏差に基づいて決定するために、チェビシェフの不等式の原理が活用されてもよい。これは、履歴誤差値の基礎となる分布について仮定が行われないので、外れているデータ要素を検知する信頼性を改善する。これは、このことにより、（例えば、非正規分布が期待されない場合に）外れ値検知方法が使用され得る応用件数を増加させる。
【００２０】
本発明の特定の実施形態において、外れているデータ要素を識別する際の正解率を改善するために、履歴誤差データのパターンが活用されてもよい。時間／日／週（または他の期間）の同じ時間の誤差値が似ているので、履歴誤差値に周期性があり得ることが認識されてきた。したがって、周期的な期間と関連付けられた履歴誤差値を使用すると、このような周期性は、期待される正常な挙動の一部とみなすことができるので、外れているデータ要素をより正確に識別できるようになる。言い換えれば、時系列データセットの挙動は周期的に変化してもよく、その結果、（時系列データセットの周期性と一致する）類似の挙動は、正常とみなすことができる。様々な例では、所定の期間は、このような期間を伴う周期的な挙動を時系列データセットが有する可能性が高くなるので、１時間、１日、または１週間であってもよい。
【００２１】
データ要素の予測値を予測するステップは、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の潜在的な予測値を予測することを含むことができる。この同じステップは、データ要素の値に最も近い潜在的な予測値を予測値として割り当てることをさらに含むことができる。
【００２２】
調査中のデータ要素の値を正確に予測するために、複数のモデルのどれも活用しなかった場合、この値が異常または外れ値である可能性がより高くなる。したがって、データ要素の実際値／測定値に最も近い（複数の可能な予測値のうちの）予測値を使用することによって、異常なデータ要素を識別する正解率および信頼性を向上させることができる。
【００２３】
複数の予測モデルを使用して予測値を生成することが特に効率的であることをベンチマーク・テストが示してきた。具体的には、外れているデータ要素を検知する適合率および再現率（recall）が強化される。
【００２４】
本発明の別の実施形態による、時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ・プログラム製品が提供される。コンピュータ・プログラム製品は、プログラム命令が含まれるコンピュータ可読ストレージ媒体を備え、プログラム命令は、前述の方法などの本発明の実施形態による方法を処理ユニットに行わせるように、処理ユニットによって実行可能である。
【００２５】
本発明の１つの実施形態による、少なくとも１つのプロセッサおよびコンピュータ・プログラム製品を含むシステムも提供される。少なくとも１つのプロセッサは、コンピュータ・プログラム製品のコンピュータ・プログラム・コードを実行するように適合される。
【００２６】
したがって、時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのシステムが提供される。システムは、データ要素より時間的に前にある時系列データセットの第１のデータから、データ要素の値を予測するために予測データを取得することを行うように適合された第１の取得ユニットを備える。システムは、予測データを使用して、データ要素の予測値を予測することを行うように適合された予測ユニットをさらに備える。システムは、時系列データセットの履歴誤差値を取得することを行うように適合された第２の取得ユニットをさらに備え、各履歴誤差値は、データ要素より時間的に前にある時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである。第２の取得ユニットは、１つまたは複数の履歴誤差値に基づいて、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得することを行うようにさらに適合されてもよい。システムは、データ要素の閾値、識別した予測値、および値に基づいて、データ要素が外れ値であるかどうかを判定することを行うように適合された判定ユニットをさらに備える。
【００２７】
本発明の好ましい実施形態が、以下の図面を参照しながら、ほんの一例として次に記述される。
【図面の簡単な説明】
【００２８】
【図１】例証的な実施形態の態様が実行され得る分布型システムの例の図的記述を描写する図である。
【図２】例証的な実施形態の態様が実行され得るシステムの例のブロック図である。
【図３】本発明の１つの実施形態による方法の流れ図である。
【図４】本発明の１つの実施形態による図３の方法の一部の流れ図である。
【図５】本発明の別の実施形態による図３の方法の一部の流れ図である。
【図６Ａ】本発明の異なる実施形態による方法の効果を示す図である。
【図６Ｂ】本発明の異なる実施形態による方法の効果を示す図である。
【図６Ｃ】本発明の異なる実施形態による方法の効果を示す図である。
【図６Ｄ】本発明の異なる実施形態による方法の効果を示す図である。
【図７】本発明の１つの実施形態によるシステムを示す図である。
【図８】例証的な実施形態の態様が実行され得るシステムの例のブロック図である。
【図９】本発明の好ましい実施形態による方法またはシステムのためのアーキテクチャを示す図である。
【発明を実施するための形態】
【００２９】
図は、概略的なものにすぎず、スケーリングするように描かれていないということが理解されよう。同じまたは類似の部分を示すために、図の全体を通して同じ参照番号が使用されるということも理解されよう。
【００３０】
本出願の文脈において、本発明の実施形態が方法の構成要素となる場合、このような方法は、コンピュータによる実行のための処理であり、例えば、コンピュータ実行可能方法またはコンピュータ実行方法であるということが理解されよう。方法の様々なステップは、したがって、例えば、１つまたは複数のアルゴリズムの様々な部分といった、コンピュータ・プログラムの様々な部分を示す。
【００３１】
また、本出願の文脈において、システムは、本発明の方法の１つまたは複数の実施形態を実行するように適合された単一のデバイス、または、分布型デバイスの集合体であってもよい。例えば、システムは、本発明の方法の少なくとも１つの実施形態を協調して実行するために、ローカル・エリア・ネットワーク、インターネット等などのネットワークを介して接続された、パーソナル・コンピュータ（ＰＣ）、サーバ、あるいは、ＰＣもしくはサーバまたはその両方の集合体であってもよい。
【００３２】
本発明の実施形態は、予測を作り出すために、深層学習モデルと共に非常に多くの統計学的アプローチと確率的アプローチの両方を利用することによって異常をタイムリに発見するための、明確な一般化モデルに基づくアプローチを行う。タイムスタンプ毎に実際値に最も近い予測が選択され、このことにより、真陽性（true positive）の異常にだけアラートを発し、偽陰性（false negative）の量を最も少なくするための異常検知の解決策を導く。
【００３３】
本発明の実施形態のアプローチは、分析中の各時系列に適した動的閾値を決定するために、従来とは異なる動的スライド・ウィンドウ・メカニズムも利用し、ここで、動的ウィンドウは、正解率が最高になることを保証するために、各ポイントに対してスケール変更された（rescaled）２乗誤差を収める。
【００３４】
他の態様は、他の異常検知技法と比較して、本発明の実施形態のアプローチを実際により効果的なものにする。一般に、異常検知アルゴリズムは、典型的には、決定するのが困難になり得る閾値をユーザが選び、収集するには高価であり、エラーが発生しやすくなり得るテストのための有望なラベル（golden label）を提供する必要がある。これは、本発明の実施形態の異常検知アプローチによって回避され、このアプローチは、過去の予測誤差に基づいて動的閾値を計算し、半教師あり学習アプローチが用いられるので、訓練するためのラベルを必要としない。さらに、本発明の実施形態のＬＳＴＭモデルは、複数の特徴を入力として受け取ることができ、複数の特徴にわたる異常を取り込むことができる単一のモデルを本発明の実施形態が使用できるので、一変量の異常検知器とは対照的に、本発明の実施形態を多変量にする。
【００３５】
時系列データセットの異常または外れ値を正確に検知するための概念が提案される。具体的には、提案される概念は、時系列データセットの特定のデータ要素が外れ値であるかどうかを識別するという共通の基礎となる方法に依存する。この共通の方法は、この特定のデータ要素の値を予測すること、およびデータ要素の実際値が外れ値であるかどうかを予測値に対して定義する閾値を取得することを含む。
【００３６】
いくつかの例では、特定のデータ要素の誤差値が取得され、誤差値は、このデータ要素の実際値と予測値との間の差を表す。この誤差値は、実際値、およびしたがって、関連付けられたデータ要素が外れ値であるかどうかを判定するために、閾値と比較することができる。これは、データ要素が外れ値であるかどうかを判定する非常に正確だが適合可能な方法をもたらす。
【００３７】
本発明の実施形態において、データ要素の値を予測するために使用される予測データは、データ要素より時間的に前にある時系列データセットの所定の数の他のデータ要素を含む。
【００３８】
本発明の１つの実施形態によれば、後のデータ要素が外れ値であるかどうかを識別するために履歴誤差値が使用される。ここで、履歴誤差値は、時系列データセット内の調査中のデータ要素より前にある（例えば、時間的に早い）データ要素と関連付けられた誤差値である。具体的には、データ要素が外れ値であるかどうかを定義するために使用される閾値を生成するために履歴誤差値が使用される。
【００３９】
本発明の実施形態は、時系列データセット内の前のデータ要素の予測値と実際値との間の差をそれぞれ表す履歴誤差値は、現在のデータ要素が外れ値であるかどうかを識別するために使用できるという認識に基づいている。具体的には、（評価中または調査中の現在のデータ要素と関連付けられた誤差値である）現在の誤差値が正常範囲内にあるかどうか、または、誤差値が外れ値であるかどうかが判定されることが可能である。これは、時系列データセットの前のデータ要素に対してデータ要素が外れ値であるかどうかについての評価を改善することができる。
【００４０】
したがって、本発明の実施形態は、履歴誤差値を使用して、（現在の）データ要素が外れ値であるかどうかを判定するための閾値を生成することを提案する。
【００４１】
本発明の１つの実施形態によれば、調査中のデータ要素の予測値を生成するために、複数の予測モデルが使用される。データ要素の実際値に最も良く一致する予測値を生成する予測モデルによって生成された予測値、または、データ要素を含む全体的な時系列データセットを最も良く予測する予測モデルの予測値が、予測値として選択される。
【００４２】
したがって、本発明の１つの実施形態において、予測値に対する非常に多くの潜在的な値が生成され、（調査中の）データ要素の実際値に最も近い潜在的な予測値が予測値として選択される。
【００４３】
複数のモデルのどれも、調査中のデータ要素の値を正確に予測しなかった場合、これが異常または外れ値である可能性が高い。したがって、データ要素の実際値／測定値に最も近い（複数の可能な予測値のうちの）予測値を使用することによって、異常なデータ要素を識別する正解率および信頼性が向上する可能性がある。
【００４４】
本発明の実施形態の方法／システムは、データ要素が外れ値であるかどうかを識別する特に効率的で精密かつ正確な方法を提供するために、履歴誤差値に基づいて閾値を生成し、複数の予測モデルを使用して予測値を生成するという概念を用いる。
【００４５】
しかし、本発明の１つの実施形態の方法は、それ自体によって、外れ値を識別する正解率を改善することができる複数の予測モデルを使用して予測値を生成するという概念を用いる。したがって、履歴誤差値を使用して閾値が生成される必要がない方法も考えられる。
【００４６】
したがって、時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ実行方法がさらに提供されてもよい。このような方法は、データ要素より時間的に前にある時系列データセットの第１のデータから、データ要素の値を予測するために予測データを取得することと、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の予測値を予測することと、データ要素の値に最も近い予測値を複数の予測値から識別することと、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得することと、データ要素の閾値、識別した予測値、および値に基づいて、データ要素が外れ値であるかどうかを判定することと、を含む。
【００４７】
予測データは、データ要素より時間的に前にある時系列データセットの所定の数の他のデータ要素を含むことができる。
【００４８】
閾値を取得するステップは、時系列データセットの履歴誤差値を取得することを含むことができ、各履歴誤差値は、データ要素より時間的に前にある時系列データセットの第２のデータの値と、時系列データセットの第２のデータの対応する予測値との間の差を表す。閾値を取得するステップは、１つまたは複数の履歴誤差値に基づいて閾値を取得することをさらに含むことができる。
【００４９】
各履歴誤差値は、データ要素より時間的に前にある時系列データセットの第２のデータの値と、時系列データセットの第２のデータの対応する予測値との間の差の２乗である２乗誤差値であるのが好ましい。
【００５０】
閾値を取得するステップは、履歴誤差値の最大値に基づいて、各履歴誤差値をスケーリングして０と１の間の値にすることを含むことができる。
【００５１】
閾値を取得するステップは、履歴誤差値の標準偏差を計算することと、履歴誤差値の標準偏差に基づいて閾値を取得することとを含むことができる。
【００５２】
閾値を取得するステップは、閾値を取得するために、履歴誤差値の標準偏差に所定の数を掛けることをさらに含むことができる。閾値を取得するステップは、チェビシェフの不等式を使用して所定の数を計算することを含むのが好ましい。
【００５３】
本発明の実施形態において、第２のデータは、データ要素の前に所定の期間の倍数だけ取得された時系列データセットのデータに対応する。所定の期間は、１時間、１日、または１週間であるのが好ましい。
【００５４】
本発明の少なくとも１つの実施形態において、データ要素は、時系列データセットのデータ・ポイントである。
【００５５】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ・プログラム製品がさらに提供されてもよい。コンピュータ・プログラム製品は、プログラム命令が含まれるコンピュータ可読ストレージ媒体を備える。プログラム命令は、データ要素より時間的に前にある時系列データセットの第１のデータから、データ要素の値を予測するために予測データを取得することと、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の予測値を予測することと、データ要素の値に最も近い予測値を複数の予測値から識別することと、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得することと、データの閾値、識別した予測値、および値に基づいて、データ要素が外れ値であるかどうかを判定することと、を含む方法を処理ユニットに行わせるように処理ユニットによって実行可能である。
【００５６】
少なくとも１つのプロセッサと、前述のコンピュータ・プログラム製品とを備えるコンピュータ・システムも提案され、ここで、少なくとも１つのプロセッサは、コンピュータ・プログラム製品のコンピュータ・プログラム・コードを実行するように適合される。
【００５７】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのシステムがさらに提供されてもよい。システムは、データ要素より時間的に前にある時系列データセットの第１のデータから、データ要素の値を予測するために予測データを取得するように適合された第１の取得ユニットを備える。システムは、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の予測値を予測することと、データ要素の値に最も近い予測値を複数の予測値から識別することとを行うように適合された予測ユニットも備える。システムは、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得するように適合された第２の取得ユニットと、データ要素の閾値、識別した予測値、および値に基づいて、データ要素が外れ値であるかどうかを判定するように適合された判定ユニットとをさらに備える。
【００５８】
本発明の例証的な実施形態は、多くの異なるタイプのデータ処理環境で利用されてもよい。例証的な実施形態の要素および機能の記述のための背景を提供するために、例証的な実施形態の態様が実行され得る環境の例として、図１および図２が以下に示される。図１および図２は単なる例であり、本発明の態様または実施形態が実行され得る環境に対する何らかの限定を示すことまたは意味することを意図するものではないということが理解されよう。描写された環境への多くの修正が、本発明の範囲から逸脱することなく行われてもよい。
【００５９】
図１は、例証的な実施形態の態様が実行され得る例示的な分布型トランザクション処理ストレージ・システムの図的記述を描写する。分布型システム１００は、例証的な実施形態の態様が実行され得るコンピュータのネットワークを含んでもよい。分布型システム１００は、少なくとも１つのネットワーク１０２を含み、これは、分布型データ処理システム１００内で互いに接続された様々なデバイスとコンピュータとの間の通信リンクを提供するために使用される媒体である。ネットワーク１０２は、ワイヤ、ワイヤレス通信リンク、または光ファイバ・ケーブルなどの接続を含んでもよい。
【００６０】
描写された例では、第１のサーバ１０４および第２のサーバ１０６が、ストレージ・ユニット１０８と共にネットワーク１０２に接続される。さらに、クライアント１１０、１１２、および１１４も、ネットワーク１０２に接続される。クライアント１１０、１１２、および１１４は、例えば、パーソナル・コンピュータ、ネットワーク・コンピュータ、または同様のものであってもよい。描写された例では、第１のサーバ１０４は、ブート・ファイル、オペレーティング・システム・イメージ、およびアプリケーションなどのデータを、クライアント１１０、１１２、および１１４に提供する。クライアント１１０、１１２、および１１４は、描写された例では、第１のサーバ１０４に対するクライアントである。分布型システム１００は、図示していない追加のサーバ、クライアント、および他のデバイスを含んでもよい。
【００６１】
描写された例では、分布型システム１００はインターネットであり、ネットワーク１０２は、プロトコルのトランスミッション・コントロール・プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）スイートを使用して互いに通信するネットワークとゲートウェイの世界中の集合体を表す。インターネットの中心には、データおよびメッセージをルーティングする何千もの市販の、政府の、教育の、および他のコンピュータ・システムを含む主要なノードまたはホスト・コンピュータ間の高速データ通信ラインのバックボーンがある。当然、分布型システム１００は、例えば、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、または同様のものなど、いくつかの異なるタイプのネットワークを含むようにさらに実現されてもよい。上述のように、図１は、例であることを意図しており、本発明の異なる実施形態に対する構造上の限定を意図するものではなく、したがって、図１に示された特定の要素は、本発明の例証的な実施形態が実行され得る環境に対する限定とみなされるべきではない。
【００６２】
図２は、本発明の例証的な実施形態の態様が実装され得るシステム２００の例のブロック図である。システム２００は、本発明の例証的な実施形態のための処理を実行するコンピュータ使用可能コードまたは命令が配置され得る図１のクライアント１１０などのコンピュータの例である。
【００６３】
描写された例では、システム２００は、ノース・ブリッジおよびメモリ・コントローラ・ハブ（ＮＢ／ＭＣＨ）２０２、ならびにサウス・ブリッジおよび入出力（Ｉ／Ｏ）コントローラ・ハブ（ＳＢ／ＩＣＨ）２０４を含むハブ・アーキテクチャを用いる。処理ユニット２０６、メイン・メモリ２０８、およびグラフィックス・プロセッサ２１０が、ＮＢ／ＭＣＨ２０２に接続される。グラフィックス・プロセッサ２１０は、アクセラレイティッド・グラフィックス・ポート（ＡＧＰ）を介してＮＢ／ＭＣＨ２０２に接続されてもよい。
【００６４】
描写された例では、ローカル・エリア・ネットワーク（ＬＡＮ）アダプタ２１２が、ＳＢ／ＩＣＨ２０４に接続する。オーディオ・アダプタ２１６、キーボードおよびマウス・アダプタ２２０、モデム２２２、リード・オンリ・メモリ（ＲＯＭ）２２４、ハード・ディスク・ドライブ（ＨＤＤ）２２６、ＣＤ−ＲＯＭドライブ２３０、ユニバーサル・シリアル・バス（ＵＳＢ）ポートおよび他の通信ポート２３２、ならびにＰＣＩ／ＰＣＩｅデバイス２３４が、第１のバス２３８および第２のバス２４０を介してＳＢ／ＩＣＨ２０４に接続する。ＰＣＩ／ＰＣＩｅデバイスは、例えば、イーサネット（Ｒ）・アダプタ、アドイン・カード、および、ノートブック・コンピュータのためのＰＣカードを含んでもよい。ＰＣＩは、カード・バス・コントローラを使用するが、ＰＣＩｅは使用しない。ＲＯＭ２２４は、例えば、フラッシュ基本入出力システム（ＢＩＯＳ）であってもよい。
【００６５】
ＨＤＤ２２６およびＣＤ−ＲＯＭドライブ２３０は、第２のバス２４０を介してＳＢ／ＩＣＨ２０４に接続する。ＨＤＤ２２６およびＣＤ−ＲＯＭドライブ２３０は、例えば、インテグレーテッド・ドライブ・エレクトロニクス（ＩＤＥ）またはシリアル・アドバンスト・テクノロジ・アタッチメント（ＳＡＴＡ）インターフェースを使用してもよい。スーパーＩ／Ｏ（ＳＩＯ）デバイス２３６が、ＳＢ／ＩＣＨ２０４に接続されてもよい。
【００６６】
オペレーティング・システムは、処理ユニット２０６上で稼働する。オペレーティング・システムは、図２のシステム２００内の様々な構成要素の制御を協調され、提供する。クライアントとして、オペレーティング・システムは、市販のオペレーティング・システムであってもよい。ＪＡＶＡ（Ｒ）プログラミング・システムなどのオブジェクト指向プログラミング・システムがオペレーティング・システムと共に稼働することができ、システム２００上で実行するＪＡＶＡ（Ｒ）プログラムまたはアプリケーションからの、オペレーティング・システムへのコールを行う。
【００６７】
サーバとして、システム２００は、例えば、ADVANCED INTERACTIVE EXECUTIVE（ＡＩＸ）（Ｒ）オペレーティング・システム、またはＬＩＮＵＸオペレーティング・システムを稼働させるIBM ESERVER SYSTEM P（Ｒ）コンピュータ・システムであってもよい。システム２００は、処理ユニット２０６内に複数のプロセッサを含む対称型マルチプロセッサ（ＳＭＰ）システムであってもよい。代替として、シングル・プロセッサ・システムが用いられてもよい。
【００６８】
オペレーティング・システムのための命令、プログラミング・システム、およびアプリケーションまたはプログラムは、ＨＤＤ２２６などのストレージ・デバイス上に配置され、処理ユニット２０６による実行のためにメイン・メモリ２０８にロードされてもよい。同様に、本発明の１つの実施形態による１つまたは複数のメッセージ処理プログラムが、ストレージ・デバイスまたはメイン・メモリ２０８あるいはその両方によって格納されるように適合されてもよい。
【００６９】
本発明の例証的な実施形態のための処理は、例えば、メイン・メモリ２０８、ＲＯＭ２２４などのメモリに、または、１つもしくは複数の周辺デバイス２２６および２３０に配置され得るコンピュータ使用可能プログラム・コードを使用して処理ユニット２０６によって実行されてもよい。
【００７０】
図２に示したような第１のバス２３８または第２のバス２４０などのバス・システムは、１つまたは複数のバスを含むことができる。当然、バス・システムは、ファブリックまたはアーキテクチャに取り付けられた異なる構成要素またはデバイスの間のデータの転送のために提供する任意のタイプの通信ファブリックまたはアーキテクチャを使用して実装されてもよい。図２のモデム２２２またはネットワーク・アダプタ２１２などの通信ユニットは、データの送受信のために使用される１つまたは複数のデバイスを含んでもよい。メモリは、例えば、メイン・メモリ２０８、ＲＯＭ２２４、または、図２のＮＢ／ＭＣＨ２０２において見られるものなどのキャッシュであってもよい。
【００７１】
図１および図２のハードウェアは、実装形態に応じて変化してもよいということを当業者は理解するであろう。フラッシュ・メモリ、同等の不揮発性メモリ、または光ディスク・ドライブ、および同様のものなどの他の内部ハードウェアまたは周辺デバイスが、図１および図２に描写されたハードウェアに加えてまたは代わりに使用されてもよい。また、例証的な実施形態の処理は、本発明の思想および範囲から逸脱することなく、前述のシステム以外のマルチプロセッサ・データ処理システムに適用されてもよい。
【００７２】
さらに、システム２００は、クライアント・コンピューティング・デバイス、サーバ・コンピューティング・デバイス、タブレット型コンピュータ、ラップトップ・コンピュータ、電話もしくは他の通信デバイス、パーソナル・デジタル・アシスタント（ＰＤＡ）、または同様のものを含むいくつかの異なるデータ処理システムのいずれかの形をしていてもよい。いくつかの例証となる例では、システム２００は、例えば、オペレーティング・システム・ファイルまたはユーザ生成データあるいはその両方を格納するための不揮発性メモリを提供するためにフラッシュ・メモリで構成された携帯型コンピューティング・デバイスであってもよい。したがって、システム２００は本質的に、構造上の制限のない、任意の既知のまたは後で開発されるデータ処理システムであってもよい。
【００７３】
本明細書において使用されるように、用語「データ要素」は、データセットの１つまたは複数のデータ・ポイントなど、時系列データセットのパーツまたは一部を指すために使用される。単一のデータ要素は、データ・ポイントのセット、または単一のデータ・ポイントを包含することができる。データ要素は、時間内または期間内の単一のインスタンス（例えば、時間内の一連の連続インスタンス）をそれぞれ表すことができる１つまたは複数のタイムスタンプと関連付けられてもよい。各データ要素は、単一の値または複数の値と関連付けられてもよく、例えば、各データ要素は、１次元または多次元であってもよい。
【００７４】
データ要素の値または「実際値」は、実際にデータ要素によって格納された、またはデータ要素に収められた値を指す。これは、（例えば、実際値自体ではない）実際値の予測を代わりに指し、典型的には、データセット内の他のデータ要素の値に基づいて決定されるデータ要素の「予測値」と区別される。
【００７５】
用語「外れ値」は、用語「異常」と区別なく使用されることもある。
【００７６】
図３は、本発明の１つの実施形態による、データ要素（例えば、「調査中のデータ要素」または「現在のデータ要素」）が外れ値であるかどうかを判定するための方法３０の流れ図を示す。発明概念の異なる例が、本実施形態に対して利用し、改善する。
【００７７】
方法３０は、ステップ３１で始まり、ステップ３１は、データ要素の値を予測するために予測データを取得することを含む。具体的には、ステップ３１は、データ要素より時間的に前にある時系列データセットの第１のデータから予測データを取得することを含む。したがって、ステップ３１は、調査中のデータ要素より前にある時系列データセット内のデータから予測データを取得する。
【００７８】
例として、ステップ３１は、データ系列内の調査中のデータ要素より時間的に前にある複数のデータ要素を取得することを含むことができる。これは、「ルックバック」動作と呼ばれることがある。取得したデータ要素の数は用途毎に変化してもよいが、３個以上のデータ要素、または２０個以下のデータ要素、あるいはその両方を含むのが好ましい。（調査中の）データ要素の値を予測するためのデータは、調査中のデータ要素の直前にある（また、時間的に前にある）データ要素を含むのが好ましい。
【００７９】
ステップ３１で取得した予測データは、したがって、時系列データセットの複数のデータ要素を含むことができ、第１のデータの各データ要素は、調査中のデータ要素より時間的に前にある。同様に、予測データが取得される元となる第１のデータは、時系列データセットの複数のデータ要素を含むことができ、第１のデータの各データ要素は、調査中のデータ要素より時間的に前にある。
【００８０】
方法３０は、次に、ステップ３２に移り、ステップ３２は、予測データに基づいて（調査中の）データ要素の１つまたは複数の値を予測することを含む。したがって、ステップ３２は、調査中のデータ要素の予測値を生成し、予測値は、このデータ要素の実際値（例えば、記録または格納された値）と区別される。
【００８１】
ステップ３２は、予測モデルを予測データに適用し、このことにより、調査中のデータ要素の１つまたは複数の値を予測することを含むのが好ましい。ステップ３２についての他の実施形態は、後で明らかになるであろう。
【００８２】
任意の（１つまたは複数の）適切な予測モデルが、ステップ３２において使用されてもよい。データの値を予測するための既知の予測モデルは、長短期メモリ（ＬＳＴＭ：long-short term memory）、自己回帰統合移動平均（ＡＲＩＭＡ：autoregressive integrated moving average）、およびＨｏｌｔ−Ｗｉｎｔｅｒｓ（ＨＷ）としても知られる３重指数平滑化法（triple exponential smoothing）を含む。予測モデルの選択肢は、時系列データセットの特性に応じて変化してもよい。例えば、ＬＳＴＭなどのディープ・ニューラル・ネットワーク予測法は、大きい訓練データ（例えば、多量の予測データ）では、結果が最も良くなる可能性があり、その一方で、小さいデータセットでは、ＡＲＩＭＡ、およびＨＷが、予測をより良くする可能性がある。他のモデルが使用されてもよいということが理解されよう。
【００８３】
予測モデルは、時系列予測（ＴＳＦ：time-series forecasting）モデルであってもよい。ＴＳＦモデルの出力は、１歩先を行く予測であり、例えば、調査中のデータ要素に対して、値が次のタイムスタンプにおいて何であることが期待されるのかを識別／予測する。
【００８４】
ステップ３２の後、方法３０は、ステップ３３に進み、ステップ３３は、外れ値とみなされるデータ要素の値を定義するための閾値を取得することを含む。したがって、取得した閾値は、（このデータ要素の少なくとも予測値について）データ要素の実際値が外れ値であるかどうかを判定するために使用することができる。
【００８５】
ステップ３３に続いて、方法３０はステップ３４に進む。ステップ３４は、データ要素の閾値、予測値、および（実際）値に基づいて、（調査中の）データ要素が外れ値であるかどうかを判定することを含む。したがって、例えば、閾値に対する、このデータ要素の予測値と（実際）値との間の少なくとも比較に基づいて、データ要素が外れ値であるかどうかが判定されることが可能である。
【００８６】
具体的には、ステップ３４は、調査中のデータ要素の予測値および（実際）値を使用して、誤差値を計算することを含むことができる。この誤差値は、データ要素が外れ値（例えば、異常）であるか否かを判定するために閾値と比較されてもよい。例えば、調査中のデータ要素の誤差値が閾値より大きい場合、データ要素が外れ値であると判定されてもよい。同様に、調査中のデータ要素の誤差値が閾値より小さい場合、データ要素が外れ値ではないと判定されてもよい。
【００８７】
例として、調査中のデータ要素の（実際）値と予測値との間の差（の大きさ）は、誤差値として使用されてもよい。別の例では、誤差値を生成するために調査中のデータ要素の（実際）値および予測値を使用して、特定の誤差計算が行われる（例えば、ＲＭＳ誤差計算、２乗誤差計算、またはスケーリングされた２乗誤差計算）。
【００８８】
したがって、一般的に言えば、「誤差値」は、データ要素の予測値と実際値との間の差を表す。このような差を表す誤差値を取得する非常に多くの方法が、当業者には知られているはずである。
【００８９】
閾値は、正常なまたは外れていない範囲内にあるとみなされる誤差値の上限値を示すことができる。したがって、閾値は、外れ値ではないとみなされる最大許容可能誤差値を示すことができる。このようにして、閾値より大きい誤差値は、この誤差値と関連付けられたデータ要素が外れ値であることを示す。
【００９０】
他の例では、閾値は、外れ値であるとみなされないデータ要素の（実際）値の範囲の上限および下限を示すことができ、ここで、この範囲の外に含まれるいずれの値も、外れ値であるとみなされる。
【００９１】
別の例では、ステップ３４は、外れ値であるとみなされない値の範囲の上限を定義するために、調査中のデータ要素の予測値に閾値を加算すること、および、外れ値であるとみなされない値の範囲の下限を定義するために、同じ予測値から閾値を減算することを含む。上限と下限の外に含まれるいずれの値も、外れ値または異常とラベル付けされてもよい。このようにして、閾値は、予測値に対するデータ要素の受入れ可能な、外れていない値の範囲を定義することができる。
【００９２】
ステップ３４において、データ要素が異常であるかどうかを識別すると、方法は、調査中のデータ要素が異常であることをシグナリングするステップを含むことができる（例えば、アラートをトリガすること、データの特定のセットを生成すること、など）。このシグナリングは、異常なデータ要素にフラグ付けするため、または識別するために使用されてもよい。異常なデータ要素が識別されると、異常データ要素検知を用いる方法は、異常なデータ要素を無視すること、または、（例えば、ノイズもしくは同様のものによって異常が引き起こされた場合）異常なデータ要素が再び送られることをリクエストすることを選択することができる。本明細書に記述される異常検知方法についての他の用途は、当業者には明らかであろう。
【００９３】
方法３０は、異なるデータ要素が外れ値であるかどうかを識別するために、時系列データセットの異なるデータ要素に反復して適用することができるということが考えられる。新しい閾値は、例えば、調査されるそれぞれの異なるデータ要素に対して方法３０が行われるたびに計算されてもよい。したがって、例えば、方法は、（例えばシステムによって）各データ要素に対して反復して行われてもよく、異なる閾値は各データ要素に対して決定される（例えば、閾値は動的である）。
【００９４】
本発明の実施形態は、多次元（例えば、２つ以上の値を含む）データ要素が外れ値であるかどうかを判定するために適合されてもよいということが明らかであろう。
【００９５】
このような実施形態において、ステップ３２は、データ要素の（実際）値が存在するので、データ要素の対応する、例えば同一の数の、予測値を予測することを含むことができる。同様に、ステップ３４は、閾値との比較のために、データ要素の予測値および（実際）値を使用して誤差値を計算することを含むことができる。したがって、データ要素は、閾値との比較のために単一の誤差値が計算され得る元となる、複数の（実際）値および個々の複数の予測値と関連付けられてもよい。
【００９６】
多変量データに対して提案された概念を適合させる他の方法は、当業者には容易に明らかであろう。例えば、本発明の実施形態において、調査中の多次元データ要素の各値は、（例えば、本明細書に記述された方法を使用して）この値が外れ値であるかどうかを判定するために個別に評価されてもよい。多次元データ要素の１つまたは複数の値が外れ値として識別された場合には、全データ要素が、外れ値／異常であるとみなされてもよい。
【００９７】
したがって、本発明の実施形態は、２つ以上の値と関連付けられた多次元データ要素に対して、当業者によって容易に修正されてもよい。
【００９８】
図４は、閾値を取得するためのステップ３３、および、調査中のデータ要素が外れ値であるかどうかを判定するためのステップ３４の実施形態を示す。
【００９９】
ステップ３３の図示の実施形態は、いくつかの別個のサブステップを含む。
【０１００】
ステップ３３の第１のサブステップ４１は、時系列データセットの履歴誤差値を取得すること含む。各履歴誤差値は、調査中のデータ要素より時間的に前にある（例えば、時系列データセット内の先にある、または初めの方にある）時系列データセットの第２のデータ要素の少なくとも１つの値と、この第２のデータ要素の少なくとも１つの対応する予測値との間の差を表すものである。言い換えれば、履歴誤差値は、時系列データセット内の以前のデータ要素の予測値と対応する実際値との間の差を表す。履歴誤差値は、代替として、以前の誤差値にラベル付けされてもよい。
【０１０１】
したがって、時系列データセットの複数の「第２のデータ要素」は、調査中のデータ要素より時間的に前にあるデータ要素であり、それぞれが、個々の履歴誤差を提供する。これらの第２のデータ要素は、時系列データセット内の（調査中の）データ要素より前にあるデータ要素であるのが好ましい。例えば、第２のデータ要素は、調査中のデータ要素の直前にあるデータ要素を含むことができる。
【０１０２】
サブステップ４１は、調査中のデータ要素の予測値と同じ方式で、各第２のデータ要素の予測値を取得することを含むことができる。すなわち、時系列データセット内の特定の第２のデータ要素より前にあるデータセットのデータ要素は、第２のデータ要素の値を予測するために使用されてもよい。
【０１０３】
サブステップ４１は、例えば、履歴誤差値の格納されたセットから、履歴誤差値を取得することを含むことができる。履歴誤差値の格納されたセットは、したがって、時系列データセット内の調査中のデータ要素より時間的に前にあるデータ要素の誤差値を収めることができる。
【０１０４】
サブステップ４１で取得した履歴誤差値の数は、実施形態に応じて変化してもよい。本発明の１つの実施形態において、取得した履歴誤差値の数は、５個以上である。本発明の別の実施形態において、履歴誤差値の数は、１０個以上である。本発明の他の好ましい実施形態において、履歴誤差値の数は、２０個以上または５０個以上である。本発明のさらなる他の実施形態において、履歴誤差値の数は、１００個以上または２００個以上である。本発明のさらなる他の実施形態において、（調査中のデータ要素に対する）全ての以前のデータ要素は、履歴誤差値と関連付けられ、全ての誤差値が、サブステップ４１で取得される。履歴誤差値の数が大きくなればなるほど、予測の履歴誤差の余地を閾値がますます正確に表すことになるので（例えば、データセットの特性をより示すものになるので）、外れ値を識別する際の正解率が高くなる。
【０１０５】
ステップ３３の第２の、その後のサブステップ４２は、履歴誤差値に基づいて閾値を取得すること含む。
【０１０６】
このようにして、調査中のデータ要素が外れ値であるかどうかを判定するための閾値は、時系列データセット内の調査中のデータ要素より時間的に前にあるデータ要素の以前の／履歴上の誤差値に基づいて決定される。
【０１０７】
サブステップ４１で取得した各履歴誤差値は２乗誤差値であり、データ要素より時間的に前にある時系列データセットの個々の第２のデータ要素の（実際）値と予測値との間の差の２乗であるのが好ましい。
【０１０８】
例えば多次元データ要素といった複数の値を含むデータ要素について、履歴誤差値は、第２のデータ要素の平均２乗誤差であってもよい。したがって、各第２のデータ要素は、複数の（実際）値および個々の複数の予測値と関連付けられてもよく、ここで、単一の誤差値（履歴誤差値）は、複数の実際値および予測値を使用して計算される。多変量データに適合させる他の方法は、当業者には明らかであろう。
【０１０９】
閾値の計算時に２乗誤差値を使用すると、データ要素が外れ値であるかどうかを識別する方法がより正確かつ精密になる。
【０１１０】
他の例では、履歴誤差値は、調査中のデータ要素より時間的に前にある時系列データセットの個々の第２のデータ要素の（実際）値と予測値との間の差であってもよい。履歴誤差値としての使用にふさわしい誤差値の他の例は、当業者には容易に明らかであり（例えば、ＲＭＳ値、対数誤差など）、同じことを計算するための方法も、当業者には明らかであろう。履歴誤差値は、差の大きさに基づくこと、またはそうでなければ、例えば、符号が付いていないまたは符号がない（２乗された値などの）正の値だけを含むことが好ましい。
【０１１１】
本発明の実施形態において、ステップ３３は、例えば、ステップ４１で取得した履歴誤差値の最大値に基づいて、各履歴誤差値をスケーリングして０と１の間の値にするサブステップ４３をさらに含むことができる。したがって、サブステップ４３は、ステップ４１で取得した履歴誤差値の最大値を決定し、この最大値に基づいて各履歴値をスケーリングすること（例えば、履歴誤差値の最大値で各履歴誤差値を割ること）を含むことができる。
【０１１２】
別の例では、各履歴誤差値は、履歴誤差値のいずれか、および調査中のデータ要素の対応する誤差値（例えば、各履歴誤差値と同じ手法で計算されたデータ要素の誤差値）の最大値に基づいてサブステップ４３でスケーリングされる。これは、異常識別処理の一貫性を保証する。
【０１１３】
本発明のいくつかの実施形態において、履歴誤差値の数は、時系列データセット内の調査中のデータ要素より時間的に前にあるデータ要素の数に等しい。したがって、調査中のデータ要素より前にある時系列データセット内の各データ要素は、履歴誤差値を提供することができる。これは、処理効果およびコストを犠牲にして、異常検知メカニズムの正解率を向上させる。
【０１１４】
図示の実施形態において、サブステップ４２は、閾値を取得するために、サブステップ４４およびサブステップ４５を順番に行うことを含む。
【０１１５】
サブステップ４４は、ステップ４１で取得した履歴誤差値の標準偏差を計算することを含む。これは、従来の標準偏差計算方法を使用して行われる。
【０１１６】
サブステップ４５は、計算した標準偏差に基づいて閾値を取得することを含む。具体的には、サブステップ４５は、標準偏差に所定値を掛けること、および、閾値に結果の基礎を置くことを含むことができる。
【０１１７】
履歴誤差値が正の数字だけである（例えば、各誤差値が、誤差の大きさまたは２乗誤差値である）場合、サブステップ４５は、閾値を直接取得するために、標準偏差に所定値（例えば３または５）を掛けることを含むことができる。
【０１１８】
履歴誤差値が正と負の数字の両方を含むとき（例えば、誤差値が、２乗誤差値、または誤差値の大きさではないとき）、履歴誤差値の平均も、閾値を定義するために使用されてもよい。具体的には、所定値（例えば、３または５）と標準偏差の積は、閾値を定義するために、履歴誤差値の平均に加算されることが可能である。
【０１１９】
これは、動的閾値を非常に正確かつ適合可能にする。
【０１２０】
所定値は、３以上であること、例えば、５以上であることが好ましい。所定値が大きくなると、外れ値を検知する偽陽性率が下がり、外れ値を検知する偽陰性率が上がる。所定値５が、外れ値の特に正確かつ信頼できる検知をもたらすことを示した。しかし、所定値は、基礎となる（履歴）誤差が正規分布もしくは半正規分布によって表されること、または、正規分布もしくは半正規分布であると仮定されることが可能である場合、３として定義されることが可能である。
【０１２１】
閾値を計算するために使用される所定値は、外れているデータ要素の定義に依存してもよいということが当業者によってよく認識されるであろう。例えば、本発明の１つの実施形態において、データ要素は、全ての誤差値の所定の割合が含まれると期待される範囲に含まれない誤差値を有する場合、外れ値とみなされる。所定の割合は、例えば、９５％、９９％、９９．５％、９９．７％などであってもよい。標準手順を使用して所定値が計算される元になるこの所定の割合を、ユーザが提供してもよい。
【０１２２】
したがって、所定値、およびしたがって閾値は、外れ値であることが期待される誤差値の割合に依存してもよい（例えば、５％、１％、０．５％、０．３％など）。
【０１２３】
言い換えれば、データ要素は、（時系列データセット内のいずれかのデータ要素の）誤差値の所定の割合が含まれることが期待される範囲に含まれない誤差値と関連付けられる場合、外れ値であるとみなされてもよい。
【０１２４】
半正規分布した誤差値について、全ての誤差値の９５％が、０の２標準偏差に含まれ、誤差値の９９．７％が、０の３標準偏差に含まれると仮定してもよい。正規分布した誤差値について、全ての誤差値の９５％が（履歴誤差値の）平均の２標準偏差に含まれ、誤差値の９９．７％が（履歴誤差値の）平均の３標準偏差に含まれると仮定してもよい。
【０１２５】
各履歴誤差値が２乗誤差値であるシナリオを考えると、履歴誤差値は、正規分布を有すると仮定することができ、外れ値は、関連付けられた誤差値が、データ要素の９９．７％の期待される正常範囲に含まれないデータ要素として定義される。この例では、所定値は３になり、閾値は、標準偏差の３倍になる。
【０１２６】
所定値は、したがって、正常範囲から外れているまたは正常範囲内の値を有するデータ要素の確率に依存してもよいということが理解されよう。
【０１２７】
しかし、方法が、履歴誤差の基礎となる分布に束縛されないことを保証するために、チェビシェフの不等式を活用することができる。正規分布だけに適用される経験則とも呼ばれる６８−９５−９９ルールとは対照的に、チェビシェフの不等式は、広いクラスの確率分布について、一定の部分にすぎない値が、（正の誤差値だけに対して）平均または０からの一定の距離を超えるものであることが可能であるということを保証する。
【０１２８】
したがって、所定値は、値から離れたどれだけ多くの標準偏差が、外れ値であるとみなされることにならなければならないかを決定するために、チェビシェフの不等式の原理を使用して計算されてもよい。
【０１２９】
これは、何が、外れている誤差値の構成要素となるかについての定義に基づいてもよい。例えば、誤差値は、誤差値の少なくとも所定の割合が下回ることが期待される閾値より大きい場合、外れている誤差値と定義されてもよい。所定の割合ｐ１は、９５％、９９％、または９９．５％など、（例えばユーザ入力値から）用途に応じて変化してもよい。
【０１３０】
本発明の１つの実施形態において、ｋが所定の数であり、ｐ１が（１０進法として表現される）所定の割合である場合、所定の数は、以下を行うことによって計算することができる。
【数１】
2021524954.tif 000003
【０１３１】
所定の割合ｐ１は、正常範囲内にあるとみなされる、例えば、外れているデータ要素と関連付けられていない誤差値の割合を表す。したがって、式１−ｐ１は、正常範囲外にあるとみなされる、例えば、外れている要素と関連付けられている（例えばデータセット全体に対する）誤差値の割合を表す。この割合の値は、用途毎に異なってもよい。
【０１３２】
これは、データ要素が外れ値であるかどうかを判定するのにふさわしい閾値の識別を著しく改善し、このことにより、外れているデータ要素を識別する際の正解率および適合率を改善する。チェビシェフの不等式を用いる方法の多用性は、誤差値の正規分布を仮定する方法より大きい。
【０１３３】
本発明の他の実施形態において、サブステップ４２は、他のアルゴリズムを使用して閾値を生成してもよい。例えば、サブステップ４２は、履歴誤差値の平均／中間／モードを決定し、この値を使用して閾値を定義することを含むことができる。例えば、平均／中間／モードは、閾値を提供するために所定の数（例えば、およそ１．５などの２以下）を乗じてもよい。
【０１３４】
しかし、本発明の好ましい実施形態は、記述されたサブステップ４４、４５を含むサブステップ４３とサブステップ４２の両方を利用すること含む。このような実施形態において、閾値は、スケーリングされた履歴誤差値の標準偏差に基づいて計算される。この好ましい実施形態は、外れているデータ要素の識別を極めて正確かつ精密なものにする。
【０１３５】
ステップ３４は、（調査中の）データ要素が外れ値であるかどうかを判定するために、ステップ３３で閾値を生成するために使用された計算に依存してもよい。言い換えれば、ステップ３４の方法は、閾値を生成するためのステップ３３の方法を補完することができる。
【０１３６】
本発明の典型的な実施形態において、調査中のデータ要素の誤差値は、時系列データセット内の調査中のデータ要素より時間的に前にある第２のデータ要素の各履歴誤差値と同一の手法で計算される。この誤差値は、履歴誤差値を使用して生成された閾値と比較される。
【０１３７】
例えば、ステップ３３で計算された閾値が、履歴データ（例えば、調査中のデータ要素より時間的に前にある第２のデータ要素）の２乗誤差値に基づくシナリオを考える。ステップ３４は、調査中のデータ要素の２乗誤差値を計算するという対応するサブステップ４６、および、（このデータ要素の）２乗誤差値と閾値との比較に基づいて、データ要素が外れ値であるかどうかを判定するという対応するサブステップ４７を含むことができる。
【０１３８】
別の例では、ステップ３３が、履歴誤差値をスケーリングするというサブステップ４３を含むシナリオを考える。ステップ３４は、データ要素の誤差値をスケーリングするという対応するサブステップ４８を含むことができる（例えば、その結果、誤差値は、履歴誤差値に対応するようにスケーリングされる）。このような実施形態において、サブステップ４８は、履歴誤差値をスケーリングするために使用される履歴誤差値の同じ最大値を使用して、調査中のデータ要素の誤差値をスケーリングすることを含むのが好ましい。したがって、履歴誤差値と、調査中の誤差値は、同じ手法で正規化することができる。
【０１３９】
このようにして、調査中のデータ要素の誤差値は、同様に計算され、履歴誤差値に対応するようにスケーリングされるので、閾値を計算するために使用される履歴誤差値に対応することができる。
【０１４０】
上述の実施形態は、時系列データセットの異なるデータ要素に反復して適用されてもよいということが考えられる。このようにして、例えば、時系列データセットの各時間ステップにおいて、調査された各データ要素に対して、異なる閾値が計算されることが可能であり、その結果、各データ要素は、外れ値であるかどうかを判定するために個別に評価されることが可能である。
【０１４１】
本発明のいくつかの実施形態において、調査中のデータ要素の計算された誤差値は、例えば、将来の反復において履歴誤差値として作用するように、方法の将来の反復のために格納される。したがって、データ要素の計算された誤差値は、格納された履歴誤差値のセットに加えられてもよい。
【０１４２】
本発明の好ましい実施形態において、ステップ４１で取得した履歴誤差値は、時間の特定のウィンドウに対応する第２のデータ要素と関連付けられる。前述のように、時系列データセットのデータ要素は、特定のポイントまたは期間と関連付けられる（例えば、データ要素は、少なくとも１つのタイムスタンプと関連付けられる）。したがって、各履歴誤差値は、特定のポイントまたは期間とさらに関連付けられることが可能である（例えば、履歴誤差値は、少なくとも１つのタイムスタンプとさらに関連付けられる）。したがって、例えば、調査中のデータ要素のタイムスタンプに関する、時間の特定のウィンドウと関連付けられた履歴誤差値を選択することができる。
【０１４３】
履歴誤差値と関連付けられたタイムスタンプは、調査中のデータ要素と関連付けられたタイムスタンプから時間の所定の長さだけある時間の固定ウィンドウに含まれるのが好ましい。例えば、ステップ４１は、調査中のデータ要素のタイムスタンプの１時間前の、時間（例えば±５分）を中心とした１０分のウィンドウに含まれる履歴誤差値を取得することを含むことができる。
【０１４４】
本発明の１つの実施形態において、ステップ４１で取得した各履歴誤差値は、調査中のデータ要素と関連付けられた時間より前に所定の期間の倍数だけある時間のウィンドウと関連付けられてもよい。
【０１４５】
例として、所定の期間が１時間であり、固定時間ウィンドウが長さ１０分であり、調査中のデータ要素がタイムスタンプ１０：００：００と関連付けられるシナリオを考える。このシナリオでは、ステップ４１で取得した履歴誤差値と関連付けられたタイムスタンプは、０９：００：００（±０：０５：００）、０８：００：００（±０：０５：００）、０７：００：００（±０：０５：００）などのウィンドウのいずれかに含まれてもよい。
【０１４６】
固定時間ウィンドウの長さは、調査中のデータ要素と関連付けられたタイムスタンプからの時間の所定の長さの長さに依存してもよい。例えば、時間ウィンドウの長さは、タイムスタンプからの時間の所定の長さの倍数（例えば、０．０１倍）であってもよい。
【０１４７】
時間の所定の長さの長さは、１時間、１日、または１週間であることが好ましい。これは、このような期間と典型的に関連付けられた時系列データセットにおけるパターンを活用することができる。これは、時系列データセットにおける周期パターンを考慮することによって、外れ値を検知する適合率および信頼性を改善する。
【０１４８】
本発明の実施形態は、時系列データセット全体の履歴誤差値における周期パターンを識別するというステップをさらに含むことができる。これは、例えば、パターン認識アルゴリズムもしくはプログラム、または、（例えばフーリエ変換を用いる）頻度分析法を使用して行われてもよい。履歴誤差値における周期パターンを識別すると、（例えば、調査中のデータ要素のタイムスタンプが含まれる）周期時間ウィンドウと関連付けられた履歴データ値を取得することができる。
【０１４９】
本発明の他の実施形態において、取得した履歴誤差値は、時系列データセット内の調査中のデータ要素の直前にある（例えば、どのような中間データ要素もない）データ要素の誤差値に対応する。したがって、例えば、第２のデータ要素の最新または最後に直接続く時系列データセットのデータ要素は、調査中のデータ要素である。
【０１５０】
本発明の実施形態は、時系列データセットの各データ要素に対する動的閾値を計算することによる極値分析を可能にする。このような実施形態は、データ要素の実際値からデータ要素に対する予測値への距離を判定し、距離が動的閾値を超えると、データ要素の実際値を異常なものとしてレポートするというステップを含むことができる。
【０１５１】
このような実施形態において、距離は、０と１の間に正規化された（例えば、スケーリングされた）実際値と予測値との間の２乗誤差であるのが好ましい。動的閾値は、時系列データセットの以前のデータ要素と関連付けられた履歴誤差値に基づいて、（例えば、時系列データセットの異なる時間ステップで）各データ要素に対して個別に計算されることが可能である。動的閾値は、０と１の間に正規化された（例えば、スケーリングされた）履歴２乗誤差に基づくのがさらにより好ましい。
【０１５２】
これは、外れているデータ要素、または、データ要素が１つまたは複数の外れている値といつ関連付けられるかを識別するという方法を特に正確かつ精密なものにする。
【０１５３】
図５は、予測データに基づいて（調査中の）データ要素の値を予測するための方法３０のステップ３２の実施形態を示す。この方法は、図４を参照しながら記述された実施形態と共に用いられるのが好ましい。しかし、図５の方法だけが、図３の実施形態と共に用いられ、外れているデータ要素を識別する正解率を改善することができるということが考えられる。
【０１５４】
ステップ３２は、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の予測値を予測するというサブステップ５１を含む。したがって、データ要素の個々の値を予測するために、複数の予測モデルがそれぞれ使用される。
【０１５５】
以前に提示したものなど、データ要素の値を予測するのに適した予測モデルが当業者にはよく知られている。典型的には、予測モデルは、複数の以前のデータ要素を入力とし、これらのデータ要素を処理して、その後のデータ要素についての値を予測する。したがって、予測モデルによって使用される予測データは、調査中のデータ要素より時間的に前にある複数のデータ要素を含むのが好ましい。
【０１５６】
当然、調査中のデータ要素が多次元であり、したがって、２つ以上のデータ値を含む場合、各予測モデルは、データ要素の予測値の個々のセットを予測することができる。
【０１５７】
ステップ３２は、次に、データ要素の値に最も近い予測値を提供する予測モデルを、複数の予測値から識別するサブステップ５２に移る。データ要素の値に最も近い予測値は、データ要素が外れ値であるかどうかの判定時に、方法３０のその後のステップで使用される。
【０１５８】
サブステップ５２は、データ要素の複数の予測値のそれぞれと、データ要素の（実際）値との間の２乗平均平方根（ＲＭＳ：root mean square）誤差を計算することを含むのが好ましい。最小のＲＭＳ誤差と関連付けられた予測値は、将来のステップのための予測値として選択される。
【０１５９】
別の例では、ステップ３２は、複数の予測モデルを使用して、調査中のデータ要素より前にある全体的な時系列データセットを予測することを代わりに含む。（例えば、ＲＭＳ分析を使用して決定されるような）実際の時系列データセットに最も近い時系列データセットを生成する予測モデルは、調査中のデータ要素の予測値を生成するために選択される。
【０１６０】
ステップ３２は、したがって、深層学習メカニズムを利用し、複数の予測モデルのどれが、データ要素の値を最も良く予測するか、または、全体的な時系列データセットを最も良くモデル化するかを識別することを含んでもよい。
【０１６１】
本発明の実施形態は、複数の予測モデルのどれも、調査中のデータ要素の値を正確に予測しなかった場合、データ要素が異常または外れ値である可能性が高いことを認識する。したがって、データ要素の実際値／測定値に最も近い（複数の可能性のある予測値のうちの）予測値を使用することによって、異常なデータ要素を識別する正解率および信頼性を向上させることができる。
【０１６２】
さらに、複数の予測モデルを使用すると、また、これらの手段の最善を選択すると、この実施形態は、そうでなければ、外れているデータ要素を識別する方法の最大効果に影響を及ぼすはずの、例えば予測モデルといった特定の時系列予測モデルに依存する必要はない。具体的には、異なる時系列データセットは、一定の予測モデルによって他より良くモデル化されても、正確にモデル化されてもよい。複数の予測モデルを使用することによって、最もふさわしいモデルが識別されることが可能であり、このことにより、データ要素が、外れ値として誤って識別されることになる可能性を減らす。
【０１６３】
本発明の特に有利な実施形態は、図４を参照しながら記述されたステップ３３と、図５を参照しながら記述されたステップ３２の両方を用いる。しかし、（例えば図４および図５の）これらの２つの概念は、互いに別々に考慮されてもよいということが明らかであろう。
【０１６４】
したがって、図３および図５を参照しながら記述されたステップを含む（例えば、また、図４を参照しながら記述されたステップを必ずしも含まない）方法が提案されてもよい。
【０１６５】
図６Ａは、従来技術と比較した、本発明の提案された実施形態の効果を示すグラフである。外れているデータ要素を識別する６つの異なる方法を使用して、複数の異なるデータセットの各データ要素に対してベンチマーク・テストが行われた。これらの方法のうちの５つ（６１、６２、６３、６５、６６）が、本発明の提案された実施形態に一致する。第６の方法６４は、従来技術の方法に対応する。
【０１６６】
本発明の１つの実施形態による第１の方法６１は、（例えば、履歴誤差値を使用して閾値を計算する）図３および図４を参照しながら記述されたような方法を実行することを含み、ここで、ステップ３２で使用されたデータ要素の値を予測するための予測モデルは、ＡＲＩＭＡモデルである。
【０１６７】
本発明の１つの実施形態による第２の方法６２は、図３、図４、および図５を参照しながら記述されたような方法を実行することを含む。したがって、第２の方法６２は、履歴誤差値を使用して閾値を計算する。方法６２のステップ３２は、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の潜在的な予測値を予測することと、データ要素の値に最も近い潜在的な予測値を予測値として割り当てることとを含む。
【０１６８】
本発明の１つの実施形態による第３の方法６３も、図３、図４、および図５を参照しながら記述されたような方法を実行することを含む。したがって、第３の方法６３は、履歴誤差値を使用して閾値を計算する。方法６３のステップ３２は、予測データおよび複数の異なる予測モデルを使用して、データセットの複数のデータ要素の個々の複数の潜在的な予測値を予測すること、および、データ要素の予測値を生成するために、データセットの関連付けられた複数のデータ要素の（実際）値に最も密接にマッチする予測値を生成する予測モデルを選択することを含む。
【０１６９】
本発明の１つの実施形態による第４の方法６５は、（例えば、履歴誤差値を使用して閾値を計算する）図３および図４を参照しながら記述されたような方法を実行することを含み、ここで、ステップ３２で使用されたデータ要素の値を予測するための予測モデルは、単一のＬＳＴＭ（ＬＳＴＭ−Ｓ）予測モデルである。
【０１７０】
本発明の１つの実施形態による第５の方法６６は、（例えば、履歴誤差値を使用して閾値を計算する）図３および図４を参照しながら記述されたような方法を実行することを含み、ここで、ステップ３２で使用されたデータ要素の値を予測するための予測モデルは、ディープＬＳＴＭ（ＬＳＴＭ−Ｄ）予測モデルである。
【０１７１】
従来技術による方法６４は、従来のＥＧＡＤＳモデルを使用して外れ値検知を行うことを含む。
【０１７２】
図６Ａは、６つの方法６１〜６６のそれぞれが１から６までのランクを付けたデータセットの数を示し、ここで、ランク１は、所与のデータセットの特定のデータセット内の外れ値を識別するための最善の方法を表し、ランク６は、最悪の方法を表す。
【０１７３】
方法の相対ランクを評価するために、各モデルのＦ１スコアが計算され、最高のＦ１スコアと関連付けられた方法がランク１を割り当てられ、最低のＦ１スコアと関連付けられた方法がランク６を割り当てられた。例えばランク２〜５といった他のランクは、この間に適宜分散される。
【０１７４】
言い換えれば、複数のベンチマーク・データセットのそれぞれについて、方法６１〜６６は、このデータセットの各データ要素に適用され、ランク付け評価方法に基づいて後でランク付けされる。ここで、ランク付け評価方法は、各方法のＦ１スコアを計算し、Ｆ１スコアの大きさに基づいて方法をランク付けすることを含む。
【０１７５】
Ｙ軸６Ｙは、方法が特定のランクを付けられたデータセットの数を示す。Ｘ軸６Ｘは、ランクを示す。
【０１７６】
Ｆ１スコアは、以下の方程式によって定義される。
【数２】
2021524954.tif 000004
【０１７７】
ここで、「適合率」は、所与のデータセット内で発見された異常の総数で割られた、所与のデータセット内で発見された真の異常の数として定義され、技法の「再現率」は、データセット内の真の異常の総数からの、データセット内で発見された真の異常の数として定義される。
【０１７８】
テストしたデータセットには、既知の数の異常があり（例えば、これらは、ベンチマーク・データセットであり）、その結果、特定の方法の効果が容易に確かめられることが可能である。
【０１７９】
本発明の実施形態による方法は、従来技術による方法より、平均で高くランク付けするということが明確にわかるであろう。
【０１８０】
図６Ｂから図６Ｄは、他のランク付け評価方法を参照しながら同じ複数のデータセットに対して実行された、上記で識別した方法の相対ランク付けを示す他のグラフを示す。
【０１８１】
前述のように、複数のデータセットのそれぞれについて、方法６１〜６６は、ランク付け評価方法に基づいて適用され、ランク付けされる。方法が特定のランクを付ける総回数が合計され、図６Ａ〜図６Ｄに表示される。図６Ａ〜図６Ｄは、したがって、異なる方法に従ってランク付けされたような、各方法の合計されたランクを示す。
【０１８２】
図６Ｂでは、モデルの相対ランクが、各モデルの適合率を計算することによって評価され、最高のＦ１スコアと関連付けられた方法がランク１を割り当てられ、最低のＦ１スコアと関連付けられた方法がランク６を割り当てられる。他のランクは、残りの方法の間で適宜分散される。「適合率」は、所与のデータセット内で発見された異常の総数で割られた、所与のデータセット内で発見された真の異常の数として定義される。
【０１８３】
図６Ｃでは、モデルの相対ランクが、各モデルの再現率を計算することによって評価され、最高のＦ１スコアと関連付けられた方法がランク１を割り当てられ、最低のＦ１スコアと関連付けられた方法がランク６を割り当てられる。他のランクは、残りの方法の間で適宜分散される。
【０１８４】
図６Ｄでは、モデルの相対ランクが、各モデルの従来のＥＤスコアを計算することによって評価され、最高のＦ１スコアと関連付けられた方法がランク１を割り当てられ、最低のＦ１スコアと関連付けられた方法がランク６を割り当てられる。他のランクは、残りの方法の間で適宜分散される。
【０１８５】
図６Ａ〜図６Ｄは、本発明の実施形態が、外れ値を識別するための従来技術の方法より一貫して高くランク付けされることを明確に示す。例えば、図６Ｄは、完全に実行することから不完全に実行することまで、従来技術の方法がどれほど外れているかを示し、これは、本発明の１つの実施形態を使用することによって回避される。
【０１８６】
本発明のいくつかの実施形態において、図３から図５を参照しながら前述されたいずれかの方法を実行するように適合された処理配列を含むシステムが提供されてもよい。
【０１８７】
例として、図７に示されるように、本発明の実施形態は、コンピュータ・システム７０を含むことができ、コンピュータ・システム７０は、ネットワーク・システム７の一部を形成してもよい。コンピュータ・システム／サーバ７０の構成要素は、例えばプロセッサまたは処理ユニット７１を含む１つまたは複数の処理配列、システム・メモリ７４、および、システム・メモリ７４を含む様々なシステム構成要素を処理ユニット７１に連結するバス９０を含むことができるがこれらに限定されない。
【０１８８】
バス９０は、メモリ・バスまたはメモリ・コントローラ、周辺機器バス、アクセラレイティッド・グラフィックス・ポート、および、様々なバス・アーキテクチャのいずれかを使用するプロセッサまたはローカル・バスを含むバス構造のいくつかのタイプのいずれかの１つまたは複数を表す。例として、また限定ではなく、このようなアーキテクチャは、インダストリ・スタンダード・アーキテクチャ（ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、エンハンストＩＳＡ（ＥＩＳＡ）バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション（ＶＥＳＡ）ローカル・バス、およびペリフェラル・コンポーネント・インターコネクト（ＰＣＩ）バスを含む。
【０１８９】
コンピュータ・システム／サーバ７０は、典型的には、様々なコンピュータ・システム可読媒体を含む。このような媒体は、コンピュータ・システム／サーバ７０によってアクセス可能な任意の利用可能な媒体であってもよく、揮発性媒体および不揮発性媒体の両方、取外し可能媒体および取外し不能媒体の両方を含む。
【０１９０】
システム・メモリ７４は、ランダム・アクセス・メモリ（ＲＡＭ）７５またはキャッシュ・メモリ７６あるいはその両方などの揮発性メモリの形のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム／サーバ７０は、他の取外し可能／取外し不能な、揮発性／不揮発性のコンピュータ・システム・ストレージ媒体をさらに含んでもよい。ほんの一例として、ストレージ・システム７７は、（図示されていないが、典型的には「ハード・ドライブ」と呼ばれる）取外し不能な不揮発性磁気媒体を読み書きするために提供されることが可能である。図示されていないが、取外し可能な不揮発性磁気ディスク（例えば「フロッピー（Ｒ）・ディスク」）を読み書きするための磁気ディスク・ドライブ、および、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、または他の光媒体などの取外し可能な不揮発性光ディスクを読み書きするための光ディスク・ドライブが提供されることが可能である。このような事例では、それぞれは、１つまたは複数のデータ媒体インターフェースによってバス９０に接続されることが可能である。下記でさらに描写され、記述されるように、メモリ７４は、本発明の実施形態の機能を実行するように構成されたプログラム・モジュールのセット（例えば、少なくとも１つ）を有する少なくとも１つのプログラム製品を含んでもよい。
【０１９１】
プログラム・モジュール７９のセット（少なくとも１つ）を有するプログラム／ユーティリティ７８は、例として、また限定ではなく、オペレーティング・システム、１つまたは複数のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データと同様に、メモリ７４に格納されてもよい。オペレーティング・システム、１つまたは複数のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データのそれぞれ、またはこれらのいくつかの組合せは、ネットワーキング環境の実装形態を含んでもよい。プログラム・モジュール７９は、一般に、本明細書で記述されるような本発明の実施形態の機能または方法あるいはその両方を実行する。
【０１９２】
コンピュータ・システム／サーバ７０は、キーボード、ポインティング・デバイス、ディスプレイ８５、等などの１つもしくは複数の外部デバイス８０、コンピュータ・システム／サーバ７０とユーザが対話できる１つもしくは複数のデバイス、または、１つもしくは複数の他のコンピューティング・デバイスとコンピュータ・システム／サーバ７０が通信できるようにする任意のデバイス（例えば、ネットワーク・カード、モデム、等）、あるいはその組合せとさらに通信することができる。このような通信は、入出力（Ｉ／Ｏ）インターフェース７２を介して発生することができる。さらに、コンピュータ・システム／サーバ７０は、ローカル・エリア・ネットワーク（ＬＡＮ）、一般的な広域ネットワーク（ＷＡＮ）、またはパブリック・ネットワーク（例えばインターネット）、あるいはその組合せなどの１つまたは複数のネットワークと、ネットワーク・アダプタ７３を介して通信することができる。描写されたように、ネットワーク・アダプタ７３は、コンピュータ・システム／サーバ７０の他の構成要素と、バス９０を介して通信する。図示されていないが、他のハードウェア構成要素またはソフトウェア構成要素あるいはその両方が、コンピュータ・システム／サーバ７０と共に使用されることが可能であるということが理解されよう。例は、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、ＲＡＩＤシステム、テープ・ドライブ、およびデータ・アーカイブ・ストレージ・システム、等を含むがこれらに限定されない。
【０１９３】
図８は、時系列データセット８０５の値を有するデータ要素が外れ値であるかどうかを判定するためのシステム８００のブロック図を示す。
【０１９４】
システム８００は、データ要素より時間的に前にある時系列データセット８０５の第１のデータから予測データを取得するように適合された第１の取得ユニット８１０を備える。したがって、第１の取得ユニットは、データ要素の値を予測するための予測データを時系列データセットから抽出するように適合されてもよい。
【０１９５】
システムは、データ要素の値を予測するように適合された予測ユニット８２０も備える。具体的には、予測ユニットは、予測データを使用して、データ要素の値を予測する。したがって、予測ユニットは、データ要素の予測値を生成する。
【０１９６】
本発明のいくつかの実施形態において、予測ユニット８２０は、予測データおよび複数の異なる予測モデルを使用して、データ要素の個々の複数の予測値を予測し、データ要素の値に最も近い予測値を複数の予測値から識別するように適合される。したがって、予測ユニットは、複数の異なる予測モデル／方法を使用して個々の予測値を予測し、システムの将来のユニットと共に使用するための予測値として、データ要素の（実際）値に最も近い予測値を選択することができる。
【０１９７】
システム８００は、第２の取得ユニット８３０も備える。第２の取得ユニットは、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得するように適合される。
【０１９８】
本発明のいくつかの実施形態において、第２の取得ユニット８３０は、時系列データセットの（複数の）履歴誤差値を取得することであって、各履歴誤差値が、データ要素より時間的に前にある時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、履歴誤差値を取得することと、１つまたは複数の履歴誤差値に基づいて、外れ値であるとみなされるデータ要素の値をデータ要素の予測値に対して定義するための閾値を取得することを行うように適合される。
【０１９９】
取得した履歴誤差値は、履歴誤差値の格納されたセット８０９から取得されてもよい（例えば、格納されたセットから選択される）。他の例では、（１つまたは複数の）予測モデルを使用して第２のデータ要素の値を予測し、この予測値および第２のデータ要素の（実際）値を使用して誤差値を計算して、履歴誤差値が計算される。したがって、履歴誤差値は、時系列データセット８０５内で見つけた第２のデータ要素から計算されてもよい。
【０２００】
システム８００は、データ要素の（第２の取得ユニット８３０からの）閾値、（予測ユニット８２０からの）識別した予測値、および（実際）値に基づいて、データ要素が外れ値であるかどうかを判定するように適合された判定ユニット８４０も備える。データ要素の（実際）値は、時系列データセット８０５から直接取得されてもよい。
【０２０１】
このようにして、システム８００は、時系列データセットのデータ要素が外れ値であるかどうかを判定することができる。
【０２０２】
図９は、本発明の好ましい実施形態による、時系列データセット９０１のデータ要素が外れ値であるかどうかを識別するための方法／システムのための全体的なアーキテクチャ９００またはブロック図を示す。
【０２０３】
データセット９０１は、オフライン・データセット（例えば、格納されたデータ）またはリアル・タイム・ストリームであってもよい。
【０２０４】
方法／システムは、ブロック９０２において、データセットからデータ要素を取得することができる。方法／システムは、データセットのデータ要素に複数の予測モデル９０３をさらに適用して、データ要素の個々の複数の予測値を生成することができる。前述のように、予測モデルは、データセット９０１内の（ブロック９０２で取得した）データ要素より時間的に前にあるデータセットのデータ要素に適用される。
【０２０５】
方法／システムは、データ要素または時系列データセットあるいはその両方を最も良くエミュレートする予測モデルを識別するために、ブロック９０４において、予測モデルをマージすることを含むことができる。これは、データ要素の実際値に最も近いデータ要素の予測値を生成する予測モデルを識別することによって行われてもよい。
【０２０６】
ブロック９０５において、データ要素の閾値は、データセット９０１から生成されてもよい。特定の実施形態において、履歴誤差値がデータセットから取得され、（前述のように）閾値を生成するために使用される。さらなる例では、ブロック９０５は、時間の特定のウィンドウと関連付けられたデータ要素の履歴誤差値を使用して閾値を生成することを含むことができる。時間の特定のウィンドウは、一時的に配置されても、調査中のデータ要素と関連付けられた時間より前の所定の期間と関連付けられてもよい。
【０２０７】
ブロック９０６において、（ステップ９０２で取得した）データ要素が異常であるかどうかが判定される。これは、データ要素の実際値と、ブロック９０４の識別した予測モデルから取得可能な予測値との間の差を表す誤差値を計算することによって行われてもよい。この誤差値は、データ要素が外れ値であるか否かを判定するためにブロック９０５において取得した閾値と比較されてもよい。
【０２０８】
したがって、図９は、（調査中の）データ要素が異常／外れ値であるか否かが識別される本発明の１つの実施形態のためのブロック図である。後述のように、各ブロックは、１つの実施形態による処理システムのモジュールもしくはユニット、または方法のステップを表すことができる。
【０２０９】
本発明は、システム、方法、またはコンピュータ・プログラム製品、あるいはその組合せであってもよい。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体（または複数の媒体）を含んでもよい。
【０２１０】
コンピュータ可読ストレージ媒体は、命令実行デバイスによる使用のための命令を保持し、格納することができる有形デバイスであることが可能である。コンピュータ可読ストレージ媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイス、または前述の任意の適切な組合せであってもよいがこれらに限定されない。コンピュータ可読ストレージ媒体のより具体的な例の完全に網羅されていないリストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリ・メモリ（ＲＯＭ）、消去可能プログラマブル・リード・オンリ・メモリ（ＥＰＲＯＭまたはフラッシュ・メモリ）、ストレージ・クラス・メモリ（ＳＣＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ポータブル・コンパクト・ディスク・リード・オンリ・メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリ・スティック、フロッピー（Ｒ）・ディスク、命令が記録されたパンチ・カードまたは溝内隆起構造などの機械的にエンコードされたデバイス、および前述の任意の適切な組合せを含む。コンピュータ可読ストレージ媒体は、本明細書で使用されるように、電波もしくは他の自由に伝搬する電磁波、導波路もしくは他の伝送媒体を通じて伝搬する電磁波（例えば、光ファイバ・ケーブルを通過する光パルス）、またはワイヤを通じて伝送される電気信号などの、一過性の信号であると本質的に解釈されるべきではない。
【０２１１】
本明細書において説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体から個々のコンピューティング・デバイス／処理デバイスに、または、例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、もしくはワイヤレス・ネットワークあるいはその組合せといった、ネットワークを介して外部コンピュータもしくは外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを含むことができる。各コンピューティング・デバイス／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、個々のコンピューティング・デバイス／処理デバイス内のコンピュータ可読ストレージ媒体に格納するためにコンピュータ可読プログラム命令を転送する。
【０２１２】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、インストラクション・セット・アーキテクチャ（ＩＳＡ）命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、または、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋、もしくは同様のものなどのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語、もしくは類似のプログラミング言語などの従来の手続き型プログラミング言語を含む１つもしくは複数のプログラミング言語のいずれかの組合せで書かれたソース・コードもしくはオブジェクト・コードであってもよい。コンピュータ可読プログラム命令は、スタンド・アロンのソフトウェア・パッケージとして、全面的にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で実行することができ、部分的にユーザのコンピュータ上および部分的にリモート・コンピュータ上で、または全面的にリモート・コンピュータもしくはサーバ上で実行することができる。後者のシナリオにおいて、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）もしくは広域ネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、または、（例えば、インターネット・サービス・プロバイダを使用するインターネットを介して）外部コンピュータに対して接続されてもよい。いくつかの実施形態において、例えば、プログラマブル・ロジック回路機器、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、またはプログラマブル・ロジック・アレイ（ＰＬＡ）を含む電子回路機器は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路機器を個別化にすることによって、コンピュータ可読プログラム命令を実行することができる。
【０２１３】
本発明の態様は、本発明の実施形態による方法、装置（システム）、およびコンピュータ・プログラム製品の流れ図またはブロック図あるいはその両方を参照しながら本明細書で説明される。流れ図またはブロック図あるいはその両方の各ブロック、および流れ図またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実行することができるということが理解されよう。
【０２１４】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラム可能データ処理装置のプロセッサによって実行する命令が、流れ図またはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定された機能／作用を実行するための手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または機械を生み出す他のプログラム可能データ処理装置のプロセッサに提供されてもよい。これらのコンピュータ可読プログラム命令は、命令が格納されたコンピュータ可読ストレージ媒体が、流れ図またはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定された機能／作用の態様を実行する命令を含む製品を含むべく、特定の手法で機能するようにコンピュータ、プログラム可能データ処理装置、または他のデバイス、あるいはその組合せに指図できるコンピュータ可読ストレージ媒体にさらに格納されてもよい。
【０２１５】
コンピュータ可読プログラム命令は、コンピュータ、他のプログラム可能装置、または他のデバイス上で実行する命令が、流れ図またはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定された機能／作用を実行するべく、コンピュータ実行処理を生み出すために、コンピュータ、他のプログラム可能装置、または他のデバイスで一連の動作ステップが行われるように、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスにさらにロードされてもよい。
【０２１６】
図中の流れ図およびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を示す。この点に関して、流れ図またはブロック図における各ブロックは、指定された論理機能を実行するための１つまたは複数の実行可能命令を含む命令のモジュール、セグメント、または部分を表すことができる。いくつかの代替実装形態において、ブロックに記された機能は、図に記された順序とは異なる順序で発生してもよい。例えば、連続して示された２つのブロックは、実際には、実質的に並行に実行されてもよく、または、ブロックは、含まれる機能に応じて、時には逆の順序で実行されてもよい。ブロック図または流れ図あるいはその両方の各ブロック、および、ブロック図または流れ図あるいはその両方におけるブロックの組合せは、指定された機能もしくは作用を実行する、または、特殊用途のハードウェアとコンピュータ命令の組合せを実行する特殊用途のハードウェア・ベースのシステムによって実行することができるということにも留意されたい。
【０２１７】
本発明の様々な実施形態の記述が例証のために提示されてきたが、網羅的であること、または、開示された実施形態に限定されることを意図するものではない。記述した実施形態の範囲および思想から逸脱することなく、多くの変更形態および変形形態が当業者には明らかであろう。本明細書で使用される専門用語は、実施形態の原理、市場で見られる技術に対する実用的用途もしくは技術的改善を最も良く記述するように、または、本明細書で開示された実施形態を当業者が理解できるように選ばれた。
【図１】
2021524954.tif 000005
【図２】
2021524954.tif 000006
【図３】
2021524954.tif 000007
【図４】
2021524954.tif 000008
【図５】
2021524954.tif 000009
【図６Ａ】
2021524954.tif 000010
【図６Ｂ】
2021524954.tif 000011
【図６Ｃ】
2021524954.tif 000012
【図６Ｄ】
2021524954.tif 000013
【図７】
2021524954.tif 000014
【図８】
2021524954.tif 000015
【図９】
2021524954.tif 000016
【手続補正書】
【提出日】令和3年7月14日(2021.7.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータにより実行される方法であって、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得することと、
前記予測データを使用して、前記データ要素の予測値を予測することと、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得することと、
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得することと、
前記データ要素の前記閾値、前記予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定することと
を含む、方法。
【請求項２】
前記予測データが、前記データ要素より時間的に前にある前記時系列データセットの所定の数の他のデータ要素を含む、請求項１に記載の方法。
【請求項３】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項１又は２に記載の方法。
【請求項４】
前記閾値を取得することが、前記履歴誤差値の最大値に基づいて、各履歴誤差値をスケーリングして０と１の間の値にすることを含む、請求項１乃至３のいずれかに記載の方法。
【請求項５】
前記閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項１乃至４のいずれかに記載の方法。
【請求項６】
前記閾値を取得することが、前記閾値を取得するために、前記履歴誤差値の前記標準偏差に所定の数を掛けることを含む、請求項５に記載のコンピュータ実行方法。
【請求項７】
前記閾値を取得することが、チェビシェフの不等式を使用して前記所定の数を計算することを含む、請求項６に記載のコンピュータ実行方法。
【請求項８】
前記第２のデータ要素が、前記データ要素の前に所定の期間の倍数だけ取得された前記時系列データセットのデータ要素に対応する、請求項１乃至７のいずれかに記載の方法。
【請求項９】
前記所定の期間が、１時間、１日、または１週間である、請求項８に記載の方法。
【請求項１０】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項１乃至９のいずれかに記載の方法。
【請求項１１】
前記データ要素が、前記時系列データセットのデータ・ポイントである、請求項１乃至１０のいずれかに記載の方法。
【請求項１２】
時系列データセットの値を有するデータ要素が外れ値であるかどうかをコンピュータに判定させるためのコンピュータ・プログラムであって、前記コンピュータに、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得することと、
前記予測データを使用して、前記データ要素の予測値を予測することと、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得することと、
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得することと、
前記データ要素の前記閾値、前記予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定することと
を含む方法を実行させる、コンピュータ・プログラム。
【請求項１３】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項１２に記載のコンピュータ・プログラム。
【請求項１４】
閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項１２又は１３に記載のコンピュータ・プログラム。
【請求項１５】
前記第２のデータ要素が、前記データ要素の前に所定の期間の倍数だけ取得された前記時系列データセットのデータ要素に対応する、請求項１２乃至１４のいずれかに記載のコンピュータ・プログラム。
【請求項１６】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項１２乃至１５のいずれかに記載のコンピュータ・プログラム。
【請求項１７】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのコンピュータ・システムであって、
少なくとも１つのプロセッサであって、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得すること、
前記予測データを使用して、前記データ要素の予測値を予測すること、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得すること、
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得すること、ならびに
前記データ要素の前記閾値、前記予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定すること
を行うように構成された、前記少なくとも１つのプロセッサ
を備える、コンピュータ・システム。
【請求項１８】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項１７に記載のコンピュータ・システム。
【請求項１９】
前記閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項１７又は１８に記載のコンピュータ・システム。
【請求項２０】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項１７乃至１９のいずれかに記載のコンピュータ・システム。
【請求項２１】
時系列データセットの値を有するデータ要素が外れ値であるかどうかを判定するためのシステムであって、
少なくとも１つのプロセッサであって、
前記データ要素より時間的に前にある前記時系列データセットの第１のデータから、前記データ要素の値を予測するために予測データを取得するように適合された第１の取得ユニットと、
前記予測データを使用して、前記データ要素の予測値を予測するように適合された予測ユニットと、
第２の取得ユニットであって、
前記時系列データセットの履歴誤差値を取得することであって、各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの第２のデータ要素の値と予測値との間の差を表すものである、前記履歴誤差値を取得すること、および
前記履歴誤差値の１つまたは複数に基づいて、外れ値であるとみなされる前記データ要素の値を前記データ要素の前記予測値に対して定義するための閾値を取得すること
を行うように適合された、前記第２の取得ユニットと
前記データ要素の前記閾値、前記識別した予測値、および前記値に基づいて、前記データ要素が外れ値であるかどうかを判定するように適合された判定ユニットと
を含む、前記少なくとも１つのプロセッサ
を備える、システム。
【請求項２２】
各履歴誤差値が、前記データ要素より時間的に前にある前記時系列データセットの前記第２のデータ要素の前記値と、前記時系列データセットの前記第２のデータ要素の対応する予測値との間の差の２乗である２乗誤差値である、請求項２１に記載のシステム。
【請求項２３】
前記閾値を取得することが、
前記履歴誤差値の標準偏差を計算することと、
前記履歴誤差値の前記標準偏差に基づいて前記閾値を取得することと
を含む、請求項２１又は２２に記載のシステム。
【請求項２４】
前記データ要素の予測値を予測することが、
前記予測データおよび複数の異なる予測モデルを使用して、前記データ要素の個々の複数の潜在的な予測値を予測することと、
前記データ要素の前記値に最も近い前記潜在的な予測値を前記予測値として割り当てることと
を含む、請求項２１乃至２３のいずれかに記載のシステム。
【国際調査報告】
2021524954.tif 000017
2021524954.tif 000018