[논문리뷰 | Anomaly] Anomaly Detection with Generative Adversarial Networks for Multivariate Time Series (2019) Summary

9e0na·2023년 10월 3일
1

[논문리뷰]

목록 보기
22/42
post-thumbnail

Title

  • Anomaly Detection with Generative Adversarial Networks for Multivariate Time Series

이 논문 리뷰는 DSBA(김창엽) 논문 리뷰를 참고하여 작성하였습니다.


0. 논문 읽기 전에 알면 좋을 것

Cyber-Physical Systems (CPSs)

사전적 의미의 CPSs는 다음과 같음.

  • 컴퓨터, 네트워크 및 물리 프로세스를 통합하는 시스템을 의미
  • 컴퓨터 기반 알고리즘에 의해 제어하고 모니터링하는 메커니즘
  • 물리적 세계와 컴퓨터의 디지털 세계를 연결하는 시스템으로, 이를 통해 더 효과적이고 지능적인 방식으로 물리적 환경을 모니터링하고 제어할 수 있음.
  • ex) 자율 주행 시스템, 의료 모니터링, 로보틱스 시스템, 프로세스 제어 시스템 등

Abstract

📌 Cyber-Physical Systems (CPSs)

  • 네트워크화된 센서와 액추에이터는 그 크기와 복잡성으로 인해 사이버 공격의 위험에 노출되어 있음.
  • 기존의 접근 방식은 CPSs의 복잡하고 변화하는 특성을 효과적으로 관리하기 어려움.
  • 네트워크에 연결된 센서와 액추에이터는 침입을 추적하기 위한 방대한 데이터 흐름을 제공
  • 시스템의 동작을 파악하고 잠재적 위협으로 인한 비정상적인 행동을 찾아내기 위해 비지도학습 방식의 머신러닝을 활용할 수 있음.

📌 GAN 기반 이상 탐지인 GAN-AD 제안

  • GAN 내에서 CPSs의 센서와 액추에이터의 정상 작동 다변량 시계열 데이터를 잡아내기 위해 LSTM-RNN을 활용함.
  • 단독으로 각 센서와 액추에이터의 시계열을 다루는 대신, CPSs 내부의 다수의 센서와 액추에이터 시계열 데이터를 함께 처리함.
  • Generator가 만든 데이터와 실제 샘플 사이의 차이(residual)를 이용해 CPSs의 복잡한 구조에서 잠재적인 이상치를 찾아내려는 시도를 함.
  • GAN-AD 기술을 활용해 정상 조건과과 비정상 공격 상황을 구별하도록 설계함.
    🤜 대상 데이터는 6단계 Secure Water Treatment (SWaT) System임.
    🤜 실험 결과, 제안 방법론이 다양한 공격에 의한 이상치를 찾음.
    🤜 기존 방법 대비 높은 탐지율과 낮은 fasle positive rate을 나타냄.

1. Introduction

📌 Cyber-Physical Systems (CPSs)

  • CPSs는 중요한 업무 수행을 위해 상호 연동된 물리적 구조로 구성됨.
  • IoT의 출현은 CPSs의 보급을 가속화시켰으며, 이로 인해 다수의 장치와 시스템이 네트워크상에서 독립적으로 소통하게 됨.
  • CPSs에 대한 사이버 공격은 가장 큰 잠재적 리스크 중 하나로 간주됨.

📌 전통적인 이상 탐지 방법의 한계

  • CUSUM, EWMA, Shewhart control Chart와 같은 통계 기반 제어 방법이 널리 적용되고 있음.
  • IoT의 출현으로 인해 CPSs의 동적이고 복잡한 성질을 관리하는 것이 어려워짐.

📌 머신러닝 방법론을 사용

  • 시그니처 중심의 접근법을 초월하여 빅데이터를 기반으로 한 더 스마트하고 유연한 해결책을 창출함.
  • 이상 징후나 침입을 감지하기 위해 다양한 머신러닝 방법론, 예를 들면 지도학습 및 비지도학습을 적용하기 시작함.

하지만 머신러닝을 통한 이상 탐지 방식에는 한계점이 존재했음.

  • 지도학습 방법은 신뢰성 있는 정상 데이터와 태깅된 비정상 데이터가 요구되며, 이에 따라 데이터 수집과 레이블링, 클래스 간 불균형 등의 문제가 발생
  • 비지도 학습 기반 기법은 선형 Projection & Transformation 활용

