news 2026/2/18 23:00:23

一文搞懂树模型与集成模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
一文搞懂树模型与集成模型

推荐直接网站在线阅读:aicoting AI算法面试学习在线网站

树模型与集成模型是机器学习中非常重要的一类方法。树模型(如决策树)通过逐层划分特征空间,把复杂的预测问题转化为一系列“如果-那么”的规则,具有直观、可解释性强的特点。

单棵决策树往往容易过拟合,但当多个树结合在一起,就能形成更强大的 集成模型。常见的集成方法包括 Bagging(如随机森林),它通过多棵树投票减少方差;Boosting(如 AdaBoost、GBDT、XGBoost、LightGBM、CatBoost),它通过迭代训练不断纠正错误,提高精度;还有 Stacking,通过多层模型组合提升泛化能力。集成模型通常比单一模型更稳定、更准确,是工业界大规模应用的主力方法之一。

决策树

基本原理

决策树(Decision Tree) 是一种常用的监督学习方法,可用于分类和回归任务。它通过不断地“提问”并“分裂”,把复杂问题分解成一系列简单的判断。

例如,在分类问题中,决策树会根据某个特征是否满足条件,把数据划分成不同的子集,直到最终得到叶节点的分类结果。整个过程像是一连串的 “如果…那么…” 规则。 数学上,决策树的学习过程就是 选择最优特征和最优切分点,使得数据划分后“不确定性”最小。

划分准则

决策树的核心问题是 如何选择最佳特征来划分数据。常见的准则包括:

  1. 信息增益(ID3)

信息增益通过衡量数据集在某一特征上划分后熵的减少量,来选择最优划分特征。它直观地表示划分前后不确定性的下降程度。信息增益越大,说明该特征能更好地区分样本。但它偏向于选择取值较多的特征。

公式为:

G a i n ( D , A ) = E n t r o p y ( D ) − ∑ v ∈ V a l u e s ( A ) ∣ D v ∣ ∣ D ∣ E n t r o p y ( D v ) Gain(D, A) = Entropy(D) - \sum_{v \in Values(A)} \frac{|D_v|}{|D|} Entropy(D_v)Gain(D,A)=Entropy(D)vValues(A)DDvEntropy(Dv)

其中:

  1. 信息增益率(C4.5)

信息增益率是对信息增益的改进,它在计算信息增益的同时,引入特征自身取值分布的“固有值”进行归一化,从而削弱了取值过多特征的优势。它能够在保证区分度的同时,避免偏向高取值特征。

G a i n _ r a t i o ( D , A ) = G a i n ( D , A ) I V ( A ) Gain\_ratio(D, A) = \frac{Gain(D, A)}{IV(A)}Gain_ratio(D,A)=IV(A)Gain(D,A)

I V ( A ) IV(A)IV(A):信息增益的归一化因子(固有值,Intrinsic Value),

I V ( A ) = − ∑ v ∈ V a l u e s ( A ) ∣ D v ∣ ∣ D ∣ log ⁡ 2 ∣ D v ∣ ∣ D ∣ IV(A) = -\sum_{v \in Values(A)} \frac{|D_v|}{|D|} \log_2 \frac{|D_v|}{|D|}IV(A)=vValues(A)DDvlog2DDv

表示按照特征 A 进行划分本身带来的信息量大小。

  1. 基尼指数(CART)

基尼指数用来衡量数据集的不纯度,其值越小表示数据越“纯”,即大部分样本集中在同一类别中。在分类任务中,CART 决策树通过选择能使基尼指数最小的特征和划分点来生成树结构,因此常用于二叉树的构建。

G i n i ( D ) = 1 − ∑ k = 1 K p k 2 Gini(D) = 1 - \sum_{k=1}^{K} p_k^2Gini(D)=1k=1Kpk2

其中:

  1. 最小方差(回归树)

在回归问题中,决策树不再使用熵或基尼指数,而是通过最小化均方误差(MSE)来选择划分点。这样划分后,叶节点内的数据点与其均值的偏差最小,从而保证预测值尽量接近真实值。

决策树的构建与剪枝

  1. 构建阶段
  • 从根节点开始,选择最优特征进行划分
  • 重复划分,直到满足停止条件(如叶子节点纯度足够高,或树的深度达到限制)
  1. 剪枝阶段

决策树容易过拟合,因此需要 剪枝(Pruning):

  • 预剪枝(Pre-pruning):在构建过程中提前停止划分(如设置最大深度、最小样本数)。
  • 后剪枝(Post-pruning):先生成一棵完整的树,再通过交叉验证剪去效果不佳的分支。

