决策树算法——机器学习(理论+图解+python代码)

前言

暑假打算吃透一本书叫《机器学习》,大家也亲切的叫它西瓜书,看完决策树这部分想做做总结,虽然几年前对决策树的知识就有点印象,但是我发现现在又有了很多新的收获。

一、基本流程

二、划分选择

三、剪枝处理

四、连续与缺失值

五、多变量决策树

六、房价数据集的决策树算法python实现

 

一、基本流程

决策树(decision tree)是一类常见的机器学习算法,它是基于树结构来进行决策的。

——“这是好瓜吗?”

——“它的颜色是青绿色的、根蒂是蜷缩的、敲声是......,所以结论是:这是个好瓜”。

以上,为了给好瓜坏瓜分类,我们要回答不同瓜的不同属性,来帮助我们判断。

图1. 这是一棵决策树

叶子结点就对应我们的决策结果,其它的根节点和内部节点就对应于一个属性测试。决策树学习的目的就是为了产生一棵泛化能力强,即处理未见事例能力强的决策树。

 

二、划分选择

决策树学习的关键就是如何选择最优划分属性,也就是找到上面图中为什么要选择“色泽”属性作为根节点的理由,以及在接下来的划分中,为什么要选择该划分属性的理由。

1、信息增益

著名的ID3决策树学习算法就是以信息增益为准则来选择划分属性,下面这个图(不是西瓜的例子了,是我之前整理的,关于得病与否的例子)在14个样本中,yes=9个,no=5个,此时信息熵=-(9/14*log(9/14)+5/14*log(5/14))=0.940286&

  • 58
    点赞
  • 426
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值