机器学习笔记—支持向量机(2)

本文深入探讨了支持向量机(SVM)中的核技巧,解释了如何通过映射函数将数据转换到高维空间,从而解决非线性分类问题。文章详细介绍了核函数的概念,包括其计算方式和有效性验证,并讨论了在非线性可分数据集上的应用。
摘要由CSDN通过智能技术生成

第一次看 Andrew Ng 的支持向量机讲义时,没看懂核概念,后来想可能是因为讲义从映射函数 Φ(x) 到核函数 K(x,z) 跳得太快了吧。

在讲线性回归时,使用房屋面积来预测价格,房屋面积是 x,我们考虑过使用 x、x2、x3 来回归得到一个三次函数。使 Φ 为映射函数,此处为

x 向量只有一个元素,该映射也即

把训练数据集 {(x(i),y(i));i=1,...,m} 映射为 {(Φ(x(i)),y(i));i=1,...,m},也就是说,通过映射,我们生成了一个新的数据集,跟老数据集一一对应,每个数据的维度要多一些。

现在我们可以针对这个新的数据集计算最优间隔分类器。在映射之前的原始最优间隔分类器为:

当 wTx+b 大于 0 时,预测 y 为 1。

映射之后的最优间隔分类器为:

把之前的 x 都换成 Φ(x) 就对了。x 与 x 之间的内积变成 Φ(x) 和 Φ(x) 之间的内积。

我们定义核函数为映射后特征向量的内积:

也可以表示成:

所以,映射后的最优间隔分类器也可表示为:

给定映射函数 Φ,可以很容易通过计算 Φ(x) 和 Φ(z) 的内积来得到 K(x,z),但有趣的是,K(x,z) 通常很容易计算,反倒是 Φ(x) 计算起来很费劲,可能是因为高维度向量,在这种情况下,直接在 Φ 映射后的空间里使用核函数 K(x,z),而不显式使用 Φ(x),是效率比较高的。我们来看几个例子。

假设 x,z∈Rn,考虑

也可写作:

由此,可以看到 K(x,z)=Φ(x)TΦ(z),设 n=3,可得:

也即映射:

注意到,计算高维 Φ(x) 的时间复杂度为 O(n2),而 K(x,z) 为 O(n2)。

再来看个例子:

设 n=3,映射函数 Φ 为: 

参数 c 控制着 xi 和 xixj 之间的相对权重。

再推而广之,K(x,z)=(xTz+d) 对应的映射 Φ 的特征空间为 C(n+d,d) ,如果不管这个 O(nd) 维空间,计算 K(x,z) 只需要 O(n) 时间,所以在我们从不需要在高维特征空间中表示特征向量。

给定一个函数 K,如何知道它是不是一个有效的核,也就是说,存在一个特征映射 Φ,使得对于所有的 x、z,有 K(x,z)=Φ(x)TΦ(x)。

假定 K 是一个有效的核,映射函数为 Φ。现在,考虑一个有限训练集 {x(1),...,x(m)},设 K 是一个 m*m 的矩阵,其中 Kij=K(x(i),y(j))。这个矩阵称作核矩阵。

因为 Kij=K(x(i),y(j))=Φ(x(i))TΦ(y(j))=Φ(x)Φ(y)=K(x(j),y(i))=Kji,所以,K 必定是对称的。

更进一步,使 Φk(x)表示向量 Φ(x) 的第 k 个坐标。设 y 为任意向量,有

因为 z 是任意向量,所以 K 是半正定矩阵。

所以,我们证明了如果 K 是个有效核(即关联了一些特征映射 Φ),那么核矩阵 K∈Rm*m 是对称半正定的。事实上,这不仅是个必要条件,也是个充分条件,K 也被称为 Mercer 核。

定理(Mercer):给定 K:Rn×Rn—>R,K 是一个有效(Mercer)核,它的充分必要条件是,对于 {x(1),...,x(m)},(m<∞),相应的核矩阵是对称半正定的。

 

之前介绍的 SVM 的求导是假定数据是线性可分的,当把数据通过 Φ 映射到高维特征空间后,增加了数据可分的可能性,但我们不能保证一定可分。有些情况下,就不清楚找到的超平面是不是我们需要的,因为它容易受异常点的影响。例如,下面左图是一个最优间隔分类器,当左上角区域添加一个异常点时,它导致分类边界有一个明显的偏移,最终的分类器的间隔就小得多。

为了使算法在非线性可分数据集上少受异常的影响,我们重新组织了最优化问题(使用了 L1 归一化) :

现在允许例子中有函数间隔小于 1 了。如果一个例子有函数间隔 1-ξ(同时ξ>0) ,将会增加 Cξi 使目标函数受损。参数 C 在两个目标之间做平衡,使 ||w||2 小(即使间隔最大)和保证大多数例子的函数间隔至少是 1。

跟之前一样,写出拉格朗日表达式:

这里,αi 和 ri 是拉格朗日乘子。

对 w 和 b 求导数并使其为 0,并把它们代回去,得到问题的对偶形式:

跟之前一样,w 是关于 αi 的表达式,所以解了对偶问题后,就可以继续使用下式做预测,跟之前一样。

惊奇的是,加了 L1 规则化后,对偶问题的唯一改变只是 0≤αi 变成了 0≤αi≤C,b* 的计算也会有改变,不再是下式:

同时,KKT 对偶互补条件为:

剩下的就是找到解决对偶问题的算法。

 

参考资料:

1、http://cs229.stanford.edu/notes/cs229-notes3.pdf

2、李航,著.统计学习方法[M]. 清华大学出版社, 2012

转载于:https://www.cnblogs.com/NaughtyBaby/p/5341239.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值