ML4ITS/mtad-gat-pytorch
PyTorch implementation of MTAD-GAT (Multivariate Time-Series Anomaly Detection via Graph Attention Networks) by Zhao et. al (2020, https://arxiv.org/abs/2009.02040).
해결하는 문제
여러 관련 변수가 시간에 따라 추적되는 다변량 시계열 데이터에서 이상을 탐지하기 위한 프레임워크를 제공합니다. 이 프로젝트는 이러한 다양한 차원에 걸쳐 정상적인 동작에서 벗어난 비정상적인 패턴을 식별하는 것을 목표로 합니다.
작동 원리
시스템은 다단계 파이프라인을 통해 원시 데이터를 처리합니다:
- 노이즈 감소: 1-D 컨볼루션을 적용하여 시계열 데이터를 평활화합니다.
- 의존성 포착: 두 개의 병렬 그래프 어텐션 네트워크(GAT)가 데이터를 분석합니다. 하나는 서로 다른 특성 간의 의존성(특성 지향)에 초점을 맞추고, 다른 하나는 서로 다른 타임스탬프 간의 의존성(시간 지향)에 초점을 맞춥니다.
- 순차 모델링: GRU (Gated Recurrent Unit) 레이어가 장기적인 순차 패턴을 포착합니다.
- 예측 및 재구성: 모델은 예측 모델을 사용하여 다음 타임스탬프를 예측하고, GRU 기반 디코더를 사용하여 입력 시퀀스를 재구성합니다.
- 이상 점수 산정: Hundman 등이 제안한 Peaks-Over-Threshold (POT) 및 무차별 대입 F1-score 탐색과 같은 다양한 임계값 설정 방법을 사용하여 데이터 포인트가 이상치인지 판단합니다.
대상 사용자
시계열 모니터링, 시스템 상태 추적 또는 복잡한 다변량 데이터 세트에서 이상치를 탐지해야 하는 모든 분야의 데이터 과학자 및 머신러닝 엔지니어.
주요 특징
- 표준 GAT와 더 표현력이 뛰어난 GATv2를 모두 지원합니다.
- 유연한 이상 탐지를 위한 여러 임계값 설정 전략을 구현합니다.
- MSL, SMAP, SMD와 같은 표준 데이터 세트에 대한 전처리 및 평가 도구가 포함되어 있습니다.
- 예측된 이상치와 실제 정답을 비교하기 위한 시각화 노트북을 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트