- 이상 탐지 (Anomaly Detection) 란?
- 전체 데이터 중 특이한 패턴을 보이는 데이터를 찾는 모형을 만드는 방법
- 제조, 금융, 게임 등 다양한 분야에서 사용되는 분석 방법
- 이상탐지의 종류 - y값의 label 유무에 따라
1. Unsupervised Anomaly Detection
- 정답이 필요 없다, 즉 y값의 label이 필요없다.
- 데이터 라벨링이 불가능한 상황에 많이 사용된다. 불량 발생 시점을 모를 때, 설비 이상을 예측하고 싶을 때 가장 유용하다.
- 양/불 판정 정확도가 높지 않고, 주로 딥러닝 모델이기 때문에 hyper parameter에 매우 민감하다.
ex) Auto-encoder
2. Semi-supervised Anomaly Detection ✨✨
- 정상 데이터의 label만 필요하다. 즉, 확실한 정상 데이터는 필요하다.
- 정상 데이터끼리 학습해서 분포나 boundary를 결정한다. (최대한 좁히기) 이 분포에 속하지 못하면 이상 데이터다.
ex) One-Class SVM
3. Supervised Anomaly Detection
- 정답이 필요하다, 즉 y값의 label이 필요하다.
- 일반적으로 알려진 이상탐지라기 보다는 예측이나 분류 모델링으로 불량을 알아내면 된다.
- 문제는 세상에는 불량 데이터가 늘 부족하다.(Class Imbalance문제) → Data augmentation으로 불량 데이터 증강이 필수적이다.
- 이상 데이터가 매우 적기 때문에 Accurary 보다는 Recall을 평가지표로 사용하는 것이 좋다. (왜? 전부 정상으로 예측해도 Accuracy는 높기 때문)
- 이상탐지의 종류 - 이상치의 정의에 따라
사실 이상치의 정의에 따른 분류는 크게 중요한 개념은 아닌듯 하나 이해하고 싶어 정리했다.
train data의 특성과 해결하고자 하는 문제의 목적에 따라 2종류로 분류
1. Outlier detection
: 이상치를 데이터 관점에서 탐지하는 방법으로, "정상데이터 == train data"로 정하고 초과할 경우 이상(abnormal) 처리
: train data의 패턴/분포를 학습하고, 이에 벗어나면 이상치로 구분
* train data = normal(정상) + abnormal(이상)
* 위 예시에서 정상은 하얀 강아지, 이상은 호랑이
2. Novelty detection
: 이상치를 분포 관점에서 탐지하는 방법
: 새로운 분포, 이제까지는 없었던 데이터의 등장, 우리는 새로운 패턴인 데이터 (상품 개발, 제품 개선)
: outlier detection과 모델 설계 과정은 동일하나, 평가를 할 때 방법이 다름
* train data = normal(정상)
* 위 예시에서 정상은 하얀 강아지, 이상은 얼룩이 있는 강아지
한마디로 정리하면,
Outlier detection은 기존 데이터의 분포에서 벗어난 데이터를 식별하는 것이고,
novelty detection은 학습 데이터에 없는 새로운 유형의 데이터나 패턴을 인식하는 것이다.
- 제조 분야에서의 이상 탐지의 종류
1. 품질 주요 인자 이상 탐지 (= 불량 원인 분석)
- 제품이 정상적으로 생성되지 않는 원인, 즉 불량 원인을 찾아서 알려주는 방법 → 수율 증가, 불량률 감소, 고객사 C&C 감소
- 불량 원인 분석의 한 종류로 이상탐지를 활용할
2. 설비 이상 징후 탐지 → 기대효과 : 수율 증가, line stop 감소, 생산 스케쥴 정상화
- 설비가 고장나기 전에, 설비로부터 측정된 시계열 TAG 데이터를 기반으로 이상 증상을 탐지해서 점검
ㄴ label이 당연히 없음
[분석 방법]
1) Isolation Forest 이상 탐지 모델 활용
- Unsupervised learning으로 정상 데이터를 가지고 바로 모델 적용 가능
2) Random Forest Classification 이상 예측 모델을 통한 이진 분류 모델 활용
- Supervised learning으로 label이 필요함
# Label을 정의하는 방법
- 정상 (normal) 데이터 : 제품의 품질 Spec (=기준) 안에 해당하는 제품의 데이터, 현업의 Spec이 없다면 통계적 기준으로 이상치 정의
- 이상 (abnormal) 데이터 : Spec의 상/하한에 근접해 있는 제품의 데이터, TAG 데이터는 오차 범위를 지정하고 n번 오차 범위 진입 시 이상으로 판단
- X, Y값을 가진 분류 모델링과 동일하게 진행
[참고자료]
'DATA ANALYSIS > in 제조 분야' 카테고리의 다른 글
제조 데이터에서의 전처리란? (2) (for 모델링) (0) | 2024.05.11 |
---|---|
제조 데이터에서의 전처리란? (1) (for 데이터셋 구성) (0) | 2024.02.12 |
제조 도메인에서의 데이터 분석과 AI 활용 (2) | 2024.01.21 |