大间距分类器

在上节中,我们了解到了 SVM 最小化代价函数过程为:
min⁡θC[∑i=1my(i)cost1(θTx(i))+(1−y(i))cost0(θTx(i))]+12∑j=1nθj2\min _θC[∑_{i=1}^m y^{(i)} cost_1(θ^Tx^{(i)})+(1−y^{(i)})cost_0(θ^Tx^{(i)})]+\frac12∑_{j=1}^nθ^2_jθmin​C[i=1∑m​y(i)cost1​(θTx(i))+(1−y(i))cost0​(θTx(i))]+21​j=1∑n​θj2​

并且,当 y(i)=1y^{(i)}=1y(i)=1 时,SVM 希望 θTx(i)≥1θ^Tx^{(i)}≥1θTx(i)≥1 ;而当 y(i)=0y^{(i)}=0y(i)=0 时,SVM 希望 θTx(i)≤−1θ^Tx^{(i)}≤−1θTx(i)≤−1 。则最小化代价函数的过程就可以描述为:
min⁡12∑j=1nθj2\min \frac12∑_{j=1}^nθ^2_jmin21​j=1∑n​θj2​s.t.θTx(i)≥1ify(i)=1s.t.\quad θ^Tx^{(i)}≥1\quad if\ y^{(i)}=1s.t.θTx(i)≥1if y(i)=1θTx(i)≤−1ify(i)=1θ^Tx^{(i)}≤-1\quad if\ y^{(i)}=1θTx(i)≤−1if y(i)=1

SVM 最终找出的决策边界会是下图中黑色直线所示的决策边界,而不是绿色或者紫色的决策边界。该决策边界保持了与正、负样本都足够大的距离,因此,SVM 是典型的大间距分类器(Large margin classifier)。

推导

假定有两个 2 维向量:
u=(u1u2),v=(v1v2)u=\left( \begin{matrix} u_1\\ u_2 \end{matrix} \right), v=\left( \begin{matrix} v_1\\ v_2 \end{matrix} \right)u=(u1​u2​​),v=(v1​v2​​)

令 ppp 为 vvv 投影到 uuu 的线段长(该值可正可负),如下图所示:

则 u、vu 、 vu、v 的内积为:
uTv=p⋅∣∣u∣∣=u1v1+u2v2u^Tv = p \ \cdot ||u||=u_1v_1+u_2v_2uTv=p ⋅∣∣u∣∣=u1​v1​+u2​v2​

其中,∣∣u∣∣||u||∣∣u∣∣ 为 uuu 的范数,也是 uuu 的长度。
假定我们的 θ=(θ1θ2)θ=\left(\begin{matrix}θ_1\\θ_2 \end{matrix}\right)θ=(θ1​θ2​​) ,且 θ0=0θ_0=0θ0​=0 ,以使得向量 θθθ 过原点,则:
min⁡θ12∑j=12θj2=min⁡θ12(θ1+θ2)2\min_θ\frac12∑_{j=1}^2θ_j^2 = \min_θ\frac12(θ_1+θ_2)^2θmin​21​j=1∑2​θj2​=θmin​21​(θ1​+θ2​)2=min⁡θ12(θ12+θ22)2=\min_θ\frac12(\sqrt{θ_1^2+θ_2^2})^2=θmin​21​(θ12​+θ22​​)2=min⁡θ12∣∣θ∣∣2=\min_θ\frac12||θ||^2=θmin​21​∣∣θ∣∣2

由向量内积公式可得:
θTx(i)=p(i)⋅∣∣θ∣∣θ^Tx^{(i)}=p^{(i)} \cdot ||θ||θTx(i)=p(i)⋅∣∣θ∣∣

其中, p(i)p^{(i)}p(i) 为特征向量 x(i)x^{(i)}x(i) 在 θθθ 上的投影:

当 y(i)=1y^{(i)}=1y(i)=1 时,我们希望 θTx(i)≥1θ^Tx^{(i)}≥1θTx(i)≥1 ,亦即希望 p(i)⋅∣∣θ∣∣≥qp^{(i)}⋅||θ||≥qp(i)⋅∣∣θ∣∣≥q ,此时考虑两种情况:

  1. p(i)p^{(i)}p(i) 很小,则需要 ∣∣θ∣∣||θ||∣∣θ∣∣ 很大,这与我们 min⁡θ12∣∣θ∣∣2\min\limits_θ\frac12||θ||^2θmin​21​∣∣θ∣∣2 矛盾。
  2. p(i)p^{(i)}p(i) 很大,如下图所示,即样本与决策边界的距离足够大,此时我们才能在既要 ∣∣θ∣∣||θ||∣∣θ∣∣ 足够小的情况下,又能有 θtx(i)≥1θ^tx^{(i)}≥1θtx(i)≥1 ,保证预测精度够高。这就解释了为什么 SVM 的模型会具有大间距分类器的性质了。

