php是最好的语言

决策树和随机森林相关知识

一、决策树相关 - 用于分类和回归


1、 信息熵(随机变量的不确定性)计算公式H(Y) = -∑P(yi)log(2,P(yi)) (i=1,2,..n)

#P(yi) 是随机变量Y概率。


2、 条件熵(表示在一个条件下,随机变量的不确定性)计算公式 H(Y|X) = ∑[i=1 to n] P(X=xi) * H(Y|X=xi)

参考:https://zhuanlan.zhihu.com/p/26551798


#P(X=xi) 是随机变量X取值xi的概率。

#H(Y|X=xi) 是在已知X=xi的情况下,随机变量Y的熵。


3、信息熵增益g(Y,X) =  H(Y) - H(Y|X) 越大越好


4、信息增益率g(Y,X) =信息增益/条件的信息熵 = g(Y,X) / H(X)


5、基尼系数算法:越低越好

参考https://zhuanlan.zhihu.com/p/93934986



二、ID3决策树-分类

ID3的特征选择方法是基于信息增益最大化为原则,熵增益越大说明该特征越好


三、C4.5决策树-分类

C4.5使用了信息增益率对属性的决策顺序,越大说明该特征越好



四、cart决策树-分类 

cart决策树-分类特征是基于基尼系数算法:越低越好


五、cart决策树-回归 (数据连续)

cart决策树-分类是平方误差最小化算法

https://zhuanlan.zhihu.com/p/42505644 最优切分的

https://www.cnblogs.com/canyangfeixue/p/8629202.html 残差

https://www.modb.pro/db/229374 残差


六、决策树剪枝

剪枝分为”预剪枝(prepruning)”和”后剪枝(postpruning)”两种. 

预剪枝:指在决策树构建过程中, 对每个节点在划分前先进行估计, 若不能带来决策树泛化性能提升, 就停止划分, 并将当前结点标记为叶结点. 

后剪枝:先构成一颗完整的决策树, 再考察非叶结点. 若该结点对应的子树替换为叶结点能带来决策树泛化性能提升, 则将该字数替换为叶结点.

https://www.cnblogs.com/V1ncent56/p/16922058.html

https://blog.csdn.net/weixin_51998499/article/details/127948020 基于id3和c4.5 预剪枝和后剪枝相关代码


七、随机森林 (本质就是多个决策树)

随机森林则是由多棵决策树组合而成的一个分类器。因为如果只有一棵决策树,预测的结果可能会有比较大的偏差,而利用多棵决策树进行决策,

再对所有决策树的输出结果进行统计,取票数最多的结果作为随机森林的最终输出结果。


作者:xTao 分类:LNMP 浏览:2275 评论:0