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

使用一个决策树对数据的小变化非常敏感 ,这时可以使用多个决策树,称树的集合(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.

相关推荐
('-')6 小时前
《从根上理解MySQL是怎样运行的》第十章学习笔记
笔记·学习·mysql
hd51cc6 小时前
MFC学习笔记 对话框
笔记·学习·mfc
雪碧聊技术6 小时前
深度学习、机器学习、人工智能三者的关系
人工智能·深度学习·机器学习
卡提西亚6 小时前
数据库笔记-4-SQL语言之DCL
数据库·笔记·sql
β添砖java6 小时前
机器学习初级
人工智能·机器学习
Radan小哥6 小时前
Docker学习笔记—day0010
笔记·学习·docker
im_AMBER6 小时前
Canvas架构手记 05 鼠标事件监听 | 原生事件封装 | ctx 结构化对象
前端·笔记·学习·架构
qq_17082750 CNC注塑机数采6 小时前
【Python TensorFlow】 TCN-GRU时间序列卷积门控循环神经网络时序预测算法(附代码)
python·rnn·神经网络·机器学习·gru·tensorflow·tcn
黑客思维者7 小时前
LLM底层原理学习笔记:模型评估的基准测试体系与方法论
人工智能·笔记·神经网络·学习·模型评估·基准测试