决策树
1.决策树与随机森林都属于机器学习中监督学习的范畴,主要用于分类问题。
决策树算法有这几种:ID3、C4.5、CART,基于决策树的算法有bagging、随机森林、GBDT等。
决策树是一种利用树形结构进行决策的算法,对于样本数据根据已知条件或叫特征进行分叉,最终建立一棵树,树的叶子结节标识最终决策。新来的数据便可以根据这棵树进行判断。随机森林是一种通过多棵决策树进行优化决策的算法。
2.案例:
图 1 是一棵结构简单的决策树,用于预测贷款用户是否具有偿还贷款的能力。贷款用户主要具备三个属性:是否拥有房产,是否结婚,平均月收入。每一个内部结节都表示一个属性条件判断,叶子结节表示贷款用户是否具有偿还能力。
这里说的属性,也就是算法中的特征,对应于数据表就是字段。
这里说的可以偿还/不能偿还,就是一种分类问题。
3.决策树特征选取:
从上图我们可以看到,第一个节点使用“拥有房产”作为条件,也就是特征。那么我们为什么第一个条件选择“拥有房产”呢,选择的条件和依据是什么呢?下面介绍基尼系数:
基尼指数是另一种数据的不纯度的度量方法,其公式为:
该公式可以用数学公式证明:
x+y=1
f=1-(x^2+y^2)
f(x)=1-x^2-(1-x)^2=-2x^2+2x
曲线为:
根据上图可以看到,当x越靠近0或者1时,系数越小,代表数据纯度越高。有就是中间的某类数据占的比重比较大,也符合我们的认识。
其中 c 表示数据集中类别的数量,Pi 表示类别 i 样本数量占所有样本的比例。 从该公式可以看出,当数据集中数据混合的程度越高,基尼指数也就越高。当数据集 D 只有一种数据类型,那么基尼指数的值为最低 0。
如果选取的属性为 A,那么分裂后的数据集 D 的基尼指数的计算公式为:
其中 k 表示样本 D 被分为 k 个部分,数据集 D 分裂成为 k 个 Dj 数据集。
对于特征选取,需要选择最小的分裂后的基尼指数。也可以用基尼指数增益值作为决策树选择特征的依据。公式如下:
在决策树选择特征时,应选择基尼指数增益值最大的特征,作为该结节分裂条件。
另一个,和基尼系数类似,可采用信息熵,熵的概念物理上都学过,越无序,熵越大,不做多解释:
假设在样本数据集 D 中,混有 c 种类别的数据。构建决策树时,根据给定的样本数据集选择某个特征值作为树的结节。在数据集中,可以计算出该数据中的信息熵:
上图为分析信息增益的计算公式,可以看出和基尼系数大体类似。
如果选取的属性为 A,那么分裂后的数据集 D 的基尼指数的计算公式为:
其中 k 表示样本 D 被分为 k 个部分,数据集 D 分裂成为 k 个 Dj 数据集。
对于特征选取,需要选择最小的分裂后的基尼指数。也可以用基尼指数增益值作为决策树选择特征的依据。公式如下:
在决策树选择特征时,应选择基尼指数增益值最大的特征,作为该结节分裂条件。
4.剪枝:
分为预剪枝和后剪枝。
预剪枝提前结束决策树的省长,后剪枝效果更好,但是后剪枝会浪费在叔的生长过程中的计算。
5.集中决策树的区别:
1) ID3
是最早提出的一种决策树方法,使用上述信息增益的方式建立。
缺点:只能处理离散型属性,并且对倾向于选择取值较多的属性;
2) C4.5
使用增益率对信息增益进行扩充,以解决偏向取值较多的属性的问题。另外它可以处理连续型属性。
3) CART
CART中用于选择变量的不纯性度量是Gini指数;
如果目标变量是标称的,并且是具有两个以上的类别,则CART可能考虑将目标类别合并成两个超类别(双化);
如果目标变量是连续的,则CART算法找出一组基于树的回归方程来预测目标变量。
随机森林
1.随机森林原理:
随机森林由Leo Breiman(2001)提出的一种分类算法,它通过自助法(bootstrap)重采样技术,从原始训练样本集N中有放回地重复随机抽取n个样本生成新的训练样本集合训练决策树,然后按以上步骤生成m棵决策树组成随机森林,新数据的分类结果按分类树投票多少形成的分数而定。其实质是对决策树算法的一种改进,将多个决策树合并在一起,每棵树的建立依赖于独立抽取的样本。
单棵树的分类能力可能很小,但在随机产生大量的决策树后,一个测试样本可以通过每一棵树的分类结果经统计后选择最可能的分类。
随机森林大致过程如下:
1)从样本集中有放回随机采样选出n个样本;
2)从所有特征中随机选择k个特征,对选出的样本利用这些特征建立决策树(一般是CART,也可是别的或混合);
3)重复以上两步m次,即生成m棵决策树,形成随机森林;
4)对于新数据,经过每棵树决策,最后投票确认分到哪一类。
2.随机森林特点:
随机森林有很多优点:
1) 每棵树都选择部分样本及部分特征,一定程度避免过拟合;
2) 每棵树随机选择样本并随机选择特征,使得具有很好的抗噪能力,性能稳定;
3) 能处理很高维度的数据,并且不用做特征选择;
4) 适合并行计算;
5) 实现比较简单;
缺点:
1) 参数较复杂;
2) 模型训练和预测都比较慢。
3.使用:
随机森林算法在大部分数据处理软件中都有实现,使用时可以直接调用,只需指定所需参数。
随机森林模型训练前要设置的参数较多,按PAI平台的实现有如下几个:
o 算法类型:(可选)可供选择的算法类型有id3算法、cart算法、c4.5算法以及默认情况下的将上述三
今天的文章随机森林参数解释_随机森林原理分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/72543.html