机器学习21-svm的核函数(三)

来源:互联网 发布:ubuntu 16.04 双系统 编辑:程序博客网 时间:2024/05/19 18:14

核函数是什么


前文推导出

代入


x也可也是某种映射,可写成phi(x),得



我们把下面这个函数称为svm的核函数


核函数的核心思想是:原先从左到右的计算过程是样本x映射成n维,这n维的样本再做乘积。现在先将映射关系做乘积,即x样本的映射相乘,这往往能够简化计算。

核函数的作用:将原本的样本空间映射到新的特征空间,使得原本样本不可分在核空间上可分。






举例一:多项式核函数



假设样本维度n=3,有:


phi(y)同phi(x)


可以看出:用原本从左到右的计算过程,先计算phi(x),有9次相乘。再计算phi(y),也有9次相乘。然后再计算phi(x)* phi(y)又有9次乘法。

如果不计算phi(x)和phi(y)而是直接计算x点乘y,只需要3次乘法,然后一个平方的乘法,共4次乘法。

但是同是将3维样本映射成9维的两种算法,计算量却大大不一样。



举例二:高斯核函数



可以看出:高斯核函数将样本映射成无穷维,如果不用核函数,这无穷维是无法计算。但通过核函数可以巧妙的绕过直接计算无穷维,通过高斯核函数计算无穷维就方便多了。

核函数的图像理解:将样本升维,再分割,如下图。




svm高斯核函数中,Gamma与c对模型的影响:

c是所有松弛因子之和的系数,当系数越大是,1-c*松弛因子的值就越小,导致支撑间距就越窄,即C越大,支撑间距越小,精度越高,但分类不一定就合理,容易出现过拟合。

Gamma越大,方差越小,图像就越瘦,衰减就越快,当两个样本之间衰减速度过快时,有理由认为他们不是一类。即Gamma越大,精度越高,容易出现过拟合。



原创粉丝点击