我在R中构建了一个玩具随机森林模型(使用来自caret包的German Credit数据集),并在PMML 4.0中导出它,并使用Cascading Pattern库部署到Hadoop上。
我遇到了一个问题,Cascading Pattern对相同数据的评分(在二进制分类问题上)与R中的相同模型不同。在200个观察中,有2个得到了不同的分数。
为什么会这样呢?这是否是由于随机森林的执行情况不同造成的?
发布于 2014-10-28 06:27:40
不同的是,似乎是由于在R和Cascading Pattern中实现随机森林(以及后来我尝试过的openscoring )在树投票中的关系方面的不同--也就是说,当构建了偶数的树(例如,500棵树),并且精确地将应用程序分类为Good,而另一半被归类为Bad时,对这些情况的处理就不同了。通过生长和奇数(501)树数来解决这个问题。
发布于 2014-10-26 20:10:06
我认为最有可能的解释是,这两个库在PMML中不完全支持TreeModel。也许一个人只支持一个特性子集,而忽略了那些它不理解的特性。这可能会导致不同的得分。
在这两种情况下,我还会反复检查上游解析代码是否相同。也许一个缺失的值在上游被不同的对待。
发布于 2014-10-29 14:37:00
决策树是不稳定的学习者,对输入参数的变化非常敏感。
https://datascience.stackexchange.com/questions/2298
复制相似问题