본문 바로가기
  • 데이터에 가치를 더하다, 서영석입니다.
연구 활동/이상 탐지 프레임워크 설계

[이상치 탐지] 논문리뷰 - A Deep Neural Network for Unsupervised Anomaly Detection and Diagnosis in Multivariate Time Series Data (1)

by 꿀먹은데이터 2022. 2. 25.

A Deep Neural Network for Unsupervised Anomaly Detection and Diagnosis in Multivariate Time Series Data


본 포스팅은 비지도학습이며 이상치 탐색, 시계열이라는 세가지 키워드를 가진 논문이다. 앞으로 진행할 이상치 탐색에 있어서 필요한 논문이며 AAAI-19에서 발행된 논문이다. 앞으로 3-4번에 걸쳐 포스팅될 예정이며, 마지막 포스팅에는 요약을 적을 예정이다.

0.    Abstract

 다변수 시계열 데이터는 발전소, 웨어러블 장치 등과 같은 다양한 실제 시스템에서 점점 더 많이 수집되고 있다. 다변수 시계열의 이상 감지 및 진단은 특정 시간 단계에서 비정상 상태를 식별하고 근본 원인을 찾아내는 것을 의미한다. 그러나 이러한 시스템을 구축하는 것은 각 시계열의 시간적 종속성을 캡처해야 할 뿐만 아니라 시계열의 서로 다른 쌍 간의 상호 상관 관계를 인코딩해야 하기 때문에 어렵다. 또한 시스템은 소음에 강해야 하며 다양한 사고의 심각도에 따라 다양한 수준의 이상 점수를 운영자에게 제공해야 한다. 비지도 학습 이상 탐지 알고리즘이 많이 개발되었음에도 불구하고 이러한 문제를 공동으로 해결할 수 있는 알고리즘은 거의 없다.

 

본 논문에서는 다변수 시계열 데이터에서 이상 탐지 및 진단을 수행하기 위한 MSCRED(Multi-Scale Convolutional Recurrent Encoder-Decoder)를 제안한다. 특히 MSCRED는 먼저 다중 스케일(해상도) 서면행렬(Signature matrices)를 구성하여 서로 다른 시간 단계에서 시스템 상태의 다중 레벨을 특성화한다. 그 후, 서면행렬이 주어지면 컨볼루션 인코더를 사용하여 센서 간(시계열) 상관 관계를 인코딩하고 주의 기반 ConvLSTM(Convolutional Long-Short Term Memory) 네트워크를 개발하여 시간 패턴을 캡처한다. 마지막으로, 센서 간 상관 관계와 시간 정보를 인코딩하는 기능 맵을 기반으로 하여 입력 서명 행렬을 재구성하는 데 컨볼루션 디코더가 사용되고 이상 징후를 감지하고 진단하는 데 잔여 서면행렬이 추가로 활용된다. 합성 데이터 세트와 실제 발전소 데이터 세트를 기반으로 하는 광범위한 경험적 연구는 MSCRED가 최첨단 기준 방법보다 성능이 우수함을 보여준다.

  • 다변수 시계열 데이터에서 이상 탐지 및 진단을 수행하기 위해 MSCRED를 제안
  • Convolution Encoder를 사용하여 시계열 간 상관 관계를 인코딩
  • ConvLSTM 네트워크 개발하여 시간 패턴을 캡처

1. Introduction

 복잡한 시스템은 현대 제조 산업 및 정보 서비스에서 어디에나 있다. 이러한 시스템의 동작을 모니터링하면 IT 시스템에서 발전소 또는 연결된 구성 요소(: CPU 사용량 및 디스크 I/O)에 분산된 네트워크 센서(: 온도 및 압력)의 판독값과 같은 상당한 양의 다변수 시계열 데이터가 생성된다.

  1  (a)  시계열에서의 비지도 이상치 탐색 및 분석, (b) 정상과 비정상 구간에서 다른 서면행렬

이러한 시스템을 관리하는 데 있어 중요한 작업은 운영자가 근본적인 문제를 해결하기 위해 특정 시간 단계에서 이상을 감지하는 것이다. 예를 들어, 센서 데이터를 기반으로 이상 점수를 생성하고 발전소 고장의 지표로 사용할 수 있다. 자동차 제조 공장의 1분 다운타임이 최대 20,000달러의 비용이 들 수 있다고 보고되었으므로 정확한 탐지는 심각한 재정 및 비즈니스 손실을 방지하는 데 중요하다. 또한 근본 원인, 즉 어떤 센서(시스템 구성 요소)가 이상 원인인지 식별하면 시스템 운영자가 적시에 시스템 진단 및 수리를 수행하는 데 도움이 될 수 있다. 실제 응용 프로그램에서 일시적인 난기류 또는 시스템 상태 전환으로 인한 단기적인 이상이 최신 시스템의 자동 복구 기능 및 견고성으로 인해 결국 진정한 시스템 오류로 이어지지 않을 수 있는 것이 일반적이다.

 따라서 이상 탐지 알고리즘이 다양한 사고의 심각도에 따라 다양한 수준의 이상 점수를 운영자에게 제공할 수 있다면 이상적일 것이다. 단순화를 위해 이 작업에서는 사고의 심각도가 이상 기간에 비례한다고 가정한다. 그림 1(a)는 다변수 시계열 데이터에서 빨간색 점선으로 표시된 A1 A2의 두 가지 이상 현상을 보여준다.

 

 

