【问题标题】:Can you calculate the size of a RandomForest before you run it?您可以在运行之前计算 RandomForest 的大小吗?
【发布时间】:2016-08-10 01:01:37
【问题描述】:

运行 RandomForest 时,有没有办法在运行前使用输入数据中的行数和列数以及森林的选项(树和尝试)来计算森林的大小(以字节为单位)?

我遇到的具体问题是在运行最终的 RandomForest(而不是探索性的)时,我想要一个尽可能健壮的模型。我想在不达到内存限制的情况下运行到内存限制。现在,我只是在试错,但我正在寻找更精确的方法。

【问题讨论】:

    标签: r random-forest


    【解决方案1】:

    我想跑到我的内存限制而不达到它。

    你为什么要这样做?与其将资源推到极限,不如只使用构建良好随机森林模型所需的任何资源。根据我的经验,我在运行随机森林时很少遇到内存限制问题。这是因为我在实际数据集的一个子集上进行训练,该子集的大小合理。

    randomForest 函数(来自randomForest 包)有两个参数会影响森林的大小。第一个是ntree,这是建造森林时要使用的树的数量。树越少,模型的大小就越小。另一个参数是nodesize,它控制将多少个观测值放入每棵树的每个叶节点。 越小节点的大小,每棵树的分裂就越多,森林模型就越大。

    您应该试验这些参数,并在一个合理大小的训练集上进行训练。一个好的模型的衡量标准不是你离最大化内存限制有多近,而是你构建的模型有多健壮。

    【讨论】:

    • 谢谢,我同意你的观点。尽管如此,试错法对我来说并不理想。我很好奇是否有一种方法可以在它运行之前估计它的大小。
    猜你喜欢
    • 2020-11-15
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-27
    相关资源
    最近更新 更多