두 번째 줄에는 이 문제가 없습니다. 예를 들어, 사각형으로 표시된 테스트 포인트와 아래 그림의 분류자가 할당한 레이블을 살펴봅니다. 이 블로그 게시물에서는 SVM에 대한 높은 수준의 개요를 제공할 계획입니다. SVM의 이론에 대해 이야기 할 것입니다, 그것은 비 선형 분리 데이터 세트에 대한 응용 프로그램과 뿐만 아니라 파이썬에서 SVM의 구현의 빠른 예. 다음 기사에서는 알고리즘 뒤에 있는 수학을 살펴보고 후드 아래를 파고 들 것입니다. 예제에서 지원 벡터 기계 알고리즘(코드와 함께)을 이해하면 지원 벡터 컴퓨터는 이를 개선하는 한 가지 방법을 제공합니다. 직관은 이것이다 : 단순히 클래스 사이에 0 폭 선을 그리는 것보다, 우리는 가장 가까운 점까지, 일부 폭의 여백을 각 라인 주위에 그릴 수 있습니다. 다음은 이러한 모양의 예입니다: 지원 벡터 컴퓨터의 예로 얼굴 인식 문제를 살펴보겠습니다. 우리는 다양한 공인의 수천 개의 대조 된 사진으로 구성된 야생 데이터 집합에 레이블이 붙은 얼굴을 사용합니다. 데이터 집합에 대한 페서가 Scikit-Learn에 내장되어 있습니다: 베이지안 분류의 분산의 일환으로(자세히 보기: Naive Bayes 분류 참조), 각 기본 클래스의 분포를 설명하는 간단한 모델을 학습하고 이러한 생성 모델을 사용하여 새 점에 대한 레이블을 결정합니다. 이는 생성 분류의 예입니다.

여기서는 각 클래스를 모델링하는 대신 클래스를 서로 나누는 선이나 곡선(두 차원) 또는 다양한 차원의 매니폴드(여러 차원)를 찾을 수 있습니다. 이 커널화된 지원 벡터 머신을 사용하여 적합한 비선형 결정 경계를 학습합니다. 이 커널 변환 전략은 기계 학습에서 빠른 선형 메서드를 빠른 비선형 메서드로 전환하는 데 자주 사용되며, 특히 커널 트릭을 사용할 수 있는 모델의 경우 특히 이러한 커널 변환을 사용할 수 있습니다. 지원 벡터 기계는 테스트 데이터에 올바르게 레이블을 지정할 가능성이 높은 방법으로 가능한 여러 분류기 중에서 선택할 수 있는 방법을 제공합니다. 꽤 깔끔한, 오른쪽? 예를 들어 선을 1차원 유클리드 공간으로 가정해 보겠습니다(예: 데이터 집합이 줄에 놓여 있다고 가정해 보겠습니다). 이제 선에서 점을 선택하면 이 점이 선을 두 부분으로 나눕니다. 선에는 1치수가, 점에는 0치수가 있습니다. 그래서 점은 선의 하이퍼 플레인입니다.

이 선을 식별하는 가장 가까운 점을 지원 벡터라고 합니다. 그리고 선 주위에 정의하는 영역을 여백이라고 합니다. SVM의 매우 놀라운 측면은 사용하는 모든 수학 기계에서 정확한 투영 또는 차원 수가 나타나지 않는다는 것입니다. 다양한 데이터 포인트(벡터로 표시)간의 점 제품 측면에서 모든 것을 쓸 수 있습니다. 차원의 첫 번째 하위 스크립트가 점을 식별하고 두 번째는 치수 번호를 나타내는 p 차원 벡터 i 및 j의 경우 지원 벡터와 함께 표시된 두 번째 줄은 검정 색 가장자리가있는 점 (두 개가 있음)과 여백 ( 그늘진 영역)을 참조하십시오. 단일 교육 예제의 영향이 얼마나 도달하는지 정의합니다. 값이 낮으면 모든 지점이 멀리 도달하고 반대로 감마값이 높다는 것은 모든 지점이 가까운 도달 범위를 가지고 있음을 의미합니다. 지원 벡터 머신(SVM)은 분리 하이퍼플레인에 의해 공식적으로 정의된 차별적 분류자입니다. 즉, 레이블이 지정된 학습 데이터(감독 학습)가 주어지면 알고리즘은 새로운 예제를 분류하는 최적의 하이퍼플레인을 출력합니다. 두 개의 디멘션 공간에서 이 초평면은 각 클래스의 양쪽에 놓여있는 두 부분으로 평면을 나누는 선입니다. 우리는 주로 여기에 시각적 인 직관에 의존하고있다.

이것이 초기 이해를 얻을 수 있는 좋은 방법이지만, 더 깊이 파고들 것을 강력히 권장합니다. 시각적 직관이 불충분하다고 입증될 수 있는 예는 마진 너비를 이해하고 비선형 분리 가능한 사례에 대한 지원 벡터를 이해하는 것입니다.