이상 데이터 발생원인

  • 자연적으로 발생하는 abnormal 사건 이외에도 다양한 원인에 의해 이상 발생
  • 이상치(Outlier) 데이터를 분석하기. 사전 점검을 통해 발생 원인 제거가 가능하다.
  • 본격적인 데이터 분석 전 올바르게 데이터가 수집되어 있는 상황인지 사전 점검이 필수이다.

1. 표본추출 오류(sampling error)

  • 데이터를 샘플링 하는 과정에서 잘못 샘플링한 경우

2. 입력오류(data entry error)

  • 데이터를 수집, 기록, 입력하는 과정에서 발생하는 humman error, 데이터 분포로 쉽게 탐지가 가능하다.

3. 실험 오류(experimental error)

  • 실험을 통해 데이터를 수집하는 경우, 실험 조건이 동일하지 않은 경우 ex) 챔버A != 챔퍼B

4. 측정 오류(measurement error)

  • 측정 장비를 통해 데이터를 수집하는 경우, 측정기 자체에 오류가 발생한 경우

5. 데이터 처리 오류(Data preprocessing error)

  • 데이터 ETL(Extract > Transform > Load) 과정에서 발생할 수 있는 데이터 처리 오류

※ 이 과정을 철저하게 분석할 줄 알아야 함!! 그래야 이후에 작업을 진행할 수 있음.

6. 자연적 오류(natural error)

  • 자연스럽게 발생하는 이상 값. -> 우리가 데이터 분석을 통해 해결하려고 하는 문제

이상탐지의 종류 - Label

  • 현재 보유하고 있는 데이터의 성격에 따라 이상 탐지의 종류 및 해결 방법론이 결정된다.

1. Supervised Anomaly Detection

  • 모든 관측치에 대해 이상(abnormal)과 정상(normal)라벨이 붙어있는 경우, 자주 발생하지 않는 이벤트인 이상(abnormal)에 대해서 정의할 수 있는 상황이며, 충분히 학습할 만한 이상(abnormal)데이터가 확보되어 있는 상황
  • 일반적인 이진분류(binary Classification) 문제로 해결할 수 있다.
    ※ 이상(abnormal)의 종류가 다양하다면 Multi-Classification문제로 해결한다)
  • 이상(abnormal) 데이터 확보가 가능하나 적은 수의 데이터가 존재할 확률이 있으므로, 소수 클래스 문제, 불균형 문제를 해결해야 하는 상황을 고려할 수 있다.
  • 성능평가시 Accuracy 관점이 아닌, Recall, Precision 관점에서의 성능평가도 고려해야 한다. 이상(abnormal) 데이터가 매우 적기 때문에 Accuracy는 높게 산출될 가능성이 크다.
  • 장점 : 양/불 판정 정확도가 높다.
  • 단점 : Class-Imbalance 문제가 발생한다.

2. Semi-Ssupervised Anomaly Detection

  • 이상(abnormal)에 대한 라벨이 없으며, 정상(normal) 데이터만 보유하고 있는 상황, 충분히 학습할 만한 이상(abnormal) 데이터가 없을 수 정상(normal) 데이터만을 사용하여 이상(abnormal)을 탐지한다.

  • 정상(normal) 데이터의 패턴을 학습하여 이상(abnormal)데이터가 들어올 시 정상(normal)데이터와 차이점을 파악하여, 이상(abnormal) 데이터를 탐지한다.

  • 정상 데이터를 둘러싸고 있는 discriminative boundary(구분선)를 설정하고, 이 boundary를 최대한 좁혀 밖에 있는 데이터들을 이상(abnormal)로 간주하는 것이다.

  • 대표적인 방법 : OCSVM(One-Class Support Vector Machine)

  • 장점 : 연구가 활발하게 이루어지고 있고, 정상(normal)데이터만 있어도 학습이 가능하다.
  • 단점 : Supervised Anomaly Detection 방법론 보다 정확도가 떨어진다.

3. Unsupervised Anomaly Detection

  • 정상(normal)과 이상(abnormal)에 대한 라벨이 모두 존재하지 않는 경우

  • 모든 데이터를 활용하여 학습한다.

  • 일반적으로 딥러닝 알고리즘을 사용하여 정상 패턴을 학습하고, 학습된 모델을 통해 이상(abnormal)데이터를 탐지한다.

  • 장점 : 라벨링 과정이 필요가 없다.
  • 단점 : 정확도가 낮으며, hyper parameter에 매우 민감하다.

이상탐지의 종류 - Train Data

  • 새로운 관측치가 기존 분포에 속하는지, 기존 분포를 벗어 났는지를 구분.
  • 학습할 데이터를 어떻게 저의하는지에 다라 문제의 성격과 해결 방법론이 달라진다.

1. Outlier Detection

  • 학습 데이터를 통해 정상 데이터의 범위르 결정하고, 이를 초과할 시 이상 데이터로 간주한다.

  • 훈련 데이터 셋에 정상 샘플과 이상치 샘플을 모두 포함하고 있다. (대부분 정상 샘플)

  • Training data가 Outlier를 포함하고 있는 상황에서 Training Data에서 Central mode에 Fit 하는 것. (중앙에서 벗어난 데이터를 Outlier로 판단한다.)

2. Novelty Detection

  • 학습할 데이터가 이상치(Outlier)에 의해 오염되지 않았다고 가정한다.

  • 새로운 패턴에 데이터를 찾는것에 관심.

  • Out-Of-Distrubution(OOD) : 현재 보유하고 있는 In-Distribution 데이터 셋을 이용하여 Multi-Class Classification Network를 학습시킨 뒤, test 단계에서 In-Distribution test set은 정확하게 예측하고 Out-Of-Distribution 데이터 셋은 걸러내는 것을 목표로 한다.

  • 훈련 데이터 셋에 있는 모든 샘플과 달라 보이는 새로운 샘플을 탐지하는 것이 목적이다.
    ※ 훈련 데이터에 포함된 샘플은 특이치로 생각하지 않음.

  • Training Data가 특이치 데이터를 포함되지 않은 채 학습하고, 예측 시 새로운 관측치 인지 확인한다. 따라서 알고리즘으로 감지하고 싶은 샘플들을 제거한 훈련 데이터 셋이 필요하다.

profile
please bbbbbbbbb 😂

0개의 댓글