数据挖掘(三)——决策树
一、概念
一张图就可以理解决策树是什么
图中的属性有三种:No Surfacing (水下是否可生存)、Filppers(有无脚蹼)、Fish(鱼),通常我们通过前两个属性来判断第三个属性,判断到底是不是鱼。所以
第三个属性这里就称它为决策属性
二、构建决策树的基本步骤
1、将所有数据看作是一个节点
2、计算信息熵选择出最好的分割点(如图中的No Surfacing或Filppers)
3、分割数据(假如分成两份数据子集A和B),看数据子集中的决策属性是否相同,相同则不继续分
4、不相同则继续分,回到步骤2,直到数据足够纯为止。
三、决策树的设计
1、决策树的设计需要考虑的两个问题
- 何时选择分裂训练记录:计算信息增益,选择出最优的特征
- 何时停止分裂:分裂节点下,所有记录都有相同的属性值
2、创建分支算法
检测数据集中每个子项是否属于同一个分类:
如果是:return 类标签
否则:
寻找划分数据集最好的特征
划分数据集
创建分支节点
for每个划分的子集
调用本函数并增加返回结果到分支节点
return 分支节点
参考
[1] 《机器学习实战》
[2] 《数据挖掘导论》
关于作者
后端程序员,五年开发经验,从事互联网金融方向。技术公众号「清泉白石」。如果您在阅读文章时有什么疑问或者发现文章的错误,欢迎在公众号里给我留言。