背景

支持向量机(SVM)背后的数学知识比较复杂,之前尝试过在网上搜索一些资料自学,但是效果不佳。所以,在我的数据挖掘工具箱中,一直不会使用SVM这个利器。最近,台大林轩田老师在Coursera上的机器学习技法课程上有很详细的讲授SVM的原理,所以机会难得,一定要好好把握这次机会,将SVM背后的原理梳理清楚并记录下来。这篇文章总结第一讲linear hard SVM的相关内容。

最好的分割线

之前有讲过PLA,即在线性可分的数据中,找到一条线,能够区分开正负样本,如下所示:

上面三条线,都是PLA的解,但是哪条才是最好的呢?凭直觉而言,最右边是最好的,因为右边第三条对噪声的容忍度最高。

上图中灰色区域是噪声,区域越大,噪声越大。可以发现,最右边可以容忍的噪声是最大。现在是以点的视角来观察,下面以线的视角观察,

同样的,最右边的线扩展后得到的"垫子"最厚。"垫子"的厚度通常叫做margin(边缘)。垫子扩展到最近的正负样本就停止扩展,这些在垫子边缘上的正负样本叫做支持向量(每个样本就是一个向量)。

问题来了

知道了支持向量机的定义和优点后,那么问题来了,我们要解一个什么问题?

形式化的问题定义如下

如果符合上面条件的w(平面法向量)和b(平面截距)存在,由于平面公式可以伸缩(即wTx+b=0与3wTx+3b=0表示同一个平面),所以总可以找到一组w*和b*,使得min y(w*x+b*) = 1,那么有

经过上面的平面缩放变化,问题可以简化为如下形式

是不是看起来简单多了。

二次规划

为了进一步简化计算,将目标函数经过一番变化,可以得到如下利于优化的形式

这个问题形式和二次规划(线性规划的亲戚,)一致,所以可以使用二次规划的方法求解。二次规划的一般形式如下:

将linear hard SVM的求解公司套用QP一般形式,接下来就可以通过任何实现QP解法的工具计算求解,这里略去具体的变量映射关系,有兴趣的读者可以尝试。对于非线性问题,可以通过对x做二次转化或其他转化,然后求解。

VC维度

相比较PLA的平面,linear hard SVM得到的平面结果更苛刻,

由于有"厚垫子",linear hard SVM不能shatter任意3个inputs,这说明有更少的dichotomies,更小的VC维度,也就有更好的泛化效果。同时,如果使用特征转换,可以使linear hard SVM进行一些更精细的分类。

总结

Linear hard SVM的解法中需要训练数据线性可分,然后通过缩放平面和等价转换,将原始问题转成QP问题求解。数据线性可分在实际情况中很难出现,所以linear hard SVM的应用价值比较有限。同时,在特征转换时,将原始数据映射到其他空间的计算无法省略(好像是废话)。接下来课程中,会使用一些更有趣的方法解决这两个问题,敬请期待。

转载于:https://www.cnblogs.com/bourneli/p/4198839.html

