【SVM】简单介绍(三)

我们考虑SVM的对偶问题,我们通常是在对偶空间中进行求解的。

1、Lagrange Multipliers

对于一个很一般的问题
Minimize f(x)subject to {a(x)≥0b(x)≤0c(x)=0\begin{aligned} \text { Minimize } & f(x) \\ \text { subject to } \quad & \left\{\begin{array}{l} a(x) \geq 0 \\ b(x) \leq 0 \\ c(x)=0 \end{array}\right. \end{aligned}  Minimize  subject to f(x)a(x)0b(x)0c(x)=0

构造拉氏函数
L(x,α)=f(x)−α1a(x)−α2b(x)−α3c(x){α1≥0α2≤0α3is unconstrained \begin{aligned} L(x, \alpha)= & f(x)-\alpha_1 a(x)-\alpha_2 b(x)-\alpha_3 c(x) \\ & \left\{\begin{array}{l} \alpha_1 \geq 0 \\ \alpha_2 \leq 0 \\ \alpha_3 \text { is unconstrained } \end{array}\right. \end{aligned} L(x,α)=f(x)α1a(x)α2b(x)α3c(x)α10α20α3 is unconstrained 
我们对拉氏函数关于拉格朗日乘子求最大
max⁡αL(x,α)={f(x),if {a(x)≥0b(x)≤0c(x)=0+∞,otherwise \max _\alpha L(x, \alpha)=\left\{\begin{array}{lr} f(x), & \text { if }\left\{\begin{array}{l} a(x) \geq 0 \\ b(x) \leq 0 \\ c(x)=0 \end{array}\right. \\ +\infty, & \text { otherwise } \end{array}\right. αmaxL(x,α)=f(x),+, if a(x)0b(x)0c(x)=0 otherwise 
于是我们的优化目标变为
min⁡xmax⁡αL(x,α)subject to {a(x)≥0b(x)≤0c(x)=0\begin{aligned} \min _x &\max _\alpha L(x, \alpha)\\ \text { subject to } \quad & \left\{\begin{array}{l} a(x) \geq 0 \\ b(x) \leq 0 \\ c(x)=0 \end{array}\right. \end{aligned} xmin subject to αmaxL(x,α)a(x)0b(x)0c(x)=0
进一步的,我们又有
min⁡xmax⁡αL(x,α)=max⁡αmin⁡xL(x,α)\min _x \max _\alpha L(x, \alpha)=\max _\alpha \min _x L(x, \alpha) xminαmaxL(x,α)=αmaxxminL(x,α)
当我们在内层把xxx消掉后,我们最终的优化问题将与样本无关,只与拉格朗日乘子有关,SVM似乎不会受样本的维数影响

2、KKT条件

Stationarity ∇f(x∗)−α1∇a(x∗)−α2∇b(x∗)−α3∇c(x∗)=0Primal feasibility {a(x∗)≥0b(x∗)≤0c(x∗)=0Dual feasibility {α1≥0α2≤0α3is unconstrained Complementary slackness {α1a(x∗)=0α2b(x∗)=0α3c(x∗)=0\begin{aligned} & \text { Stationarity } \nabla f\left(x^*\right)-\alpha_1 \nabla a\left(x^*\right)-\alpha_2 \nabla b\left(x^*\right)-\alpha_3 \nabla c\left(x^*\right)=0 \\ & \text { Primal feasibility }\left\{\begin{array}{l} a\left(x^*\right) \geq 0 \\ b\left(x^*\right) \leq 0 \\ c\left(x^*\right)=0 \end{array}\right. \\ & \text { Dual feasibility }\left\{\begin{array}{l} \alpha_1 \geq 0 \\ \alpha_2 \leq 0 \\ \alpha_3 \text { is unconstrained } \end{array}\right. \\ & \text { Complementary slackness }\left\{\begin{array}{l} \alpha_1 a\left(x^*\right)=0 \\ \alpha_2 b\left(x^*\right)=0 \\ \alpha_3 c\left(x^*\right)=0 \end{array}\right. \end{aligned}  Stationarity f(x)α1a(x)α2b(x)α3c(x)=0 Primal feasibility a(x)0b(x)0c(x)=0 Dual feasibility α10α20α3 is unconstrained  Complementary slackness α1a(x)=0α2b(x)=0α3c(x)=0

3、Hard Margin SVM 对偶问题

回到我们的Hard Margin SVM

Minimize 12∥w∥2\frac{1}{2}\|\mathbf{w}\|^221w2
subject to 1−yi(wTxi+b)≤01-y_i\left(\mathbf{w}^T \mathbf{x}_i+b\right) \leq 0 \quad1yi(wTxi+b)0 for i=1,…,ni=1, \ldots, ni=1,,n

构造拉格朗日函数
L=12wTw+∑i=1nαi(1−yi(wTxi+b))\mathcal{L}=\frac{1}{2} \mathbf{w}^T \mathbf{w}+\sum_{i=1}^n \alpha_i\left(1-y_i\left(\mathbf{w}^T \mathbf{x}_i+b\right)\right) L=21wTw+i=1nαi(1yi(wTxi+b))
分别对权重和偏置求偏导
w+∑i=1nαi(−yi)xi=0⇒w=∑i=1nαiyixi∑i=1nαiyi=0αi≥0\begin{aligned} \mathbf{w}+\sum_{i=1}^n \alpha_i\left(-y_i\right) \mathbf{x}_i&=\mathbf{0} \quad \Rightarrow \quad \mathbf{w}=\sum_{i=1}^n \alpha_i y_i \mathbf{x}_i \\ \sum_{i=1}^n \alpha_i y_i&=0 \quad \alpha_i \geq 0 \\ & \end{aligned} w+i=1nαi(yi)xii=1nαiyi=0w=i=1nαiyixi=0αi0
因此将Hard Margin SVM转化为对偶问题(把求得的w\mathbf{w}w代入)
max⁡.W(α)=∑i=1nαi−12∑i=1,j=1nαiαjyiyjxiTxjsubject to αi≥0,∑i=1nαiyi=0\begin{aligned} & \max . \quad W(\boldsymbol{\alpha})=\sum_{i=1}^n \alpha_i-\frac{1}{2} \sum_{i=1, j=1}^n \alpha_i \alpha_j y_i y_j \mathbf{x}_i^T \mathbf{x}_j \\ & \text { subject to } \alpha_i \geq 0, \sum_{i=1}^n \alpha_i y_i=0 \end{aligned} max.W(α)=i=1nαi21i=1,j=1nαiαjyiyjxiTxj subject to αi0,i=1nαiyi=0
特别注意到:
w=∑i=1nαiyixi\mathbf{w}=\sum_{i=1}^n \alpha_i y_i \mathbf{x}_i w=i=1nαiyixi

  1. 由于标签的值为+1或-1,所以上式隐含正负样本对分解面的贡献是大致相同的。正负样本规模大致相当
  2. 对于每一个样本xi\mathbf{x}_ixi,都有一个αi\alpha_iαi,而当αi\alpha_iαi000时,该样本对分类器没有贡献,事实确实如此。而那些对分类器有贡献的样本又叫支撑向量Support Vectors
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/258289.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

玩转iOS开发:NSURLSession讲解(三)

文章分享至我的个人技术博客: https://cainluo.github.io/14986211698053.html 前言 虽然前面两讲都是说了NSURLSession的一些理论上的知识, 但我们现在起码对NSURLSession有个大概的了解, 并不会像一开始的那样, 一脸懵逼的看着, 这个请求是什么鬼, 那个方法是什么鬼, Task是什…

轻松搞定面试中的二叉树题目

版权全部,转载请注明出处,谢谢!http://blog.csdn.net/walkinginthewind/article/details/7518888 树是一种比較重要的数据结构,尤其是二叉树。二叉树是一种特殊的树,在二叉树中每一个节点最多有两个子节点,…

李倩星r语言实战_《基于R的统计分析与数据挖掘》教学大纲

《基于R的统计分析与数据挖掘》课程教学大纲课程代码:090542009课程英文名称:R Language and Data Mining课程总学时:32讲课:32实验:0上机:0适用专业:应用统计学大纲编写(修订)时间:…

自动化测试小结

最近差不多一年从事自动化的测试工作,从开始对自动化一点都不了解到现在能从实现用例、手动命令行执行用例、自制工具来执行用例,感觉进步还是有的。 自动化测试对于手动测试应该是有不小的优势的,虽然在自动化的用例实现中刚开始的时候会显得…

python地理可视化_【Python教程】地理可视化之二

Basemap是Matplotlib的一个子包,负责地图绘制。昨天的推送对如何绘制风向图进行了描述,本文再次利用该包简单介绍如何绘制海洋及海冰温度彩色图示,该图常见于NOAA官网。具体操作如下:导入命令1)设置工作环境并导入程序包%cd "…

寻找白板上的便签条

问题来源:http://answers.opencv.org/question/162480/contour-detection-for-gray-stickers-on-white-background/ 题目的大概意思就是这样的白板,寻找上面的各种便签条。我找到了橘色的,结果是这样代码是这样Mat src imread("gray-st…

LeetCode Permutations

原题链接在这里:https://leetcode.com/problems/permutations/ 题目: Given a collection of distinct numbers, return all possible permutations. For example,[1,2,3] have the following permutations:[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2]…

去除内存上的警告,避免程序崩掉

# pragma clang diagnostic push # pragma clang diagnostic ignored "-Warc-performSelector-leaks" [self performSelector:callFunc withObject:array[1]]; # pragma clang diagnostic pop 使用原理:将出现警告的代码加入内存栈中转载于:https://www.c…

opengl2 vtk 编译_编译和使用VTK时值得注意的点(待续)

最近的一个项目中需要使用VTK,于是开始了VTK的漫漫编译之路。长篇大论的编译步骤网上数不胜数,在这里不再细说,可自行google。这里主要说一些在编译过程中需要注意的地方,以免走歪路。1、使用cmake进行第一次configure的时候需要选…

gg

转载于:https://www.cnblogs.com/lyzuikeai/p/7091206.html

二:Go编程语言规范-类型

1.类型 布尔值,数值与字符串类型的实例的命名是预声明的。 数组,结构,指针,函数,接口,切片,映射和信道这些复合类型可由类型字面构造。 每个类型 T 都有一个 基本类型:若 T 为预声明…

HDU 1728 逃离迷宫

这道题做的我想哭啊。。WA了将近十次了吧 一开始我用数组模拟的队列,后来和老大代码对拍,感觉改的是基本都一模一样了,还是WA 实在没有办法了,改用queue了 题目里的x是列y是行,和代码里的反过来的,要注意&a…

Nginx(六)-- 配置文件之Gzip

1.概念及作用 Gizp主要对内容、静态文件做压缩,用来提升网站访问速度,节省带宽。 2.使用方法 gzip既可以配置在server中,也可以配置在server外,此处配置在server中,如下: 说明:  gizp on|off 是…

误码率越高越好还是越低越好_夜间护理步骤越多越好还是越少越好?NFF

现在很多人都知道了夜晚是护肤的黄金护肤时间,有些很聪明的姐妹就从夜晚着手,使用很多种护肤品,希望达到事半功倍的效果,但好皮肤不常有,皮肤问题却常有!既然如此,不少人就问了,夜间…

【随机森林】random forests 简单介绍

Random Forest,顾名思义 Random 就是随机抽取; Forest 就是说这里不止一棵树,而由 一群决策树组成的一片森林 ,连起来就是用随机抽取的方法训练出一群决策树来完成分类任务。RF用了两次随机抽取, 一次是对训练样本的随机抽取; 另一…

侧边工具开发2

1.使用图片的形式会出现大量的图片&#xff0c;影响性能&#xff0c;而且不易修改&#xff0c;所有使用图标加文字的形式进行 <a href"javacript:;" class"toolbar-item"><span class"toolbar-btn"><i class"toolbar-icon&q…

斐波那契?

斐波那契&#xff1f; Time Limit: 1000ms Memory limit: 32768K 有疑问&#xff1f;点这里^_^ 题目描述 给出一个数列的递推公式&#xff0c;希望你能计算出该数列的第N个数。递推公式如下&#xff1a; F(n)F(n-1)F(n-2)-F(n-3). 其中&#xff0c;F(1)2, F(2)3, F(3)5. 很熟…

clustalw序列比对_序列比对之Clustalx与Clustalw使用指南

相关专题这几天实验需要做多序列比对&#xff0c;很久不做了&#xff0c;一时之间不知道如何使用clustal这个工具了。在网上搜集了一些资料&#xff0c;做个整理&#xff0c;总结了Clustalx和Clustalw的使用&#xff0c;省得以后久不使用又生疏了&#xff0c;又要去整理了&…

信息安全系统设计基础第三周学习总结—20135227黄晓妍

一.Vim编辑器 1.Vim的六种模式 2.Vim三种常用模式的使用方式&#xff0c;以及三者的切换。打开Vim即默认进入普通模式&#xff0c;按i进入插入模式&#xff0c;按esc从插入模式退出普通模式&#xff0c;再按&#xff1a;进入命令行模式。 普通模式下游标的移动 按键 说明 h …

关于指定日期的获取

java使用Calendar类获得指定日期 关于指定日期的获取&#xff0c;是根据指定日期和当前日期相差的天数&#xff0c;然后使用set方法设置Calendar.DAY_OF_MONTH的值。Calendar cal Calendar.getInstance();cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH) - da…