(补) 决策树-集成学习几个小点
决策树简单回顾
不在反复重复地加深认知了
- 决策树由节点和边, 每个叶子节点表示的就是一个最终决策结果
- 一个决策树与对应的决策边界,域值划分而已
训练一颗决策树, 需要三个要素
-
树的形状
-
每一个决策的 阀值
-
叶节点的值(最终的决策输出)
最为复杂的一部分是,如何根据数据去确定一棵树的形状, 当然可以穷举, 列出所有可能的树形状,再来选, 就有点耗时, 实际中不大行.
信息熵
之前的篇幅, 已经多次说了来源及推导, 用来衡量不确定性的大小
case
给定一组数据 {0,0,1,1,0,1,1,1} 的信息熵
不确定性的减小 (信息增益)= 原来的不确定性 - 分割后的不确定性
停止分割条件
- 当一个叶节点, 里面包含的所有样本都属于同一类别时
- 当一个叶节点, 里面包含的所有特征都一样时
过拟合
就是节点个数过多的情况下会发生呀, 因此需要优化
-
设置数的最大深度
-
叶节点的样本数小于阀值时停止分裂
-
具体阀值的选取, 可用交叉验证的方式调参
连续型
通常的办法可以是,对其排序, 然后 离散化
应用于回归问题
就用 标准差 来衡量回归问题中,量化的不确定性
总体评估用 MSE 来评估.
... 这些内容都是常识, 不做过多探讨了, 只是稍微回顾一波而已.
集成模型
- Bagging
- 随机森林
- Boosting
- GBDT, XGboost...
集成学习的目的, 就是降低模型的不确定性, 从效果来说. 多个人做决策还是优于一个人的, 像我之前要我一个人搭建数据库, 需求调研, 方案, ER模型, 表字段, 代码...全流程都要我一个人来做?? 真的,个人的能力是有限的, 如果在配几个人手来共同探讨, 决策, 那肯定是要优于个人的.
Baggiing 的预测
是对测试样本, 分别用不同的模型去预测, 然后 "投票"确定, (随机森林), 是可以并行来做的. 我同时开好几台机器来训练不同的模型.
Bagging 的核心在于, 通过集成的方式提高模型的稳定性.
就是跟咱投资决策一样的, 不要把鸡蛋都放一个篮子里, 要进行风险分散, 差不多是这个意思.
case
一个比较经典的 专家决策 案例:
说,有7位专家, 每位专家在决策上犯错误的概率是 0.3, 则求共同决策时, 最终犯错的概率是多少?
(采用少数服从多数的原则哦)
这就是一个中学题哈, 其实可以分为3中情况
- 4 错, 3对
- 5错, 2对
- 6错, 1对
- 7错, 0对
然后求和可以得到, 0.126 <= 0.3
降低风险, 应该是可以证明的,从数学上, 我还没想好, 如何证明
假如有 n 个模型, 每个模型在预测时的方差为 , 则通过 n 个模型一起预测时的方差(平均):
bagging vs boosting
共同点: 都是通过多个模型 去做训练和预测, 每个模型呢, 都是 base weak .
就是要找一些较弱的 分类器, 太强就变专家了, 汉东不允许这么牛逼的人存在
对于 bagging, 单个模型太强的话, 就很容易 overfitting
对于 boosting, 单个模型的设定基础, 就是很弱, 核心是以弱胜强, 单个模型拿出来, 容易 underfitting
怎么说呢, 我个人的接触来看, 用 bagging 会多一点, 就是对同一份数据, 并行地训练多个模型, 然后再 voting 这是我很好地能够向老板解释清楚的.
当然现阶段会更偏向 boosting 多一点, 理论上面认识, 会更自信一些, 当然, 调参也是要市场复习.
在市场上我看这个boosting 当时非常火爆的, 比如 XGboost, 于是接下来几篇的内容又有了, 推导 XGBoost 算法原理, 跟着大佬论文, 试着推导一波看看.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通