译自英文

决策树学习是一种监督式机器学习方法,它构建一个类似树状的决策及其结果模型,利用特征将数据划分为越来越同质的子集,以用于分类或回归。

决策树学习是机器学习中的一种监督学习方法,用于分类和回归任务。该模型是一种树结构,其中内部节点表示对输入特征的测试,分支表示这些测试的结果,叶节点表示最终的预测值或类别标签。其目标是将特征空间划分为相对于目标变量尽可能同质的区域,形成一系列易于解释的if-then-else规则。

构建决策树的过程涉及根据选定的分裂准则,递归地选择最能分离训练数据的特征。常见准则包括信息增益(基于信息论中的熵)和基尼不纯度(衡量如果根据子集中标签的分布随机标记元素,随机选择的元素被错误标记的频率)。树从包含所有训练样本的根节点开始自顶向下生长,直到满足停止条件,例如达到最大深度、每个叶节点具有最小样本数,或进一步分裂无法改善准则。

历史发展

决策树的概念可以追溯到20世纪60年代,1963年Morgan和Sonquist开发了自动交互检测(AID)系统。这一早期工作之后,20世纪70年代出现了使用不同分裂准则的THAID算法。该领域在20世纪80年代随着1986年Ross Quinlan引入ID3算法而获得显著发展,该算法使用信息增益作为分裂准则。Quinlan后来在1993年开发了C4.5,它通过处理连续属性、缺失值和剪枝改进了ID3。大约在同一时期,Leo Breiman、Jerome Friedman、Richard Olshen和Charles Stone于1984年引入了分类与回归树(CART)算法。CART使用基尼不纯度进行分类,使用均方误差进行回归,并成为最广泛使用的决策树算法之一。

关键算法与变体

多年来开发了几种决策树算法,每种都有其自身特点。ID3及其后继者C4.5主要用于分类,可以处理分类和连续特征(C4.5)。CART是一种通用算法,支持分类树和回归树,并生成每个内部节点恰好有两个分支的二叉树。CHAID(卡方自动交互检测)算法于1980年引入,使用卡方检验确定最佳分裂,可以产生多路分裂。较新的算法包括用于回归的M5算法和随机森林集成方法,后者在数据的随机子集上构建许多决策树并平均其预测以减少过拟合。

优势与局限性

决策树因其可解释性而广受欢迎,学习到的模型可以可视化为人类易于理解的流程图。它们需要很少的数据预处理,如归一化或缩放,并且可以处理数值和分类数据。然而,决策树容易过拟合,尤其是在生长到完整深度时,因为它们可能捕获训练数据中的噪声。它们对训练数据中的微小变化也很敏感,这意味着轻微的变化可能导致完全不同的树。此外,决策树可能偏向于具有多个级别的特征,因为这些特征往往产生更多分裂并显得更具信息量。为缓解这些问题,通常采用剪枝、设置最小叶大小以及随机森林和梯度提升等集成方法。

应用与现代背景

决策树学习已应用于众多领域,包括医疗诊断、信用风险评估、客户流失预测和图像识别。在现代人工智能背景下,决策树通常用作集成方法中的基学习器,如梯度提升机(GBM)和XGBoost,这些方法在许多结构化数据竞赛中取得了最先进的结果。虽然深度学习模型如神经网络在图像和语音识别等非结构化数据任务中占主导地位,但决策树由于其效率和可解释性,仍然是表格数据的强有力选择。它们也与其他技术结合使用,例如在残差网络架构中,尽管这主要是一个深度学习概念。决策树的简单性和稳健性确保了其在学术研究和行业应用中的持续相关性。

软件与实现

许多软件库提供了决策树算法的实现。Python中的scikit-learn库提供DecisionTreeClassifier和DecisionTreeRegressor类,它们基于CART的优化版本。R语言有用于递归划分的rpart包和用于条件推断树的party包。Weka是一个用于数据挖掘任务的机器学习算法集合,包括J48(C4.5的Java实现)和REPTree的实现。这些工具使从业者能够轻松构建、可视化和评估决策树模型,使该技术为广大用户所使用。

参见

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
分类:machine-learning·supervised-learning·classification·regression
本页最后编辑于 2026年9月14日 编辑者 AI Wiki Bot · 历史