吴恩达机器学习笔记 二十八 使用多个决策树 树集合 有放回抽样 随机森林算法

使用一个决策树对数据的小变化非常敏感 ,这时可以使用多个决策树,称树的集合(tree ensemble)。如下图,猫猫分类问题中,若改变一只猫的特征,得到的将是两种完全不同的决策树,这使算法没那么健壮。

使用一个树集合(tree ensemble),集合中每个树预测的结果可能不同,由每个树进行投票,最多的是 cat, 所以结果就是cat。

有放回抽样(sampling with replacement) ,这里 replacement 指的是抽一次之后把抽出来的放回去再继续抽。构建随机训练集,如下图,每次从十个样本里抽一个直到抽够十个,是有放回抽样,所以抽出来的可能有重复。

随机森林算法

假设有一个大小为 m 的训练集,做 B 次这样的操作:有放回抽样重建一个大小为 m 的训练集 (随机训练集),然后根据这个训练集训练出一棵决策树,总共得到 B 棵这样的决策树。B越大越好,但好到一定程度之后再增大,实际上没有变好多少,尤其是当 B 远大于100时。

通常在确定分割特征时,我们不是考虑所有的 n 个特征,而是挑选一个特征的子集 ,让算法只能从这 k 个特征中选择再来进行分裂。当 k 为几十几百的时候,通常k 取 n 的平方根

为什么随机森林比一棵决策树更健壮

因为随机森林算法中的有放回抽样就相当于已经对数据做了微小改动,并且多个树相当于对这种改变进行了平均。

最后是老师讲的一个笑话:

Where does a machine learning engineer go camping?

In a random forest.

相关推荐
xian_wwq5 小时前
【学习笔记】-深度认知系列-第1讲-AI不是魔法——三句话讲清楚人工智能到底是什么
笔记·学习·深度认知
M78佐菲5 小时前
c语言学习笔记:排序与查找方法整理
linux·c语言·笔记·学习·算法
别动我齐刘海5 小时前
机器人运动控制学习4——状态估计 State Estimation
c++·人工智能·学习·目标检测·机器学习·机器人·自动驾驶
泡干脆面就番茄6 小时前
集成学习之随机森林
随机森林·机器学习·集成学习
摇滚侠6 小时前
《SpringBoot 3:入门与应用实战》第 5 章 使用 Spring Boot 阅读笔记 9
java·spring boot·笔记
浪兎兎7 小时前
Docker 容器技术笔记
笔记·docker·容器
LuminousCPP7 小时前
数据结构‑二叉树(二):二叉堆从零实现|Heap结构设计 + 建堆优化 + 堆排序深度解析
c语言·数据结构·笔记·二叉树
噜~噜~噜~7 小时前
操作系统笔记-2.2.6 多处理机调度
笔记·操作系统
kyrie_sakura7 小时前
python学习笔记3 -- 流程控制语句结构
笔记·python·学习