如何使用glmnet模型作为暴民功能(R包方)的节点模型?

时间:2013-01-28 22:42:05

标签: r glmnet party

我正在使用R包mob的{​​{1}}函数。我的问题涉及此函数的party参数。

如何定义StatModel对象(来自包model) - 让我们称之为 glmnetModel - 以便modeltools估计的节点模型为{{1模型(更确切地说,我想使用mob函数作为 glmnetModel glmnet槽中的主要估算函数??

一个难点是正确扩展cv.glmnet函数(可能还有fitreweight函数?),如建议使用here(第2.1节)。

有人有想法吗?

注意:我看过一些扩展(对于SVM:here),但我无法正确使用它们。

非常感谢!

多米尼克

1 个答案:

答案 0 :(得分:0)

我不确定MOB算法中参数不稳定性测试的推理框架是否适用于glmnet或svm。

假设模型的目标函数(例如,残差平方和或对数似然)在观察中是加法的,并且相应的一阶条件因此也是加法的。然后,在某些弱规则条件下,中心极限定理适用于参数估计。这可以扩展到功能中心极限定理,MOB中的参数不稳定性测试基于该定理。

如果这些假设不成立,则p值可能无效,因此可能导致过多或过少的分裂或偏差的分裂变量选择。对于您感兴趣的模型,这是否在实践中发生,我不知道。您必须检查这一点 - 理论上(可能很难)或模拟研究。

从技术上讲,mob()包中partykit的重新实现使得插入新模型变得更加容易。现在需要更少的胶水代码(没有S4类)。有关详细信息,请参阅vignette("mob", package = "partykit")