4. 논문리뷰/Time-series Anomaly detection
DAD(Deep Anomaly Detection) 서베이
Honestree
2022. 10. 20. 19:13
DAD(Deep Anomaly Detection) 서베이
- 리뷰 논문
- DEEP LEARNING FOR ANOMALY DETECTION: A SURVEY(2019, sited : 1064 ) https://arxiv.org/pdf/1901.03407.pdf
- 참고 논문
- Anomaly Detection : A Survey(2009, sited : 11269 )
- 이 논문은 전통적인 기법들까지 모두 다룬 논문 http://cucis.ece.northwestern.edu/projects/DMS/publications/AnomalyDetection.pdf
- Anomaly Detection : A Survey(2009, sited : 11269 )
소개
- Anomalies ?
- Abnormalities, deviants, outliers 라고도 불리며 N1, N2처럼 다수의 데이터를 정상 데이터라고 할때 O1, O2, O3 처럼 소수의 데이터 덩어리를 이상 데이터(anomalies)라고 칭합니다.
- Novelites ?
- anormalies 와 거의 동일한 흐름의 데이터로 지금껏 관찰되지 않았던 데이터를 칭합니다.
- decision threshold 에 의해 anormalies / novelities가 결정되며 이 둘을 판별하는 알고리즘도 보통 동일한 방법이 사용됩니다.
- DAD techniques
- 전통적인 outliers 탐지기법들은 그 성능이 sub-optimal 한 경우가 많습니다. 데이터의 양이 많아지고 복잡해지면서 전통적인 기법들은 데이터의 복잡한 feature를 이해하기 어려웠고, 딥러닝을 결합한 DAD들이 주목받고 있습니다.
- 또한 DAD는 데이터의 특정을 계층적으로 이해하기 때문에 end-to-end 로 raw data을 그대로 사용할 수 있다는 장점이 있습니다.
- 본 논문은 현존하는 다양한 DAD 들의 원리와 실제 적용사례를 소개하며 전반적인 이해를 돕는데에 목적이 있습니다.
DAD
- DAD 모델을 만들때 크게 3가지 요소를 고려해야 합니다.
1. 데이터의 특성
- 데이터는 크게 배열(음성, 텍스트, 음악, 시계열) / 비계열(이미지) 데이터로 나눌 수 있습니다.
- 데이터의 종류와 차원에 따라 모델 구조, 레이어 수를 조절해야 합니다.
2. 라벨링의 여부
- Supervised deep anomaly detection
- 지도학습 DAD는 많이 쓰이지 않습니다. 왜냐하면 classification과 비슷한 원리로 동작하기 때문에 정상 / 이상 데이터가 모두 필요한데 실제로는 라벨링된 이상 데이터를 얻는게 매우 어렵기 때문입니다. 따라서 해당 논문에서 이 모델은 다루지 않았습니다.
- Semi-supervised deep anomaly detection
- 정상 데이터는 이상 데이터와 비교해 얻기 쉽기 때문에 준지도 DAD가 많이 활용됩니다. 대표적인 것이 autoencoders를 사용한 기법입니다.
- Unsupervised deep anomaly detection
- 위에서 정상 데이터는 비교적 얻기 쉽다고 했지만, 현실에서는 라벨링된 데이터를 얻는 것 자체도 어려운 경우가 많습니다. 그래서 비지도 DAD가 가장 효과적인 모델로 주목받고 있으며 전통적인 기법인 PCA, SVM, Isolation Forest 들을 뛰어넘는 성능을 보여주었습니다. 대부분의 비지도 모델들에서 autoencoder 는 핵심으로 동작합니다.
3. 학습 목표
- 해당 논문에서 새롭게 제시한 카테고리로 학습 목표에 따라 2가지로 나뉩니다.
- Deep Hybrid Models(DHM)
- DHM은 autoencoder 를 사용해 데이터의 feature를 추출해 이를 전통적인 anomaly detection 모델(SVM)에 사용하는 것입니다.
- Transfer learning 이 DHM 의 배경이 되며 feature extractor 로써 pre-trained 모델을 사용할 경우 좋은 성능을 얻을 수 있었습니다.
- One-Class Neural Networks(OC-NN)
- 한 클래스 내에서 노말 데이터와 근접한 envelope를 추출하는게 OC-NN의 목적입니다.
- DHM과 구조적으로 굉장히 유사하지만 단순히 autoencoder를 사용해 latent vector를 다음 입력으로 사용하는게 DHM 이라는 것에서 차별점이 있습니다.
- DAD 의 출력물
- Anomaly score
- 각 데이터들의 outlierness 의 정도를 수치화한 점수입니다.
- Labels
- 점수를 출력하는 대신 normal / anormalous 의 라벨을 출력하는 방법입니다.
- Anomaly score
Anomaly
실제 적용 사례
- DAD를 실제로 적용한 다양한 사례들입니다.
- Intrusion detection
- Host-Based Intrusion Detection Systems (HIDS)
- Network Intrusion Detection Systems (NIDS)
- Fraud detection
- Banking fraud
- Mobile cellular network fraud
- Insurance fraud
- Healthcare fraud
- Malware detection
- Medical anomaly detection
- Social Networks anomaly detection
- Log anomaly Detection
- IoT Big Data anomaly detection
- Industrial anomalies detection
- Time series anomlay detection
- Uni-variate time series deep anomaly detection
- Multi-variate time series deep anomaly detection
- Video surveillance
- Intrusion detection
DAD 모델
- 실제 DAD 모델들은 어떤 종류가 있는지와 그 특성을 4가지 사항을 고려하여 정리했습니다.
- 가정
- 모델 구조
- 계산 복잡성
- 장점 및 단점
Supervised deep anomaly detection
- 일반적으로 지도학습모델은 라벨링 데이터를 사용하기 때문에 비지도학습 모델들보다 좋은 성능을 보여줍니다.
- 지도학습모델의 목적은 정상 / 비정상 데이터들의 경계를 찾아내는 것 입니다.
- 가정
- 지도학습은 정상 데이터가 다수의 클래스를 가진다고 가정합니다. 따라서 모델은 비정상 데이터 클래스와 나머지 클래스들간의 경계를 학습합니다.
- 지도학습은 충분히 많은 데이터(수천개)를 필요로 하며 이후 설명할 준지도 / 비지도 학습에 비해 많이 쓰이지 않습니다.
- 계산 복잡성
- 입력 데이터의 차원수와 모델 구조에 따라 달라집니다. 모델의 레이어 수에 따라 선형적으로 증가합니다.
- 장점 및 단점
- 테스트 단계에서 속도가 빠릅니다.
- 멀티 클래스의 경우 정확하게 라벨링된 다수의 데이터를 필요로 합니다.
- feature 공간이 지나치게 복잡하다면 성능이 떨어질 수 있습니다.
Semi-supervised deep anomaly detection
- 가정
- 준지도 학습에서는 학습 데이터는 하나의 클래스만을 가진다고 가정합니다.
- 또한 anomaly score 를 측정하기 위해 아래의 가정을 따릅니다.
- Proximity and Continuity: 입력 공간(input space)와 feature space 두 공간에서 가까운 데이터는 같은 라벨을 공유할 가능성이 높습니다.
- 정상 / 비정상 데이터를 구분할 수 있는 robust feature가 딥뉴럴 네트워크의 히든 레이어에서 학습됩니다.
- 계산 복잡성
- 지도학습의 계산 복잡성과 유사합니다.
장점 및 단점
- 준지도학습 GANs 는 적은 라벨링 데이터만을 사용하고도 좋은 성능을 보여주었습니다.
- 라벨링된 데이터를 사용한다는 것은 비지도학습과 비교해 상단한 성능 향상을 기대할 수 있습니다.
- 은닉층이 소수의 이상 데이터에 적합하지 않을 수 있으며 이는 과적합 문제로 이어집니다.
Hybrid deep anomaly detection
- 딥러닝 모델들은 feature extractors 로 많이 사용됩니다.
- DHM은 2단계 과정을 적용함으로써 주목할만한 성능을 보여주었습니다.
- 가정
- 딥뉴럴 네트워크의 은닉층에서 추출된 특성은 비정상 데이터의 존재여부를 판별하는 것에 도움을 줍니다.
- Robust 한 anomaly detection 모델을 만들기 위해서는 feature extractor와 anomlay detector를 필요로 합니다.
- 계산 복잡성
- DHM의 복잡성은 딥러닝 모델과 전통 알고리즘의 복잡성을 모두 고려해야 합니다.
- 장점 및 단점
- Feature extractor는 '차원의 저주' 라는 유명한 문제를 해소하는데 큰 도움을 줍니다.
- DHM 모델은 축소된 차원내에서 linear/ nonlinear kernel을 적용하기 때문에 매우 효율적입니다.
- Hybrid한 접근법은 일반적인 loss값을 사용하는게 아니며 은닉층에 직접적으로 적용할 수 없기 때문에 suboptimal한 경우가 많습니다.
- 모델의 깊이가 깊어질수록 좋은 성능을 보여주는데 이는 계산 복잡성을 높이게 됩니다.
One-class neural networks (OC-NN) for anomaly detection
- OC-NN은 딥뉴럴 네트워크의 feature extractor 능력을 사용해 정상 / 비정상 데이터를 분리하는데 사용한 모델입니다.
- OC-NN은 목표 함수를 사용해 은닉층을 최적화할 수 있다는 강점이 있습니다.
- 가정
- OC-NN은 은닉층 내에서 데이터 분포의 공통 요인을 추출합니다.
- 혼합된 representation learning 수행하며 테스트 데이터의 outlier score를 계산합니다.
- Anomalous sample 은 공통 요인을 가지고 있지 않기 때문에 은닉층이 representation을 찾아낼 수 없습니다.
- 계산 복잡성
- OC-NN의 복잡도는 오직 딥뉴럴 네트워크에 의해서만 결정됩니다.
- 장점 및 단점
- OC-NN은 뉴럴 네트워크를 학습함과 동시에 데이터를 포괄하는 hypersphere / hyperplane도 학습합니다.
- OC-NN 모델은 학습하는 것은 최소화 알고리즘의 대안을 제시합니다.
- 학습 시간이 다소 긴 편입니다.
- 입력공간에 변화가 있을때 업데이트도 다소 긴 편입니다.
Unsupervised Deep Anomaly Detection
- 비지도학습은 기계학습 연구에서도 중요한 분야로 autoencoder를 적용한 anomaly detection들이 매우 좋은 성능을 보여주고 있습니다.
- 가정
- original / latent feature 공간에서 정상과 비정상 데이터들은 서로 구분됩니다.
- 주류 데이터들은 정상으로 간주됩니다.
- 비지도학습 모델은 거리나 밀도와 같은 특성을 사용해 outlier score을 계산할 수 있습니다. 모델의 은닉층은 이러한 특성을 학습하는데 목적이 있습니다.
- 계산 복잡성
- 일반적으로 autoencoder 를 사용한 모델은 계산 복잡성이 높은 편 입니다.
- 장점 및 단점
- 정상과 비정상 데이터를 구분하기 위해 데이터에 내재된 특성을 학습할 수 있습니다.
- Annotated 데이터를 필요없기 때문에 비용면에서 효율적입니다.
- 일반적으로 복잡한 데이터에서 공통점을 찾아내는 것은 쉬운 문제가 아닙니다.
- Autoencoder를 사용할 때 축소될 차원을 조절하는 것도 별개의 최적화 문제입니다.
- 비지도학습은 노이즈에 매우 민감한 편이며 보통 지도/준지도 학습에 비해 성능이 낮습니다.
Miscellaneous Techniques
- 위에서 소개한 방법들이 가장 대표적인 anomaly detection 방법들이며 그 외에도 다양한 방법들이 존재합니다.
- Transfer Learning based anomaly detection
- 전이학습은 학습 데이터가 충분하지 않을 때 활용할 수 있는 방법입니다.
- 전이학습의 목표는 소스 도메인의 지식을 목표 도메인에도 적용하는 방법으로 학습 데이터와 미래의 데이터가 반드시 같은 분포에서 왔다는 가정을 하지 않습니다.
- Zero Shot learning based anomaly detection
- zero-shot 학습은 학습에서 한번도 보지 못했던 데이터를 구분하는 것을 목표로 합니다.
- Ensemble based anomaly detection
- 딥러닝 모델의 문제점 중 하나는 노이즈에 민감하다는 것 입니다. 이 문제를 해결하기 위해서 autoencoder 의 연결을 랜덤하게 변화했더니 좋은 결과를 얻을 수 있었습니다.
- Clustering based anomaly detection
- Deep Reinforcement Learning (DRL) based anomaly detection
- 강화 학습을 이용한 anomaly detection은 복잡한 데이터도 학습이 가능하다는 점에서 주목받고 있습니다.
- DRL 은 anomaly 에 대한 어떠한 가정도 하지 않으며 그저 보상을 강화하는 방법으로 anomalies를 식별합니다.
- Statistical techniques deep anomaly detection
- Transfer Learning based anomaly detection