근본 원인은 각각 노란색과 검은색 시계열이다. A2의 기간(심각도 수준) A1보다 크다. 이상을 자동으로 감지하고 진단할 수 있는 시스템을 구축하기 위해 한 가지 주요 문제는 기록 데이터에서 사용할 수 있는 이상 레이블이 거의 또는 전혀 없어 감독 알고리즘이 실행 불가능하다는 것이다. 지난 몇 년 동안 많은 양의 비지도학습 이상 탐지 방법이 개발되었다. 가장 눈에 띄는 기술로는 거리/클러스터링 방법, 확률적 방법, 밀도 추정 방법, 시간적 예측 접근 방식, 딥 러닝 기술 등. 비지도학습임에도 불구하고 대부분은 다음과 같은 이유로 인해 여전히 효과적으로 변칙을 감지하지 못할 수 있다.

  • 다변수 시계열 데이터에는 시간적 종속성이 있다.

      이러한 이유로 거리/클러스터링 방법 (eg. KNN), 분류 방법(eg. SVM), 밀도 추정 방법 (eg. DAGMM)은 서로 다른 시간에 걸쳐 시간적 종속성을 포착할 수 없기 때문에 잘 수행되지 않을 수도 있다.

  • 다변수 시계열 데이터는 일반적으로 실제로 노이즈를 포함한다.

      노이즈가 상대적으로 심각해지면 ARMA(Autoregressive Moving Average) LSTM 인코더-디코더와 같은 시간 예측 모델의 일반화 기능에 영향을 미칠 수 있다. 그리고 FPD(False positive detection)을 높일 수 있다.

  • 실제 적용에서 운영자에게 다양한 사고의 심각도에 따라 다양한 수준의 이상치를 제공하는 것은 의미가 있다. RCA(Ranking Causal Anomalies)와 같은 근본 원인 분석을 위한 방법은 노이즈에 민감하여 이 문제를 처리할 수 없다.

 본 논문에서는 앞서 언급한 문제들을 고려하기 위해 MSCRED를 제안한다. 특히 MSCRED는 먼저 다중 스케일 서면 행렬을 구성하여 다른 시간에 걸쳐 시스템의 단계를 특성화한다. 특히 다양한 수준의 시스템 상태를 사용하여 비정상 사고의 심각성을 나타낸다. 그 후 서면 행렬이 주어지면, 센서 간 상관패턴을 인코딩하기 위해 컨볼루션 인코더가 사용되며 시간 패턴을 캡처하기 위해 ConvLSTM 네트워크가 개발된다. 마지막으로 센서 간 상관 관계와 시간 정보를 인코딩하는 기능맵을 사용하여 컨볼루션 디코더를 사용하는 서명 행렬을 재구성하고 잔여 서명 행렬을 추가로 사용하여 이상을 감지 및 진단한다.

  • 이상 감지 및 진단 문제를 3가지 기본 작업으로 공식화한다. 각 문제를 독립적으로 조사하는 이전 연구와 다름.
  • 시스템 서명 행렬의 개념 소개 및 컨볼루션 인코더를 통해 센서 간 상관 관계를 인코딩하는 MSCRED를 개발, 주의 기반 ConvLSTM 네트워크와 시간 패턴을 통합 및 컨볼루션 디코더를 통해 서명 행렬을 재구성
  • 합성 데이터 세트와 발전소 데이터 세트에 대해 광범위한 실증 연구를 수행

MSCRED Framework

이 절에서는 먼저 연구하고자 하는 문제를 소개한 다음 제안된 MSCRED(Multi-Scale Convolutional Recurrent Encoder Decoder)를 자세히 설명한다. 먼저 다중 스케일(해상도) 시스템 서명 행렬을 생성하는 방법을 보여준다. 그런 다음 컨볼루션 인코더를 통해 서명 행렬의 공간 정보를 인코딩하고 주의 기반 ConvLSTM을 통해 시간 정보를 모델링한다. 마지막으로 컨볼루션 디코더를 기반으로 서명 행렬을 재구성하고 제곱 손실을 사용하여 종단 간 학습을 수행한다.

  • 이상 감지, 즉 T 이후 특정 시간 단계에서 이상 이벤트 감지
  • 이상 진단, 즉 탐지 결과를 바탕으로 각 이상 징후의 원인이 될 가능성이 가장 높은 비정상 시계열을 식별하고 이상 심각도(기간 척도)를 정성적으로 해석하는 것