浅读西瓜书(第四章)

4.1基本流程

​ 决策树,顾名思义,肯定与做决策有关。实际上决策树既可以做决策也可以做回归。在我们生活中其实也经常用到决策树的模型。比如猜数字的游戏。给出一个数字,猜想者猜测一个数字,裁判则回答猜大了,猜小了或者猜中。猜中则停止,没猜中则继续。把游戏内容拓展一下,可以是猜一个物品,或者事情等等。当拓展到事物的时候,判断的标准也随之拓展。从单一的数字大小拓展到特征选择。比如西瓜书中对好瓜和坏瓜的判断,可以有色泽,根蒂,条纹等特征来判断。

​ 小节一下,决策树就是根据一定量的特征对数据进行判断其为正例,还是反例。判断的结果就是分类结果,判断过程中产生的模型,则可以用来做回归预测。

4.2划分选择

​ 划分数据集的大原则是:将无序的数据变得更加有序

​ 我们可以使用多种方法划分数据集,但是每种方法都有各自的优缺点。组织杂乱无章数据的一种方法就是使用信息论度量信息,信息论是量化处理信息的分支科学。我们可以在划分数据之前或之后使用信息论量化度量信息的内容。在划分数据集之前之后信息发生的变化称为信息增益,知道如何计算信息增益,我们就可以计算每个特征值划分数据集获得的信息增益,获得信息增益最高的特征就是最好的选择。

4.2.1信息增益

​ 那么,什么是信息增益呢?简单的说,就是分类后的专一性,希望分类后的结果是同类在一起。分类后同类占比越高,信息增益就越大,也就说明分类越成功。

4.2.2增益率

​ 在我们做特征选择时,有时特征可能会很多。当特征很多时,划分必然更加精确,但这只是针对测试时的数据。特征选择太多的模型泛化能力未必好。

​ 试想一下,如果一个决策树的分支结点足够多,那么到最后的叶子结点的时候,每个叶子结点上分的数据可能只有一个。(也就是同学们开玩笑说的:面向结果编程(doge))显然,这样的决策树不能用于新样本的有效预测。

​ 而我们的增益率就是用来选出信息增益好的属性。

4.2.3基尼指数

(未完待续)

4.3剪枝处理

剪枝(pruning)是决策树学习算法对付“过拟合”的主要手段.在决策树学习中,为了尽可能正确分类训练样本,结点划分过程将不断重复,有时会造成决策树分支过多,这时就可能因训练样本学得“太好”了,以致于把训练集自身的一些特点当作所有数据都具有的一般性质而导致过拟合.因此,可通过主动去掉一些分支来降低过拟合的风险。

4.3.1预剪枝

​ 在决策树生成的过程中,每个决策节点原本是按照信息增益、信息增益率或者基尼指数等纯度指标,按照值越大,优先级越高来排布节点。

4.3.2后剪枝

​ 已经通过训练集生成一颗决策树,然后自底向上地对决策节点(非叶子结点)用测试集进行考察,若将该节点对应的子树替换为叶子节点能提升验证集的精确度(这个的算法与预剪枝类似),则将该子树替换成叶子节点,该决策树泛化能力提升。

4.3.3对比

​ 后剪枝决策树通常比预剪枝决策树保留了更多的分支。一般情形下,后剪枝决策树的欠拟合风险很小,泛化性能往往优于预剪枝决策树。但后剪枝过程是在生成完全决策树之后进行的,并且要自底向上地对树中的所有非叶结点进行逐一考察,因此其训练时间开销比未剪枝决策树预剪枝决策树都要大得多。

4.4连续与缺失值

(未完待续)

4…4.1连续值处理

(未完待续)

4.4.2缺失值处理

(未完待续)

4.5多变量决策树

(未完待续)

浅读西瓜书(第四章)相关推荐

  1. 西瓜书第四章阅读笔记

    西瓜书第四章阅读笔记 1.基本概念 1.1 基本算法 1.2 信息熵 1.3 信息增益 2.ID3决策树 3.C4.5决策树 4.CART决策树 5.剪枝操作 6.连续与缺失值处理 7.多变量决策树 ...

  2. 《机器学习》西瓜书第四章 神经网络(南瓜书辅助)

    5.1 M-P神经元 M‑P神经元(一个用来模拟生物行为的数学模型):接收n个输入(通常是来自其他神经元),并给各个输入赋予权重计算加权和,然后和自身特有的阈值 进行比较(作减法),最后经过激活函数( ...

  3. 西瓜书重温(四): 决策树手推版

    1. 写在前面 今天复习的决策树模型, 对应的是西瓜书的第四章内容, 关于决策树模型,重要性不言而喻了, 这个是后面集成学习模型的基础, 集成学习里面不管是bagging家族里面的代表随机森林,还是b ...

  4. 周志华-机器学习西瓜书-第三章习题3.3 编程实现对率回归

    本文为周志华机器学习西瓜书第三章课后习题3.3答案,编程实现对率回归,数据集为书本第89页的数据 使用tensorflow实现过程 # coding=utf-8 import tensorflow a ...

  5. 西瓜书第三章阅读笔记

    西瓜书第三章阅读笔记 第三章 线性模型 1.机器学习三要素 2.基本形式 3.线性回归 3.1 模型 3.2 策略 3.3 求解算法 4.对数几率回归 4.1 模型 4.2 策略 4.3 求解算法 5 ...

  6. 小白学机器学习西瓜书-第三章对数几率回归

    小白学机器学习西瓜书-第三章对数几率回归 3.3 对数几率回归 3.3.1 对数几率函数 3.3.1 估计参数 上一部分我们介绍了线性回归,包括简单的二元回归和多元回归,这两个主要解决的是拟合预测的问 ...

  7. 西瓜书第三章:LDA(及详细Fisher实现),QDA的python实现[仅代码实现]

    西瓜书第三章:LDA(及详细Fisher实现),QDA的python实现[仅代码实现] 为了进行此实验,本人特地制作了一个训练集和一个测试集,这些测试集的参数如下: 红点 N(1,05) N(1,05 ...

  8. 读西瓜书笔记(一)绪论

    读西瓜书笔记(一)绪论 (一)什么是机器学习 机器学习致力于研究如何通过计算的手段,利用经验来改善自身的性能. 机器学习所研究的主要内容,是关于在计算机上从数据中产生"模型"的算法 ...

  9. 【吃瓜教程】周志华机器学习西瓜书第三章答案

    线性模型结构梳理 3.1 试析在什么情形下式3.2中不必考虑偏置项b 答案一: 偏置项b在数值上代表了自变量取0时,因变量的取值: 1.当讨论变量x对结果y的影响,不用考虑b: 2.可以用变量归一化( ...

最新文章

  1. 干货|120页精华PPT详解工业机器人本体设计运算及仿真
  2. Sql server 2005系统表详细说明
  3. jquery实现登录失败提示_浅谈jQuery的verify验证码
  4. GBDT(回归树)原理详解与python代码实现
  5. coach和mentor,教练和导师的区别
  6. 公司服务器文件保存出错,R服务器错误保存文件没有这样的文件或目录(Ubuntu)...
  7. Oracle XE http端口8080的修改
  8. 【数据结构笔记02】什么是算法
  9. 商用密码应用安全性评估
  10. 美女程序员,看到最后一个就亮了
  11. mummer基因组共线性分析详解
  12. 【收藏】通信知识分类整理
  13. Teambition网盘 批量下载 下载文件夹 递归下载
  14. FFMEPG avs2 解码支持
  15. Servlet 容器和 Web 服务器的区别
  16. 2020iPadAir(第四代)对比iPadPro(第二代)
  17. 基于单片机的环境监测调节系统设计(#0516)
  18. SAP ADM100-1.1之SAP系统架构
  19. java 项目 预警_java开发中的常见代码黄线预警
  20. Damask和abaqus晶体塑性联合仿真培训通知

热门文章

  1. 输入框【普通输入框,邮箱输入框,验证码输入框,手机号码输入框】测试用例
  2. 第四代计算机主要采用什么作为逻辑开关元件,第四代计算机重要采纳什么作为逻辑开关元件?...
  3. 第四章:缓冲区、着色器、GLSL
  4. spark graphx从txt文件中读数据构建图
  5. 如何保护个人的隐私安全
  6. Python切割九宫格图
  7. python print 字体大小,Python-更改打印控制台字体系列/样式
  8. 程序员该用哪种姿势来理财
  9. Part 1: 1.1 合成布尔函数~1.2逻辑门
  10. 艺术摄影--数码单反相机的基本操作和使用(2学时)--SDUST