2017-08-24 75 views
0

我最近一直在使用RPART并遇到了一个我不明白的计算。Rpart改进得分与信息增益

在处理信息增益时,如何计算“改善”或变量重要性(它们似乎与我的测试相同)。

作为一个虚拟的例子,我试着学习下表:

happy,class 
    yes,p 
    no,n 

用命令:

fit <-rpart(class ~ happy,data=train,parms = list(split="information"),minsplit=0)

很简单,并与根,然后将每个返回预期树包含一个元素的叶子。

如果这变得令人困惑,那么对于拆分给出的改进是1.386294。

我期望这里的改进是1(从熵1到熵0),我错过了什么?

+0

嗨格雷格,欢迎来到stackoverflow!请提供一个[可重现的例子](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example),以便人们可以帮助你 –

+0

嗨朱利安,我清理了对统计数据如何计算的原始后期总体见解也很受欢迎! – Greg

+0

rpart是CART的一个实现。它使用GINI来决定节点分裂,而不是熵。 – G5W

回答

0

那么,要回答这个问题,这是因为RPART正在使用自然日志。

因此,似乎改进分数是由节点中的元素数量缩放的熵的改进。

根节点的熵是:-ln(1/2)* 1/2 * 2 + -ln(1/2)* 1/2 * 2 = -ln(1/2)* 2 1.38 。在叶节点的熵都是0.

为什么他们使用自然日志,我不知道。