【问题标题】:Is it possible to build a random forest with model based trees i.e., `mob()` in partykit package是否可以使用基于模型的树构建随机森林,即partykit 包中的“mob()”
【发布时间】:2020-12-15 01:00:42
【问题描述】:

我正在尝试使用 partykit 包中基于模型的回归树来构建随机森林。我使用mob() 函数和用户定义的fit() 函数构建了一个基于模型的树,该函数在终端节点返回一个对象。

在partykit 中有cforest(),它只使用ctree() 类型的树。我想知道是否可以修改cforest() 或编写一个新函数,该函数从基于模型的树构建随机森林,该树在终端节点返回对象。我想使用终端节点中的对象进行预测。任何帮助深表感谢。提前谢谢你。

编辑:我构建的树与这里的树相似 -> https://stackoverflow.com/a/37059827/14168775

如何使用类似于上述答案的树来构建随机森林?

【问题讨论】:

    标签: r random-forest party ctree


    【解决方案1】:

    目前,尽管大多数构建块都可用,但没有使用 mob() 的通用基于模型的森林的固定解决方案。但是,我们目前正在重新实现mob() 的后端,以便我们可以更轻松地利用cforest() 底层的基础设施。另外,mob()ctree() 慢很多,这在学习森林方面有些不便。

    目前最好的替代方法是将cforest() 与自定义ytrafo 一起使用。这些也可以适应基于模型的转换,非常类似于mob() 中的分数。事实上,在许多情况下,ctree()mob() 在提供与转换相同的分数函数时会产生非常相似的结果。

    本次会议演示中提供了一个工作示例:

    Heidi Seibold、Achim Zeileis、Torsten Hothorn(2017 年)。 “使用基于模型的随机森林进行个体治疗效果预测。” 在研讨会“Psychoco 2017 - 心理测量计算国际研讨会”上发表, WU Wirtschaftsuniversität 维也纳,奥地利。 网址https://eeecon.uibk.ac.at/~zeileis/papers/Psychoco-2017.pdf

    用于个体治疗效果预测的基于模型的随机森林的特殊情况也在专用包model4you 中实现,该包使用上述演示中的方法,可从 CRAN 获得。另见:

    Heidi Seibold、Achim Zeileis、Torsten Hothorn(2019 年)。 “model4you:用于个性化治疗效果估计的 R 包。” 开放研究软件杂志7(17),1-6。 doi:10.5334/jors.219

    【讨论】:

    • 感谢您的迅速回复。我对包裹有另一个澄清。是否可以合并多个mob() 树对象以形成森林?我想使用varimp() 函数,它需要一个森林对象,但我有几个使用mob() 生成的不同树对象。
    • 不是开箱即用的,因为这需要基于适宜性加权模型拟合的正确预测。
    猜你喜欢
    • 2021-08-11
    • 2021-04-14
    • 2016-08-30
    • 2021-07-11
    • 2020-08-16
    • 2018-09-26
    • 2020-02-25
    • 2019-11-22
    • 2020-07-01
    相关资源
    最近更新 更多