首页 [机器学习]支持向量机
文章
取消

[机器学习]支持向量机

线性分类器

Large Margin Classification

根据样本边界(即支持向量),按照最大间隔进行划分的一种方法。最大间隔分类器对样本数目不敏感,对样本边界敏感,对样本scale敏感。

Soft Margin Classification

软间隔分类器相对硬间隔分类器(对边界有要求,边界不能交叉,即需要线性可分)而言,采取了更加灵活的策略:在最大化间隔同时,限制间隔侵犯(margin violations).

svm-soft-margin.png

如果SVM出现overfitting,则可以适当调节参数C加大间隔侵犯容忍程度

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import numpy as np
from sklearn import datasets
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.svm import LinearSVC

iris = datasets.load_iris()
# petal length, petal width
X = iris["data"][:,(2,3)]
# iris-virginica
Y = (iris["target"] == 2).astype(np.float64)

svm_clf = Pipeline((
    ("scaler", StandardScaler()),
    ("linear_svc", LinearSVC(C=1, loss="hinge"))
))

# todo: scaled X
x = X
svm_clf.fit(x, Y)

> array([1.])

svm_clf.predict([[5.5,1.7]])

> array([1.])

非线性分类器

多项式核(Polynomial Kernel)

高斯径向基核(Gaussian RBF Kernel)

SVM回归

在线SVM

参考

  • Hands-On Machine Learning with Scikit-Learn and TensorFlow
本文由作者按照 CC BY 4.0 进行授权

[机器学习]Linear Regression模型和优化方法

2019.10~书单