SVM引入核函数有两个方面的原因,一是为了更好的拟合数据,另一个重要的原因是实现数据的线性可分。
由于一些数据集在低维空间是线性不可分的,SVM通过引入核函数实现了把特征集从低维空间到高维空间的映射。这样在高维空间就能把数据集表示成线性可分的了。
核函数的本质就是一个转换函数,比如将一维的x通过核函数计算后扩展为3维的(x,x^2,x^3)。
常用的核函数有:径向基核函数(高斯核函数),线性核函数,多项式核函数,Sigmoid核函数和复合核函数。
1.多项式核函数
多项式核函数K(x,xi)=(x▪xi+1)^d, d=1,2,...,N;
多项式核函数一般用户可以根据需要自己定义,比较灵活。
比如如果原始内积是<x,z>,映射后为,那么定义核函数为: