굴러가는 분석가의 일상

[논문리뷰] Unsupervised Deep Anomaly Detection for Multi-Sensor Time-Series Signals 본문

논문리뷰

[논문리뷰] Unsupervised Deep Anomaly Detection for Multi-Sensor Time-Series Signals

G3LU 2023. 10. 22. 00:59

실무 경험을 통해 설비 예지보전과 이상 탐지를 위한 다변량 통계적 공정 관리 관련하여 관심을 가지게 되었습니다. 파악된 센서 개소는 대략 몇천개 정도로  무수히 많았습니다. 단일 센서의 데이터 트렌드 분석은 MES에서 데이터를 끌어와 시각화 툴을 통해 파악할 수 있습니다. 하지만, 이상탐지를 기반으로 설비예지보전 및 SPC 진행하는 것에 대한 한계점이 있다고 생각했습니다. 수천 가지 센서 데이터의 전반적인 트렌드를 파악하는 것은 복잡한 과제입니다. 각 설비의 고유한 운영 패턴과 환경 파라미터의 변화를 고려하여 개별 센서 스펙을 설정하는 것이 현실적으로 매우 어렵기 때문입니다. 더불어, Noise/Normal/Abnormal의 대한 기준을 명확하게 나눌수 없는점이 가장 큰 Pain Point라고 생각했습니다. 

 


 

요약 

 

한줄 요약 : reconstruction과 predict을 동시에 진행하여 복잡한 spatial-temporal 패턴을 학습을 하게 됩니다. 

 

  • Characterization Network

    Deep Convolutional Autoencoder
    (Feature Extraction Module; extract low dimensional spatial features) 
    : Multi-Sensor에서 도출되는 방대한 양의 데이터는 작업환경에 따라 노이즈가 섞인 데이터가 도출됩니다. 이에 정상/비정상/노이즈 데이터 구분하는 것은 매우 복잡합니다. 이를 해결하기 위해 Spatial Dependence (공간 의존성) 을 Maximum Mean Discrepancy를 통해 구분.

    그럼 도대체 Spatial Dependence와 Maximum Mean Discrepancy가 무엇일까요?? 
    1. Spatial Dependence (공간의존성) 이란?
        • Tobler의 지리학 제 1법칙  : 한지점에서 측정된 현상이 다른지점에서의 측정 값과 서로 관련이 있다. 
        •  공간 의존성을 다루는 이유는 이와 같다고 생각합니다. 다양한 센서에서 도출되는 센서 데이터 값은  설비의 고유한 운영 패턴  및 환경 파라미터의 변화에 따라 상이하지 않을까요....????  (개인적인 의견)  
    2.  Maximum Mean Discrepancy 

말그대로 분포의 차이를 구하는 것 (Deep Convolutional AutoEncoder 향상 및 Noise Data의 영향 감소)

  • Memory Network  (Forecasting Module; to capture complex temporal dependencies)
    1. Linear prediction (Autoregressive Model) 
    2. non-Linear prediction (Bidirectional LSTM with Attention) 

 

즉, 두 개의 Sub-Network 모델은 (1) Reconstruction Error 및 Prediction Erorr 최소화 (2) Compound Objective Function 계산

을 통해 동시에 Optimize 가능한 End-to-End 모델임. 


서론이 조금 길었네요.... 이제 논문의 본론에 대해 작성해보겠습니다!!! 


Introduction (개요)

 

이상탐지 정의

: Two-Category Classification ---> Abnormal (비정상) 및 Normal (정상)에 의한 분류 

 

이상탐지의 어려움

  1. 데이터 불균형 (정상 데이터에 비해 비정상 데이터가 매우 적음) 
  2. 라벨링 데이터 부족 (직접적으로 라벨을 지정하는 것에 대한 한계) 

이상탐지의 문제점 

 

  1. 시계열 데이터 Temporal Component 때문에 Spatial-Temporal 도메인의 이상탐지의 복잡합.
    • PCA, K-means, OCSVM, Autoenconder 등과 같은 기존의 이상탐지 Unsupervised-Learning 기법들은 다변량 시계열 
      신호에 대해 처리가 불가능하고, Spatial & Temporal Dependencies에 대해 동시에 다루지 못함. 
  2. Reconstruction 기반의 모델 Convolutional AutoEncoder 및 Denoising AutoEncoder은 데이터의 Noise 때문에 비정상 데이터 복원에 용이 
    • 이에 Anomaly & Noise의 Robust한 모델이 생성이 됨.
  3. Multi- Sensor의 Dimensionality를 줄이기 위해 두 개의 모델을 JOINT 하여 학습하게 되는데, Local Optima에 빠지게 됨. 

