使用 randomForest 包的海量数据集

Posted

技术标签:

【中文标题】使用 randomForest 包的海量数据集【英文标题】:Massive datasets with the randomForest package 【发布时间】:2014-01-20 04:12:38 【问题描述】:

我的模型中有大约 300,000 行数据和 10 个特征,我想从 R 中的 randomForest 包中拟合随机森林。

为了在不破坏概括性的情况下,在固定的时间窗口内最大限度地增加森林中的树木数量,我应该将参数设置为哪些合理范围?

【问题讨论】:

这更像是一个统计问题而不是一个编程问题,您应该考虑将其迁移到交叉验证,并且您可能还想探索交叉验证来设置参数! @dickoa 这是一个时间复杂度问题。我想知道时间复杂度可行的参数值范围。然后我将在这些区间的笛卡尔积内使用交叉验证。 我看不出是什么阻止您简单地对较小版本的数据进行一些测试以自己解决这个问题。 【参考方案1】:

通常你可以只使用mtry,正如这里解释的那样,默认值通常是最好的:

https://stats.stackexchange.com/questions/50210/caret-and-randomforest-number-of-trees

但是有一个带有 randomForest 的函数 tuneRF 可以帮助您找到最佳的 ntreemtry,如下所述:

setting values for ntree and mtry for random forest regression model

您必须花时间测试自己 - 这将是 foldstuningntrees 的产物。

我要补充的唯一推测点是,使用 300,000 行数据,您可能通过引导小数据样本在不损失预测准确性的情况下缩短运行时间? ?

【讨论】:

以上是关于使用 randomForest 包的海量数据集的主要内容,如果未能解决你的问题,请参考以下文章

寻找海量数据集用于大数据开发实战(维基百科网站统计数据)

处理海量数据的模式MapReduce,大规模数据集的并行运算

如何在超过 100 亿行的海量数据集上执行选择

使用 keras 的自定义数据生成器功能预处理海量数据

VB中从SQL Server到Excel的海量数据导出

数据集