来源:http://my.oschina.net/u/175377/blog/84420
线性支持向量机
SVMs
from sklearn import
datasets
iris=datasets.iris()
In [60]: from sklearn import svm
In [61]: svc = svm.SVC(kernel='linear')
In [62]: svc.fit(iris.data, iris.target)
Out[62]:
SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0, degree=3, gamma=0.0,
kernel='linear', probability=False, shrinking=True, tol=0.001,
verbose=False)
scikit-learn中有好几种支持向量机实现。最普遍使用的是svm.SVC,svm.NuSVC和svm.LinearSVC;“SVC”代表支持向量分类器(Support
Vector Classifier)(也存在回归SVMs,在scikit-learn中叫作“SVR”)。
练习
训练一个数字数据集的svm.SVC。省略最后10%并且检验观测值的预测表现。
使用核
类别不总是可以用超平面分离,所以人们指望有些可能是多项式或指数实例的非线性决策函数:
线性核
svc = svm.SVC(kernel=’linear’)
多项式核
svc = svm.SVC(kernel=’poly’, … degree=3) # degree: polynomial
degree
RBF核(径向基函数)
svc = svm.SVC(kernel=’rbf’) # gamma: inverse of size of # radial
kernel
练习
以上提到的哪些核对数字数据集有更好的预测性能?(译者:前两个)