机器学习中的决策树分类器

2025年3月17日 | 阅读 10 分钟

决策树是一种监督式机器学习,其中训练数据根据特定参数持续分割,描述输入和相关输出。决策树可以用决策节点和叶子这两个组件来解释。叶子代表选择或结果。数据在决策节点处进行分割。

决策树分类器是一种广受欢迎的用于分类和回归任务的机器学习方法。它是一种监督学习技术,可以创建决策和潜在结果的树状模型。

在构建决策树时出现的基本问题是如何为根节点和子节点选择最佳属性。因此,可以使用一种称为属性选择度量(ASM)的方法来解决这些问题。通过使用此度量,我们可以轻松地为树节点选择理想的属性。有两种广泛使用的 ASM 方法,如下所示:

1. Gini 指数:Gini 指数衡量一组样本的杂质或不平等程度。它衡量特定属性在决策树上下文中将数据有效分割成同质子集的能力。对于特定属性,Gini 指数计算如下:

(子集中每个类别的平方概率之和) - 1 = Gini_index

Gini 指数的范围为 0 到 1,其中 0 表示纯集(所有样本都属于同一类别),1 表示最大杂质(样本在类别之间均匀分布)。在构建决策树时,Gini 指数最低的特征被选为数据分割的最佳属性。

2. 信息增益:信息增益是评估分割质量的第二个标准。它计算由于特定属性分割数据而减少的熵(不确定性)量。一组 S 的熵计算如下:

熵(S) 等于 (p * log2(p)) 的总和。

其中 p 是集合 S 中每个类别的可能性。特定属性的信息增益是根据父集合 S 的熵与分割后其子子集的加权平均熵之差来计算的。

熵(S) - 子熵的加权平均值 等于 信息增益。

数据分割的最佳属性被选择为具有最大信息增益的属性。

决策树术语

  1. 决策树:决策树是一种流程图状结构,其中每个叶节点代表一个类别标签或一个决策,每个内部节点代表对一个属性的测试。
  2. 根节点:决策树中所有其他节点都派生自的最高节点。根据所选属性,它分为子节点以表示完整数据集。
  3. 内部节点:决策树中代表属性测试的节点称为内部节点。根据属性值,它将数据集划分为子集。
  4. 叶节点:在决策树中,此节点代表一个决策或一个类别标签。它没有子节点。
  5. 属性是用于在节点处分割数据集的特征。决策树的每个内部节点都代表一个属性测试。
  6. 分割:根据所选属性将数据集划分为更易于管理的子集。它建立了决策树的结构。
  7. 分割标准:评估分割有效性的参数或度量。Gini 不纯度、熵和分析距离是常见的分割标准。
  8. Gini 不纯度:衡量示例集不纯度或无序性的指标。它显示了在节点处错误分类示例的可能性。
  9. 熵:衡量一组样本无序性或不纯度的指标。量化数据集的模糊性或不可预测性。
  10. 信息增益:衡量分割带来的熵或不纯度减少的量。选择提供关于类别标签最大细节的属性。
  11. 剪枝:从决策树中移除多余的分支或节点,以减少过拟合并提高泛化能力。
  12. 过拟合:当决策树模型过于紧密地模拟训练数据中的噪声或随机振荡时,它在尚未观察到的数据上表现不佳。
  13. 欠拟合:指决策树模型在训练和测试数据上都表现不佳,因为它过于简单,无法识别数据中的潜在模式。
  14. 深度:决策树中从任何叶节点到根节点的最长路径的距离。它确定了树的复杂程度。
Decision Tree Classifier in Machine Learning

决策树分类器的工作原理/算法

以下是决策树分类器操作的概述:

  1. 数据准备:您从一个带标签样本的数据集开始,每个样本都有一组输入特征和相关的输出标签或类别。特征应具有数值或分类值。
  2. 树构建:算法首先从数据集中选择最佳特征,将数据分割成两个或更多同质子集。这种选择通常基于信息增益、Gini 不纯度或熵等指标。所选特征成为树的根节点。
  3. 分割:所选特征用于根据其可能值将数据集分割成子集。每个子集对应于根节点的一个分支或子节点。此过程对每个子集递归重复,创建分支和子节点,直到满足停止标准。
  4. 停止标准:停止标准可以基于各种不同的事物,例如当树达到其最大深度时、当节点具有最少数量的样本时,或者当不纯度或信息增益提高到最小值时。
  5. 叶节点:一旦达到停止要求,就形成树的叶节点。根据要解决的问题(分类或回归),每个叶节点代表一个类别标签或一个回归值。
  6. 预测:通过根据特征值选择相关分支,将输入特征通过决策树,以对新的、未见过的示例进行分类。最终到达的叶节点关联的类别标签最终决定预测。

机器学习中决策树的类型

分类树:这类决策树用于解决分类问题,目标是预测输入实例的分类类别或标签。树的每个分支为每个内部节点提供一个潜在值或值范围,每个内部节点代表一个特征或属性。预期的类别标签由叶节点显示。

回归树:在尝试预测连续数值时,回归树用于解决问题。每个内部节点代表一个特征或属性,每个分支代表该特征的潜在值或值范围。这与分类树类似。预期的数值由叶节点表示。

