在WB二面中,问到让讲一下SVM算法。

我回答的时候,直接答道线性分隔面将样本分为正负两类,取平行于线性切割面的两个面作为间隔边界,分别为:wx+b=1和wx+ b = -1。

面试官就问,为什么是正负1?

当时没有答上来,看来还是对模型不够理解。

回来查资料和ppt等,解答例如以下:

线性切割面是f(x) = wx + b,该线性切割面是要把样本点分为两类:

对于正样本,都满足:wx + b > 0;

对于负样本。都满足:wx + b < 0;

从式子中能够观察到,假设同一时候放大或缩小w和b。最后的结果是不受影响的,还是同一个线性切割面。

因此,我们能够做一个要求:

对于全部正样本。都满足:wx + b >= 1;

对于全部负样本。都满足:wx + b <= -1;

当中,间隔边界外的点相应的是">"或"<"号。而间隔边界上的点,相应的是"="号。

即得到:

对于间隔边界上的正样本,都满足:wx + b = 1。

对于间隔边界上的负样本。都满足:wx + b = -1;

这就是间隔边界上的值为正负1的由来。

PS1:

硬间隔SVM中,最小化间隔为:

min f(w) = w.T * w / 2

其约束条件为:使全部的样本点都能正确划分,即:

s.t.   y_i(w * x_i + b) >= 1。

注意:不等式是包括等号"="的,是说。全部的点都在间隔边界之上或之外。不同意出如今间隔边界与分类超平面之间的!

PS2:

对于软间隔SVM中的松弛变量的概念。噪声点并不是仅仅能存在于正确间隔边界外,因为有了松弛变量把它拉回来,因此,噪声点是能够到两个间隔边界之中,或者到错误的间隔边界之外的(当然,假设仅仅是出如今分类超平面和正确的间隔边界之间,此时该点还是会被正确分类的。可是,此时它还是会为l(w)函数贡献松弛变量e的。)。

此时的限制条件为:

s.t. y_i(w * x_i + b) + e_i >= 1,当中,e_i >= 0。

SVM中为何间隔边界的值为正负1的更多相关文章

  1. SVM中的间隔最大化

    参考链接: 1.https://blog.csdn.net/TaiJi1985/article/details/75087742 2.李航<统计学习方法>7.1节 线性可分支持向量机与硬间 ...

  2. SVM中的软间隔最大化与硬间隔最大化

    参考文献:https://blog.csdn.net/Dominic_S/article/details/83002153 1.硬间隔最大化 对于以上的KKT条件可以看出,对于任意的训练样本总有ai= ...

  3. 支持向量机(SVM)的推导(线性SVM、软间隔SVM、Kernel Trick)

    线性可分支持向量机 给定线性可分的训练数据集,通过间隔最大化或等价地求解相应的凸二次规划问题学习到的分离超平面为 \[w^{\ast }x+b^{\ast }=0\] 以及相应的决策函数 \[f\le ...

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

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

  5. SVM中径向基函数与高斯核的区别 Difference between RBF and Gaussian kernel in SVM

    Radial Basis Functions (RBFs) are set of functions which have same value at a fixed distance from a ...

  6. 5. 支持向量机(SVM)软间隔

    1. 感知机原理(Perceptron) 2. 感知机(Perceptron)基本形式和对偶形式实现 3. 支持向量机(SVM)拉格朗日对偶性(KKT) 4. 支持向量机(SVM)原理 5. 支持向量 ...

  7. PHP实现查询Memcache内存中的所有键与值

    使用Memcache时,我们可以用memcache提供的get方法,通过键查询到当前的数据,但是有时候需要查询内存中所有的键和值,这个时候可以使用下面的代码实现: <?php /** * Cre ...

  8. 借One-Class-SVM回顾SMO在SVM中的数学推导--记录毕业论文5

    上篇记录了一些决策树算法,这篇是借OC-SVM填回SMO在SVM中的数学推导这个坑. 参考文献: http://research.microsoft.com/pubs/69644/tr-98-14.p ...

  9. 慕课网-Java入门第一季-7-3 Java 中无参带返回值方法的使用

    来源:http://www.imooc.com/code/1579 如果方法不包含参数,但有返回值,我们称为无参带返回值的方法. 例如:下面的代码,定义了一个方法名为 calSum ,无参数,但返回值 ...

随机推荐

  1. python 爬虫入门案例----爬取某站上海租房图片

    前言 对于一个net开发这爬虫真真的以前没有写过.这段时间开始学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSou ...

  2. thinkphp htmlspecialchars_decode

    一  百度编辑器 与 htmlspecialchars_decode *Thinkphp百度编辑器 存的时候为了安全把进行了字符转换,数据库: <p>&nbsp;测试测试</ ...

  3. SpringBoot MockMvc的单元测试

    对于类的测试,可以有很多的方式进行实现,比如可以使用PostMan,使用HttpClient请求等,这里主要讲的是MockMcv的测试 一:引入依赖 <dependency> <gr ...

  4. Spark内部结构详解

    参考: https://github.com/JerryLead/SparkInternals/blob/master/markdown/english/5-Architecture.md?winzo ...

  5. 2.java设计模式-抽象工厂模式

    抽象工厂模式简介: 每一个模式都是针对某一种问题的解决方案.抽象工厂模式与工厂模式最大的区别在于,工厂模式针对的是一个产品等级结构,而抽象工厂模式面对的是多个产品等级结构,即产品族的概念. 这里讲解一 ...

  6. poj 1811 Prime Test 大数素数测试+大数因子分解

    Prime Test Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 27129   Accepted: 6713 Case ...

  7. csharp: read excel using Aspose.Cells

    /// <summary> /// /// </summary> /// <param name="strFileName"></para ...

  8. Linux常见操作指令(转载)

    Linux,免费开源,多用户多任务系统.基于Linux有多个版本的衍生.RedHat.Ubuntu.Debian 安装VMware或VirtualBox虚拟机.具体安装步骤,找百度. 再安装Ubunt ...

  9. YC

    package com.hanqi; import java.util.*; public class yc{ public static void main(String[] args) { // ...

  10. 【转】怎么用PHP发送HTTP请求(POST请求、GET请求)?

    file_get_contents版本: /** * 发送post请求 * @param string $url 请求地址 * @param array $post_data post键值对数据 * ...