📌 이와 같은 한계점을 극복하기 위해 GAN-AD 방식을 도입

  • 비지도 학습 방식을 사용하는 이 모델은 다중 시계열 데이터 사이의 비선형 연관성을 파악하고 학습함.

1.1. GAN-AD

  • 시계열 데이터를 다루기 위해 Generator(G)와 discriminator(D)는 각각 LSTM-RNN으로 설계됨.

📌 과정

(1) G는 잠재 공간에서 추출한 정보로 가상의 샘플을 생성하고 이를 D에게 제공하여 실제 데이터와의 차이를 판별하게

(2) D의 결과를 기반으로 시스템은 D와 G의 파라미터 값을 조정함

(3) D는 진짜와 허구인 샘플을 가능한 한 정확하게 구분하도록 학습

(4) G는 D를 속이기 위해 최대한 스마트하게 훈련함.

  • AnoGAN과 구조가 비슷함.
  • 다른 점은 LSTM-RNN 구조만 다름.

📌 Discriminator

  • 위의 그림은 이상 탐지를 위한 도구임.
  • 실시간으로 얻은 Test sample과 Latent Space에서 Mapping하여 재구성한 sample 사이의 residual를 이용
  • 실시간 Seires를 분류하고 Discriminator로 이상탐지작업을 수행함.

📌 과정

(1) Invert Mapping
: Test Sample -> Latent Space

(2) Residual Loss 계산
: Latent Space (z)로부터 데이터를 생성한 것과 기존 데이터 사이의 차이를 계산함.

(3) Discrimination Loss 계산
: Test Sample -> 학습한 D

(4) 두 Loss를 결합
: Residual Loss + Discrimination Loss를 결합해서 시퀀셜 CPSs 데이터의 잠재적 이상치를 탐지


2. Related Works

Anomaly Detection

Statistical Process Control (SPC)

  • 제조 공정의 품질을 모니터링하고 관리하기 위해 단변량 or 다변량 분석을 진행
  • 대체로, 제조 공정에서의 평균과 분산의 변동을 확인
  • 다중 변수 간의 관계를 모델링함.
  • 그러나 SPC 방법론은 여러 시퀀스 사이의 관계를 효과적으로 표현하는 데 한계가 있으며, 복잡하고 대용량의 데이터를 처리하는 현재의 CPSs에 적합하지 않음.

3. Anomaly Detection with Generative adversarial training

3.1. GAN with LSTM-RNN

  • LSTM-RNN은 메모리 셀을 활용하여 정보를 과거 방향으로 전송하며, 이를 통해 복잡한 시계열 데이터를 이해할 수 있음.
  • CCPSs에서 발생하는 시계열 데이터를 다루기 위해, GAN 내의 G와 D 모두에서 LSTM-RNN을 적용
  • GAN 모델을 two-player minimax 게임으로 학습 시킴.

minGmaxDV(D,G)=εxpdata (x)[logD(x)]+εzpz(z)[log1D(G(z))]\min _G \max _D V(D, G)=\varepsilon_{x \sim p_{\text {data }}(x)}[\log D(x)]+\varepsilon_{z \sim p_z(z)}[\log 1-D(G(z))]

  • 위의 식은 AnoGAN에서 언급되었으므로 pass

📌 Generator

  • LSTM-RNN 모델
  • 생성한 sample에 대한 확률 분포를 암묵적으로 정의
  • GrG_rn_nn_n(z)(z) -> z는 random한 Latent Vector 분포

📌 Discriminator

  • LSTM-RNN 모델
  • 예측된 레이블과 시퀀스 레이블 사이의 평균적인 네거티브 cross entropy를 최소화하도록 훈련

📌 Discrimination Loss

📌 Generator Loss

  • G는 생성된 샘플들이 D에 의해 실제로 인식되게 하는 방식으로 학습

📌 pseudo code

  • 총 3가지 부분으로 나누어져 있음.
  • 파란색 부분은 GAN을 학습시키는 부분임.
    (학습이 끝났을 때 G와 D를 고정시킴)
  • 초록색 부분은 최적의 ZkZ^k 찾는 과정임.
  • 빨간색 부분은 Residuals Loss와 Discrimination Loss를 구한 후 최종적인 Anomaly score를 구하는 과정임.

