《Python machine learning》书籍学习~~~
支持向量机的数学模型稍后补上,先来讲一下sklearn中的实现。
Support Vector Machine(SVM) ,优化目标与感知机相反,感知机是实现错误的最小优化;SVM实现边缘最大优化。
边缘(margin):两个分离差超平面之间的距离
支持向量(support vector):距离分割超平面最近的训练样本点
SVM的数学模型稍后补上。
SVC:SVM的一种类型,用于分类;SVR用于回归。
【sklearn库实现SVM】
调用sklearn.svm库中的SVC类。其中C参数是惩罚松弛变量。
C值越大,表示对误分类的惩罚增大,趋向于对于训练集全部正确分类,泛化能力弱。
C值越小,表示可以容忍错误分类,泛化能力强。
from sklearn.svm import SVC
svm = SVC(kernel = 'linear', C = 1.0, random_state = 1)
svm.fit(X_combined_std, y_combined)
plot_decision_regions(X = X_combined_std,
y = y_combined,