핵심원리

전체적인 구조 

1. Deep Convolutional AutoEncoder 통해 Multi-Sensor 시계열 신호의 Spatial 정보를 저차원 표현으로 인코딩 

  • 통상적으로 Memory Module 및 Gaussian Mixture Model 통하여 노이즈 데이터의 영향을 줄이지만, 소개된 모델에서는 Maximum Mean Discrepancy Penalty 부여하였음. 이를 통하여 Training 데이터의 분포가 Gaussian Distribution 분포를 따르 도록 Approximate 통하여 Noise로 인한  overfitting 방지

2. Representation (저차원 표현) 및 Reconstruction Error를 Bidirectional LSTM과 Auto-Regressive Model로 전달 

  • Multi-Sensor의 시계열 신호 Spatial-temporal dependencies (시공간의 의존성) Capture 가능 
  • Temporal 정보를 모델링하고 Feature 예측

3. 네트워크를 거치게 되면서 파악 되었던 Loss 통합하여, Compound Objective Function 계산 값 기반으로 Anomalies 파악

 


Characterization Network 

해당 네트워크 계층에서는 Representation Learning 이루어짐.

 

(1) Multivariate signal의 Feature 요악 

(2) Distance Metrics (Euclidean, Minkowski 등) 통해 Reconstruction Error 값 도출 

 

AutoEncoder 통하여 Abnormal 데이터가 복원 잘하도록 Generalized 되면 안되기 때문에, Optimization Function에 Reconstruction loss 결합을 통해 Regularization. 

 


Deep Feature Extraction 

 

 

Deep Convolutional Autoencoder를 통해 encoder로 저차원 feature를 추출, decoder로 복원을 함.

 

(1) Encoder : Convolution 및 Max-Pooling Layer 통해 Multivariate 데이터의 저차원 Feature 추출 

(2) Decoder : Encoder에 사용 되었던 계층과 비슷하지만, transposed 계층으로 기존 데이터의 크기로 복원

(3) 복원된 데이터와 원 데이터 간의 Mean Squared Error (MSE)를 구함

 


Handling Noisy Data

 

 

노이즈 데이터의 영향을 최소화 하기 위하여, 저차원 Feature 및 분포에 대한 변화 (Changes)에 대해 세분화하게 파악해야함. 

 

본 논문의 저자는 Regularization tTerm으로 MMD 사용한  loss fuction 제안하였음 (저차원 공간의 데이터를 Mapping 하였을 때, 숨어있는Anomalies 찾기 위함)

 

※ Noisy data의 분포와 normal training data의 분포를 비슷하게 만들어 overfitting(과적합)의 위험을 줄임

 


Memory Network 

  • Complex Spatial-Temporal (시공간) 패턴을 찾기위해 Reconstruction 및 Prediction Analysis 동시에 수행 
  • Memory Netowrk는 Non-Linear 와 Linear Predictor으로 결합된 구조를 통해 current value인 z_h를 past value들 [z_1,...z_{h-1}]를 가지고 예측함 

 

1.  Non-Linear Prediction 

 

통상적으로 Non-Linear Prediction 방법으로는 RNN, LSTM, GRU 등 존재하지만 RNN의 장기 의존성 문제로 인하여, 본 논문에서는 Bidirectional LSTM with attention mechanism 채택하였음. BiLSTM은 두 가지의 방법으로 인풋을 실행시키게 되면서, PAST and FUTURE의 정보를 어느 시점에서든 보존 할 수 있음.

 

2. Linear Prediction

 

Non-Linear Prediction에서 언급되었던 방법이 효과적이고 강력해보이지만, Short-Term Modeling 관점에서는 Linear Prediction의 Autogressive Model 성능 또한 무시 못함. 따라서 Non-Linear Prediction Network와 Parallel하게 결합하여 사용.

 


Joint Optimization

