决策树复杂度分析

R语言学习的决策树R语言学习的决策树的两个最重要的问题:决策树的生长,决策树的修剪 。决策树学习通常包括三个步骤:特征选择、决策树生成和决策树剪枝,决策树和随机森林决策决策树是一种基本的分类和回归方法,本文主要讨论决策 Tree用于分类 。

1、 决策树DecisionTreeClassifier参数详说sk learn . tree . decision tree classifier(criterionGini ,splitterbest,max_depthNone,min_samples_split2 , min_samples_leaf1,min_weight_fraction_leaf0.0,max_featuresNone,

Max _ leaf _ nodes none,min _ importance _ reduction 0.0,min _ importance _ split none,class _ weight none,presidency false)准则:选择节点划分质量的度量标准 , 默认使用 Gini ,即基尼系数,这是CART算法中采用的度量标准,该参数也可以设置为熵 。

2、 决策树与随机森林——原理篇(二第一篇文章重点介绍了根节点和内部节点的选择 。第二篇文章重点是如何处理“过拟合”现象 。参考个性化和通用化是矛盾的概念,就像个体化诊疗和指导的矛盾一样 。决策 Tree对训练数据可以得到很低的错误率 , 但应用于测试数据时却可以得到很高的错误率,这就是“过拟合现象” 。具体解释如下:对于决策 tree,我们希望每一个叶节点都得到正确答案,所以没有任何限制 , 决策 tree倾向于简化每一个叶节点,那么怎么可能是最简单的呢?

但这又带来了另一个过拟合的问题 , 会导致模型在建模集合中效果明显,而在验证集合中表现不佳 。这可能有几个原因:1 。训练集中存在噪声数据,干扰正常数据的分支;2.训练集没有特征;3.特点太多了 。在使用信息增益种树时,为了得到最优的决策树,算法会在任何代价下倾向于最小化熵值(可能的话甚至是0) , 树会显得非常冗杂 。通过限制复杂度参数,抓住主要矛盾,可以防止模型的过拟合 。

3、白话梳理树模型——从 决策树到lightGBM【决策树复杂度分析】本文只是简单梳理一下树模型升级的过程,尽量少涉及数学公式,通俗易懂 。熵和熵用来描述事件的不确定性,越随机 , 熵值越大 。如何理解不确定性?假设有一个伯努利分布,p(0)p(1)1/2 , 那么这个分布的不确定性是最大的,因为我们在采样的时候根本无法确定采样值的概率 , 两者都是1/2,所以不确定性可以理解为一个事件在这里发生的概率 。

    推荐阅读