决策树

作者: 字字经心 | 来源:发表于2022-07-28 17:33 被阅读0次

决策树

决策树是分类算法,一个未贴标签(未知类别)的新数据(含多个特征),通过问多个问题(问题是:特征,答案:是或者否),最终问题问完,判断出新数据类别。问问题的流程基于决策树。

所以训练决策树的步骤一般是,先有已知类别的数据集、选择特征问问题生成决策树、测试决策树。决策树模型生成之后就可以用于分类没贴标签的数据集。

要理解决策树算法,首先要知道熵的概念,是信息论里面的知识,用来形容信息的混乱程度。信息越有序则熵值越低,越混乱熵值越大。熵的计算公式,其中p(x) 代表类别x在信息整体中出现的概率
H=-\sum_{i=1}^np(x_i)\log_2p(x_i)

比如计算下面数据的熵值

# yes 代表是鱼类,no 代表不是鱼
1, 1, 'yes'
1, 1, 'yes'
1, 0, 'no'
0, 1, 'no'
0, 1, 'no'

上面信息整体中有鱼类x1,非鱼类x2,出现的概率分别为2/5,3/5,所以上面的信息熵为

- 2/5log(2/5) - 3/5(log3/5) 

应用

用决策树算法来判断生物是否鱼

  1. 收集数据
特征1(不浮出水面是否能活)    特征2(是否有脚蹼)       类别(是否鱼)
yes                       yes                  yes
yes                       yes                  yes
yes                       no                   no
no                        yes                  no
no                        yes                  no

# 变成向量的形式:   
dataSet = [
    [1, 1, 'yes'],
    [1, 1, 'yes'],
    [1, 0, 'no'],
    [0, 1, 'no'],
    [0, 1, 'no']
]
# labels 存储的是特征,即决策树的问题
labels = ['no surfacing', 'flippers']
  1. 分析数据:这里的数据集不是连续的,都是0,1 离散数据,这步可以省略
  2. 构造算法,选择labels 中哪个特征来问题呢,全部特征集合labels存储,逐一尝试,计算分类前后香农熵,选取信息增益(熵差)最大的特征x,划分后的子集去除特征x, 集合labels去除特征x。就这样一直递归下去,直到每个子集的只有一种类别,即信息熵为0

假设我们在特征1和特征2选特征1来分类,即问一个问题(此新数据不浮出能活吗),安照答案(即特征值yes no )得到分类,并计算该数据集的香农商。分类后

tree1.png

由特征1分类,子集去掉特征1,计算数据集香农熵

#分类前香农熵: 
- 2/5log(2/5) - 3/5(log3/5)    

#分类后香农熵,
- 3/5*(2/3log(2/3)+1/3log(2/3))  - 2/5*(1log1)

分类后香农熵,3/5 表示该子集占全集,2/3表示 yes在子集占比。若子集类别一致,香农熵为 0

  1. 最后形成的决策树{'no surfacing': {0: 'no', 1: {'flippers': {0: 'no', 1: 'yes'}}}}
tree2.png

参考文献

决策树

欢迎大家给我留言,提建议,指出错误,一起讨论学习技术的感受!

相关文章

  • 机器学习6-决策树

    一. 决策树概述 1.1 什么是决策树 决策树输入: 测试集决策树输出: 分类规则(决策树) 1.2 决策树算法概...

  • 决策树

    1、决策树 决策树学习通常包括3个步骤: 特征选择。 决策树生成。 决策树剪枝。 决策树的学习目标是:根据给定的训...

  • 决策树

    决策树 决策树模型与学习 特征选择 决策树的生成 决策树的剪枝 CART 算法 决策树模型呈树形结构,在分类问题中...

  • 决策树算法总结

    目录 一、决策树算法思想 二、决策树学习本质 三、总结 一、决策树(decision tree)算法思想: 决策树...

  • 机器学习 - 决策树算法[一]

    1 决策树模型与学习 1.1 决策树模型 决策树定义: 分类决策树模型是一种描述对实例进行分类的树形结构。决策树由...

  • 机器学习系列(三十六)——回归决策树与决策树总结

    本篇主要内容:回归决策树原理、回归树学习曲线、决策树总结 回归决策树原理 回归决策树树是用于回归的决策树模型,回归...

  • [机器学习]决策树

    决策树 @(技术博客)[机器学习, 决策树, python] 学习决策树首先要搞清楚决策树是什么(what),在弄...

  • 经典机器学习系列之【决策树详解】

      这节我们来讲说一下决策树。介绍一下决策树的基础知识、决策树的基本算法、决策树中的问题以及决策树的理解和解释。 ...

  • 第5章 决策树

    内容 一、决策树内容简介 二、决策树的模型与学习 三、特征选择 四、决策树生成 五、决策树剪枝 六、CART算法 ...

  • 决策树与随机森林

    PART I 决策树 (Decision Tree) 决策树基本知识 决策树何时停止生长:(I) all leaf...

网友评论

      本文标题:决策树

      本文链接:https://www.haomeiwen.com/subject/gtdsirtx.html