“参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广
12.3 大间距分类背后的数学原理- Mathematics Behind Large Margin classification
向量内积
- 假设有两个向量
u=\begin{bmatrix}u_1\\u_2\\ \end{bmatrix},向量
v=\begin{bmatrix}v_1\\v_2\\ \end{bmatrix},其中向量的内积表示为
u^Tv.假设
u_1 表示为 u 在坐标轴横轴上的投影,而
u_2 表示为 u 在坐标轴纵轴上的投影,则向量 u 的欧几里得长度可表示为
\parallel u \parallel , 且有
\parallel u \parallel=\sqrt{u_1^{2}+u_2^{2}}- 对于向量的内积
u^{T}v ,可以视为 v 向量在 u 向量上的投影 p 乘以 u 向量的长度,这两者都为实数,且当 v 向量的投影与 u 向量同方向时,p 取正号,否则 p 取负号 即有式子
u^{T}v=P * \parallel u \parallel=u_1v_1+u_2v_2向量内积研究 SVM 目标函数
- 为了更容易分析问题只保留了损失函数的后半部分而去掉了 C 及其乘积项。 ,原始损失函数如下图:
\theta_0 为 0,设置特征数 n=2. ,则简化后的式子可写为:
\theta 范数的平方或者说是长度的平方
\theta^{T}x 的意义
- 给定参数向量 θ 给定一个样本 x, 计算其二者的乘积,这其中的含义是什么?对于
\theta^{T}x 其相当于向量内积
u^{T}v- 首先,对于训练样本
x^{(i)},其在 x 轴上的取值为
x^{(i)}_{1},其在 y 轴上的取值为
x^{(i)}_{2} ,此时 将其视为始于原点,终点位于训练样本的向量
- 然后将参数
\theta 也视为向量且其在横轴上的投影为
\theta_1 ,其在纵轴上的投影为
\theta_2- 使用之前的方法,将训练样本投影到参数向量 θ,使用
p_{(i)} 来表示第 i 个训练样本在参数向量
\theta 上的投影。 即有
\theta^{T}x^{(i)}=p_{(i)}\parallel \theta\ \parallel=\theta_1x_1^{(i)}+\theta_2x_2^{(i)}
x_{(i)} 代表从原点出发连接到第 i 个样本点的向量,是可正可负的,分别表示正样本和负样本;
p^{(i)} 表示样本向量
x_{(i)} 到参数向量
\theta 上的投影,其也是可正可负的,同方向为正负方向为负 ,对于 SVM 中
\theta^{T}x^{(i)}\ge1或者\theta^{T}x^{(i)}\le-1 的约束也可以被
p^{(i)}x\ge1 这个约束所代替
从
\theta^{T}x 到大间距
\theta_0=0 ,且只选取两个特征,即
\theta_1 和 \theta_2 ,则参数
\theta 可以表示成一条过原点的直线,且 决策界 与
\theta 直线垂直。
- 反证法 如下图所示(1),y 轴右边的表示正样本,而 y 轴左边的表示负样本,蓝线表示参数
\theta,绿线表示决策界 ,很明显这条决策界很不好,因为其与正负样本的间距太小了。通过将样本投影到
\theta 上可以得到 p,此时正负样本的||p||都很小,根据 SVM 的公式||p|| * ||
\theta||>=1,则其必须使||
\theta||很大才能满足条件,这和目标函数希望找到一个小的参数
\theta 的目的是矛盾的,这表明这并不是一条好的决策界
\theta 的投影 p 就相对的大一些,这样在满足公式
||p|| * ||\theta||>=1 需要的||
\theta||就会小一些,这和 SVM 的优化目标是一致的。所以 好的 SVM 的优化结果中,决策界的间距一定比较大
参考资料
[1]
吴恩达老师课程原地址: https://study.163.com/course/courseMain.htm?courseId=1004570029