데이터 분석/머신러닝

머신러닝(6): 이상치 탐지

민서타 2023. 9. 26. 09:04

1. Anomaly Detection

 -이상이라고 정의한 사건 및 패턴을 탐지하는 분야

-Point Anomaly Detection: 정적인 일반 데이터 내 아웃라이어, 특정 포인트의 이상치 감지
-Contextual Anomaly Detection: 시계열과 같은 동적인 특성에 초점, 연속적인 변화 패턴을 읽어 이상치 감지
-Collective Anomaly Detection: Global 상황에서 변칙적인 이상치가 아닌 Local한 이상치
-Online Anomaly Detection: 실시간 데이터 수집 체계가 구축되어 있는 환경에서 탐지
-Distributed Anomaly Detection: 관측치의 정상 분포에서 벗어나는 이상 데이터 탐지

Label 종류

-Supervised Anomaly Detection: 이상과 정상이 붙어있는 경우 자주 발생하지 않는 이상에 대해 정의할 수 있는 상황
                                                    충분한 이상 데이터 확보 시 활용가능, 성능평가 시 정확도가 아닌 재현율 관점 평가 고려
-Semi-Supervised Anomaly Detection: 이상이 없고 정상 데이터만 보유하고 있는 상황, 충분한 이상 데이터가 없을 시                                                                               정상 데이터만을 활용해 이상을 탐지, 구분선을 좁혀 정상 구분, One-class-SVM
-Unsupervised Anomaly Detection: 정상과 이상에 대한 라벨이 모두 없을 때, 모든 데이터를 활용한 학습, 딥러닝 알고리즘 활용

3-Sigma Rule: 표준편차가 3배인 3-시그마의 범위가 전체 Data의 99.73%를 포함

2. Local Outlier Factor

-LOF of an object p: 관측치 p의 이상치 정도를 나타내는 LOF는 p의 밀도와 이웃 o의 밀도의 비율을 평균한 것
-LOF > 1 : 밀도가 낮은 분포, LOF < 1 : 밀도가 높은 분포, LOF = 1 : 이웃 관측치와비슷한 분포 # LOF 작을수록 밀도↑

3. Isolation Forest(I-forest)

 -의사결정나무 형태로 표현, 이상치인 경우 상단부에서 분리, 정상값을 분리하기 위해 나무 하강 원리 이용

-의사결정나무를 앙상블함
Step1: Sub-sampling: 비복원 추출하여 나무에 들어갈 데이터셋 준비 #랜덤포레슽의 경우 복원 추출
Step2: Feature Randomly Selection: 변수를 랜덤하게 선택
Step3: Split point 설정
Step4: 각 데이터마다의 Scoring 계산

4. Robust Random Cut Forest:

 -I-Forest와 유사하지만 이상치 검출에서 한 번의 Split으로 Score를 크게 계산, 실시간 환경 분석가능

5. One-class SVM

 -마진 극대화 목적, Soft Margin과 Hard Margin을 활용한 결정경계 확인 #페널티값 활용

 -비선형 데이터-> Kernel을 활용하여 Data를 고차원으로 전송, 서로 분리되는 경계를 찾고 결정경계 생성

 -정상 관측치가 최대한 원점에서 멀어지도록 학습하는 것

6. Dimensionality Reduction 기법을 활용한 이상치 탐지

 -원래의 데이터 -> 차원 감소 -> 재건 / 원래의 데이터와 재건된 데이터의 거리를 계산하여 이상치를 측정

 -마할라노비스 거리와 유사

반응형