가장 분리하기 좋은 선을 찾는 서포트 벡터 머신
서포트 벡터 머신(Support Vector Machine, SVM)
은 데이터를 가장 잘 구분할 수 있는 결정 경계(Decision Boundary)
를 찾아주는 머신러닝 알고리즘입니다.
예를 들어 이메일이 스팸인지 아닌지를 분류해야 한다고 가정해 봅시다.
이메일 데이터를 분석했을 때 스팸과 일반 메일이 서로 다른 그룹으로 분포해 있다면, SVM은 두 그룹 사이를 분리하기 가장 좋은 선(초평면, Hyperplane)을 찾습니다.
📌 두 개의 그룹을 나누는 가장 좋은 선이란?
SVM은 단순히 데이터를 분류하는 것이 아니라, 두 그룹 사이의 마진(Margin, 여유 공간)
을 최대화하는 선을 찾습니다.
데이터 | 메일 유형 | 단어 개수 | 발신 도메인 신뢰도 |
---|---|---|---|
A | 스팸 | 100 | 낮음 |
B | 스팸 | 90 | 낮음 |
C | 일반 | 30 | 높음 |
D | 일반 | 40 | 높음 |
위 데이터를 좌표로 표현하면, X축은 단어 개수
, Y축은 발신 도메인 신뢰도
로 설정할 수 있습니다.
위 그래프에서 각 요소는 다음과 같은 의미를 가집니다.
-
빨간색 ✖ → 스팸 메일
-
파란색 ✖ → 일반 메일
-
X축: 단어 개수(Word Count)
-
Y축: 발신 도메인의 신뢰도(Domain Trust)
-
굵은 검은 선 → 결정 경계(스팸과 일반 메일을 구분하는 최적의 선)
-
점선 두 개 → 마진(결정 경계와 서포트 벡터 사이의 거리)
그러면 SVM은 스팸과 일반 메일을 가장 넓게 분리할 수 있는 선을 찾습니다.
이 선과 가장 가까운 데이터 포인트들을 서포트 벡터(Support Vector)
라고 합니다.
서포트 벡터는 결정 경계를 만드는 데 가장 중요한 데이터 포인트이며, 이 데이터가 변경되면 결정 경계도 달라집니다.
서포트 벡터 머신의 동작 방식
SVM이 데이터를 분류하는 과정은 다음과 같습니다.
1. 초평면(Hyperplane) 찾기
SVM은 데이터를 가장 잘 나누는 초평면을 찾습니다.
이때, 데이터가 2차원일 경우 초평면은 직선(Line)이고, 3차원에서는 평면(Plane)이 됩니다.
2. 마진(Margin) 최대화
초평면과 가장 가까운 데이터(서포트 벡터) 사이의 거리를 최대화합니다.
이렇게 하면 새로운 데이터가 들어왔을 때 더 정확한 분류가 가능합니다.
이후 SVM은 새로운 입력 데이터에 대해 결정 경계를 기준으로 스팸/일반 메일과 같이 데이터를 분류합니다.
서포트 벡터 머신은 명확한 경계를 찾는 데 강점이 있는 알고리즘으로 이미지 분류, 텍스트 분류 등 다양한 분야에서 활용됩니다.
다음 수업에서는 k-평균 군집화
알고리즘에 대해 알아보겠습니다.
서포트 벡터 머신(SVM)이 찾는 선의 역할은 무엇인가요?
데이터를 무작위로 분리하는 선
데이터의 평균을 계산하는 선
두 그룹 사이의 마진을 최대화하는 선
데이터의 중간값을 나타내는 선
Lecture
AI Tutor
Design
Upload
Notes
Favorites
Help