現在、RでTwitterのAnomalyDetectionを使用しています:https : //github.com/twitter/AnomalyDetection。このアルゴリズムは、季節性のあるデータの時系列異常検出を提供します。
質問:これに似た他のアルゴリズムはありますか(季節性の制御は重要ではありません)?
私はデータで可能な限り多くの時系列アルゴリズムをスコアリングしようとしています。これにより、最適なもの/アンサンブルを選択できます。
現在、RでTwitterのAnomalyDetectionを使用しています:https : //github.com/twitter/AnomalyDetection。このアルゴリズムは、季節性のあるデータの時系列異常検出を提供します。
質問:これに似た他のアルゴリズムはありますか(季節性の制御は重要ではありません)?
私はデータで可能な限り多くの時系列アルゴリズムをスコアリングしようとしています。これにより、最適なもの/アンサンブルを選択できます。
回答:
Twitterアルゴリズムは
Rosner、B。、(1983年5月)、「一般化されたESDの多外れ値手順のパーセンテージポイント」、Technometrics、25(2)、pp。165-172
1983年以来、多くの技術と進歩があったに違いありません。内部データをテストしましたが、Twitterの異常検出では明らかな異常値は特定されません。時系列の外れ値をテストするために、他のアプローチも使用します。私が出会った中で最高ののは、SAS / SPSS / AutoboxおよびSCAソフトウェアに実装されているTsayの異常値検出手順です。これらはすべて商用システムです。tsoutliersパッケージも
ありますが、これは優れていますが、arima
効率的に動作するためにモデルの仕様が必要です。auto.arima
最適化とモデル選択に関して、デフォルトの問題がありました。
Tsayの記事は、時系列における外れ値の検出に関する重要な研究です。予測研究の主要なジャーナルInternational Journal of Forecastingは、Tsayの記事は上記リンクの記事で最も引用された論文であり、最も影響力のある論文の1つであると述べました(以下も参照)。予測ソフトウェア(特にオープンソースソフトウェア)におけるこの重要な作業と他の異常値検出アルゴリズムの普及は稀です。
2017年時点でのRの異常検出のオプションは次のとおりです。
anomalyDetectionパッケージ(Twitterとは異なる)
2018年編集
私はあなたを助けるかもしれないいくつかの情報源に遭遇しましたが、彼らはあなたのデータよりRスクリプトを実行するように簡単/便利なようではありません: - Numentaは、オープンソースの彼らの持っているNuPIC異常検知など、多くのもののために使用されているプラットフォームを。- Netflixののアトラスプロジェクトが間もなくオープンソース外れ値/異常検出ツールをリリースします。- Prelertは、サーバー側のアプリケーションとして来る異常検出エンジンを持っています。彼らのトライアルは、あなたのニーズを満たすことができる限られた使用法を提供します。
また、私の会社であるInsignumには、時系列データを取り込み、完全に自動化された方法で異常を検出するベータ版の製品があり、異常が検出されたときに電子メールでアラートを受け取るだけです。手を差し伸べるのTwitterやLinkedInのと私はより多くのあなたを教えてさせていただきます。
Autobox(私の会社)は異常値の検出を提供します。Twitterのアルゴリズムは大きな異常値を取得しますが、Autoboxと比較して小さな異常値を逃します。
実行には長い時間がかかりますが、結果は、より小さな異常値と、異常値でもある季節性の変化を見つけるのに適しています。以下は、14,398の元の観測値の最初の8,560の観測値を使用して79の外れ値を見つけるモデルです。標準バージョンの最大値は10,000件ですが、さらに変更することもできますが、外れ値を特定して対応する場合に、それほど多くのデータを保持する本当の理由はありません。
私たちは、異常値、レベルシフト、分散の変化に関するTsayの作業と、季節変化の検出に関する独自の作業に加えて、パラメータの変更に関するChowの作業の影響を受けました。
30日間の試用版をダウンロードしてTwitterのサンプルデータを読み込み、頻度を60に指定し、インストールフォルダー(noparcon.afs、novarcon.afs、notrend.afs)に3つのトリガーファイルを保存し、stepupdeというファイルを作成した場合。 100のafs。