異常検知 (いじょうけんち、英 : anomaly detection )や外れ値検知 (はずれちけんち、英 : outlier detection )とは、データマイニング において、期待されるパターンまたはデータセット 中の他のアイテムと一致しないアイテムやイベントや観測結果を識別すること[ 1] 。何が異常であるかを定義するのは、タスク次第ではあるものの、Varun Chandolaら[ 1] は異常というのは通常の動作として明確に定義された概念に準拠しないデータパターンである定義している。各タスクに適用すると通常、異常とは銀行詐欺 (英語版 ) 、クレジットカード不正利用、構造欠陥、医学的な問題、文書中の誤り検出、不審な行動検出、機械の故障検知などの問題に翻訳する。なお、異常(anomaly)は、外れ値 (outlier)、珍しい物(novelty)、雑音(noise)、変動(deviation)、例外(exception)などとも呼ばれる[ 2] 。
特に悪用やネットワーク侵入検知の状況では、興味深いオブジェクトは多くの場合レアな オブジェクトではなく、活動中の予期されないバースト である。このパターンはレアオブジェクトとして外れ値 の一般的な統計的定義に従わず、適切に集計されない限り、多くの外れ値検知法(特に教師なし手法)はそのようなデータで失敗する。代わりに、クラスタ分析 アルゴリズムはそのようなパターンで形成されたマイクロクラスタを見つけることが可能である[ 3] 。
異常検知技術には大きく分けて3通りの分類がある。教師なし異常検知 (unsupervised anomaly detection)手法は、データセット内のインスタンスの大多数は正常であるという仮定の下でデータセットの残りにほとんどフィットしないと思われるインスタンスを探すことによって、ラベル付されていないテストデータセットにある異常を見つける。教師あり異常検知 (supervised anomaly detection)手法は「正常」と「異常」にラベル付されたデータセットを必要とし、分類器を訓練することを含む(他の多くの統計分類 問題との決定的な違いは固有の外れ値検出の不均衡な性質である)。半教師あり異常検知 (semi-supervised anomaly detection)手法は与えられた正常な 訓練データセットから正常な振る舞いを表すモデルを構成し、そして学習したモデルによって生成されるテストインスタンスの尤度をテストする[要出典 ] 。
適用例
異常検知は、侵入検知システム 、詐欺検知 、文書中の誤り検出、不審な行動検出、機械の故障検知、システムヘルスモニタリング、センサネットワーク のイベント検知、生態系の乱れの検知など、様々な分野に応用できる。データセットから異常なデータを除去するための前処理でしばしば使われる。教師あり学習 では、データセットから異常なデータを除去することはしばしば精度の統計的に有意な増加をもたらす[ 4] [ 5] 。
よく使われる手法
いくつかの異常検知手法が文献によって提案されている。いくつかのよく使われる手法を示す:
正規分布に従うデータの異常検知
ホテリング理論
マハラノビス・タグチ法
密度比推定
非正規データの異常検知
ガンマ分布の当てはめ
カイ二乗分布への当てはめ
k近傍法
k平均法
混合ガウス分布モデル
One Class SVM
密度比推定
不要次元のある次元データの異常検知
入出力関係のあるデータの異常検知
時系列データの異常検知
近傍法
特異スペクトル変換法
自己回帰モデル
状態空間モデル
変数間に関係があるデータの異常検知
データセキュリティへの応用
異常検知は1986年 にドロシー・デニング (英語版 ) によって侵入検知システム (IDS)のために提案された[ 6] 。IDSのための異常検知は通常しきい値と統計を用いて達成されるが、ソフトコンピューティング 、および帰納的学習を用いても行うことができる[ 7] 。1999年までに提案された統計のタイプはユーザ、ワークステーション、ネットワーク、リモートホスト、ユーザのグループ、そして頻度、平均、分散、共分散、標準偏差に基づいたプログラムのプロファイルを含んだ[ 8] 。侵入検知 における異常検知のカウンターパートは悪用検出 (英語版 ) である。
関連項目
参考文献
^ a b Chandola, Varun; Banerjee, A.; Kumar, V. (2009). “Anomaly detection: A survey” . ACM Computing Surveys 41 (3): 1. doi :10.1145/1541880.1541882 . http://www.cs.umn.edu/sites/cs.umn.edu/files/tech_reports/07-017.pdf .
^ Hodge, V. J.; Austin, J. (2004). “A Survey of Outlier Detection Methodologies” . Artificial Intelligence Review 22 (2): 85. doi :10.1007/s10462-004-4304-y . http://eprints.whiterose.ac.uk/767/1/hodgevj4.pdf .
^ Dokas, Paul; Levent Ertoz, Vipin Kumar, Aleksandar Lazarevic, Jaideep Srivastava, Pang-Ning Tan (2002). “Data mining for network intrusion detection” . Proceedings NSF Workshop on Next Generation Data Mining . http://www.csee.umbc.edu/~kolari1/Mining/ngdm/dokas.pdf .
^ Ivan Tomek (1976). "An Experiment with the Edited Nearest-Neighbor Rule" . IEEE Transactions on Systems, Man and Cybernetics . Vol. 6. pp. 448–452.
^ Michael R Smith and Tony Martinez (2011). "Improving Classification Accuracy by Identifying and Removing Instances that Should Be Misclassified" (PDF) . Proceedings of International Joint Conference on Neural Networks (IJCNN 2011) . pp. 2690–2697.
^ Denning, Dorothy, "An Intrusion Detection Model," Proceedings of the Seventh IEEE Symposium on Security and Privacy, May 1986, pages 119-131.
^ Teng, Henry S., Chen, Kaihu, and Lu, Stephen C-Y, "Adaptive Real-time Anomaly Detection Using Inductively Generated Sequential Patterns ," 1990 IEEE Symposium on Security and Privacy
^ Jones, Anita K., and Sielken, Robert S., "Computer System Intrusion Detection: A Survey," Technical Report, Department of Computer Science, University of Virginia, Charlottesville, VA, 1999