决策树算法实现(以ID3为例)

本文介绍了决策树的训练过程,特别是ID3算法。决策树基于信息论选择属性进行数据集划分,其结构包括叶子节点的样本、非叶节点的属性名称和属性值。递归地选择属性并划分数据集,直到满足递归出口条件:子数据集中只剩一类标签或所有特征已尝试。算法中使用信息增益选择最佳划分属性。提供了ID3算法的伪代码,并指出字典结构可以简洁表示树结构。
摘要由CSDN通过智能技术生成

决策树之训练过程在于建树,树结构的建立过程是递归的,关键步骤是选择属性进行划分数据集,选择划分的策略引出了各种版本决策树,ID3、C4.5和CART,其中前两种基于信息论,CART采用GINI系数对属性进行划分。编写决策树之前首先需要明确决策树的结构特点:

1、叶子节点是样本(用这类样本计算标签值,回归树用这个单元中的样本计算输出值,然后联合多个单元中的输出值和权重计算总的回归值)

2、非叶节点是数据集的属性名称,回归树里是该属性判断条件(特征名称或features)

3、所有属性的值是树枝,回归树里树枝是判断条件是否成立的yes或no

需要明了的是我们并不需要树来保存数据集,只需要保存数据集的属性名称和每个属性的值,最终得出标签即可。因此若要分析树的复杂度,应该是和属性及属性值的多少有关的。

(周志华老师西瓜书73页)

通过递归,不断的选择属性通过属性的值将数据集划分为不同的子集。(编写算法的时候头脑中要有清晰的手动切分数据集的映像才行),整个算法伪代码其实就是要编写的递归主函数。周志华老师西瓜书75页算法:

ID3算法为例(其他算法也一样,只是选择标签的函数要改写&#

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值