5.2 大间距分类器-机器学习笔记-斯坦福吴恩达教授相关推荐

  1. 4.4 机器学习系统设计--垃圾邮件分类-机器学习笔记-斯坦福吴恩达教授

    机器学习系统设计–垃圾邮件分类 假定我们现有一封邮件,其内容如下: From: cheapsales@buystufffromme.com To: ang@cs.stanford.edu Subjec ...

  2. 4.6 大数据集-机器学习笔记-斯坦福吴恩达教授

    大数据集 在机器学习领域,流传着这样一句话: It's not who has the best algorithm that wins. It's who has the most data. 所以 ...

  3. 10.1 掌握大数据-机器学习笔记-斯坦福吴恩达教授

    掌握大数据 在算法分析与优化一节中,我们就提到,在机器学习界流传着这样一句话: It's not who has the best algorithm that wins. It's who has ...

  4. 3.12 程序示例--多分类问题-机器学习笔记-斯坦福吴恩达教授

    多分类问题 我们手上包含有手写字符的数据集,该数据集来自斯坦福机器学习的课后作业,每个字符图片大小为 20×20 ,总的样本规模为 5000×400 , 我们的神经网络设计如下,包含 1 个隐含层,隐 ...

  5. 5.5 SVM补充-机器学习笔记-斯坦福吴恩达教授

    SVM补充 决策边界 Coursera 上 ML 的课程对 SVM 介绍有限,参看了周志华教授的<机器学习>一书后,补充了当中对于 SVM 的介绍. 首先,我们考虑用更传统的权值定义式来描 ...

  6. 4.3 偏差与方差-机器学习笔记-斯坦福吴恩达教授

    偏差与方差 在机器学习中,偏差(bias) 反映了模型无法描述数据规律,而 方差(variance) 反映了模型对训练集过度敏感,而丢失了数据规律,高偏差和高方差都会造成新数据到来时,模型给出错误的预 ...

  7. 3.1 再论 0/1 分类问题-机器学习笔记-斯坦福吴恩达教授

    再论 0/1 分类问题 在逻辑回归一章中,我们讨论了 0/1 分类问题,并且知道,通过对特征进行多项式展开,可以让逻辑回归支持非线性的分类问题.假定我们现在有 nnn 维特征,需要进行非线性分类,采用 ...

  8. 1.8 欠拟合和过拟合-机器学习笔记-斯坦福吴恩达教授

    欠拟合和过拟合 问题 在上一节中,我们利用多项式回归获得更加准确的拟合曲线,实现了对训练数据更好的拟合.然而,我们也发现,过渡地对训练数据拟合也会丢失信息规律.首先,引出两个概念: 欠拟合(under ...

  9. 1.2 线性回归与梯度下降-机器学习笔记-斯坦福吴恩达教授

    线性回归 首先,我们明确几个常用的数学符号: 特征(feature):xix_ixi​ , 比如,房屋的面积,卧室数量都算房屋的特征 特征向量(输入):xxx ,一套房屋的信息就算一个特征向量,特征向 ...

最新文章

  1. linux pthread_join 使用记录
  2. c++ list 修改_ggplot2 修改图例的一些操作
  3. 【渝粤教育】国家开放大学2018年春季 8126-21T制药工程 参考试题
  4. day02-java关键字
  5. yiibooster+bsie
  6. 2019JS必看面试题
  7. Atitit. Attilax软件研发and开发之道 1. 基本语言 3 2. 标准化库api 3 3. Ied与代码编写 调试 3 4. ui 3 5. 通讯 3 6. 第三方库 3 7. 数据
  8. pytorch-minst手写字符识别实战
  9. 乱码(四): 撬动地球的支点
  10. 开源容灾备份工具介绍
  11. 黑盒测试和白盒测试详解
  12. 调试Linux OpenWrt 2.6.36+华为ME909s-821 4G模块
  13. 远程移动测试平台对比分析
  14. php session fixation,聊聊session fixation attacks
  15. CSS设计美丽之百合花(小作品)
  16. OpenCvSharp人脸识别系统(视频中的人脸)
  17. Python+selenium之下载文件
  18. Fabric-samples开发模式下chaincode操作流程及错误锦集
  19. 虹膜识别与虹膜定位(续)算法实现 参考介绍
  20. python面向对象案例--买水果

热门文章

  1. 自定义是否允许文件继续执行下去
  2. react-native开发经验
  3. Python中简化的验证码功能实现
  4. DSP6455的EMIFA口
  5. 利用.bat(批处理)来删除KEIL编译生成的无用文件
  6. 通过企业分布式缓存共享运行时数据
  7. 如何学习网络协议(学习笔记)
  8. Javascript--Boolean运算符
  9. [概统]本科二年级 概率论与数理统计 第三讲 离散型随机变量
  10. SQL 列转行、行转列 - 使用sqlite演示