目录
SVM相关知识点回顾
1.1. SVM与SVR
1.2. 核函数
sklearn中SVM相关库的简介
2.1. 分类库与回归库
2.2. 高斯核调参
2.2.1. 需要调节的参数
2.2.2. 调参方法:网格搜索
编程实现
这是《西瓜书带学训练营·实战任务》系列的第三篇笔记
1. SVM相关知识点回顾
1.1. SVM与SVR
SVM分类算法
其原始形式是:
其中m为样本个数,我们的样本为(x1,y1),(x2,y2),...,(xm,ym)。w,b是我们的分离超平面的w∙ϕ(xi)+b=0系数, ξi为第i个样本的松弛系数, C为惩罚系数。ϕ(xi)为低维到高维的映射函数
通过拉格朗日函数以及对偶化后的形式为:
SVR回归算法
其中m为样本个数,我们的样本为(x1,y1),(x2,y2),...,(xm,ym)。w,b是我们的回归超平面的w∙xi+b=0系数, ξ∨i,ξ∧i为第i个样本的松弛系数, C为惩罚系数,ϵ为损失边界,到超平面距离小于ϵ的训练集的点没有损失。ϕ(xi)为低维到高维的映射函数。
1.2. 核函数
在scikit-learn中,内置的核函数一共有4种:
线性核函数(Linear Kernel)表达式为:K(x,z)=x∙z,就是普通的内积
多项式核函数(Polynomial Kernel)是线性不可分SVM常用的核函数之一,表达式为:K(x,z)=(γx∙z+r)d ,其中,γ,r,d都需要自己调参定义
高斯核函数(Gaussian Kernel),在SVM中也称为径向基核函数(Radial Basis Function,RBF),它是 libsvm 默认的核函数,当然也是 scikit-learn 默认的核函数。表达式为:K(x,z)=exp(−γ||x−z||2), 其中,γ大于0