Anomaly detection

김강태·2021년 3월 11일
0

논문리뷰

목록 보기
5/5

Intro


  • 이번 포스팅은 3개의 논문을 참조하여 작성하였고 논문의 Anomaly Detection 모델, 알고리즘과 같은 방법론적 내용소개를 제외하고 Anomaly Detection의 유형, 여러 domain에서의 적용사례를 소개합니다.

What are anomalies?


  • Anomaly detection이란 대부분의 데이터와 크게달라 문제가 될 수 있는 rare items, events or observations를 구별하는 문제를 의미하며 anomalies는 데이터마이닝, 통계학 문야에서 abnormalities, deviants, or outliers등으로 불리기도 한다.

  • Anomalies는 data의 error에 의해서 발생하기도 하지만 새롭고 이전에 알려지지 않은 프로세스를 나태내기도 한다. 다시말해 다른 메커니즘에의해 발생된것마냥 다른 관측치와는 매우 다른 관측치를 말한다.

  • 위 그림에서 N1N_1N2N_2 구역은 normal data로 고려할 수 있지만 O3O_3 구역과 O1O_1, O2O_2 point는 bulk of data points(N1,N2N_1,N_2)에서 멀리 떨어져 있기에 anomalies라고 고려할 수 있다.



What are novelties?


  • Novelty detection은 error에 의한 것이 아닌 데이터에서 이전에 관찰되지 않은 새로운 패턴을 식별하는 것을 말한다.

  • 위 그림처럼 일정 decision threshold로 결정된 바운더리 밖의 말, 표범과 같은 data를 anomalies라고 할 수 있지만 흰사자 같은 경우 바운더리 안에 포함되지만 이전에 보지 못한 새로운 패턴을 보이는 data를 novelties라고 할 수 있다.



Type of Anomaly


  • Anomalies는 아래 그림처럼 point anomalies, contextual anomalies, collective anomalies 3개의 타입으로 크게 분류 할 수 있다.


1. Point Anomalies

  • Point Anomalies는 불규칙적으로 랜덤하게 발생하는 individual data point를 나타내며 위에서 보았던 2-dimensional data 그림에서 O1O_1O2O_2가 이에 해당한다.

  • 이러한 예시로는 illegal transaction in fraud detection, an image of a damaged product in manufacturing등 이 있다. (밑에서 더 살펴볼 예정)


2. Contextual Anomaly Detection

  • Contextual Anomaly Detection은 시간, 공간 혹은 그래프의 연결과 같은 특정 상황에서의 비정상적인 data instance를 말한다.

  • 시간적 context의 예시로는 아래 그림에서 (a)가 나타내는 Temperature data의 anomalies, (b)가 나타내는 System logs anomaliy가 있다.


Collective or Group Anomaly Detection

  • Collective or group anomalies는 각각 data point는 정상적으로 보일수 있지만 이것들이 그룹으로 관측되어 비정상으로 간주되는 이상치를 말한다. (맨 위 그림에서 O3O_3)

  • 아래의 그림에서 신용카드 거래 내역중 $75로 나타난 group of transactions을 이러한 collective or group anomaly 로 간주될 수 있다.


ANOMALOUS INSTANCE DETECTION IN DEEP LEARNING - A SURVEY

  • 위 논문에서는 아래의 그림처럼 novel and out-of-distribution examples을 포함하는 Unintentional Anomalies 와 adversarial examples를 나타내는 Intentional Anomalies 로 Anomaly Detection 유형을 나누었다.



Applications of Deep Anomaly Detection


  • 몇가지 application domain에서의 anomaly detection 예시들을 살펴보자.

  1. Intrusion Detection(침입 탐지)

    • Intrusion Detection system(IDS)는 컴퓨터 시스템 혹은 네트워크 트래픽에서 의심스러운 활동이 있는지 모니터링하여 해당 활동이 발견되면 경고를 발생시키는 시스템이다.

    • IDS는 host내에서 발생하는 system call log, RAM, file system 등의 sequence를 모니터링하며, 네트웍상에서 패킷을 모니터링하여 anomalies를 감지한다.


  1. Fraud Detection(사기 탐지)

    • Fraud detection은 은행, 보험, 법률 집행 등과 같은 많은 전자 상거래 영역에서 발생하는 부정 행위 혹은 범법 행위를 감지하는 것을 말한다.

  1. Malware Detection (악성코드 탐지)
    • 말 그대로 악성코드 탐지

  1. Medical Anomaly Detection

    • Medical Anomaly Detection은 의료 영상, 임상 뇌파기록 등의 의학 데이터에서 이상치를 감지하는 것으로 imbalanced data에 대한 분석이 주된 과제이다.
    • 이러한 Medical Anomaly Detection은 높은 정확도를 요구하며 주로 X-ray, CT, MRI, PET 등의 의학 장비로부터 나오는 이미지 혹은 signal을 다루게된다.

  1. Social Networks Anomaly Detection

    • SNS상의 불규칙적이며 스팸 발송, 성희롱, 온라인 사기, 가짜 사용자 등 불법적인 이상치를 감지한다.

  1. Log Anomaly Detection

    • Log file의 text data를 가지고 pattern matching(정규표현식)을 사용하여 시스템 실패를 불러오는 문자열을 감지하는 것이 목적이다.

  1. IoT Big-Data Anomaly Detection

    • IoT에서 사용하는 센서들로부터 이상치를 감지하는 것. 보통 센서와 장치들이 복잡하게 상호연결되어있기에 어려운 과제이다.

  1. Industrial Anomaly Detection

    • 산업 속 제조업 데이터에 대한 이상치를 감지하는 것으로 외관상에 발생하는 결함과, 장비의 고장 등의 비정상적인 sample이 굉장히 적은 수로 발생하지만 정확하게 예측하지 못하면 큰 손실을 유발한다.

  1. Video Surveillance

    • 비디오 영상에서 이상한 행동이 발생하는 것을 모니터링하는 것으로 로 CCTV를 이용한 사례가 주를 이룬다.



Outro...


  • 위 내용 외에도 논문에서는 여러 관점에서의 Anomaly Detection 방법론을 소개한다.

    • 딥러닝기반 Anomaly Detection은 여러 측면으로 분류할 수 있으며 이에따른 분석방법이 다르게 적용된다.
    • 또한 label의 유뮤에 따라 Supervised, Semi-supervised (One-Class), Unsupervised Anomaly Detection 학습 방법이 나누어질 수 있다.
  • 이렇게 여러 분류로 나누어질수 있는 Anomaly Detection task들과 그에맞는 model들 그리고 딥러닝 이전의 svm, PCA와 같은 model들에 대한 소개는 추후에 포스팅하려합니다.



References


profile
개썅마이웨이로 shine my way

0개의 댓글

관련 채용 정보