One-Class SVM

이정훈·2025년 12월 21일

One-Class SVM (OCSVM) 상세 설명

1. 개요

One-Class SVM은 일반적인 분류(Classification) 알고리즘이 아닌, 비지도 학습(Unsupervised Learning) 기반의 이상 탐지(Anomaly Detection) 알고리즘입니다. '정상(Normal)' 데이터 하나의 클래스만 학습하여 경계를 만들고, 이 경계를 벗어나는 데이터를 이상치(Outlier)로 간주합니다.

2. 핵심 작동 원리

일반 SVM이 두 클래스(A, B)를 나누는 최적의 선을 찾는다면, One-Class SVM은 데이터를 고차원 공간으로 매핑한 후, 고차원 공간으로 매핑된 데이터의 특성(K(x,x)=1K(x, x) = 1, 데이터간 거리 유사도 기반으로 뭉침 등..)을 이용하여 원점(Origin)에서 최대한 멀리 떨어지게 하는 초평면(Hyperplane)을 찾습니다.

  1. 매핑: 커널 함수(Kernel Function)를 이용해 데이터를 고차원 공간으로 보냅니다.
  2. 분리: 원점(0, 0, ...)과 데이터들을 가르는 선(면)을 긋습니다.
  3. 최적화: 데이터들이 원점에서 최대한 멀리 밀려나도록 마진을 최대화합니다.
  4. 판별: 경계 안쪽(데이터 밀집 구역)은 '정상', 경계 밖(원점 쪽)은 '이상'으로 판단합니다.

2-1 왜 원점을 기준으로 Offset(ρ\rho)을 구할까?

✔️ "입력 공간" vs "특성 공간"

2차원 그래프의 데이터(입력 공간)는 원점(0,0)과 전혀 상관없는 곳(예: 좌표 100, 100)에 뭉쳐 있어도 됩니다.

하지만 One-Class SVM은 이 데이터를 커널 함수(주로 RBF 커널)를 사용해 고차원 특성 공간으로 날려버립니다.

  • RBF 커널의 마법:
    RBF 커널(K(x,y)=eγxy2K(x, y) = e^{-\gamma ||x-y||^2})을 사용하면, 수학적으로 모든 데이터 벡터 Φ(x)\Phi(x)의 길이는 1이 됩니다. (K(x,x)=1K(x, x) = 1)
  • 결과:
    원본 데이터가 어디에 있었든 상관없이, 고차원 공간으로 매핑된 데이터들은 원점으로부터 거리가 1인 구(Sphere)의 표면 어딘가에 모이게 됩니다. (정확히는 구의 표면 중 한쪽 구석인 단일 사분면에 몰립니다.)

이제 상황은 다음과 같습니다.

"모든 데이터가 고차원 공간의 구 표면에 둥둥 떠 있습니다."

이때 우리는 "정상 데이터들의 영역"을 정의하고 싶습니다. 가장 좋은 방법은 데이터들이 모여 있는 곳과 원점 사이를 칼로 자르듯이 평면(Hyperplane)으로 나누는 것입니다.

  • 원점의 역할: 기준점(Anchor)입니다. 데이터가 구 표면에 있으니, 원점은 그 구의 중심(Core) 역할을 합니다.
  • 평면(ww)의 역할: 원점과 데이터를 갈라놓는 벽입니다.
  • ρ\rho (rho)의 역할: "원점에서 벽까지의 거리"입니다.

✔️ ρ\rho를 최대화한다는 것의 의미 (밀당의 원리)

One-Class SVM의 목표는 ρ\rho를 최대화하는 것입니다.

  1. 데이터들은 구 표면(원점에서 거리 1)에 있습니다.
  2. 우리는 평면을 원점에서 출발시켜 데이터 쪽으로 쭉 밀어 올립니다. (ρ\rho 증가)
  3. 평면이 계속 밀고 올라가다가 데이터 무리(정상 데이터)에 '턱' 하고 걸리는 순간이 옵니다.
  4. 바로 그 순간의 평면이 결정 경계가 됩니다.

즉, ρ\rho는 "정상 데이터들을 감싸는 포장지를 얼마나 꽉 조일 것인가?"를 결정하는 값입니다.

  • 평면 뒤쪽(원점 쪽)은 "비정상(Outlier)" 영역이 됩니다.
  • 평면 앞쪽(데이터 쪽)은 "정상(Normal)" 영역이 됩니다.

3 수식적 개념 (Objective Function)

Schölkopf 등이 제안한 방식의 목적 함수는 다음과 같습니다.

minw,ξ,ρ12w2+1νli=1lξiρ\min_{w, \xi, \rho} \frac{1}{2} ||w||^2 + \frac{1}{\nu l} \sum_{i=1}^{l} \xi_i - \rho

제약 조건 (Subject to):

(wΦ(xi))ρξi,ξi0(w \cdot \Phi(x_i)) \geq \rho - \xi_i, \quad \xi_i \geq 0
  • ww: 초평면의 법선 벡터
  • ρ\rho (rho): 원점과 초평면 사이의 거리 (Margin offset)
  • ξi\xi_i: 슬랙 변수 (허용 오차)
  • ν\nu (Nu): 하이퍼파라미터 (이상치 비율 상한)
  • Φ(x)\Phi(x): 커널 함수

4. 주요 하이퍼파라미터

1) ν\nu (Nu)

  • 범위: 0<ν10 < \nu \le 1
  • 의미: 훈련 데이터 내에서 허용할 이상치(Outlier)의 최대 비율이자, 서포트 벡터의 최소 비율입니다.
  • 효과:
    • 값이 클수록 -> "이상치가 많다"고 가정 -> 경계가 타이트해짐 (정상 영역 축소).
    • 값이 작을수록 -> "대부분 정상이다"라고 가정 -> 경계가 느슨해짐 (정상 영역 확대).

2) γ\gamma (Gamma) - RBF 커널 사용 시

  • 의미: 결정 경계의 유연성(복잡도)을 조절합니다.
  • 효과:
    • 값이 클수록 -> 데이터 하나하나에 민감 -> 경계가 복잡하고 구불구불해짐 (Overfitting 위험).
    • 값이 작을수록 -> 경계가 단순하고 부드러워짐.

5. 장단점 요약

구분내용
장점- 비지도 학습: 라벨(Label) 없이 정상 데이터만으로 학습 가능
- 비선형성: 커널 트릭을 통해 복잡한 분포의 데이터도 커버 가능
- 강인함: 노이즈에 어느 정도 강인하게 모델링 가능 (ν\nu 조절)
단점- 대용량 데이터 처리 시 속도가 느림
- 파라미터(ν,γ\nu, \gamma) 튜닝이 매우 민감하고 어려움 (정답 라벨이 없으므로 검증 난해)
- 차원의 저주에 취약할 수 있음

6. 주요 활용 분야

  • 제조업 설비 고장 예측 (예지 보전)
  • 금융 이상 거래 탐지 (FDS)
  • 네트워크 침입 탐지 (IDS)
profile
AngDDo

0개의 댓글