SVM 和 Kernel(Chapt.5-6)
复制本地路径 | 在线编辑
SVM 用于分类问题
- SVM 比之前方法的好处是什么: 可以用高维数据。(CS229 2018 L6 46.30-48.50)

-
公式推导以及求解参数: CS229 6.4-6.8 讲的完美!
-
分清楚两个名词 geometric margins 和 functional margins
-
一共有三种参数求解
- 可以转换成 QP 问题,QP 问题甚至有专门商业软件去解决 (6.4)
- 对于这个特例,有更好的解决 (6.6),需要先看一下 (6.5) 中的 Lagrange duality,最后得出一个 KKT 条件,意思是只要满足这个前提条件,就可以用 Lagrange duality 来做
- 实际上还有更好的 SMO 算法,这里推导直接看 (6.8) 即可,需要先看一下 (6.7),主要就是知道正则化会导致最后的 KKT 条件变成 (6.7) 结尾所写的公式,这个在 (6.8) 最后有用
-
Kernel 函数,当时看 CS229 的时候懵了一段时间,但是懂了感觉 CS229 讲的挺好的,通过跳公式法(跳岛战术)来看:
-
先是 Eq.(5.5),发现如果要用高维度数据,使用梯度下降太复杂了,所以要优化
- 理解 Eq.(5.6),为什么 \(\theta\) 可以那样表示:因为它和每个 \(\Phi\) 的维度都是一样的,而 \(\Phi\) 的数量远远大于维度,因此肯定可以找到这样的方程。
- 理解 Eq.(5.7),将 (5.6) 带入就能够得到 (5.7),这个公式说明,我们梯度下降不需要直接暴力求解,而是对 \(\beta\) 进行梯度下降。
- 理解 Eq.(5.8) 和下面的式子,在 (5.7) 中我们还是有 \(\theta\),所以运算量还是大,但把 (5.6) 再带进,就能化简,注意看式子最右边,需要求两个 \(\Phi\) 的乘积,这是关键。
- 最后 Eq.(5.9),我们发现两个 \(\Phi\) 的乘积可以简化成一定的格式。这样一来,我们发现只要算 1-次项 的乘积就行,而 2-次、3-次 都是直接可以拿 1-次 的结果得出来!最终搞定。
