本章在讲支持向量机(Support Vector Machine)。

支持向量机,一个功能强大的机器学习模型,能够执行线性或非线性数据的分类、回归甚至异常值检测的任务。它适用于中小型数据集的分类。

  • 线性SVM分类

线性SVM分类大体分为两类,一种叫硬间隔分类,另一种叫软间隔分类。两者间的区别在于是否一定要把数据全部正确分类。

SVM分类器的目标可以等价视作为在类别之间拟合最宽的街道的工作。而确定街道的数据点就是分类器的支持向量。

SVM对特征的缩放很敏感,因此是否进行特征缩放对于SVM最终的决策边界的形状会产生很大影响。

在SVM的软间隔分类中,由于我们允许分类产生个别错误,因此就有一个超参数可以控制错误的程度,就是C。C值越小,间隔越大,间隔中的违例越多;C值越大,间隔越小,违例越少。同时C也可以对过拟合化的SVM分类器产生类似正则化的影响。

  • 非线性SVM分类

 很多数据集都是线性不可分的,我们需要进行一些操作使得数据线性可分。

 有一个假设我们认为线性不可分的数据在高维空间上可以变得线性可分。因此,我们可以通过增加数据维度来达到一种可分的情况,即添加特征或使用核方法。

  • SVM回归

 SVM是支持回归任务的。SVM回归的任务就是尽可能让实例在街道内部,街道的宽度由超参数ε控制。

《机器学习实战(基于scikit-learn和TensorFlow)》第五章内容学习心得的更多相关文章

  1. 《机器学习实战(基于scikit-learn和TensorFlow)》第六章内容学习心得

    本章讲决策树 决策树,一种多功能且强大的机器学习算法.它实现了分类和回归任务,甚至多输出任务. 决策树的组合就是随机森林. 本章的代码部分不做说明,具体请到我的GitHub上自行获取. 决策树的每个节 ...

  2. 《机器学习实战(基于scikit-learn和TensorFlow)》第七章内容学习心得

    本章主要讲述了“集成学习”和“随机森林”两个方面. 重点关注:bagging/pasting.boosting.stacking三个方法. 首先,提出一个思想,如果想提升预测的准确率,一个很好的方法就 ...

  3. 分享《机器学习实战基于Scikit-Learn和TensorFlow》中英文PDF源代码+《深度学习之TensorFlow入门原理与进阶实战》PDF+源代码

    下载:https://pan.baidu.com/s/1qKaDd9PSUUGbBQNB3tkDzw <机器学习实战:基于Scikit-Learn和TensorFlow>高清中文版PDF+ ...

  4. (原创)(三)机器学习笔记之Scikit Learn的线性回归模型初探

    一.Scikit Learn中使用estimator三部曲 1. 构造estimator 2. 训练模型:fit 3. 利用模型进行预测:predict 二.模型评价 模型训练好后,度量模型拟合效果的 ...

  5. (原创)(四)机器学习笔记之Scikit Learn的Logistic回归初探

    目录 5.3 使用LogisticRegressionCV进行正则化的 Logistic Regression 参数调优 一.Scikit Learn中有关logistics回归函数的介绍 1. 交叉 ...

  6. Vue实战狗尾草博客管理平台第五章

    本章主要内容如下: 静态资源服务器的配置.学会如何使用静态资源服务器引入静态资源.并给大家推荐一个免费可使用的oss服务器~ 页面的开发由于近期做出的更改较大.就放在下一篇中. 静态资源服务器 静态资 ...

  7. 机器学习实战:基于Scikit-Learn和TensorFlow 读书笔记 第6章 决策树

    数据挖掘作业,要实现决策树,现记录学习过程 win10系统,Python 3.7.0 构建一个决策树,在鸢尾花数据集上训练一个DecisionTreeClassifier: from sklearn. ...

  8. 机器学习实战:基于Scikit-Learn和TensorFlow 第5章 支持向量机 学习笔记(硬间隔)

    数据挖掘作业,需要实现支持向量机进行分类,记录学习记录 环境:win10,Python 3.7.0 SVM的基本思想:在类别之间拟合可能的最宽的间距,也叫作最大间隔分类 书上提供的源代码绘制了两个图, ...

  9. 集成算法(chapter 7 - Hands on machine learning with scikit learn and tensorflow)

    Voting classifier 多种分类器分别训练,然后分别对输入(新数据)预测/分类,各个分类器的结果视为投票,投出最终结果: 训练: 投票: 为什么三个臭皮匠顶一个诸葛亮.通过大数定律直观地解 ...

随机推荐

  1. cmake 指定连接的opencv版本

    我们通常需要使用不同版本的opencv,这时候如果用cmake构建工程,直接指定本地编译好的路径就可以,在CMakeLists.txt中添加: set(OpenCV_DIR "/xxx/wo ...

  2. hadoop的job执行在yarn中内存分配调节————Container [pid=108284,containerID=container_e19_1533108188813_12125_01_000002] is running beyond virtual memory limits. Current usage: 653.1 MB of 2 GB physical memory used

    实际遇到的真实问题,解决方法: 1.调整虚拟内存率yarn.nodemanager.vmem-pmem-ratio (这个hadoop默认是2.1) 2.调整map与reduce的在AM中的大小大于y ...

  3. NodeJs学习相关网址

    node官方中文 https://nodejs.org/zh-cn/   Node.js 中文网 https://nodejs.org/zh-cn/   Node.js 教程 | 菜鸟教程 http: ...

  4. 初学c# -- 开始学directx

    这些天对directx有兴趣了,开始慢慢学,先学基础,找了好些资料,为毛都写的辣么长呢,学习精简下来就几行. 安装个directx sdk,在win10里面文件夹C:\Windows\Microsof ...

  5. 模型介绍之FastText

    模型介绍一: 1. FastText原理及实践 前言----来源&特点 fastText是Facebook于2016年开源的一个词向量计算和文本分类工具,在学术上并没有太大创新.但是它的优点也 ...

  6. 20175126《Java程序设计》第二周学习总结

    # 20175126 2016-2017-2 <Java程序设计>第二周学习总结 ## LINUX系统安装好输入法后如何使用? - 相信很多同学在刚接触虚拟机LINUX系统时,会因无法输入 ...

  7. 整合SpringMVC框架和Spring框架

    -------------------------siwuxie095                                 整合 SpringMVC 框架和 Spring 框架       ...

  8. java 线程Thread 技术--volatile关键字

    java 语言中允许线程访问共享变量,为了保证共享变量能被准确和一致的更新,Java 语言提供了volatile 关键字,也就是我们所说的内存一致性: 问题抛出:(尝试去运行下面代码,以及将volat ...

  9. java_20 LinkedList类

    LinkedList类特有的方法 (1)addLast()  将指定元素添加到此列表的结尾. addFirst() 将指定元素添加到此列表的开始. public static void main(St ...

  10. stark组件开发之分页

    """ 分页组件 """ class Pagination(object): def __init__(self, current_page ...