Table of Content
異常検知手法のまとめ
異常検知について勉強しましたのでまとめる。(随時更新します。)
参考文献
入門 機械学習による異常検知―Rによる実践ガイド
(上記のサンプルコードを一部githubに公開しています。)
異常検知と変化検知
異常検知の概要
データから正常となるモデルを学習し、そのモデルから逸脱したデータを異常とする。
- 目的の種類
- データクレンジング
手元にあるデータからエラー値を取り除く - 外れ値検出(Outlier Detection)
過去のデータを元に異常度定義し、将来のデータの異常を検出する - クラスタリング
- 入力xと出力yの関係性の崩れを検知
- 時系列データの異常部位を検出する
- データクレンジング
- データの種類
- 1変数、多変量データ
- 入出力のあるデータ
- 時系列データ
- 適用例
データの種類 | 用途 |
---|---|
データ | 外れ値検知、ノイズ除去 |
制御・監視(車、工場) | 異常動作検知、故障検知、不具合検知 |
ログデータ | クレジットカード不正利用検知、インサイダー検知、早期発見 |
ネットワーク(アクセスログ) | DDoS等の攻撃検知、障害検知 |
画像(製品・商品、監視カメラ) | 製品、商品の欠陥検知、不審者、不審物の検知 |
音声(構造物の反響音) | 打音検査での異常検知 |
評価手順
-
準備
正常なデータを準備する。原則異常なデータは含まれていないか、また含まれていたとしても影響は無視できるほど少ないとする。一般的に、異常検知の場合、実データに含まれる異常データは、正常データと比較して非常に少ない。 -
分布推定
正常なデータのモデルを推定する。(正常データのモデルを確率分布で表現しないケースもある)後半によく使われるモデルをまとめるが、一般に二値分類問題のようなモデルは、正常・異常のデータの割合が同程度を想定されるので注意する。 -
異常度の定義
正常からのずれの度合いを定義する。確率分布によるモデル推定の場合、推定された正常データの確率分布p(x)
の対数のマイナス-ln{p(x)}
を異常度と定義する。正常データから外れると、正常である確率は小さくなるため、異常度は大きくなる。 -
しきい値の設定
データを異常と判断するためのしきい値を設定する。
モデルの種類
正常データのモデルとしては以下の種類に分けられる。
多変量データ(1変数の場合も含む)
- 確率分布による推定
ガンマ分布以降は非正規分布である。
モデル | 特徴 |
---|---|
多変量正規分布 | 正常データが単一の正規分布から生成されると仮定。パラメータ(平均ベクトル及び共分散行列)を最尤推定より算出する。異常度をマハラノビス距離で測り、異常判定をする。異常度の計算に、標本共分散行列の逆行列を計算する必要があるが、計算量を考慮してQR分解などを使用する。(注)一般に静的データに適用され、単一の正規分布で表せない場合には適用できない。変数が増えると、少数の変数のみに生じる異常がかき消される傾向がある。 |
多変数正規分布(単純ベイズ) | ナイーブベイズともいう。多変量正規分布において、変数(次元)同士を独立とみなす。変数間の相関がないとするため、共分散行列の非対角成分はゼロとなり、確率分布モデルは各1変数の正規分布の積で表せる。異常度は変数ごとの異常度の和となるため、逆行列の計算が不要。 |
ガンマ分布 | ガンマ分布は、「ひと山」であるが、正の値しかとらない、かつ分布が左右非対称である。対数尤度の数値最小化による最尤推定、またはモーメント法により、パラメータを推定する。 |
混合正規分布(GMM) | 複数の動作モードをもつ系の場合に、正規分布の線形結合で推定する。解析的には求められないため、EM法(期待値-最大化法)における反復法にてパラメータを推定する。クラスタリングにも用いられる。 |
KDE(カーネル密度推定) | 各標本データにおけるカーネル関数(正規分布が用いられることが多い)の和として母集団の確率分布を推定する。カーネル関数が一様(定数)であればヒストグラムになるが、一般には標本から距離が離れると小さくなるようなカーネル関数を選択することで、解析しやすいメリットがある。 |
- 距離に基づく推定
モデル |
---|
kNN(k近傍法) |
LOF(局所外れ値度) |
- 分類に基づく推定
モデル |
---|
1クラスサポートベクターマシン(OC-SVM) |
k-means |
- 次元削減に基づく推定
モデル |
---|
PCA |
カーネル主成分分析 |
入出力のあるデータ
モデル |
---|
線形回帰 |
リッジ回帰 |
PLS(偏最小二乗法) |
正準相関分析 |
時系列データ
モデル |
---|
近傍法 |
特異スペクトル変換法 |
自己回帰 |
状態空間モデル |