决策树理论(决策树理论 芒格)
本篇文章给大家谈谈决策树理论,以及决策树理论 芒格对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
【理论篇】决策树算法 - 信息增益率、GINI系数
ID3 决策树算法在特征选择时存在什么问题呢?
我们来举个例子:数据集租搜 A 存在一个非常稀疏的特征 ID 列,我们知道 ID 是唯一不重复的,种类自然就会非常庞大。
这个时候,如果我们使用 ID 去切分数据集,那切分到最后,每个样本都会被分配到单独的样子结点上,每个样子结点的数据只有一样,不确定性为 0 ,熵值也为 0 。
那这样是不是就说名 ID 这个特征非常好呢?根据 ID 就能预测标签?当然不是,实际上 ID 这个特征毫无意义。
小鱼这里拿 ID 举例,只是个极端的例子。但足以说明,对于类似 ID 这样数据种类非常多,分布非常稀疏的特征来说,ID3 决策树算法通过信息增益来选取结点特征是远远不够的。
为了解决 ID3 决策树算法的问题,我们引老型携入了信息增益率,计算信息增益时,考虑特征分布的自身熵。
C4.5 决策树算法使用信息增益率来衡量特征节点的分类能力。所谓信息增益率就是在信息增益的基础上除以该特征自身的熵值计算而来。
为什么要除以特征自身的熵值呢?我们举个例子:还是刚才的 ID 特征,ID 特征切分完数据后的熵值为 0 ,原始数据集的熵值为 G,特征 ID 的熵值为 -n*(1/n)*log(1/n) = -log(1/n) 其中 n 为数据集样本的个数。因此,特征 ID 的熵 G2 是一个非常庞大的数值。
使用 ID 节点切分数据集之后,得到的信息增益为:G - 0 = G,信息增益非常大,分类效果堪称完美。但如果使用信息增益率去衡量,则:(G - 0)/G2,其中 G2 一定是远远大于 G 的,因为很显然标签的混乱层度远低于 ID 列的混乱层度。
因此,我们求得的信息增益率就是一个非常小的值了,这个时候就可以发现 ID 这个特征分类效果非常差。也因此 C4.5 算法很好地解决了 ID3 算法对稀疏特征衡量的不足。
GINI 系数和熵的衡量标准类似,只是计算方式不同。GINI 系数的公式为:
当概率 P 为 0 或者 1 时,此时没有不确定性。其中概率为 1 时,GINI系数为 0 ,概率为 0 时侍伏,GINI 系数也为 0 。
[img]什么是决策树?
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一仿悉孝度量是基于信息学理论中熵的概念。
决策树是陆搏一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。
分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。
机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。
从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。
一个决策树包含三种类型的节点:
决策节点:通常用矩形框来表示
机会节点:通常用圆圈来表示
终结点:通常用三角形来表示
决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。
决策树同时也可以依靠计算条件概率来构造备稿。
决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示:
(x, y) = (x1, x2, x3…, xk, y)
相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。
决策树算法原理
决策树是通过一系列规则对数据进行分类的过程。它提供一种在什么条件下会得到什么值的类似规则的方法。决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树。
如果不考虑效率等,那么样本所有特征的判断级联起来终会将某一个样本分到一个类终止块上。实际上,样本所有特征中有一些特征在分类时起到决定性作用,决策树的构造过程就是找到这些具有决定性作用的特征,根据其决定性程度来构造一个倒立的树--决定性作用最大的那个特征作为根节点,然后递归找到各分支下子数据集中次大的决定性特征,直至子数据集中所有数据都属于同一类。所以,构造决策树的过程本质上就是根据数据特征将数据集分类的递归过程,我们需要解决的第一个问题就是,当前数据集上哪个特姿拿征在划分数据分类时起决定性作用。
一棵决策树的生成过程主要分为以下3个部分:
特征选择:特征选择是指从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选择特征有着很多不同量化评估标准标准,从而衍生出不同的决策树算法。
决策树生成: 根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分则停止决策树停止生长。 树结构来说,递归结构是最容易理解的方式。
剪枝:决策树容易过拟合,一般来需要剪枝,缩小树结构规模、缓解过拟合。剪枝技术有预剪枝和后剪枝两种。
划分数据集的最大原则是:使无序的数据变的有序。如果一个训练数据中有20个特征,那么选取哪个做划分依据?这就必须采用量化的方法来判断,量化划分方法有多重,其中一项就是“信息论度量信息分类”。基于信息论的决策树算法有ID3、CART和C4.5等算法,其中C4.5和CART两种算法从ID3算法中衍生而来。
CART和C4.5支持数据特征为连续分布时的处理,主要通过使用二元切分来处理连续型变量,即求一个特定的值-分裂值:特征值大于分裂值就走左子树,或者就走右子树。这个分裂值的选取的原则是使得划分后的子树中的“混乱程度”降低,具体到C4.5和CART算法则有不同的定义方式。
ID3算法由Ross Quinlan发明,建立在“奥卡姆剃刀”的基础上:越是小型的决策树越优于大的决策树(be simple简单理论)。ID3算法中根据信息论的信息增益评估和选择特征,每次选择信息增益最大的特征做判断模块。ID3算法可用于划分标称型数据集,没有剪枝的过程,为了去除过度数据匹配的问题,可通过裁剪合并相邻的无法产生大量信息增益的叶子节点(例如设置信息增益阀值)。使用信息增益的话其实是有一个缺点,那就是它偏向于具有大量值的属性--就是说在训练集中,某个属性所取的不同值的个数越多,那么越有可能拿它来作为分裂属性,而这样做有时候是没有意义的,另外ID3不能处理连续分布的数据特征,于是就有了C4.5算法。CART算法也支持连续分布的数据特征。
C4.5是ID3的一个改进算法,继承了ID3算法的优点。C4.5算法用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足在树构造过程中进行剪枝;能够完成对连续属性的离散化处理;能够对不完整数据进行处理。C4.5算法产生的分类规则易于理解、准确率较高;但效率低,因树构造过程中,需要对数据集进行多次的顺序扫描和排序。也是因为必须多次数据集扫描,C4.5只适合于能够驻留于内存的数据集。
CART算法轮樱的全称是Classification And Regression Tree,采用的是Gini指数(选Gini指数最小的特征s)作为分裂标准,同时它也是包含后剪枝操作。ID3算法和C4.5算法虽然在对训练样本集的学习中可以尽可能多地挖掘信息,但其生成的决策树分支较大,规模较大。为了简化决策树的规模,提高生成决策树的效率,就出现了根据GINI系数来选择测试属性的决策树算法CART。
决策树算法的优点:
(1)便于理解和解释,树的结构可以可视化出来
(2)基本不需要预处理,不腊册丛需要提前归一化,处理缺失值
(3)使用决策树预测的代价是O(log2m),m为样本数
(4)能够处理数值型数据和分类数据
(5)可以处理多维度输出的分类问题
(6)可以通过数值统计测试来验证该模型,这使解释验证该模型的可靠性成为可能
(7)即使该模型假设的结果与真实模型所提供的数据有些违反,其表现依旧良好
决策树算法的缺点:
(1)决策树模型容易产生一个过于复杂的模型,这样的模型对数据的泛化性能会很差。这就是所谓的过拟合.一些策略像剪枝、设置叶节点所需的最小样本数或设置数的最大深度是避免出现该问题最为有效地方法。
(2)决策树可能是不稳定的,因为数据中的微小变化可能会导致完全不同的树生成。这个问题可以通过决策树的集成来得到缓解。
(3)在多方面性能最优和简单化概念的要求下,学习一棵最优决策树通常是一个NP难问题。因此,实际的决策树学习算法是基于启发式算法,例如在每个节点进行局部最优决策的贪心算法。这样的算法不能保证返回全局最优决策树。这个问题可以通过集成学习来训练多棵决策树来缓解,这多棵决策树一般通过对特征和样本有放回的随机采样来生成。
(4)有些概念很难被决策树学习到,因为决策树很难清楚的表述这些概念。例如XOR,奇偶或者复用器的问题。
(5)如果某些类在问题中占主导地位会使得创建的决策树有偏差。因此,我们建议在拟合前先对数据集进行平衡。
(1)当数据的特征维度很高而数据量又很少的时候,这样的数据在构建决策树的时候往往会过拟合。所以我们要控制样本数量和特征的之间正确的比率;
(2)在构建决策树之前,可以考虑预先执行降维技术(如PCA,ICA或特征选择),以使我们生成的树更有可能找到具有辨别力的特征;
(3)在训练一棵树的时候,可以先设置max_depth=3来将树可视化出来,以便我们找到树是怎样拟合我们数据的感觉,然后在增加我们树的深度;
(4)树每增加一层,填充所需的样本数量是原来的2倍,比如我们设置了最小叶节点的样本数量,当我们的树层数增加一层的时候,所需的样本数量就会翻倍,所以我们要控制好树的最大深度,防止过拟合;
(5)使用min_samples_split(节点可以切分时拥有的最小样本数) 和 min_samples_leaf(最小叶节点数)来控制叶节点的样本数量。这两个值设置的很小通常意味着我们的树过拟合了,而设置的很大意味着我们树预测的精度又会降低。通常设置min_samples_leaf=5;
(6)当树的类比不平衡的时候,在训练之前一定要先平很数据集,防止一些类别大的类主宰了决策树。可以通过采样的方法将各个类别的样本数量到大致相等,或者最好是将每个类的样本权重之和(sample_weight)规范化为相同的值。另请注意,基于权重的预剪枝标准(如min_weight_fraction_leaf)将比不知道样本权重的标准(如min_samples_leaf)更少偏向主导类别。
(7)如果样本是带权重的,使用基于权重的预剪枝标准将更简单的去优化树结构,如mn_weight_fraction_leaf,这确保了叶节点至少包含了样本权值总体总和的一小部分;
(8)在sklearn中所有决策树使用的数据都是np.float32类型的内部数组。如果训练数据不是这种格式,则将复制数据集,这样会浪费计算机资源。
(9)如果输入矩阵X非常稀疏,建议在调用fit函数和稀疏csr_matrix之前转换为稀疏csc_matrix,然后再调用predict。 当特征在大多数样本中具有零值时,与密集矩阵相比,稀疏矩阵输入的训练时间可以快几个数量级。
【理论篇】决策树剪枝策略
首先,我们来思考一个问题:决策树为什么要进行剪枝呢?试想一下,如果决策树足够庞大,无限分裂下去,直到每个叶子节点的熵值都为 0 。
这个时候,分类结果没有不确定性,100%准确。这样的决策树最终的结果就是训练集表现非常完美,测试集表现非常糟糕。因此,我们说决策树过拟合的风险很大,理论上可以完全分得开数据。
决策树的剪枝策略包括预剪枝和后剪枝。
预剪枝是指边建立决策树边进行剪枝的操作,也是我们实际决策树训练时更常用的方法,更实用。
常见的预剪枝策略有:限制深度、叶子节点个森棚枣数、叶子节点样本数、信息增益量等。下面,小鱼拿下面的决策树举例,为大家分别做个简单的解释。
限制深度
通过限制深度可以阻止决策树继续向下无限的分裂。比如,上图中,我们限制决策树深度为 3 ,则到达第三层时就全部是叶子节点而不会继续向下分裂了。
叶子节点个数
通过限制决策树最多只能包含多少个叶子节点来限制无限分裂。比如,上图中,我们和吵限制叶子节点个数最多为 4 个,则达到 4 个叶子节点之后,就要停止分裂了。
叶子节点样本数
限制每个叶子节点至少包含多少个样本个数,因为决策树理论上可以分裂到每个叶子节点只有一个样本的野蛮状态。比如,上此拆图中我们可以通过限制每个叶子节点至少包含 1095 个样本,那最右侧的叶子节点就不能继续向下分裂了,到此为止。
信息增益量
通过信息增益量预剪枝具体指某个叶子节点分裂前,其信息增益为 G1,继续分裂后,信息增益变为了 G2,如果 G1 - G2 的值非常小,那就该节点就没必要继续分裂了。
当建立完决策树之后,再来进行剪枝操作。后剪枝策略实际使用的非常少,我们了解即可。
厚剪枝的实现依赖于如下的衡量标准:
上述公式,等式左侧代表最终损失,我们希望决策树最终损失越小越好。等式右侧分别为当前结点的熵或 Gini 系数,参数 α 由用户指定, Tleaf 当前结点分裂后,产生的叶子节点个数。叶子节点越多,损失越大。
下面,小鱼以如下的决策树为例,说明后剪枝策略中的损失函数如何计算。
图中,红色节点在分列前的损失为: 0.4444 * 6 + α ;分裂后的损失需要计算左子树(蓝色)和右子树(绿色)的 gini 系数之和: 0*3 + 0.4444*3 + α*2 。
以上就是决策树剪枝策略的所有内容啦~其中,前剪枝策略是需要我们重点掌握的。
多元思维模型4:决策树——面对不确定性,如何做决策。
查理芒格在谈 基本的、普世的智慧 的时候,提到的第一条规则就是要拥有多元思维模型。如果只有很少的模型,根据人类的认知偏差,人会扭曲现实,直到它符合你的思维模型。这被查理芒格称之为“铁锤人”,是一种灾难性的思考方式。
所以我们希望把查理芒格提到的一些重要的思维模型整理出来,帮助大家避开“铁锤人”思维,掌握基本的、普世的智慧。决策树模型是我们整理的多元思维模型的第四个模型。
芒格说:“这么多年来,我一直跟巴菲特同事,他拥有许多优点,其中之一就是它能够自动地根据决策树理论和基本的排列组员原理来思考问题。”
费马和帕斯卡 的努力,标志着概率论的诞生,而概率是风险管理和决策理论的基础。
之前还提到过 条件概率和贝叶斯定理 ,可能讲得有些复杂,但是原理很简单,就是“当信息更新之后,我们的结论的概率也发生了变化。”
用公式描述就是: 初始概率 新的信息 = 新的概率
比如那篇文章举的一个例子:假设人类患某种癌症的概率是0.08%,现在最先进的技术检测患这种癌的正确率是99%,如果小明检测患这种癌,那么他患这种癌症的概率是多少?
直觉会认为检测患这种癌的正确率是99%,那么他患这种癌症的概率应该是99%。
但是正确的方式是:0.08%(初始概率) 99%(新信息),最后的结果是7.34%,远低于直觉的99%。计算方法在 贝叶斯定理 这篇文章有讲到。
如果这个例子比较难理解,那我们换一个。
我们知备罩亩道掷骰子出现3的概率是1/6,这时候多了一个信息,点数是奇数,那么概率就变成了1/3。
初始概率 新的信息 = 新的概率
(1/6) (是奇数) = 1/3
假设这时又多了一个信息,点数为“小”,那么概率就变成了1/2。
贝叶斯的分析方法就是不断把新的信息加入到推理和闷答决策的过程,也就是本文要讲的“决策树”。决策树是一种在不完全信息情况下,帮助我们做出更高概率正确决策的思考工具。
用决策树其实也很简单,主要三个步骤:
1、画决策树(画出分支);
2、分析各种几率和收益损失;
3、反向求解( 从末端开始向前推导,确认每个分支的价值,然后在每个结点处找出自己应该做的选择)。
决策树的4个作用:
1、帮助我们选择平均回报最高的决策,
2、根据别人的选择推测他人对事件发生几率的预测。
3、推测价值,或是别人认为的价值。
4、判断信息价值。
下面我们来看例子:
决策树作用1:帮助我们选择平均回报最高的决策。
案例1:一次分叉决策树。
假设现在2点,你要去做火车,3点的票200元,但是40%的概率赶不上,4点的票400元。应该怎么买?
按照之前的方法,可以算一下期望,买3点的票期望:
=0.6*200+0.4*600=360元,比400少,应该买三点的票。画成决策树就是:
?位置的数值,由两个分支结点可以算出来为360元。所以选3点的票,更高概率能省钱。
案例2:两次分叉决策树。
现在你想要参加一场比赛,奖金有5000元。有初选和决赛两个环节。
初选,200人参加,报名费20元。
决赛,10人进决赛,需要40元准备材料。
假设每个人的概率都相同,你应该参加初选和决赛么?
初选200人,所以参加初选进决赛仿森的概率=1/200=0.05,没进的概率0.9。
决赛10人,所以参加决赛夺冠的概率=0.1,收益5000-60元,没夺冠的概率0.9,损失等于两次费用60元。
决策树:
可以先算出参加决赛的期望:B = 0.1*4940 - 0.9*60=440,对比损失20元,应该参加决赛。
然后可以算出参加初赛的期望:A = 0.05440 - 0.95*20=3,应该参加初赛。
如果参赛的人再多一点点,比如250人,初赛胜出概率变成0.04,期望A的结果就变成了-1.6。这时候就不该应参与了。
所以决策树的本质是让我们更方便计算期望,从而更好的做出更高概率正确的决策。而期望也是概率决策理论中最基础,也最重要的概念。巴菲特说:“用亏损的概率乘以可能亏损的金额,再用盈利概率乘以可能盈利的金额,最后用后者减去前者。这就是我们一直试图做的方法。这种算法并不完美,但事情就这么简单。”
决策树作用2:根据别人的选择推测他人对事件发生几率的预测。
假设一支股票需要投入2000元,预期回报50000元。假设一个人已经投了,可以算出他对成功概率的想法。
假设投资成功的概率是P,那么失败的概率是(1-P)。还是用决策树:
既然一个投资了,那么他至少认为投资的期望应该大于0,
即,投的期望 A = 50000P-2000(1-P) 0
所以P 4%。
所以投的人认为投资成功的概率应该大于4%。
决策树作用3:推测价值,或是别人认为的价值。
这个案例很有意思,可以推测你的男朋友认为见你这件事值多少钱。
假设你的男朋友有一张候补机票去看你,他通过航空公司知道:
1/3概率能飞;
2/3飞不了。
通过他去不去机场,就能判断他认为见你这件事值多少钱。
假设他认为看你的价值为G(irl),坐车各种花费为300元。
先画出决策树:
如果他不去机场,可以认为他觉得A 0。
A = (1/3)*(V-300)-(2/3)*3000
V 900元。
所以如果他不去的话,可以认为他觉得见你不值900元。 = _ =!!!。所以你知道该怎么做了吧。
决策树作用4:判断信息价值。
我们知道通过新的信息可以提高判断的概率,如果一个新信息能够做到这点,我们就说这条信息是有价值的,而且这个价值可以计算出来。
信息的价值 = 得到信息的期望 - 没有信息的期望
假设现在买大小,每次下注20元,买中点数获得120元。
假设现在有人可以告诉你信息是奇数、还是偶数,要价15元,你是否应该买这条信息?
没有新信息的期望:120*(1/6)-20 = 0
得到新信息的期望:120*(1/3)-20 = 20 元。
这条信息的价值:20元。所以15元买这条信息,理论上是划算的,可以买。
当然很多时候,概率并不是这么明显可以知道的,所以相应的决策也会更复杂。而且很多时候还需要考虑其他因素,《 概率基础:期望、方差和正态分布 》这篇文章就提到有时候只知道期望是不够的。但是用决策树作为决策参照,会比凭感觉要靠谱得多。
查理芒格说:“掌握排列组合原理并不难,真正困难的是在日常生活中习惯于几乎每天都应用它。”决策树也一样,看懂上面这些例子并不难,真正困难的是在日常生活中习惯于几乎每天都应用它。每个人每天做决策的次数都很多,其中一两次拿出来试试用决策树的方法来思考,也许就能打开一片新的世界。
相关阅读:
多元思维模型1:复利模型——拥抱指数增长
多元思维模型2:费马帕斯卡系统——理解真实世界运转的方式
多元思维模型3:排列组合——提升决策质量必备思维方式
决策树算法
决策树算法的算法理论和应用场景
算法理论:
我了解的决策树算法,主要有三种,最早期的ID3,再到后来的C4.5和CART这三种算法。
这三种算法的大致框架近似。
决策树的学习过程
1.特征选择
在训练数据中 众多X中选择一个特征作为当前节点分裂的标准。如何选择特征有着很多不同量化评估标准,从而衍生出不同的决策树算法。
2.决策树生成
根据选择的特征评估标准,从上至下递归生成子节点,直到数据集不可分或者最小节点满足阈值,此时决策树停止生长。
3.剪枝
决策树极其容易过拟合,一般需要通过剪枝,缩小树结构规模、缓解过拟合。剪枝技术有前剪枝和后剪枝两种。
有些算法用剪枝过程,有些没有,如ID3。
预剪枝:对每个结点划分前先进行估计,若当前结点的划分不能带来决策树的泛化性能的提升,则停止划分,并标记为叶结点。
后剪枝:现从训练集生成一棵完整的决策树,然后自底向上对非叶子结点进行考察,若该结点对应的子树用叶结点能带来决策树泛化性能的提升,则将该子树替换为叶结点。
但不管是预剪枝还是后剪枝都是用验证集的数据滚昌进行评估。
ID3算法是最早成型的决策树算法。ID3的算法核心是在决策树各个节点上应用信息增益准则来选择特征,递归构建决策树。缺点是,在选择分裂变量时容易选择分类多的特征,如ID值【值越多、搭岩分叉越多,子节点的不纯度就越小,信息增益就越大】。
ID3之所以无法 处理缺失值、无法处理连续值、不剪纸等情况,主要是当时的重点并不是这些。
C4.5算法与ID3近似,只是分裂标准从 信息增益 转变成 信息增益率。可以处理连续值,含剪枝,可以处理缺失值,这里的做法多是 概率权重。
CART:1.可以处理连续值 2.可以进行缺失值处理 3.支持剪枝 4.可以分类可以回归。
缺失值的处理是 作为一个单独的类别进行分类。
建立CART树
我们的算法从根节点开始,用训练集大枝扒递归的建立CART树。
1) 对于当前节点的数据集为D,如果样本个数小于阈值或者没有特征,则返回决策子树,当前节点停止递归。
2) 计算样本集D的基尼系数, 如果基尼系数小于阈值 (说明已经很纯了!!不需要再分了!!),则返回决策树子树,当前节点停止递归。
3) 计算当前节点现有的各个特征的各个特征值对数据集D的基尼系数。
4) 在计算出来的各个特征的各个特征值对数据集D的基尼系数中,选择 基尼系数最小的特征A和对应的特征值a。根据这个最优特征和最优特征值,把数据集划分成两部分D1和D2,同时建立当前节点的左右节点,做节点的数据集D为D1,右节点的数据集D为D2。 (注:注意是二叉树,故这里的D1和D2是有集合关系的,D2=D-D1)
5) 对左右的子节点递归的调用1-4步,生成决策树。
CART采用的办法是后剪枝法,即先生成决策树,然后产生所有可能的剪枝后的CART树,然后使用交叉验证来检验各种剪枝的效果,选择泛化能力最好的剪枝策略。
应用场景
比如欺诈问题中,通过决策树算法简单分类,默认是CART的分类树,默认不剪枝。然后在出图后,自行选择合适的叶节点进行拒绝操作。
这个不剪枝是因为欺诈问题的特殊性,欺诈问题一般而言较少,如数据的万几水平,即正样本少,而整个欺诈问题需要解决的速度较快。此时只能根据业务要求,迅速针对已有的正样本情况,在控制准确率的前提下,尽可能提高召回率。这种情况下,可以使用决策树来简单应用,这个可以替代原本手工选择特征及特征阈值的情况。
关于决策树理论和决策树理论 芒格的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。