zoukankan      html  css  js  c++  java
  • SVM学习笔记4-核函数和离群点的处理

    核函数
    在svm里,核函数是这样定义的。核函数是一个n*n(样本个数)的矩阵,其中:
    $K_{ij}=exp(-frac{||x^{(i)}-x^{(j)}||^{2}}{2sigma ^{2}})$

    也就是说,当两个向量越接近时,它们的核函数越接近于1;越远时,核函数越接近于0。在svm里,使用$K_{ij}$而不使用$(x^{(i)})^{T}x^{(j)}$,应该是就像神经网络或者逻辑回归里的激活函数吧。反正,以后出现两个样本内积的地方,都换成相应的核函数。那么从3最后求解的式子就变成了:
    $underset{alpha}{min}W(alpha)=frac{1}{2} sum_{i,j=1}^{n}y^{(i)}y^{(j)}alpha_{i}alpha_{j}k_{ij}-sum_{i=1}^{n}alpha_{i}$,使得满足(1)$alpha_{i}geq 0,1 leq i leq n$,(2)$sum_{i=1}^{n}alpha_{i}y^{(i)}=0$

    离群点处理

    在实际问题中,可能样本点并不是能够完全分成两类(比如有可能有几个正样本在负样本中间,或者相反),那这样岂不是有可能找不到超平面了?为了处理这个问题,我们将求解问题转换一下:$min_{w,b,xi}$ $frac{1}{2}||w||^{2}+Csum_{i=1}^{n}xi _{i}$,使得$y^{(i)}(w^{T}x^{(i)}+b)geq 1-xi _{i} ,1 leq i leq n$

    那么对应的拉格朗日函数为:$L(w,b,xi,alpha,r)=frac{1}{2}||w||^{2}+Csum_{i=1}^{n}xi _{i}-sum_{i=1}^{n}alpha_{i}[y^{(i)}(w^{T}x^{(i)}+b)-1+xi_{i}]-sum_{i=1}^{n}r_{i}xi_{i}$

    同样的,其对$w,b,xi$的导数为0,然后化简,最后得到的问题为:
    $underset{alpha}{min}W(alpha)=frac{1}{2} sum_{i,j=1}^{n}y^{(i)}y^{(j)}alpha_{i}alpha_{j}k_{ij}-sum_{i=1}^{n}alpha_{i}$,使得满足(1)$0 leq alpha_{i}leq C,1 leq i leq n$,(2)$sum_{i=1}^{n}alpha_{i}y^{(i)}=0$

    同时有:
    (1)$alpha_{i}=0Rightarrow y^{(i)}(w^{T}x^{(i)}+b)geq 1$,正常样本
    (2)$alpha_{i}=CRightarrow y^{(i)}(w^{T}x^{(i)}+b)leq 1$,异常样本,在支持向量之间
    (3)$0< alpha_{i}< CRightarrow y^{(i)}(w^{T}x^{(i)}+b)= 1$,支持向量

  • 相关阅读:
    Android下拉刷新完全解析,教你如何一分钟实现下拉刷新功能
    android 网络异步加载数据进度条
    在WebView中加载HTML页面时显示进度对话框的方法
    Java基础知识总结之IO流
    计算机网络之网络协议
    Java中hashCode的作用
    一篇很好的学习查看Java源代码的文章
    JavaScript 客户端JavaScript之 脚本化文档
    JavaScript 超类与子类 继承
    JavaScript 类、构造函数、原型
  • 原文地址:https://www.cnblogs.com/jianglangcaijin/p/6370217.html
Copyright © 2011-2022 走看看