AI 기초지식

Anomaly Detection

glorious_purpose 2023. 12. 13. 16:15

Anomaly Detection이란 이상탐지 task 이다.

이상탐지란? 

말 그대로 이상치(outlier)를 탐지하는 task 라는 뜻이다.

 

처음에 이 개념을 접했을 때는 이상치를 어떻게 탐지한다는 거지? 

정답이랑 정답이 아닌 걸 학습시키나 어떻게 한다는 거지?

이런 생각을 했었는데 이 질문은 이상치 탐지보다 지도 학습에 가까운 접근이었다.

 

Anomaly Detection(이상 탐지)는 Gaussian Distribution을 사용한다.

Gaussian Distribution은 종 모양의 분포를 말하는데 아래 모양처럼 생겼다.

딱 저 분포를 보면 평균인 u에 가장 데이터들이 많고 양 끝으로 갈수록 데이터가 적어진다.

Anomaly detection에서는 주로 정상적인 많은 데이터, 비정상적인 특이한 적은 데이터들을 이용한다.

학습시킬 때는 정상적인 데이터들로 이루어진 train dataset을 만들고

cross-validation set과 test set은 정상적인 데이터들과 비정상적인 데이터를 8:2 정도의 비율로 섞어서 넣는다.

 

그러면 당연히? 

정상적인 데이터들로 학습을 했으니 test set으로 최종 검증을 할 때는 정상적인 데이터들이 

평균 근처로 올 가능성이 높고 이상치 데이터들은 양 끝으로 갈 가능성이 높다.

 

그래서 anomaly detection에서는 문턱값(threshold)를 사용해서 데이터가 이상치 데이터인지? 아닌지? 알 수 있게 한다.

문턱값을 epsilon이라 하고 x 의 확률인  p(x) < epsilon인지에 따라서 p(x)가 epsilon보다 작으면 이상치, 아니면 정상적인 데이터라고  분류를 하게 된다.

 

물론 지도 학습으로도 정상인지 비정상인지 학습이 가능하지만 둘의 차별성은 

새로운 이상치를 탐지 가능한 지? 아닌지? 에 따라 달라진다.

 

지도 학습에는 이상치 학습에 비해 좀 더 많은 비정상적인 데이터가 필요하고 새로운 이상치를 구분할 수 없기 때문에

그러하다. 그래서 사기 탐지나 보안 등에는 anomaly detection이 사용되고 스팸 메일 구분에는 지도학습이 사용된다.

 

 

#AI #Anomaly_Detection

'AI 기초지식' 카테고리의 다른 글

지도 학습 vs. 비지도 학습  (0) 2023.12.13