머신러닝

SVM(Support Vector Machine)

blackJ 2022. 5. 11. 11:30
  • support vector : 각각의 클래스에서 분류 경계선을 지지하는 관측치들
  • 선형이나 비선형 분류, 회귀, 이상치 탐색에도 사용할 수 있는 머신러닝
  • 복잡한 분류 문제를 잘 해결
  • 상대적으로 작거나 중간 크기를 가진 데이터에 적합
  • 최적화 모형으로 모델링 후 최적의 분류 경계 탐색

  • 두 클래스 사이에 가장 넓은 분류 경계선 찾기(Large margin classification)
    ->  margin이 최대화가 될 때 성능이 좋다.

  • 스케일에 민감하기 때문에 변수들 간의 스케일을 잘 맞춰주는 것이 중요
  • sklearn의 StandardScaler를 사용하면 스케일을 잘 맞출 수 있음

 

  • Hard Margin : 두 클래스가 하나의 선으로 완벽하게 나눠지는 경우에만 적용 가능
  • Soft Margin : 일부 샘플들이 분류 경계선의 분류 결과에 반하는 경우를 일정 수준 허용하는 방법
                       (C페널티 파라미터로 조정->SVM의 Hyperparameter)