[DataAnalysis]支持向量机解决线性不可分问题——核函数

在实际碰到的问题中,原始样本空间内也许并不存在一个能正确划分两类样本的超平面。我们可以将原始空间映射到一个更高维的空间,使得样本在这个特征空间内线性可分,从而可以找到合适的超平面。

核函数对SVM目标函数的变化

\phi (x)表示将x映射后的特征向量。在高维特征空间中划分超平面所对应的模型可表示为:

\min_{w,b} \quad \frac{1}{2}||w||^2

s.t. \quad y_i(w^T\phi(x)+b)\geq 1,i=1,2,3,...m

对应的对偶问题(拉格朗日乘子——消除参数,见https://blog.csdn.net/TOMOCAT/article/details/82493181)为:

\max_{a}\quad \sum_{i=1}^{m}\alpha_i-\frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m}\alpha_i\alpha_jy_iy_j\phi(x_i)^T\phi(x_j)

s.t. \quad \sum_{i=1}^{m}\alpha_iy_i=0,\alpha_i\geq 0,i=1,2,3...m

核函数求解

求解涉及核函数的对偶问题时涉及到计算\phi(x_i)^T\phi(x_j),这是样本x_ix_j映射到高维特征空间之后的内积。由于特征空间维数可能很高,甚至可能是无穷维数,因此计算\phi(x_i)^T\phi(x_j)通常是很困难的。我们可以设想这么一个函数:

\kappa (x_i,x_j)=<\phi(x_i),\phi(x_j)>=\phi(x_i)^T\phi(x_j)

x_ix_j在特征空间中的内积等于等于他们在原始样本空间中通过函数\kappa ()计算的结果

从而支持向量机的目标函数改写成:

\max_{a}\quad \sum_{i=1}^{m}\alpha_i-\frac{1}{2} \sum_{i=1}^{m} \sum_{j=1}^{m}\alpha_i\alpha_jy_iy_j\kappa (x_i,x_j)

s.t. \quad \sum_{i=1}^{m}\alpha_iy_i=0,\alpha_i\geq 0,i=1,2,3...m

求解后可以得到:

f(x)=w^T\phi(x)+b=\sum_{i=1}^{m}\alpha_iy_i\phi(x_i)^T\phi(x)+b=\sum_{i=1}^{m}\alpha_iy_i\kappa (x,x_i)+b

核函数选择

通常对文本数据采用线性核函数,情况不明时可先尝试高斯核函数

常用核函数
名称表达式参数
线性核\kappa (x_i,x_j)=x_i^Tx_j 
多项式核\kappa (x_i,x_j)=(x_i^Tx_j)^dd\geq 1为多项式次数
高斯核\kappa (x_i,x_j)=exp(-\frac{||x_i-x_j||^2}{2\sigma ^2})\sigma > 0为高斯核的带宽
拉普拉斯核\kappa (x_i,x_j)=exp(-\frac{||x_i-x_j||}{\sigma })\sigma > 0
SIgmoid\kappa (x_i,x_j)=tanh(\beta x_i^Tx_j+\theta )tanh为双曲正切函数

构造新的核函数

\kappa _1\kappa _2为核函数

(1)对于任意正数\gamma _1,\gamma _2,其线性组合

\gamma _1\kappa _1+\gamma_2\kappa _2也是核函数

(2)核函数的直积

\kappa _1\otimes \kappa _2(x,z)=\kappa _1(x,z)\kappa _2(x,z)也是核函数

(3)\kappa (x,z)=g(x)\kappa _1(x,z)g(z)也是核函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值