Multi-Step Apporach는 Local Optima에 빠질 위험이 상당히 높음 

  1. 언급되었던 모델들이 따로 훈련/최적화 하기 때문
  2. 이에 본 논문의 저자는 Compound Objective Functuon을 최소화 하는 end-to-end hybrid model 제안 

따라서, CAE-M의 objective는 MSE (Reconstruction Error), MMD (Regularization), Prediction error (non-linear & Linear forcasting task)으로 구성되어 있음. 

 

 


실험/검증

 

Datasets

- PAMAP2 CAP Sleep Database Mental Fatigue Dataset
Abnormal Class 비교적 적은 Samples
(running, ascending stairs 등)
92명의 수면 패턴 (환자) Fatigue Data Sample
Normal Class  16명의 수면 패턴 (건강) Non-Fatigue Data Sample

Baseline Models 

본 논문에서 소개되었던 CAE-M 성능을 비교하기 위해 준비된 9개의 모델은 다음과 같습니다. 

 

(1) KPCA (Kernel Principal Component Analysis) 

(2) ABOD (Angle-Based Outlier Detection)  

(3) OCSVM (One-Class SVM)                            

(4) HMM (Hidden Markov Model) 

(5) CNN-LSTM 

(6) LSTM-AE

(7) ConvLSTM-Composite 

(8) UODA (Unsupervised Sequential Outlier Detection with Deep Architecture) 

(9) MSCRED (Multi-Scale Convolutional Recurrent Encoder-Decoder)

 

이를 통해 모델을 구현하였던 방법에서 대해서는 논문을 찾아보시는 것을 권유드립니다!!! 


Results and Analysis 

CAE-M 모델 및 Baseline의 평가 지표로 Mean Precision, Mean Recall, Mean F1-Score 사용

본 논문에서 소개되었던 CAE-M 모델이 모든 평가 지표에서 뛰어난 성능을 보임... 대단하네요

 

Fine-Grained Analysis 

  • 작업을 큰 단위 안에서도 세분화된 작업 프로세스를 만들어 실행하는 방식을 뜻 함. 

따라서, CAP Sleep Database의 Sleep Stage별로 이상 탐지 실험을 반복적으로 진행하였으나, S3의 Abnormal 경우를 제외하고 좋은 성능을 보임. 

 

※ CAE-M 모델의 Robust 성능을 보임 


Effectiveness Evaluation

(1) Leave one Subject Out 

  • N번의 모델을 만들 때 하나의 샘플을 제외하고, 그 이외 샘플을 통해 N개의 performance를 계산하여 평균내는 방식.
  • CAE-M 모델에서 우수한 성능을 보임.

 

 

(2) Ablation Study

  • "Feature"들을 순차적으로 제거 하는 행위가, 모델이나 알고리즘 성능에 얼마나 영향을 미치는지 확인 하는 것. 

  • CAE-M 모델의 모듈(Non-linear & Linear prediction, Reconstruction Error & MMD, Attention Mechanism, Autoregressive Model, MMD & attention module) 하나씩 제거하여 성능 파악 
  • 전체적으로 우수한 성능을 보이지만,   Reconstruction Error & MMD 제거하면 현저하게 낮은 F1-Score 도출

Robustness to Noisy Data 

  • Noise가 증가할수록 성능은 감소하지만, CAE-M 모델 경우 Noise Data에 대한 Robustness 보임. 

 

Parameter Sensitivity Analysis

  • 넓은 범위 안에서 파라미터를 변경하여도 대부분 안정적인 성능을 보임. 

 

Convergence Analysis 

  • 전반적으로 안정적인 성능을 보임 

Conclusion

  • 본 논문은 Deep Convolutional Autoencoding Memory Network (CAE-M)을 제시함으로써, multi-sensor의 시계열 정상 시계열 데이터에서 spatial-temporal corrleation을 학습하여 이상 탐지 수행 
  • Maximum Mean Discrepancy 패널티 적용한 CAE를 통해 noise에 의한 overfitting 방지
  • 순차 데이터의 temporal dependencies 반영하기 위해, non-linear (Bidirectional LSTM with Attention 모델) 및 
    (AR 모델) 기반으로 예측 

 

긴 글 읽어주셔서 감사합니다.

도움이 되셨으면 합니다!