版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/gshengod/article/details/24983333

(转载请注明出处:http://blog.csdn.net/buptgshengod)

1.背景知识

   前面我们提到的数据集都是线性可分的。这样我们能够用SMO等方法找到支持向量的集合。然而当我们遇到线性不可分的数据集时候,是不是svm就不起作用了呢?这里用到了一种方法叫做核函数,它将低维度的数据转换成高纬度的从而实现线性可分。
     可能有的人不明确为什么低维度的数据集转换成高维度的就能够实现线性可分,以下摘抄一个网上的样例解释一下。看以下这个图,我们设红色的区域是一组数据
,而直线ab除了红色区域以外是还有一组数据。

由于直线是一维的,所以我们无法找到一条直线区分这两组数据。

 
      单是当我们把这组数据引入二维之后。我们能够得到一组曲线,它在ab直线上部分指向黑色直线部分,ab直线下部指向红色部分。
      我们通过这个样例能够看到核函数的作用,由于svm的结果仅仅跟向量内积有关系。所以我们能够配合核函数实现随意数据集的分类。

假设有人问,假设就是有一定的点数使得我们不管添加多少维度都不能实现分类,这就是引用松弛变量的意义。忽略这一部分点,由于它们非常有可能是噪声。

2.代码部分

     由于核函数有非常多种类,比較经常使用的就是径向基核函数(RBF)。这个准确率是比較高的。公式:
 K = exp(K/(-1*kTup[1]**2))
    

【机器学习算法-python实现】svm支持向量机(3)—核函数的更多相关文章

  1. Python实现SVM(支持向量机)

    Python实现SVM(支持向量机) 运行环境 Pyhton3 numpy(科学计算包) matplotlib(画图所需,不画图可不必) 计算过程 st=>start: 开始 e=>end ...

  2. 在opencv3中实现机器学习之:利用svm(支持向量机)分类

    svm分类算法在opencv3中有了很大的变动,取消了CvSVMParams这个类,因此在参数设定上会有些改变. opencv中的svm分类代码,来源于libsvm. #include "s ...

  3. 【机器学习算法-python实现】KNN-k近邻算法的实现(附源代码)

    ,400],[200,5],[100,77],[40,300]]) shape:显示(行,列)例:shape(group)=(4,2) zeros:列出一个同样格式的空矩阵,例:zeros(group ...

  4. 机器学习算法 Python&R 速查表

    sklearn实战-乳腺癌细胞数据挖掘( 博主亲自录制) https://study.163.com/course/introduction.htm?courseId=1005269003&u ...

  5. 【机器学习算法-python实现】决策树-Decision tree(1) 信息熵划分数据集

    (转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景 决策书算法是一种逼近离散数值的分类算法,思路比較简单,并且准确率较高.国际权威的学术组织,数据挖掘国际 ...

  6. 【机器学习算法-python实现】svm支持向量机(1)—理论知识介绍

    (转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景      强烈推荐阅读(http://www.cnblogs.com/jerrylead/archiv ...

  7. 【机器学习算法-python实现】Adaboost的实现(1)-单层决策树(decision stump)

    (转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景      上一节学习支持向量机,感觉公式都太难理解了,弄得我有点头大.只是这一章的Adaboost线比 ...

  8. 【机器学习算法-python实现】採样算法的简单实现

    1.背景     採样算法是机器学习中比較经常使用,也比較easy实现的(出去分层採样).经常使用的採样算法有下面几种(来自百度知道):     一.单纯随机抽样(simple random samp ...

  9. 【机器学习算法-python实现】矩阵去噪以及归一化

    1.背景    项目须要,打算用python实现矩阵的去噪和归一化.用numpy这些数学库没有找到非常理想的函数.所以一怒之下自己用标准库写了一个去噪和归一化的算法,效率有点低,只是还能用,大家假设有 ...

随机推荐

  1. Tomcat Connector的三种不同的运行模式

    Tomcat Connector的三种不同的运行模式性能相差很大,有人测试过的结果如下: 这三种模式的不同之处如下: BIO: 一个线程处理一个请求.缺点:并发量高时,线程数较多,浪费资源. Tomc ...

  2. vue 生命周期组件渲染

    1.created 实例已完成以下的配置:数据观测 (data observer),属性和方法的运算,watch/event 事件回调.然而,挂载阶段还没开始,$el 属性目前不可见. 2.mount ...

  3. spring异常 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet

    spring异常 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderServlet   情况 ...

  4. MongoDB在Win10下的安装

    原文地址:http://blog.csdn.net/polo_longsan/article/details/52430539 1.下载MongoDB在windows下的安装文件 首先去官网https ...

  5. android tooggle button

    1 http://stackoverflow.com/questions/9938315/toggle-button-in-iphone-style 2 http://blog.csdn.net/bi ...

  6. c#通过URL地址从服务器上下载文件

  7. 工作总结 sql 中过滤条件 中的 (where中的) and

    总结: 在where 后面做过滤的时候 如果  有 字段1 必须满足某种值   字段2 要满足 某种或某值的时候  直接   and 字段1 = ‘a’   and    字段2 = ‘b’ or 字 ...

  8. 工作总结 错误 using 块缺少结束字符“}”。请确保此块内的所有“{”都有匹配的“}”字符,并且任何“}”都不会解释为标记。

    页面上 有两个 它会跟标签 匹配的     标准要在同一级别下 什么也不改变 只改变它们位置 就不报错了 总结 @using (Html.BeginForm()) { } 要根据标签位置 匹配  要放 ...

  9. 自动清理DataGuard备机日志

    >> from zhuhaiqing.info #!/usr/bin/bash #删除DataGuard备机归档日志备份 export ORACLE_HOME=/opt/oracle/pr ...

  10. cache和内存

    CPU与内存 北桥:主桥,主要用来处理高速信号,负责与处理器的联系:CPU通过FSB前端总线来访问内存控制器. 南桥:IO桥,负责IO总线之间的通信,比如PCI总线.SATA.USB等,可以连接光驱. ...