机器学习(决策树)

本文深入探讨了决策树的学习过程,包括树的组成、训练与测试阶段。介绍了如何选择特征节点,以熵和信息增益作为衡量标准。讨论了C4.5和CART算法,并提到了Python中的DecisionTreeClassifier()模型创建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

决策树:

从根节点开始一步步走到叶子节点(决策)

所有的数据最终都会落到叶子节点,既可以做分类也可以做回归。

 

树的组成:

根节点:第一个选择点

非叶子节点与分支:中间过程

叶子节点:最终的决策结果

 决策树的训练与测试:

训练阶段:从给定的训练集构造出来一棵树(从跟节点开始选择特征,如何进行特征切分)

· 测试阶段:根据构造出来的树模型从上到下去走一遍就好了

· 一旦构造好了决策树,那么分类或者预测任务就很简单了,只需要走一遍就可以了,那么难点就在于如何构造出来一颗树,这就没那么容易了,需要考虑的问题还有很多的!

如何切分特征(选择节点):

· 问题:根节点的选择该用哪个特征呢?接下来呢?如何切分呢?

· 想象一下:我们的目标应该是根节点就像一个老大似的能更好的切分数据(分类的效果更好),根节点下面的节点自然就是二当家了

· 目标:通过一种衡量标准,来计算通过不同特征进行分支选择后的分类情况,找出来最好的那个当成根节点,以此类推

衡量标准:熵

熵:熵是表示随机变量不确定性的度量。

公式:H(X)=- ∑ pi * logpi, i=1,2, ... , n

熵:不确定性越大,得到的熵值也就越大

当p=0或p=1时,H(p)=0,随机变量完全没有不确定性

当p=0.5时,H(p)=1,   此时随机变量的不确定性最大

信息增益:表示特征X使得类Y的不确定性减少的程度。

决策树算法 · C4.5

信息增益率:信息增益÷自身熵 

决策树算法 · CART  

基尼指数Gini(D):反映了从数据集D 中随机抽取两个样本,其类别标记不一致的概率。 

p越大,Gini(D)越小,则数据集D的纯度越高。 

DecisionTreeClassifier():创建一个决策树模型。

criterion

gini或者entropy。前者是基尼系数,后者是信息熵

splitter

best或者random。前者是在所有特征中找最好的切分点,后者是在部分特征中。

max_features

None(所有),log2,sqrt,N

max_depth

int or None, optional (default=None) 设置决策随机森林中的决策树的最大深度,深度越大,越容易过拟合,推荐树的深度为:5-20之间。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值