1. What is the fundamental idea behind Support Vector Machines?

The fundamental idea behind Support Vector Machines is to fit the widest possible street between the classes. In other words, the goal is to have the largest possible margin between the decision boundary that separates the two classes and the training instances. When performing soft margin classification, the SVM searches for a compromise between perfectly separating the two classes and having the widest possible street (i.e., a few instances may end up on the street). Another key idea is to use kernels when training on nonlinear datasets.

 

Support Vector Machines의 근본적인 아이디어는 클래스 사이에 가능한 가장 넓은 "거리 = Street"를 맞추는 것입니다. , 두 클래스와 교육(Train) 인스턴스를 구분하는 결정 경계 사이에 최대한 큰 여백을 두는 것이 목표입니다 = 가장 넓은 마진을 확보하는 것이 목표입니다. 소프트 마진 분류를 수행 할 때 SVM은 두 클래스를 완벽하게 분리하고 가능한 가장 넓은 거리 (, 몇 개의 인스턴스가 거리에서 끝날 수 있음) 사이의 절충안을 검색합니다. 또 다른 주요 아이디어는 비선형 데이터 세트를 훈련 할 때 커널을 사용하는 것입니다.

 


2. What is a support vector?

After training an SVM, a support vector is any instance located on the street (see the previous answer), including its border. The decision boundary is entirely determined by the support vectors. Any instance that is not a support vector (i.e., off the street) has no influence whatsoever; you could remove them, add more instances, or move them around, and as long as they stay off the street they wont affect the decision boundary. Computing the predictions only involves the support vectors, not the whole training set

 

SVM을 학습 후, Support vectors는 경계를 포함하여 "거리"에있는 모든 인스턴스입니다. 의사 결정 경계(Decision boundry)는 전적으로 Support Vectors에 의해 결정됩니다. Support Vectors가 아닌 (, 거리에서 벗어난) 인스턴스는 아무런 영향을 미치지 않습니다. 당신은 그것들을 제거하거나, 더 많은 인스턴스를 추가하거나, 움직일 수 있으며, 거리에서 벗어나 있다면 결정 경계에 영향을주지 않을 것입니다. 예측은 전체 교육 세트가 아닌 Support vectors만 포함됩니다.

 


3. Why is it important to scale the inputs when using SVMs?

SVM을 사용할 때 입력을 스케일 하는 것이 중요한 이유는 무엇인가?

SVMs try to fit the largest possible street between the classes (see the first answer), so if the training set is not scaled, the SVM will tend to neglect small features (see Figure 5-2).

SVM은 클래스 사이에 가능한 가장 큰 "Street"를 채우려고합니다) = Maximum Margin 을 찾는것이 목표다. 따라서 Training 세트의 크기가 조정되지 않으면(scale이 조정되지 않으면) SVM은 작은 피쳐를 무시하는 경향이 있습니다 

 

 

5. Should you use the primal or the dual form of the SVM problem to train a model on a training set with millions of instances and hundreds of features?

수백만 개의 인스턴스와 수백 개의 기능이있는 교육 세트에서 모델을 교육하기 위해 SVM 문제의 기본형 또는 이중형을 사용해야합니까?

 

This question applies only to linear SVMs since kernelized can only use the dual form. The computational complexity of the primal form of the SVM problem is proportional to the number of training instances m, while the computational complexity of the dual form is proportional to a number between m2 and m3. So if there are millions of instances, you should definitely use the primal form, because the dual form will be much too slow.

이 질문은 커널화dual form에만 사용할 수 있기 때문에 선형 SVM에만 적용됩니다. SVM 문제의 초기 형태의 계산 복잡도는 훈련 인스턴스의 수 m에 비례하는 반면, dual form의 계산 복잡도는 m^2 m^3 사이의 수에 비례한다. 따라서 수백만 개의 인스턴스가 있다면 이중 폼이 너무 느리기 때문에 primal form을 사용해야합니다.

 

 


6. Say you trained an SVM classifier with an RBF kernel. It seems to underfit the training set: should you increase or decrease γ (gamma)? What about C?

만약 RBF커널로 모델을 학습시켰을 때 오버피팅이 되었다면 감마와 C를 어떻게 조절해야 하는가?

 

If an SVM classifier trained with an RBF kernel underfits the training set, there might be too much regularization. To decrease it, you need to increase gamma or C (or both).
RBF
커널로 트레이닝 된 SVM 분류기가 트레이닝 세트에 부적합하다면 너무 많은 정규화 때문일수 있다.. 줄이려면 감마 또는 C (또는 둘 다)를 늘려야합니다.


+ Recent posts