파이썬을 이용한 시계열 이상 탐지


10

여러 시계열 데이터 세트에서 이상 감지를 구현해야합니다. 나는 전에 이것을 한 적이 없으며 조언을 기대하고있었습니다. 나는 파이썬에 매우 익숙하므로 솔루션을 구현하는 것을 선호합니다 (대부분의 코드는 내 작업의 다른 부분에 대한 파이썬입니다).

데이터 설명 : 지난 2 년 정도 전에 수집 된 월별 시계열 데이터입니다 (즉, 24-36 시간 만). 기본적으로 여러 클라이언트에 대해 매월 모니터링되는 몇 가지 메트릭이 있습니다.

time_period    client    metric    score
01-2013        client1   metric1   100
02-2013        client1   metric1   119
01-2013        client2   metric1   50
02-2013        client2   metric2   500
...

내가 생각하는 것은 다음과 같습니다. 데이터를 데이터 프레임 (팬더)으로 가져온 다음 각 고객 / 메트릭 쌍에 대한 6 개월 평균 롤링을 계산하십시오. 현재 기간의 값이 6 개월 평균을 기준으로 일부 임계 값을 초과하면 플래그를 올리십시오. 문제는 다소 단순 해 보입니다. 나는 탄탄한 접근 방식을 취하고 싶습니다.

이 아이디어를 조금이라도 살려주는 조언은 크게 감사하겠습니다. 나는 그 질문이 약간 추상적이라는 것을 알고 있으며, 그것에 대해 사과드립니다.


나는 파이썬 방식을 모른다. 그러나이 질문은 일반적인 접근법에 관한 아이디어들로 가득하다 : stats.stackexchange.com/questions/26688/…
rapaio

pypi.org/project/anomaly-detection 이것은 트위터에서 이상 징후 탐지와 유사한 파이썬에서 이상 탐지를 위해 라이브러리에 내장되어 있습니다. 트위터 이상 탐지 코드는 R 언어로되어 있기 때문에. 당신의 문제는 상황에 이상이 있습니다. Auto.arima 모델도
saravanan saminathan

답변:


1

통계 차트 제어 와 비슷한 접근 방식 이 제어 차트 등이 여기에 유용 할 것이라고 생각합니다.


읽을 게요 이 방법은 소량의 데이터 (예 : 24 개월)가있는 시계열에 적합합니까?
Eric Miller

그것의 대부분을 읽었습니다. 이 방법에 따르면 시계열에 대한 3 차 표준 편차를 계산하고 이러한 한계에 선을 그래프로 표시해야합니다. 값이이 한계를 초과하면 플래그를 지정하십시오. 이것은 내가 고려한 방법입니다.
Eric Miller

1

Pandas 표준 편차 함수를 사용하는 표준 편차에서 베이지안 방법 및 클러스터링, SVM, 가우시안 프로세스, 신경망과 같은 많은 머신 러닝 방법에 이르기까지 이상 탐지에 대한 옵션이 많이 있습니다.

이 자습서를 살펴보십시오 : https://www.datascience.com/blog/python-anomaly-detection

베이지안 관점에서 나는 페이스 북 선지자를 추천한다. 시계열 전문가가 아니어도 매우 진보 된 결과를 제공합니다. 월, 일 등의 작업에 대한 옵션이 있으며 "불확실성 간격"은 예외에 도움이됩니다.

마지막으로, 이상 탐지를 위해 신경망 (LSTM)을 사용하는 것에 관한 Uber 블로그를 추천합니다. https://eng.uber.com/neural-networks/


0

데이터 세트가 정규 분포를 따른다고 가정 할 경우이 분포의 Quantile을 추정하여 95 %, 80 % 등 Quantile이 아닌지 확인할 수 있습니다. 나는 파이썬 라이브러리에 익숙하지 않지만 이미 빌드 된 함수가 있다고 확신합니다.


대부분의 고객에게는 상승 추세가 있습니다. 데이터를 무작위로 호출 할 수 있는지 확실하지 않습니다.
Eric Miller

2
그렇다면이 경우에는 없습니다. 나는 아래의 방법과 당신의 방법 이이 상황에서 잘 작동 할 것이라고 믿습니다. 나는 전에 이와 비슷한 것을했습니다 : 롤링 X 기간 이동 평균을 취하고 이동 평균에서 현재 메트릭 값을 뺍니다. 이러한 잔차에 대한 표준 편차 범위를 찾거나 (이 시나리오에서 알고있는 경우 주관적인 입력을 사용) 이러한 범위의 위 또는 아래에있는 항목은 이상으로 간주 될 수 있습니다. 이 방법은 고객이 갑자기 점수를 올리면 효과가 있습니다.
Kevin Pei
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.