深度学习入门课程学习笔记(第24周)
目录
摘要
本周报的目的在于汇报深度学习入门课程第24周的学习成果,本周主要聚焦于决策树的相关知识。
在这本周的学习中,课程内容主要涵盖了决策树的介绍,包括决策树的组成和构建,基尼系数,决策树中的预剪枝处理等等。
本篇文章将对学习内容进行详细的阐述,并在最后部分对本周的学习内容进行总结。本周报旨在通过这种方式,将理论知识与实践应用有效地结合起来,为深度学习的基础内容学习与方向提供概括性总结。
Abstracts
The purpose of this weekly report is to present the learning outcomes of the 24th week of the introductory course on deep learning, with a focus on knowledge related to decision trees.
In this week's learning, the course content mainly covers the introduction of decision trees, including the composition and construction of decision trees, Gini coefficient, pre pruning processing in decision trees, and so on.
This article will provide a detailed explanation of the learning content and summarize the learning content for this week in the final section. This weekly report aims to effectively combine theoretical knowledge with practical applications in this way, providing a summary of the basic content and direction of deep learning learning learning.
一、何为决策树
决策树(Decision Tree)是一种分类和回归方法,是基于各种情况发生的所需条件构成决策树,以实现期望最大化的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。它的运行机制非常通俗易懂,因此被誉为机器学习中,最“友好”的算法。下面通过一个简单的例子来阐述它的执行流程。假设根据大量数据(含 3 个指标:天气、温度、风速)构建了一棵“可预测学校会不会举办运动会”的决策树(如下图所示)。
接下来,当我们拿到某个数据时,就能做出对应预测。
在对任意数据进行预测时,都需要从决策树的根结点开始,一步步走到叶子结点(执行决策的过程)。如,对下表中的第一条数据( [ 阴天,寒冷,强 ] ):首先从根结点出发,判断 “天气” 取值,而该数据的 “天气” 属性取值为 “阴天”,从决策树可知,此时可直接输出决策结果为 “举行”。这时,无论其他属性取值为什么,都不需要再执行任何决策(类似于 “短路” 现象)。
1、决策树的组成
决策树由结点和有向边组成。结点有两种类型:内部结点(圆)和叶结点(矩形)。其中,内部结点表示一个特征(属性);叶结点表示一个类别。而有向边则对应其所属内部结点的可选项(属性的取值范围)。
在用决策树进行分类时,首先从根结点出发,对实例在该结点的对应属性进行测试,接着会根据测试结果,将实例分配到其子结点;然后,在子结点继续执行这一流程,如此递归地对实例进行测试并分配,直至到达叶结点;最终,该实例将被分类到叶结点所指示的结果中。
在决策树中,若把每个内部结点视为一个条件,每对结点之间的有向边视为一个选项,则从根结点到叶结点的每一条路径都可以看做是一个规则,而叶结点则对应着在指定规则下的结论。这样的规则具有互斥性和完备性,从根结点到叶结点的每一条路径代表了一类实例,并且这个实例只能在这条路径上。从这个角度来看,决策树相当于是一个 if-then 的规则集合,因此它具
有非常好的可解释性(白盒模型),这也是为什么说它是机器学习算法中最“友好”的一个原因。
2、决策树的构建
前面介绍了决策树的相关概念,接下来讨论如何构建一棵决策树。
决策树的本质是从训练集中归纳出一套分类规则,使其尽量符合以下要求:
- 具有较好的泛化能力;
- 在 1 的基础上尽量不出现过拟合现象。
注意到一件事:当目标数据的特征较多时,构建的具有不同规则的决策树也相当庞大(成长复杂度为 𝑂(𝑛!) )。如当仅考虑 5 个特征时,就能构建出 5×4×3×2×1=120 种。在这么多树中,选择哪一棵才能达到最好的分类效果呢?实际上,这个问题的本质是:应该将样本数据的特征按照怎样的顺序添加到一颗决策树的各级结点中?这便是构建决策树所需要关注的问题核心。
如,在前面的例子中,为什么要先对“天气”进行划分,然后再是“温度”和“风速”呢(下图1)?可不可以先对“风速”进行划分,然后再是“温度”和“天气”呢(下图2)?
一种很直观的思路是:如果按照某个特征对数据进行划分时,它能最大程度地将原本混乱的结果尽可能划分为几个有序的大类,则就应该先以这个特征为决策树中的根结点。接着,不断重复这一过程,直到整棵决策树被构建完成为止。
二、基尼系数( CART 算法选用的评估标准)
下面介绍分类回归树(Classification and Regression Tree,CART),它通过使用基尼系数来代替信息增益率,从而避免复杂的对数运算。基尼系数代表了模型的不纯度,基尼系数越小,则不纯度越低,特征越好。注:这一点和信息增益(率)恰好相反。
在分类问题中,假设有 k 个类别,且第 k个类别的概率为 pk,则基尼系数为:
对于给定数据集 𝐷 ,假设有 𝑘 个类别,且第 𝑘 个类别的数量为 𝐶𝑘 ,则该数据集的基尼系数为:
从上式可以看出,基尼系数表征了样本集合里一个随机样本分类错误的平均概率。例如:
三、决策树中的预剪枝处理(正则化)
对于决策树而言,当你不断向下划分,以构建一棵足够大的决策树时(直到所有叶子结点熵值均为 0),理论上就能将近乎所有数据全部区分开。所以,决策树的过拟合风险非常大。为此,需要对其进行剪枝处理。
常用的剪枝策略主要有两个:
- 预剪枝;构建决策树的同时进行剪枝处理(更常用);
- 后剪枝:构建决策树后再进行剪枝处理。
预剪枝策略可以通过限制树的深度、叶子结点个数、叶子结点含样本数以及信息增量来完成。
1、限制决策树的深度
下图展示了通过限制树的深度以防止决策树出现过拟合风险的情况。
2、限制决策树中叶子结点的个数
下图展示了通过限制决策树中叶子结点的个数以防止决策树出现过拟合风险的情况。
3、限制决策树中叶子结点包含的样本个数
下图展示了通过限制决策树中叶子结点包含的样本个数以防止决策树出现过拟合风险的情况。
4、限制决策树的最低信息增益
下图展示了通过限制决策树中叶子结点包含的样本个数以防止决策树出现过拟合风险的情况。
原文地址:https://blog.csdn.net/qq_51339898/article/details/144329916
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!