前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >从美赛C题第一问学习随机森林和决策树模型

从美赛C题第一问学习随机森林和决策树模型

作者头像
阑梦清川
发布2025-02-24 14:24:43
发布2025-02-24 14:24:43
1040
举报
文章被收录于专栏:学习成长指南学习成长指南

1.内容来源的声明

今天是在公众号上面读到了这个作者的文章,我觉得写的非常好,而且这个主页里面还有一些质量很高的文章,分享给大家,可以去关注一下;

image-20250125201458246
image-20250125201458246

2.第一问需要我们做什么

问题 1:开发一个至少针对每个国家的金牌和总奖牌数的模型。包括对模型预测的不确定性 / 精度的估计以及模型性能的衡量。

  • 基于你的模型,你对 2028 年美国洛杉矶夏季奥运会的奖牌榜有什么预测?包括所有结果的预测区间。你认为哪些国家最有可能进步?哪些国家会比 2024 年表现更差?
  • 你的模型应该包括尚未获得奖牌的国家;你对下一届奥运会有多少国家将获得第一枚奖牌的预测是什么?你对这个估计的胜算有多大?
  • 你的模型还应该考虑给定奥运会的项目(数量和类型)。探索项目与各国获得的奖牌数量之间的关系。哪些运动对各个国家最重要?为什么?主办国选择的项目如何影响结果?

实际上就是预测模型,下面学习一下这个随机森林;

3.随机森林算法

3.1算法概览

下面的这个该算法的基本思路图:

image-20250125201925116
image-20250125201925116

3.2算法解释

随机森林是集成学习算法:

通过自助采样(Bootstrap Sampling)的方式从原始训练数据集中有放回地抽取多个子数据集,然后针对每个子数据集构建一个决策树。

在构建决策树的过程中,在每个节点处随机选择部分特征进行分裂,这样可以降低决策树之间的相关性。

最后将所有决策树的预测结果进行综合(例如简单平均)得到最终的预测结果。这种算法的优点是可以处理高维数据,具有较好的泛化能力,不易过拟合。

3.3模型原理

从理论角度看,随机森林通过集成多个决策树,利用了决策树对数据的非线性拟合能力,同时通过随机化操作提高了模型的泛化能力。在实际应用中,它可以处理多种类型的数据,不需要对数据进行复杂的假设。

适用范围:适用于预测各种类型的数值型目标变量,如这里的金牌数和总奖牌数。对于数据中存在噪声、缺失值等情况也有一定的鲁棒性。

局限性:模型解释性相对较差,因为是多个决策树的集成,难以直观地理解每个特征对结果的具体影响。

改进方向:可以尝试使用可解释性的随机森林算法,如通过计算特征重要性来提高模型的可解释性

上面的解释会发现,想要明白随机森林,需要先学习决策树:

4.决策树

4.1名字缘由

决策树可以用于分类和回归。顾名思义,这个模型做出的决策类似于一棵树,由结点有向边组成。整体的决策过程可以理解为是if-then的结构。具体模型如下所示:

image-20250125202435519
image-20250125202435519

4.2基本流程

假设要用决策树预测一个人是否会购买某种产品。现在有一些特征,例如年龄、收入和是否有小孩等。决策树的构建过程如下:

  • 选择最佳特征进行分裂: 决策树首先会选择一个最能将数据分开的特征。例如,可能会选择“年龄”作为第一个分裂特征
  • 根据特征值进行分裂: 将所有数据根据“年龄”进行分裂,例如将年龄小于30岁的分为一组,和年龄大于等于30岁的分为一组(这里可以看出,决策树不仅能够处理离散问题,还能处理连续问题。只需要设置阈值即可)
  • 递归分裂: 对于每一组,再次选择最佳特征进行进一步分裂,直到所有数据被分成纯净的组(即每组内的样本属于同一类),或达到某个预设的终止条件(例如最大深度)
  • 生成决策规则: 每个叶子节点代表一个最终的决策结果。通过从根节点到叶子节点的路径,就可以生成一组决策规则

现在问题来了:如何选择最优的特征呢?这里需要提及一个概念:信息增益

4.3实际例子

下面的例子是作者文章里面的例子,大家可以去看一下,了解一下信息增益,熵的相关概念,我觉的作者的解释非常清楚;

image-20250125203039699
image-20250125203039699

5.我的心得

今天是初步了解这个随机森林的基本流程和决策树模型,之前只是听过但是不了解;

实际上,在我看来这个熵的意义就是衡量数据的离散程度(不确定性的程度)------这个就是本质理解;

基本流程和决策树模型,之前只是听过但是不了解;

实际上,在我看来这个熵的意义就是衡量数据的离散程度(不确定性的程度)------这个就是本质理解;

和高中化学里面的方程式里面的熵有异曲同工之妙,高中对象是能量,现在的对象是数据,仅此而已;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-01-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.内容来源的声明
  • 2.第一问需要我们做什么
  • 3.随机森林算法
    • 3.1算法概览
    • 3.2算法解释
    • 3.3模型原理
  • 4.决策树
    • 4.1名字缘由
    • 4.2基本流程
    • 4.3实际例子
  • 5.我的心得
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档