【发布时间】:2018-09-26 17:28:25
【问题描述】:
我对机器学习海洋比较陌生,如果我的一些问题真的很基础,请原谅。
当前情况:总体目标是尝试改进在超级计算机集群上运行的 r 中 h2o 包的一些代码。但是,由于数据太大,单节点用 h2o 确实需要一天多的时间,因此,我们决定使用多个节点来运行模型。我想出了一个主意:
(1) 分发每个节点构建(nTree/num_node)棵树并保存到模型中;
(2) 在集群的每个节点上运行森林中的 (nTree/num_node) 棵树;
(3) 将树木重新合并在一起,对原始森林进行改造,并将测量结果取平均值。
我后来意识到这可能是有风险的。但是我找不到实际的支持或反对声明,因为我不是专注于机器学习的程序员。
问题:
- 如果这种处理随机森林的方式会导致一些风险,请参考我的链接,这样我就可以大致了解为什么这是不正确的。
- 如果这种方式实际上是一种“好的”方式。我应该怎么做才能合并树,有没有可以借用的包或方法?
- 如果这确实是一个已解决的问题,请参考我的链接,我可能搜索了错误的关键字,谢谢!
我可以在这里展示的涉及实数的例子是:
我有一个包含 80k 行和 2k 列的随机森林任务,并且希望树的数量为 64。我所做的是在运行整个数据集的每个节点上放置 16 棵树,四个节点中的每一个都提出射频模型。我现在正在尝试将每个模型的树合并到这个大的 RF 模型中,并对测量结果进行平均(来自这四个模型中的每一个)。
【问题讨论】:
标签: r machine-learning parallel-processing h2o