1.对偶问题的推导

为什么要求解对偶问题?一是对偶问题往往更容易求解,二是可以自然的引入核函数。

1.1 用拉格朗日函数将原问题转化为“无约束”等价问题

原问题是:

写出它的拉格朗日函数:

然后我们的原问题就等价为:

为什么可以这样等价:

即:对于不满足约束条件的(b,w),min里面趋于无穷大,因此min就把这些b,w舍去了;对于满足约束条件的解,min里面就刚好是原来的目标函数,刚好与原问题等价。

1.2 导出拉格朗日对偶问题

首先我们有如下成立:

然后我们取右边式子中的“best”阿尔法,仍然会有大于等于号成立,因为best is one of any:

这时右边的式子就是对偶问题。这里直接给出一个定理,当满足下面条件时(对于SVM来说刚好满足),原始问题和对偶问题的解是相同的:

并且它们的最优解满足KKT条件:偏导为0,对偶互补,拉格朗日乘子大于0.

1.3 用KKT条件来简化对偶问题

我们的对偶问题现在是:

根据KKT条件,我们有:

把第一个代进来:

再把第二个代进来:

这时候,我们的问题里面就只剩一个参数阿尔法了。再把平方项展开,写的好看一点,就得到了标准的硬间隔SVM对偶问题:

2. 解对偶问题

还是解QP那一套:

之后再求W和b:

(所有支持向量的加权和)

(任取一个支持向量算出)

3. 支持向量

引出对偶问题后,我们重现定义支持向量为阿尔法大于0的向量。他们一定是在边界上的(统计学习方法p107),但是在边界上的不一定阿尔法大于0:

前面我们也提到过,w和b的计算只需要支持向量,其他向量都是无用的:

最新文章

  1. Oracle OCP 1Z0-053 Exam Topics
  2. Gdb调试多进程程序
  3. PHP发送电子邮件
  4. MMC不能打开文件D:\Program Files\Microsoft SQL Server\80\Tools\BINN\SQL Server Enterprise Manager.MSC
  5. Fiddler环境配置教程
  6. linux中添加ftp用户,并设置相应的权限
  7. js中模仿接口继承
  8. 一个项目中哪些文件是要上传到 git上的,哪些是不必要的
  9. Oracle学习【语句查询】
  10. 三个C++资源链接(大量)
  11. 【IOS】 遍历info 所有内容 && 唯一的节能设备UUID
  12. iOS 旋屏问题
  13. ASP.NET Core 源码学习之 Logging[1]:Introduction
  14. Cassandra HBase和MongoDb性能比较
  15. SSH2三大框架SQL查询
  16. 将来会是Python、Java、Golang三足鼎立的局面吗?
  17. [解读REST] 3.基于网络应用的架构
  18. python基础学习(二)注释和算术运算符
  19. Python使用正则表达式分割字符串
  20. 在django中使用django_debug_toolbar进行日志记录

热门文章

  1. C语言学习书籍推荐《C语言入门经典(第4版)》
  2. 基于IdentityServer4的OIDC实现单点登录(SSO)原理简析
  3. findBugs英文代号的对照表
  4. RabbitMQ从入门到精通(三)
  5. 浅谈redis
  6. hadoop的运行模式
  7. win10 安装mysql(图文详情)避免卡在最后一步
  8. JAVA 使用 POI进行读取Excel表格示例
  9. php 排序和置顶功能实现
  10. TP 5.0 架构 简介