본문 바로가기
데이터 분석 도전기

파이썬 머신러닝 시리즈 7편: 서포트 벡터 머신(SVM)

by 프로 탈출러 2023. 6. 21.
반응형
파이썬 머신러닝 시리즈 7편: 서포트 벡터 머신(SVM)

파이썬 머신러닝 시리즈 7편: 서포트 벡터 머신(SVM)

서포트 벡터 머신(Support Vector Machine, 이하 SVM)은 머신러닝 알고리즘 중 하나로, 주로 분류(Classification)와 회귀(Regression) 문제를 해결하는 데 사용됩니다. SVM은 고차원 공간에서 가장 넓은 '거리(margin)'를 가지는 초평면(결정 경계)를 찾는 알고리즘입니다.

SVM은 1960년대에 개발되었지만, 1990년대에 들어서야 비선형 분류 문제에 적용되기 시작하였습니다. 이를 가능하게 한 기술이 바로 '커널 트릭(Kernel Trick)'입니다. 커널 트릭을 사용하면, 원래의 특징 공간보다 더 높은 차원에서 데이터를 분류하는 결정 경계를 찾을 수 있습니다.

다른 머신러닝 알고리즘에 비해 SVM의 장점

  • 해석력: SVM은 학습 데이터 중에서 경계를 결정하는 데 중요한 일부 데이터만 사용합니다. 이러한 데이터를 서포트 벡터라고 부르며, 이를 통해 모델이 왜 특정 결정을 내렸는지 이해하기 쉽습니다.
  • 고차원 데이터 처리 능력: SVM은 차원이 높은 데이터에 대해 잘 동작합니다. 특히, 특징의 개수가 샘플의 개수보다 많은 경우에 효과적입니다.
  • 규제(Regularization) 기능: SVM은 과적합을 피하기 위해 사용하는 규제 매개변수 C를 제공합니다. 이를 통해 모델의 복잡도를 조절할 수 있습니다.

SVM 역시 단점을 가지고 있습니다

  • 커널 선택과 매개변수 설정: SVM의 성능은 커널의 선택과 매개변수에 크게 의존합니다. 적절한 커널과 매개변수를 선택하는 것은 어려운 작업입니다.
  • 계산 비용: SVM은 학습 시간이 오래 걸립니다. 따라서, 대규모 데이터 세트에 SVM을 사용하는 것은 제한적입니다.

위에서 소개된 내용은 서포트 벡터 머신의 기본적인 이론적 배경과 특징들에 대한 내용입니다. 다음 포스트에서는 이러한 이론을 바탕으로 실제 코드를 작성하고, 분석 결과를 해석하는 방법에 대해 자세히 알아보겠습니다.

반응형
LIST