zoukankan      html  css  js  c++  java
  • SVM: 直观上理解大间距分类器

    在SVM中,增加安全的间距因子

    那么增加了这个间距因子后,会出现什么样的结果呢,我们将C设置为很大(C=100000)

    SVM决策边界

    当我们将C设置得很大进,要想SVM的cost function最小,则要使蓝色框里面的term=0,即当y(i)=1时,θTx(i)>=1;当y(i)=0时,θTx(i)<=-1。这时我们的cost function就会变成上图右边所示(S.T.表示限制条件),在求解这个cost function的最小值的时候,我们会得到一个决策边界,这时我们的决策边界会是什么样子呢?

    SVM决策边界: 线性可分的例子(直观上理解什么叫做大间距分类器)

    上图中的正负例子,我们可以线性可分,如上图所示,绿色的线,粉红色的线,黑色的线都可以将其分开,但是黑色的线分开的表现是最好的,绿色、粉红都有一些不好。黑色的线与两个正负样本之间有大的间距(margin)。故SVM具有robustness(鲁棒性): 健壮和强壮的意思。即它努力用最大间距来分离样本

    所以SVM也称为Large margin classifier(大间距分类器)

    在求解上幅图中的cost function的最小值的时候,我们会得到类似于上面的这个决策边界,即努力用最大间距来分离样本,为什么会得到这个分类器将以后介绍。现在我们只是对SVM的large margin classifier有一个直观上的了解。

    SVM是如何处理异常点的

    我们可以从直观上看到SVM做为一个大间距分类器(当C非常大时),将画出黑色的决策边界线。当C非常大时,这时如果有一个异常正值点(上图左下角),这时SVM就会画出粉色的决策边界线,但是为了一个异常值将决策线从黑色改为粉色并不好,这里如果我们将C设置不那么大(not too large)时,SVM的决策边界线还是黑色的那条,不会受异常点而变动。

    当C不是很大时,SVM在有异常值的情况下(如上图中的4个异常值)仍然可以将样本分离出来。

    C=1/λ,当C很大时,即λ很少,即正则化参数很小,则趋向于画出过拟合的线;当C不是很大时,即λ有值,加入了正则化泛化能力增强,不会为了一两个异常值而改变。

    总结

    1. 当C很大时,我们从直观上理解SVM做为大间距分类器
    2. 当C不是很大时,SVM有较好的泛华能力,能适应异常值
  • 相关阅读:
    移动端字体单位
    我像素的理解
    了解viewport概念
    移动端知识
    本地存储和会话存储
    一屏滚动滚轮事件
    关于jquery的笔记
    关于bind()方法
    [css] 滚动条样式问题
    [element-ui] 表格功能实现(删除选中)
  • 原文地址:https://www.cnblogs.com/yan2015/p/5176398.html
Copyright © 2011-2022 走看看