机器学习-决策树算法

本文详述了决策树算法及其变种,包括ID3、C4.5和CART,探讨了信息熵、信息增益、基尼系数等概念。此外,还介绍了随机森林、Adaboost和GBDT的原理与区别,以及模型融合技术如Bagging和Stacking,是理解机器学习中决策树算法和相关方法的良好资料。
摘要由CSDN通过智能技术生成

1 决策树

决策树是一种能解决分类或回归问题的机器学习算法。

其有良好的扩展性,可以产生多种变种。

并且结合模型融合方法扩展新的算法AdaBoost,GBDT等算法。

 

参考文章:

C4.5算法详解(非常仔细):https://blog.csdn.net/zjsghww/article/details/51638126

解释很详细:http://www.saedsayad.com/decision_tree.htm

决策树算法原理(上)https://www.cnblogs.com/pinard/p/6050306.html

 

2 决策树算法

  • 算法思想

决策树训练的过程就不段选择分裂属性将样本拆分到子树的子节点。最佳分裂属性应该是能让树分裂完成后,每棵子树的样本类别更纯,所以衡量不纯度的属性适合作为分裂的评价指标。

  • 算法实例

以一个算法代入实例帮助理解决策树算法ID3,其他算法代入和使用方式类似。

A Step by Step ID3 Decision Tree Example:

https://sefiks.com/2017/11/20/a-step-by-step-id3-decision-tree-example/


2.1 ID3

 

2.1.1 信息熵

熵越大,样本类别越多。使用信息熵衡量分裂后的不纯度。信息增益相当于看分裂前后的熵的减少量。

We can summarize the ID3 algorithm as illustrated below

信息熵:

Entropy(S) = ∑ – p(I) . log2p(I)

信息增益:

Gain(S, A) = Entropy(S) – ∑ [ p(S|A) . Entropy(S|A) ]

These formulas might confuse your mind. Practicing will make it understandable.

 

2.1.2 算法流程

以下是算法描述:其中T代表当前样本集,当前候选属性集用T_attributelist表示。 
  (1)创建根节点N 
  (2)为N分配类别 
  (3)if T都属于同一类别or T中只剩下一个样本则返回N为叶节点,为其分配属性 
  (4)for each T_attributelist中属性执行该属性上的一个划分,计算此划分的信息增益
  (5)N的测试属性test_attribute=T_attributelist中最大信息增益的属性 
  (6)划分T得到T1 T2子集 
  (7)对于T1重复(1)-(6) 
  (8)对于T2重复(1)-(6)

2.2 C4.5

2.2.1 信息增益率

算法倾向选择特征中属性值角度的特征。这时可以规范化信息增益,除以这个属性的熵值(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值