About me
home
Portfolio
home
🌙

Deep SVDD 정리

Deep SVDD : One-Class Classification(정상 데이터만을 사용) 방법론을 사용한 End-to-End 딥러닝 모델이다.

SVDD 개념

Deep SVDD는 기존 Φk Φ_kNeural Network로 바꾼 것이다.

딥러닝 기반으로 학습한 Feature space에서 정상 데이터를 둘러싸는 가장 작은 구를 찾고 boundary를 기반으로 anomaly detection을 수행한다.

1. Soft-boundary Deep SVDD6

목적함수
R을 최소화, mapping된 point들에 대해 패널티를 부여, Weight Decay regularization을 적용한다.
W는 정상 데이터의 공통적인 요소를 추출하여 각 데이터 point를 구의 중심 c에 가깝게 mapping되도록 학습된다.
R과 W의 scale이 다르므로 W,R을 각각 alternative하게 번갈아가며 최적화한다. (R을 고정시키고 일정 epoch만큼 W를 최적화하고 난 후, 특정 epoch마다 W를 고정시키고 R를 최적화시키는 방식)

2. One-Class Deep SVDD

대부분의 데이터가 정상이라고 가정하게 되면 아래와 같이 목적함수를 간소화할 수 있다.
목적함수
R을 최소화하는 term이 없어지고, point들을 구의 중심에 가깝게 mapping하도록 W를 최적화하고 두번째 term을 통해 Weight Decay regularization를 적용하여 모델의 복잡도를 줄인다.
Anomaly Score
test 데이터셋을 input x로 넣어 Anomaly Score를 도출하여 정상/비정상을 판별할 수 있게 된다.

Properties of Deep SVDD

Neural Network 구성과 중심 c는 모델 최적화에 중요한 요소이다. 이때 중심 c는 사전에 정의해야하는 하이퍼파라미터이다.
1.
1st Proposition
모든 학습파라미터들이 0이 되는 trivial solution이 발생하게 되면, 모든 데이터들이 특정한 점으로 매핑되는 hypersphere collapse가 발생하게 된다.
이를 해결하기 위해 c를 representaions of initial forward pass의 평균으로 고정하고, W 초기값을 pre-trained CAE의 encoder parameters로 설정하였다.
2.
2nd Proposition
mapping된 모든 point들이 중심 c로 수렴하는 trivial solution이 발생하게 되면, bias term은 constant(즉 c)로 수렴하게 되는 hypersphere collapse가 발생하게 된다.
따라서 NN에 bias term을 아예 사용하지 않는다.
3.
Bounded activation functions
sigmoid나 tanh와 같이 y축이 bounded된 활성화 함수를 사용했을 때, 모든 입력 데이터에 대해 공통된 부호를 가진 feature가 존재한다면 활성화함수가 포화되고, 이로 인해 bias term이 활성화되어 hypersphere collapse를 유발하게 된다.
Deep SVDD에서는 ReLU 활성화 함수를 사용한다.
후속모델로 Deep SAD(Deep SVDD에 Semi-supervised를 접목시킨 모델)이 등장했다.