(작성중) 시계열 이상치 탐지(Time series anomaly/outlier detection) : Point outlier detection

이향기·2021년 9월 17일
0

현재 자주 쓰이는 time series outlier/anomaly detection methods 정리

아직도 정리되지 않은 용어...Outlier

통상적으로 Outliers라는 말을 사용하지만, 여러 Paper나 Search에서는 아래와 같은 용어들을 Outliers와 같은 의미로 사용하고 있다.

anomalies, discordant obervations, discords, exceptions, aberrations, suprises, peculiarities, contaminants

용어는 달라도, 이 단어들이 뜻하는 바는 다음과 같다고 보면 되겠다.

observations that do not follow the expected behavior

Outlier에도 종류가 있다?!

  • 막연히 생각했을때 Outlier라는 개념은 꽤나 간단해 보이지만, 사실 문맥에 따라 Outlier는 여러가지 의미를 지닐 수 있다.
  • 이렇게 outlier라는 뜻이 여러 의미를 지니면, 관련 코드나 Paper를 검색할 때 상당히 어려워지는데...ㅠ
  • (A Blázquez-García, 2020)에는 아래와 같이 무책임한 문장이 나온다.

The outliers depend on the context

Point outliers

  • 이는 기대와 다른 행동을 보이는 "딱 한 점"이다.
  • 전체의 맥락에서 고려되면 global, 해당 점 주변의 neighborhood에서만 고려되면 local로 분류된다.

a datum that behaves unusually in a specific time instant

Subsequence outliers

  • 각 점의 행동만 보면 point outlier는 아니지만, 연속된 점들의 패턴이 전체 맥락과 다른 경우

consecutive points in the time whose joint behavior is unusual, although each observation individually is not necessarily a point outlier

Outlier time series

  • 이는 여러 시계열 패턴을 input으로 했을 때, 다른 패턴을 보이는 시계열 패턴을 말한다.

Entire time series can also be outliers, whose behavior differs from the rest

  • 해당 포스팅에서는 Point outliers에 집중할 것임을 밝힌다.

Point outlier detection

  • 수식적으로 볼 때, point outlier는 아래와 같이 정의될 수 있다.
  • xtx_t is defined as a outlieroutlier if
    xtx^t>τ|x_t-\hat{x}_t|>\tau
    where τ\tau is a predefined thershold, xtx_t is the observed data point, x^t\hat{x}_t is its expected value.

Statistical

  • constant/piecewise constant
  • For x^t\hat{x}_t : median, MAD,
  • For τ\tau : adaptive

ARIMA

Spline

Kernel

Moving average

Gaussian mixture

STL decomposition

Linear regression

Neural nets

CNN

ARIMA (AR)

Extreme value theory

Density-based

Histogramming

HTM(Hierachical Temporal Memory) network

Deep learning based

-LSTM, RNN 기반

LSTM

Prophet

Isolation forest

Local Outlier Factor

One-class SVM

Autoencoders

Robust Covariance Estimator

K-NN

Methods using PyCaret package

Angle-based

Clustering-based

Connectivity-based

Isolation forest

Histogram-based

K-nn

Local Outlier Factor

One-class SVM

PCA, MCD, SOD, SOS, ...

[Refernces]

profile
Data science & Machine learning, baking and reading(≪,≫)

0개의 댓글