多输出问题决策树:这些决策树用于解决具有多个输出变量的问题。树中的每个叶节点代表不同输出的预测值的混合。

已剪枝的决策树:剪枝是防止决策树过拟合的策略。为了提高泛化性能,已剪枝的决策树是通过首先生成一个完整的树,然后消除或折叠分支来开发的。这使得树更擅长处理隐藏数据,并防止其变得过于复杂。

随机森林:作为一种集成方法,随机森林整合了各种决策树以生成预测。使用训练数据的独特部分和任意特征集合,随机森林中的每棵树都是独立构建的。将每棵独立树的预测组合起来以获得最终预测。

梯度提升树:另一种集成技术,梯度提升结合了许多弱学习器(通常是决策树)以生成强大的预测模型。梯度提升集成中所有树的预测相加,以提供最终预测。集成中的每棵树都旨在纠正前一棵树生成的错误。

这些只是机器学习领域中经常采用的决策树结构的一些示例。每种类型都有不同的优点和缺点,最适合使用的类型取决于机器学习情景问题。

决策树分类器的优点

优点如下所述:

i) 可解释性:决策树为决策过程提供了清晰简单的表示。人们可以轻易理解和分析模型,因为它具有流程图状的布局。它可以帮助确定关键特征以及它们如何影响分类过程。

ii) 决策树能够处理数值和分类特征的组合,而无需大量预处理或特征工程。它们自然处理异常值和缺失值。

iii) 决策树可以捕获特征和目标变量之间的非线性关系。它们可以模拟复杂的决策过程以及多个特征之间的交互。

iv) 效率:决策树可以训练并相当快速地生成预测。决策树对于处理大型数据集是有效的,因为它们的时间复杂度通常与训练示例的数量呈对数关系。

v) 处理交互和非线性效应:决策树对于特征交互对分类过程至关重要的任务是有效的,因为它们可以捕获特征之间的交互和非线性效应。

vi) 缺失值处理:在分割过程中,决策树可以通过将缺失值视为单独的类别来处理它们。这消除了插补方法的必要性。

决策树的缺点

一些缺点是;

i) 决策树倾向于过拟合训练数据集,特别是当树太深且复杂时。当树过拟合时,它会捕获训练数据中的噪声或不重要的模式,使其难以泛化到新数据。

ii) 缺乏鲁棒性:决策树很容易受到训练数据集中微小调整的干扰。即使是微小的调整,树结构也可能显著改变。决策树由于缺乏鲁棒性,因此不如其他一些机器学习算法稳定。

iii) 高方差:决策树可能具有高方差,这意味着它们可能对训练数据集中的微小变化做出不同的响应。这种不稳定性可能使评估模型的实际性能和可靠性变得具有挑战性。

iv) 偏爱具有更多层次的特征:在分割特征时,决策树通常偏爱具有更多层次或类别的特征。由于这种倾向,层次较少的特征可能对选择没有那么大的影响。

结论

基于决策树的分类器因其简单性和易于理解而闻名且常用。尽管我们将专注于其作为分类器的使用,但它可用于分类和回归任务。

根据截至 2021 年 9 月的可用信息,我们可以推断出有关决策树分类器的以下内容:

1. 可能性

- 可解释性:由于决策树透明地表示决策过程,因此更容易理解和解释结果。

决策树可以捕获特征之间的非线性关系,这使其能够管理复杂数据集。

- 特征重要性:为了帮助特征选择和数据理解,决策树可以根据特征的重要性对其进行排名。

- 对异常值具有鲁棒性:由于决策树根据特征值分割特征空间,因此它们对异常值具有相对鲁棒性。

2. 缺点:- 过拟合:如果决策树未正确正则化,它们倾向于过拟合训练数据集。这个问题可以通过采用剪枝、设置最大深度或集成方法(如随机森林)等策略来减少。

- 不稳定性:由于决策树对训练数据中的微小变化敏感,因此可能会导致不同的树结构。可以使用集成方法对不同树的预测进行平均以解决此问题。

- 偏差:因为更多的层次或值可以导致更多的分区和可能更好的分割,所以决策树可能偏向于具有更多层次或值的特征。

3. 需要记住的事情:- 预处理:决策树可以直接处理数值和分类信息,并且对比例不敏感。即便如此,在预处理数据时,处理缺失值、编码分类类别以及(如果需要)处理异常值仍然至关重要。

决策树具有许多可以影响其性能的超参数,包括最大深度、分割节点所需的最少样本数以及用于评估分割质量的标准(例如 Gini 不纯度或熵)。通过调整这些超参数可以增强模型的性能。

- 集成方法:为了增加其预测价值并解决其一些缺点,决策树可以与随机森林或梯度提升等集成方法配对使用。

总之,决策树分类器是一种强大而灵活的机器学习算法。它擅长处理复杂数据集、非线性关系和可解释性。它也有过拟合和不稳定性等缺点,可以通过使用正确的正则化策略和集成方法来消除。要从决策树分类器中获得最佳结果,预处理数据和调整超参数至关重要。