机器学习基石--学习笔记01--linear hard SVM相关推荐

  1. 台大机器学习基石学习笔记

    台大机器学习基石学习笔记 标签(空格分隔): 机器学习 目录 台大机器学习基石学习笔记 目录 Lecture 1 The Learning Problem Course Introduction Wh ...

  2. 机器学习基石--学习笔记02--Hard Dual SVM

    背景 上一篇文章总结了linear hard SVM,解法很直观,直接从SVM的定义出发,经过等价变换,转成QP问题求解.这一讲,从另一个角度描述hard SVM的解法,不那么直观,但是可以避免fea ...

  3. 台大林轩田机器学习基石学习笔记(一):The Learning Problem

    这里写自定义目录标题 写在前面 一.What is Machine Learning 二.Applications of Machine Learning 三.Components of Machin ...

  4. 台大-林轩田老师-机器学习基石学习笔记6

    这一讲数学的成份非常浓,但是中心思想还是为了希望证明机器学习的可行性条件.其中第五讲中提出的2D perceptrons的成长函数mH(N)是多项式级别的猜想,就是本次课的重点内容. break po ...

  5. 机器学习入门学习笔记:(4.2)SVM的核函数和软间隔

    前言 之前讲了有关基本的SVM的数学模型(机器学习入门学习笔记:(4.1)SVM算法).这次主要介绍介绍svm的核函数.软间隔等概念,并进行详细的数学推导.这里仅将自己的笔记记录下来,以便以后复习查看 ...

  6. 机器学习 基础理论 学习笔记 (8)特征选择(feature selection)(一)

    0.说明 本文也许比较乱,请看目录再食用. 后续会 出文 机器学习 基础理论 学习笔记 (8)特征选择(feature selection)(二) 将 分类问题 和 回归问题 分开总结. 以及或将出文 ...

  7. 机器学习入门学习笔记:(2.2)线性回归python程序实现

      上一篇博客中,推导了线性回归的公式,这次试着编程来实现它.(机器学习入门学习笔记:(2.1)线性回归理论推导 )   我们求解线性回归的思路有两个:一个是直接套用上一篇博客最后推导出来的公式:另一 ...

  8. 吴恩达《机器学习》学习笔记七——逻辑回归(二分类)代码

    吴恩达<机器学习>学习笔记七--逻辑回归(二分类)代码 一.无正则项的逻辑回归 1.问题描述 2.导入模块 3.准备数据 4.假设函数 5.代价函数 6.梯度下降 7.拟合参数 8.用训练 ...

  9. 吴恩达《机器学习》学习笔记五——逻辑回归

    吴恩达<机器学习>学习笔记五--逻辑回归 一. 分类(classification) 1.定义 2.阈值 二. 逻辑(logistic)回归假设函数 1.假设的表达式 2.假设表达式的意义 ...

最新文章

  1. 有了这个 IDEA的兄弟,你还用 Navicat 吗?全家桶不香吗?
  2. 2162112375 Week04-面向对象设计与继承
  3. c语言中的typedef struct相当于java的一个类?,C ++中'struct'和'typedef struct'之间的区别?...
  4. qstring 属于元数据类型吗_元数据,描述“数据”的“数据”
  5. 短期记忆容量必需有限
  6. 响应HTTP服务的shell脚本
  7. 六部门集中约谈8家网约车顺风车平台 要求加快合规步伐
  8. hadoop2.7.3+spark2.1.0+scala2.12.1环境搭建(4)SPARK 安装
  9. python怎样编写姓名、职业、地址_如何根据姓名、地址识别人际关系,然后通过linux comman或Pysp分配相同的ID...
  10. rails 调用php函数_潜藏在PHP安全的边缘——浅谈PHP反序列化漏洞
  11. 图像特征——纹理特征
  12. java 获取某一日期的0点0分0秒和23点59分59秒
  13. 键盘按键发出声音,打不了字,提示启用筛选键
  14. 联网时显示已连接无法连接到服务器怎么办,路由器显示已连接不可上网怎么办?...
  15. 吴军博士系列书籍读后感(《数学之美》、《浪潮之巅》、《文明之光》、《智能时代》)
  16. [UE5蓝图基础一]13.类似”人类一败涂地”掉落一定距离会回到空中 最终着落点还是设定地形上
  17. 实验吧 WEB 猫抓老鼠
  18. 四、项目成本管理(输入/工具与技术/输出)
  19. Visual Studio Code的下载和安装
  20. aoa定位算法matlab仿真,基于信号到达角度(AOA)的定位算法研究

热门文章

  1. js控制input只能输入数字和小数点后两位,输入其他自动清除方法。
  2. SPI子系统分析之二:数据结构【转】
  3. java 判断字符串是否是整数
  4. (转)法线贴图Nomal mapping 原理
  5. Silverlight在IE中无法显示但在Firefox中正常的原因和解决办法
  6. iOS视频采集实战(AVCaptureSession)
  7. 区块链开发中的9大应用场景
  8. angular之$parse
  9. 从零开始学习Sencha Touch MVC应用之十四
  10. 刷排名软件使用中需要用到的seo基础知识