zoukankan      html  css  js  c++  java
  • 《机器学习技法》---线性SVM

    (本文内容和图片来自林轩田老师《机器学习技法》)

    1. 线性SVM的推导

    1.1 形象理解为什么要使用间隔最大化

    容忍更多的测量误差,更加的robust。间隔越大,噪声容忍度越大:

    1.2 SVM的问题描述

    表示为正式的形式,就是:

    1.3 推导点到平面的距离

     

    因此,由于约束条件1,距离里面的绝对值可以去掉,原来的最优化问题变为:

    1.4 将SVM问题写成更容易解决的形式

    由于w和b乘以同样的倍数得到的平面不变。因此我们做一个放缩,规定:

    因此问题就变为了:

    在这里,我们发现第二个约束条件其实已经包含了第一个约束条件,因此我们可以舍去第一个约束条件,问题进一步简化为:

    然后,我们发现约束条件还是不够简单,因此我们把约束条件放宽:

    这一步要说明,把约束条件放宽相当于解的备选区域变大了。我们在这里要说明,最优解仍然会落在原来的区域内。采用反证法:

    所以说,落在外面区域的解不可能是最优解,因此把约束条件放松对求解是没有影响的。

    然后,我们把目标函数求最大改为最小,根号去掉,加一个因子1/2,得到最终形式:

    2. 求解SVM问题

    上述最优化问题是一个标准的凸二次规划问题(QP),我们可以把它扔到专门解这类问题的程序中求解,只需要求出它对应到标准QP问题中的各个参数值是什么就好:

    3. 为什么要使用large-margin?

    (1)对噪声的有更大的鲁棒性

    (2)降低了VC维,更好的泛化能力

     

     

  • 相关阅读:
    P3350 [ZJOI2016]旅行者
    P4178 Tree
    P2375 [NOI2014]动物园
    P2827 蚯蚓
    1002: [FJOI2007]轮状病毒
    1070: [SCOI2007]修车
    AtCoder Grand Contest 021完整题解
    Running to the End(Codeforces & AtCoder 百套计划)
    SDWC2017游记
    非传统题初探——AtCoder Practice Contest #B
  • 原文地址:https://www.cnblogs.com/coldyan/p/6143059.html
Copyright © 2011-2022 走看看