12.支持向量机

觉得有用的话,欢迎一起讨论相互学习~Follow Me

参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广

12.3 大间距分类背后的数学原理- Mathematics Behind Large Margin classification

向量内积

  1. 假设有两个向量\(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}}\)
  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. ,则简化后的式子可写为:
  • 因此可以认为SVM的目的就是最小化向量\(\theta\) 范数的平方或者说是长度的平方

    \(\theta^{T}x\)的意义

  • 给定参数向量 θ 给定一个样本x, 计算其二者的乘积,这其中的含义是什么? 对于\(\theta^{T}x\)其相当于向量内积\(u^{T}v\)

  1. 首先,对于训练样本\(x^{(i)}\),其在x轴上的取值为\(x^{(i)}_{1}\),其在y轴上的取值为\(x^{(i)}_{2}\) ,此时 将其视为始于原点,终点位于训练样本的向量
  2. 然后将参数 \(\theta\) 也视为向量且其在横轴上的投影为 \(\theta_1\) ,其在纵轴上的投影为 \(\theta_2\)
  3. 使用之前的方法,将训练样本投影到参数向量 θ,使用 \(p_{(i)}\)来表示第 i 个训练样本在参数向量\(\theta\)上的投影。 即有 \[\theta^{T}x^{(i)}=p_{(i)}\parallel \theta\ \parallel=\theta_1x_1^{(i)}+\theta_2x_2^{(i)}\]
  4. \(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\)的目的是矛盾的,这表明这并不是一条好的决策界
  • 而图(2)中x在\(\theta\)的投影p就相对的大一些,这样在满足公式\(||p|| * ||\theta||>=1\)需要的||\(\theta\)||就会小一些,这和SVM的优化目标是一致的。所以 好的SVM的优化结果中,决策界的间距一定比较大

[吴恩达机器学习笔记]12支持向量机3SVM大间距分类的数学解释的更多相关文章

  1. [吴恩达机器学习笔记]12支持向量机5SVM参数细节

    12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.5 SVM参数细节 标记点选取 标记点(landma ...

  2. [吴恩达机器学习笔记]12支持向量机2 SVM的正则化参数和决策间距

    12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.2 大间距的直观理解- Large Margin I ...

  3. [吴恩达机器学习笔记]12支持向量机1从逻辑回归到SVM/SVM的损失函数

    12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考资料 斯坦福大学 2014 机器学习教程中文笔记 by 黄海广 12.1 SVM损失函数 从逻辑回归到支持向量机 为了描述 ...

  4. [吴恩达机器学习笔记]12支持向量机6SVM总结

    12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 12.6SVM总结 推荐使用成熟的软件包 用以解决 SVM 最优化问题的软件很复杂,且已经有研究者做了很多年数值优化.因此强烈 ...

  5. [吴恩达机器学习笔记]12支持向量机4核函数和标记点kernels and landmark

    12.支持向量机 觉得有用的话,欢迎一起讨论相互学习~Follow Me 12.4 核函数与标记点- Kernels and landmarks 问题引入 如果你有以下的训练集,然后想去拟合其能够分开 ...

  6. 吴恩达机器学习103:SVM之大间隔分类器的数学原理

    1.向量内积: (1)假设有u和v这两个二维向量:,接下来看一下u的转置乘以v的结果,u的转置乘以v也叫做向量u和向量v的内积,u是一个二维向量,可以将其在图上画出来,如下图所示向量u: 在横轴上它的 ...

  7. 吴恩达机器学习笔记(六) —— 支持向量机SVM

    主要内容: 一.损失函数 二.决策边界 三.Kernel 四.使用SVM (有关SVM数学解释:机器学习笔记(八)震惊!支持向量机(SVM)居然是这种机) 一.损失函数 二.决策边界 对于: 当C非常 ...

  8. Coursera-AndrewNg(吴恩达)机器学习笔记——第三周

    一.逻辑回归问题(分类问题) 生活中存在着许多分类问题,如判断邮件是否为垃圾邮件:判断肿瘤是恶性还是良性等.机器学习中逻辑回归便是解决分类问题的一种方法.二分类:通常表示为yϵ{0,1},0:&quo ...

  9. 吴恩达机器学习笔记45-使用支持向量机(Using A SVM)

    本篇我们讨论如何运行或者运用SVM. 在高斯核函数之外我们还有其他一些选择,如:多项式核函数(Polynomial Kernel)字符串核函数(String kernel)卡方核函数( chi-squ ...

随机推荐

  1. sql server block如何查询并kill

    本帖提供两种做法,可避免在 SQL Server 事务锁定时产生的不正常或长时间阻塞,让用户和程序也无限期等待,甚至引起 connection pooling 连接数超过容量. 所谓的「阻塞」,是指当 ...

  2. kafka可靠性

    文章转载自: http://blog.csdn.net/u013256816/article/details/71091774

  3. <力荐>非常好的正则表达式的详解<力荐>

    正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串.将匹配的子串做替换或者从某个串中取出符合某个条件的子串等. 列目录时, dir *.t ...

  4. Xftp安装和使用的视频录制方法

    内容: 1.使用工具 2.操作步骤及方法 视频地址: http://v.youku.com/v_show/id_XMzEwNjg2MTg2NA==.html?spm=a2h3j.8428770.341 ...

  5. DCOM初步窥探二

    1.COM进程透明性表现在“组件对象和客户程序可以拥有各自的空间,也可以共享同一个进程空间”. COM负责把客户的调用正确传到组件对象中,并保证参数传递的正确性. 组件对象和客户代码不必考虑调用传递的 ...

  6. 四则运算2+psp0

    程序要求: 1.题目避免重复 2.可定制(数量\打印方式) 3.可以一下控制参数 ① 是否有乘除法 ② 是否有括号(最多支持十个数参与运算) ③ 数值范围 ④加减有无负数 ⑤除法有无余数 分析:① 如 ...

  7. static块的本质

    在网上看到了下面的一段代码: public class Test { static { _i = 20; } public static int _i = 10; public static void ...

  8. dubbo源码分析1——负载均衡

    dubbo中涉及到的负载均衡算法只要有四种:Random LoadBalance(随机均衡算法).RoundRobin LoadBalance(权重轮循均衡算法).LeastAction LoadBa ...

  9. Apache 的知识点

    apache 的官方文档 http://httpd.apache.org/docs/ Mac下如何查看Apache的版本 在终端(Terminal)中输入 apachectl -v,之后回车,结果如下 ...

  10. 第五周PSP &进度条

    团队项目PSP 一:表格     C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 讨论 讨论用户界面 9:27 10:42 18 57 60 分析与 ...