加入收藏 | 设为首页 | 会员中心 | 我要投稿 广元站长网 (https://www.0839zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

这是一篇手把手的随机森林入门实战

发布时间:2021-03-03 13:07:18 所属栏目:外闻 来源:互联网
导读:学家,我们可以通过很多方法来创建分类模型。最受欢迎的方法之一是随机森林。我们可以在随机森林上调整超参数来优化模型的性能。 在用模型拟合之前,尝试主成分分析(PCA)也是常见的做法。但是,为什么还要增加这一步呢?难道随机森林的目的不是帮助我们更



学家,我们可以通过很多方法来创建分类模型。最受欢迎的方法之一是随机森林。我们可以在随机森林上调整超参数来优化模型的性能。

在用模型拟合之前,尝试主成分分析(PCA)也是常见的做法。但是,为什么还要增加这一步呢?难道随机森林的目的不是帮助我们更轻松地理解特征重要性吗?

当我们分析随机森林模型的「特征重要性」时,PCA 会使每个「特征」的解释变得更加困难。但是 PCA 会进行降维操作,这可以减少随机森林要处理的特征数量,因此 PCA 可能有助于加快随机森林模型的训练速度。

请注意,计算成本高是随机森林的最大缺点之一(运行模型可能需要很长时间)。尤其是当你使用数百甚至上千个预测特征时,PCA 就变得非常重要。因此,如果只想简单地拥有最佳性能的模型,并且可以牺牲解释特征的重要性,那么 PCA 可能会很有用。

现在让我们举个例子。我们将使用 Scikit-learn 的「乳腺癌」数据集,并创建 3 个模型,比较它们的性能:

1. 随机森林

2. 具有 PCA 降维的随机森林

3. 具有 PCA 降维和超参数调整的随机森林

导入数据

首先,我们加载数据并创建一个 DataFrame。这是 Scikit-learn 预先清理的「toy」数据集,因此我们可以继续快速建模。但是,作为最佳实践,我们应该执行以下操作:

  • 使用 df.head()查看新的 DataFrame,以确保它符合预期。
  • 使用 df.info()可以了解每一列中的数据类型和数据量。可能需要根据需要转换数据类型。
  • 使用 df.isna()确保没有 NaN 值。可能需要根据需要处理缺失值或删除行。
  • 使用 df.describe()可以了解每列的最小值、最大值、均值、中位数、标准差和四分位数范围。

名为「cancer」的列是我们要使用模型预测的目标变量

(编辑:广元站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读