2023-11-14,   Gun-ha, KANG

이번 포스팅에서는 TadGAN(2020’)을 공유해보려고 합니다.

TadGAN

  • 비지도 GAN-reconstruction 기반 이상탐지 방법 제안
    • Generator 2개, Discriminator 2개 사용
    • Cycle consistency GAN 구조를 통해 time series to time series 매핑
  • 모델 자체 개선과 더불어, 후처리 공정에 힘씀
    • Reconstruction Error 계산 시, Point difference, Area difference, DTW 등 척도 2개 사용
    • Anomaly Score 계산 시, robust한 점수 도출 가능
  • 시계열 벤치마크 데이터셋 11개 중 6개에서 높은 F1-score 기록

개요

  • 다변량 시계열에서 정상 패턴을 따르지 않는 time segment 집합 찾기를 목표로 함

Screenshot_4

Model architecture

  • Critic 2개와 Generator 2개로 구성
    • Critix X : 어떤 데이터가 원본인지 판별
    • Critix Z : Generator Encoder 성능 평가 (잘 매핑했는지)
    • Generator Encoder : 시계열 시퀀스를 latent space로 바꿔주는 역할
    • Generator Decoder : latent space를 시계열 시퀀스로 바꿔주는 역할

Screenshot_5

  • 가중치 업데이트

Screenshot_6

Wasserstein loss

  • Mode Collapse 문제 해결
  • 결합분포는 추적이 불가능하기에 이를 k-lipschitz continuous를 만족하도록 제약시킴
    • 1-lipschitz continous로 제약시킴으로써, 모든 W가 compact parameter가 됨 (G,D 모두, 특히 D)
    • fw에 상한과 하한이 생기면서 제약을 강제로 만족 (gradient 손실이 없음)

Screenshot_3

  • Vanilla GAN은 주어진 실제 확률분포와 예측분포 사이의 JSD(Jensen-Shanon Divergence)를 최소화함
    • 단, 두 분포가 겹치지 않을때, 상수값을 가짐으로써 gradient 계산으로 Optimal을 찾을 수 없음
  • WGAN의 Wasserstein loss (or Earth Mover distance)를 통해 거리를 추정
    • gradient 소실문제 완화

Screenshot_2

Cycle consistency loss

  • 순환구조 도입
    • G: X -> Y 와 F: Y -> X, 두 함수 사용
    • 순환구조를 통해 얻은 변환 결과가 원래의 입력에 가까워지도록 학습

Screenshot_1

Full Objective

  • Vx : G와 유사한 데이터를 생성하도록, Cx는 생성된 데이터와 실제 데이터를 잘 구분하도록 학습
  • Vz : E는 latent space 로 매핑을 잘하도록, Cz는 z로부터의 샘플과 E(x)를 잘 구분하도록 학습
  • Vl2 : 잘 복원하도록 학습
    • z 또한 해당 loss를 사용하려고 했으나, 실험 결과 효과가 없었음

Screenshot_7

Anomaly Score

  • Anomaly Score = Reconstruction(x) + CriticX(x)
    • Reconstruction score는 높을수록, Critic score 는 낮을수록 비정상 점수를 의미
  • Combining both scores
    • Z score를 계산한 후, linear하게 더해주거나 곱해줌

Screenshot_9


  • Anomaly Socre Criterion: Reconstruction Error (택 1)

Screenshot_8

  • Anomaly Socre Criterion: Critic Outputs
    • 0과 1사이의 확률값(Realness)

Experiments

  • 왼쪽 그림
    • Baselines 간의 F1-score 비교
    • AE 계열, GAN 계열 간의 비교는 딱히 볼게없음
    • TADGAN이 6개의 모델에서 최고성능을 보였음
    • ARIMA가 2개의 데이터셋에서 최고성능을 보였음
  • 오른쪽 그림
    • x축: ARIMA 기준 얼마나 개선되었는가 (데이터셋 평균 F1-score)
    • TADGAN과 LSTM 만 개선되었음을 확인 가능 (%P인지 %인지는 모르겠음)

Screenshot_10

  • Variations of TadGAN
    • Anomaly Score Criterion 조합은 Critic과 DTW를 썼을 때 제일 좋았음

Screenshot_11

참고 논문


Contact Author. KangGunha Email. zxcvbnm9931@epozen.com

업데이트: