0.机器学习中分类和预测算法的评估标准
准确率
速度
强壮性
可规模性
可解释性
1、什么是决策树/判定树(decision tree)?
判定树是一个类似于流程图的树结构:其中,每个内部节点表示一个属性上的测试,每个分支代表一个属性的输出,而每个树叶节点代表类或者类分布。树的最顶层是根节点。
2、机器学习中分类方法的重要算法是决策树
3、构造决策树的基本算法
3.1熵(entropy)概念
    
信息和抽象,如何度量?
1948年,香农提出了 ”信息熵(entropy)“的概念,一条信息的信息量大小和它的不确定性有直接的关系,要搞清楚一件非常非常不确定的事情,或者是我们一无所知的事情,需要了解大量信息==>信息量的度量就等于不确定性的多少。
用比特(bit)来衡量信息的多少
即变量的不确定性越大,熵也就越大

3.2 决策树归纳算法(ID3)
    1970-1980,
    选择属性判断节点:
    信息获取量:Gain(A) = Info(D) - Infor_A(D)
    通过A来作为节点分类获取了多少信息
    举例:

根据没有任何属性来分类,数据集本身的目标类的信息值:

以年龄来分的信息熵:

所以:

同理:Gain(income) = 0.029, Gain(student) =0.151,Gain(credit_rating)=0.048
    所以,选择age作为第一个根节点,得到:

重复上面的步骤。
算法:
树以代表训练样本的单个结点开始(步骤1)。
如果样本都在同一个类,则该结点成为树叶,并用该类标号(步骤2 和3)。
否则,算法使用称为信息增益的基于熵的度量作为启发信息,选择能够最好地将样本分类的属性(步骤6)。该属性成为该结点的“测试”或“判定”属性(步骤7)。在算法的该版本中,
所有的属性都是分类的,即离散值。连续属性必须离散化。(也就是自己设置阈值)
对测试属性的每个已知的值,创建一个分枝,并据此划分样本(步骤8-10)。
算法使用同样的过程,递归地形成每个划分上的样本判定树。一旦一个属性出现在一个结点上,就不必该结点的任何后代上考虑它(步骤13)。
递归划分步骤仅当下列条件之一成立停止:
(a) 给定结点的所有样本属于同一类(步骤2 和3)。
(b) 没有剩余属性可以用来进一步划分样本(步骤4)。在此情况下,使用多数表决(步骤5)。
这涉及将给定的结点转换成树叶,并用样本中的多数所在的类标记它。替换地,可以存放结
点样本的类分布。
(c) 分枝
test_attribute = a i 没有样本(步骤11)。在这种情况下,以 samples 中的多数类
创建一个树叶(步骤12)
各种算法之间的共同点:都是贪心算法,自上而下;区别:属性选择度量方法不同

4、树剪枝叶(避免overfitting)
    4.1 先剪枝(分到某一个程度之后不再分)
    4.2 后剪枝(先把所有情况分完,再决定剪枝)
5、决策树的优缺点
    优点:直观,便于理解,小规模数据集有效性好
    缺点:处理连续变量不好
                类别较多时,错误的增加比较快
                可规模性一般。

转载于:https://www.cnblogs.com/Melvin-Dong/p/7343981.html

机器学习(三)——决策树(decision tree)算法介绍相关推荐

  1. 机器学习:决策树(Decision Tree)介绍

    简介 决策树是一种常见的机器学习算法,它的实现方式类似于我们平时利用多个不同权重选择做决策的过程.以下介绍一个现实生活中的例子. 当父母给自己的女儿介绍对象时,女儿往往会根据对方的年龄.富贵.高矮.美 ...

  2. 机器学习-决策树(decision tree)算法

    学习彭亮<深度学习基础介绍:机器学习>课程 [toc] 决策树概念 决策树是一种用于监督学习的层次模型,由此,局部区域通过少数几步递归分裂决定. 决策树是一个类似流程图的树结构:其中每个结 ...

  3. 机器学习:决策树(Decision Tree)--ID3算法

    决策树的主要算法 构建决策树的关键:按照什么样的次序来选择变量(属性/特征)作为分类依据. 根据不同的目标函数,建立决策树主要有以下三种算法 ID3(J.Ross Quinlan-1975) 核心:信 ...

  4. 机器学习(五)决策树(decision tree)

    决策树(decision tree)(一)--构造决策树方法 决策树算法起源于E.B.Hunt等人于1966年发表的论文"experiments in Induction",但真正 ...

  5. 决策树(Decision Tree)算法 python简单实现

    1. 简介 决策数(Decision Tree)在机器学习中是比较常见的一种算法,属于监督学习中的一种. 算法流程如图: 具体算法可以详见下方参考 有空再做详解 参考:https://blog.csd ...

  6. 机器学习笔记——决策树(Decision Tree)(1)

    决策树 1.引入   1.1定义 决策树,顾名思义,就是帮我们做出决策的树.现实生活中我们往往会遇到各种各样的抉择,把我们的决策过程整理一下,就可以发现,该过程实际上就是一个树的模型.比如相亲的时候: ...

  7. 机器学习算法实践:决策树 (Decision Tree)(转载)

    前言 最近打算系统学习下机器学习的基础算法,避免眼高手低,决定把常用的机器学习基础算法都实现一遍以便加深印象.本文为这系列博客的第一篇,关于决策树(Decision Tree)的算法实现,文中我将对决 ...

  8. Machine Learning | (7) Scikit-learn的分类器算法-决策树(Decision Tree)

    Machine Learning | 机器学习简介 Machine Learning | (1) Scikit-learn与特征工程 Machine Learning | (2) sklearn数据集 ...

  9. 算法杂货铺——分类算法之决策树(Decision tree)

    算法杂货铺--分类算法之决策树(Decision tree) 2010-09-19 16:30 by T2噬菌体, 88978 阅读, 29 评论, 收藏, 编辑 3.1.摘要 在前面两篇文章中,分别 ...

  10. [机器学习笔记] (四)决策树 Decision Tree

    (四)决策树 Decision Tree 基本概念 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性 ...

最新文章

  1. android跳转应用市场搜索,Android 应用中跳转到应用市场评分
  2. Solaris10 for x86网卡替换配置
  3. 浅谈分布式CAP定理
  4. 聊聊并发(七)——Java中的阻塞队列
  5. tensorflow学习(1.CNN简单实现MNIST)
  6. hackerrank---Sets - Symmetric Difference
  7. celery学习笔记:celery安装,并运行第一个应用
  8. 开发常用常用插件介绍
  9. JS处理Cookie
  10. 人声处理_科唛课堂——人声的音频后期处理
  11. 《数据整理实践指南》一第2章 是我的问题还是数据的问题
  12. 不同特征值对应的特征向量
  13. eclipse 配置多个tomcat
  14. PDF文件打开密码解密
  15. 视频伪原创工具 剪辑过的视频md5会改变吗
  16. 【PyTorch 自然语言处理】传统 NLP 快速回顾(计算语言学)
  17. MOS管的导通电阻RDS(on)与阈值电压VGS(th)温度特性详解
  18. AD画螺旋形走线或者天线的操作
  19. 短视频脚本撰写小技巧,不同的短视频类型要使用不同的撰写方法
  20. iPhone数据线连接电脑成为电脑USB摄像头

热门文章

  1. python列表转化为数字信号_python 经典数字滤波实例 Python 数字信号处理程序实现分享解...
  2. 第一章节 c#面向对象
  3. 小兔子(PAT乙级练习题)
  4. 信号报告(Java)
  5. java编译异常和运行时异常_浅谈异常结构图、编译期异常和运行期异常的区别...
  6. 常见危险函数和特殊函数(二)----变量覆盖
  7. OpenGL基础51:泛光
  8. Prewitt滤波器的实现,对比Prewitt滤波器和Sobel滤波器提取图像边缘的效果
  9. 使用不同的膨胀和腐蚀方法对图像进行处理
  10. Git使用-.gitignore文件(使一些文件不上传到git)