支持向量机(SVM)(三)

来源:互联网 发布:mac怎么装word文档 编辑:程序博客网 时间:2024/04/28 01:13

核函数

基于线性回归的知识我们可以把一个特征向量x映射到

Φ(x)=xx2x3

为了代替SVM使用原来的输入属性x,我们将要使用特征值ϕ(x),因此我们仅仅需要用ϕ代替原来算法中的x
由于算法有<x,z>的内积,意味着我们要用<ϕ(x),ϕ(z)>代替他。具体的,给定一个特征映射ϕ,我们可以定义对应的核函数为:
K(x,z)=ϕ(x)Tϕ(z)
我们之前在算法中用到<x,z>的地方都将会用K(x,z)代替。
现在,给定了ϕ之后,我们将会通过计算ϕ(x)ϕ(z)的内积来计算K(x,z)。当时通常计算K(x,z)的代价可能会很大,甚至ϕ自己也会计算代价很大(可能是因为他是一个特别高的维数向量)。如何高效的计算K(x,z)呢?我们可以在高维空间中给定ϕ,但是不需要显示的找到或表示出向量ϕ(x)
来看一个例子,假设x,zRn并且考虑K(x,z)=(xTz)2=ni=1(xizi)(ni=1xizi)
=ni=1ni=1xixjzizj
=ni,j=1(xixj)(zizj)
=ϕ(x)Tϕ(z)
特征映射ϕ由下式给出(这里给定n=3)
这里写图片描述
可以得到计算高纬度ϕ(x)需要O(n2)的时间复杂度,但K(x,z)仅仅需要O(n)的时间复杂度-与输入属性维数是线性关系。对于一个相似的核函数可以得到:
这里写图片描述
其对应的特征映射为(n=3):
这里写图片描述
参数c控制着xi之间的相关权重。
更普遍的是,核函数K(x,z)=(xTz+c)d对应于特征映射到一个
(n+dd)
维的特征空间,然而尽管作用于O(nd)维的空间,但是计算K(x,z)任然只需要O(n)的复杂度,并且我们从不需要在高维的特征空间中显示的表示特征向量。
现在,让我们讨论一些不同的核函数。直观的,如果ϕ(x)ϕ(z)离的很近,所以我们期望K(x,z)=ϕ(x)Tϕ(z)将会很大,相反的,如果ϕ(x)ϕ(z)离的很远–也就是说相互之间几乎正交—那么K(x,z)=ϕ(x)Tϕ(z)可能会很小。因此,我们可以认为K(x,z)是作为ϕ(x)ϕ(z)或者x,z相似度的测量。
有了这些直观感觉之后,假设你现在有一个学习问题,你提出了一些你认为可能合理测量x,z之间相似度的核函数K(x,z)。例如,你可能选择了:
K(x,z)=exp(||xz||22σ2)
这是一个合理测量x,z相似度的函数,并且当x,z接近是它等于1,远离时等于0。我们是否能使用这样的定义K作为SVM的核函数呢?在这些特例中,回答是肯定的。(这个函数叫做高斯核函数,并且对应于一个映射于无限维的特征映射ϕ。)但是给定一些函数K,我们怎么样判断它是否是一个有效的核函数;也就是说我们是否能找到一个特征向量ϕ使得K(x,z)=ϕ(x)Tϕ(z)对于所有的x,z都有效?
现在假设K确实是一个对应于一些特征映射ϕ有效的核函数。现在,考虑有限维m个点集{x(1),...,x(m)},乘方,得到一个m乘m维的矩阵K,定K(ij)=K(x(i),x(j)),这个矩阵叫做核矩阵。既然我们已经重新定义了,我们使用K既代表了核函数K(x,z)也代表了核矩阵K,由于他们明显的相似关系。
现在如果K是一个有效的核函数,然后有Kij=K(x(i),x(j))=ϕ(x(i))T,ϕ(x(j))=ϕ(x(j))T,ϕ(x(i))=K(x(j),x(i))=Kji,因此K一定是一个对称矩阵。此外,让ϕk(x)代表向量ϕ的第K个坐标,我们发现对于任意向量z,我们有
这里写图片描述
由于z是任意的,所以K是一个半正定矩阵。
因此,我们证明了如K是一个有效的核函数(也就是说他对应于一些特征映射ϕ),那么有对应的和矩阵KRm×m是一个半正定矩阵。更平常的,这证明这不仅是必要,同时也是有效的条件对于K是个有效的核函数。

规则化和线性不可分情况

现在我们在SVM中用到的数据都假设他是线性可分的。当我通过ϕ映射数据到高维特征空间时确实通常会增加我们数据的线性可分性,但是我们不能保证总会使这样。同时,我们不能保证我们找到的超平面就是我们想要的,他可能收到异常值的影响。例如,下面的左图显示这是一个最优化间隔分类器,但是当一个异常值加入后,它将会引起决定边界有一个显著的摆动,导致结果分类器有个更小的间隔。
这里写图片描述
为了使这个算法对于非线性可分数据有效,并且对于异常值不敏感,我们重新定义我们的最优化方程为:
这里写图片描述
因此,现在允许样例函数间隔小于1,并且如果一个样例的函数间隔是1ξ,我们可以通过**增加目标函数一个Cξi来补偿函数间隔。参数C用来控制使||w||2变大(之前导致函数间隔变小)同时保证大部分样例函数间隔至少为1。
像之前那样我们可以定义拉格朗日方程为
这里写图片描述
可以得到对偶问题为:
这里写图片描述
对于对偶问一唯一的改变是原来的约束条件0αi现在变成了0αiC。同时计算b的方式变了。
同时由于KKT对偶互补条件可以得到
这里写图片描述
如何解对偶方程,将在接下来的文章中提到。

0 0
原创粉丝点击