3.2. GAN-based Anomaly Score

  • AnoGAN와 같이 CPSs 시계열 데이터의 이상 탐지는 Residuals과 Discrimination으로 구성됨.
  • Test Sample과 일치하는 최적의 ZkZ^k를 찾는 과정임.
  • 반복을 통해 에러가 충분히 작아지면 sample ZkZ^k를 Test sample에 대응하는 Latent Space에 위치한 매핑으로 정함.

📌 Anomaly Detection with Discrimination

📌 Anomaly Detection with Residuals

📌 최종 Anomaly Score

  • Mini-batch stochastic optimization을 활용하여 학습함.


3.3. Anomaly Detection Framework

  • LSTM-RNN은 고차원 입력을 갖고 높은 계산 복잡도를 갖음.
  • PCA를 활용하여 고차원의 데이터를 사영 공간으로 변환하여 차원을 줄인 후 GAN에 데이터를 제공함.
  • 사영 시킨 변수 값을 GAN-AD 모델에 전달한 뒤 Anomaly Score를 구함.

4. SWaT System and Cyber-Attacks

📌 SWaT

  • SWaT의 수질 정화 과정은 P1~P6라 하는 6개의 하위 공정으로 구성됨.

📌 Cyber-Attacks

  • 사이버 공격과 시스템 대응을 조사하기 위해 SWaT 시스템에 대한 다양한 실험 수행

5. Experiments

📌 다변량, 단변랑 데이터에 대한 GAN의 성능

  • 50번의 반복 이후, 다변량 데이터에 대해서도 실제 데이터와 유사한 시간 연속성을 가진 시퀀스를 만들어냄.
  • GAN 구조가 제대로 학습되었음을 알 수 있음.

📌 GAN-AD 평가 지표

  • Accuracy, Precision, Recall, F1 Score, FPR
  • 공격 탐지하면 Label 1 부여

📌 Anomaly Detection Results

단변량 data
: 성능 Good

다변량 data

  • 다변량 시계열에서 이상치 문제를 해결
  • 고차원 데이터를 PCA 사영해 저차원으로 변환
  • 제안 방법론인 GAN-AD를 통해 성능 향상


6. Conclusions

  • GAN-AD라는 새로운 GAN 기반의 다변량 시계열 이상 탐지 방법을 도입
  • CPSs에서의 정상적인 다중 센서 데이터의 패턴을 GAN으로 캡처하며, 시간적 특성을 잡기 위해 LSTM 구조를 채택함.
  • 비지도 학습 접근법을 취하였으며, GAN-AD는 기존의 방법들에 비해 더 뛰어난 성능을 보임.

🎯 Summary

  1. 저자가 뭘 해내고 싶어 했는가?
  • 복잡한 네트워크화된 Cyber-Physical Systems (CPSs)에 대해 새로운 Generative Adversarial Networks 기반의 이상 탐지 방법 (GAN-AD)을 제안
  • CPSs의 정상 작동 조건에서 센서와 액추에이터의 다변량 시계열 분포를 포착하기 위해 LSTM-RNN을 사용
  1. 이 연구의 접근 방식에서 중요한 요소는 무엇인가?
  • GAN의 Generator와 Discriminator 모두에서 LSTM-RNN을 사용하여 CPSs의 다변량 시계열 데이터를 처리함.
  • 각 센서와 액추에이터의 시계열을 독립적으로 처리하는 대신, CPS 내의 여러 센서와 액추에이터의 시계열을 동시에 모델링하여 그들 사이의 잠재적 상호 작용을 고려하는 것
  1. 어느 프로젝트에 적용할 수 있는가?
  • 네트워크화된 Cyber-Physical Systems (CPSs)에 적용
  1. 참고하고 싶은 다른 레퍼런스에는 어떤 것이 있는가?
  • AnoGAN
  • LSTM-RNN
  1. 느낀점은?
  • 기존 LSTM-RNN과 AnoGAN을 결합한 방법론이었음. AnoGAN을 안 읽은 사람들이라면 이걸 먼저 꼭 읽거 오자!
  • 논문 설명이 친절하게 잘 나와있어서 이해하기 수월했음.
  • 다음 이상치 탐지 논문 Let's go!

📚 References

논문

Youtube

profile
디지털 마케터가 되기 위해 [a-zA-Z]까지 정리하는 거나입니다 😊

0개의 댓글