常见决策树算法

  1. ID3:使用信息增益作为划分准则。
  2. C4.5:改进 ID3,使用信息增益率。
  3. CART(Classification and Regression Tree):既可用于分类(基尼指数),也可用于回归(最小方差)。

在实际应用中,CART 是最常用的算法,也是随机森林和梯度提升树的基础。

下面我们用 scikit-learn 构建一个决策树分类器,处理鸢尾花(Iris)数据集:

fromsklearn.datasetsimportload_irisfromsklearn.model_selectionimporttrain_test_splitfromsklearn.treeimportDecisionTreeClassifier,export_textfromsklearn.metricsimportaccuracy_score# 1. 加载数据iris=load_iris()X,y=iris.data,iris.target# 2. 划分训练/测试集X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=42)# 3. 构建决策树(CART算法,使用基尼指数)clf=DecisionTreeClassifier(criterion="gini",max_depth=3,random_state=42)clf.fit(X_train,y_train)# 4. 预测y_pred=clf.predict(X_test)# 5. 评估print("Accuracy:",accuracy_score(y_test,y_pred))# 6. 打印规则tree_rules=export_text(clf,feature_names=iris.feature_names)print(tree_rules)

输出如下,在 Iris(鸢尾花)数据集中,每朵花有 sepal length(萼片长度)、sepal width(萼片宽度)、petal length(花瓣长度)、petal width(花瓣宽度) 四个特征,用于分类不同种类的鸢尾花。

可以看到,决策树非常直观,直接给出了分类规则。

决策树模型直观、可解释性强,不需要特征缩放或归一化,既能做分类,也能做回归。适合处理非线性关系。

但是缺点就是容易过拟合(需要剪枝或结合集成方法),对噪声数据和小变动敏感,单棵树的预测能力有限。

简单总结一下就是决策树是一种简单而强大的模型,通过分而治之的思想,把复杂问题转化为一系列简单判断。虽然单棵树存在一定的局限性,但它作为 集成学习(随机森林、GBDT 等) 的基础,仍然是机器学习中不可或缺的重要方法。

最新的文章都在公众号aicoting更新,别忘记关注哦!!!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/3 2:33:02

Meta-Llama-3-8B-Instruct模型轻量:移动端

Meta-Llama-3-8B-Instruct模型轻量:移动端 1. 引言 随着大语言模型在消费级硬件上的部署需求日益增长,轻量化、高性能的推理方案成为开发者和研究者的关注焦点。Meta-Llama-3-8B-Instruct 作为 Llama 3 系列中兼具性能与效率的中等规模模型&#xff0c…

作者头像 李华
网站建设 2026/2/17 18:43:19

学生党福利:Hunyuan-MT-7B云端体验,比买显卡便宜90%

学生党福利:Hunyuan-MT-7B云端体验,比买显卡便宜90% 你是不是也遇到过这样的情况?作为语言学专业的学生,手头有篇论文急需做多语言翻译实验,比如分析少数民族语言与汉语之间的语义对齐问题。可实验室的GPU服务器要排队…

作者头像 李华
网站建设 2026/2/14 3:24:50

从0开始学大模型:Qwen2.5-7B-Instruct保姆级教程

从0开始学大模型:Qwen2.5-7B-Instruct保姆级教程 1. 引言与学习目标 随着大语言模型技术的快速发展,通义千问团队推出了新一代 Qwen2.5 系列模型。其中 Qwen2.5-7B-Instruct 是一款经过指令微调、具备强大对话能力的中等规模语言模型,参数量…

作者头像 李华
网站建设 2026/2/16 15:09:29

Deep-Live-Cam技术配置全流程:从环境搭建到性能优化

Deep-Live-Cam技术配置全流程:从环境搭建到性能优化 【免费下载链接】Deep-Live-Cam real time face swap and one-click video deepfake with only a single image 项目地址: https://gitcode.com/GitHub_Trending/de/Deep-Live-Cam 你是否正在经历这些技术…

作者头像 李华
网站建设 2026/2/15 3:49:11

Zotero-Style终极指南:让学术文献管理变得简单高效

Zotero-Style终极指南:让学术文献管理变得简单高效 【免费下载链接】zotero-style zotero-style - 一个 Zotero 插件,提供了一系列功能来增强 Zotero 的用户体验,如阅读进度可视化和标签管理,适合研究人员和学者。 项目地址: ht…

作者头像 李华
网站建设 2026/2/11 7:23:03

RevokeMsgPatcher防撤回工具实用指南:从此告别消息撤回的烦恼

RevokeMsgPatcher防撤回工具实用指南:从此告别消息撤回的烦恼 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了) 项目地址: https://git…

作者头像 李华