杉原データサイエンス事務所のロゴ トップページ | ひとつ上のページ | 目次ページ | このサイトについて | ENGLISH

外れ値検知

異常検知
例えば、上のグラフで赤い円で囲ったサンプルは、大多数のサンプルのある2つのグループのどちらでもないので、外れ値です。

外れ値検知では、「外れていれば、異常」と考えて「新しいデータは外れ値かどうか?」という問題を扱います。 「外れ値検知 = 異常検知 」となっている文献があるくらい、外れ値検知は、異常検知の中心的な存在です。

外れ値のモデル

異常検知
上の散布図のように、過去のデータが1次元で、新しいデータを判定する場合、新しいデータから、過去のデータの平均値を引いた値が、「異常度」として使えます。 これが外れ値のモデルになります。

異常検知
冒頭の例の場合は、2次元ですし、過去のデータのグループが2つあります。 このような場合は、単純に新しいデータから、過去のデータの平均値を引くことではモデルにならないです。 外れ値の定量化 のページにある考え方で、モデルを作ります。

1クラスモデル外れたサンプルの探索 は、機械的に外れ値のモデルを作る方法です。

外れていないけれども外れているデータのモデル

下の例のデータの場合、赤い円で囲ったデータは、全体の増減の範囲の中なので、その意味では外れていませんが、SINカーブのような曲線からは明らかに外れています。
異常値

このような場合でも、データに何らかの加工をして、 外れ値として扱えるようにしてしまうのが外れ値検知のアプローチです。

このデータの場合は、「SINカーブ」と仮定することができます。 この場合は、「SINカーブだったら、この時はこの値になるはず」という予測値が計算できます。 その予測値との差を計算すると、外れ値として扱うことができるようになります。

また、このデータの場合は、1ステップ前や1ステップ後のデータが近いです。 自己相関 が高いことになります。 「1ステップ前のデータ」との差を計算すると、外れ値として扱うことができるようになります。

以下の2ページは、外れていないけれども外れている場合の方法です。

分析のコツ

異常検知
上のグラフでは、赤丸を付けた5つのデータが、予測区間の範囲を超えていません。 「5つのデータは正常の範囲の中」という結果になります。

一方、下のグラフでは、予測区間の範囲を超えています。 「5つのデータは異常」という結果になります。
異常検知

これらの違いは、予測区間を求める時の計算に、5つのデータを含めるかどうかの違いで起きています。

「過去のこの時のデータは、異常かどうか」という分析をしたいのなら、そのデータは予測区間の計算には含めない方が、見通しの良い分析になります。



順路 次は 外れ値の定量化


杉原データサイエンス事務所のロゴ
杉原データサイエンス事務所によるコンサルティングとセミナー