Java 利用增益比实现ID3
我已经实现了ID3(使用信息增益选择最佳属性),它工作得很好。然而,现在我正在试验其他的启发式方法,比如增益比。增益比的计算是正确的,但当我使用增益比的值来分割树时,它确实变得奇怪和复杂。Java 利用增益比实现ID3,java,decision-tree,id3,Java,Decision Tree,Id3,我已经实现了ID3(使用信息增益选择最佳属性),它工作得很好。然而,现在我正在试验其他的启发式方法,比如增益比。增益比的计算是正确的,但当我使用增益比的值来分割树时,它确实变得奇怪和复杂。 您必须对增益比值做些什么,还是在使用信息增益时使用它(即选择增益比最大的属性)?首先,请注意GR=IG/IV(其中GR是,IG是信息增益,IV是信息值(也称为内在值)),因此,如果IV=0,GR未定义。这种情况的一个例子是,所有训练示例的属性值都相同 现在,昆兰定义了GR,以抵消IG对多值属性的偏见。然而,他
您必须对增益比值做些什么,还是在使用信息增益时使用它(即选择增益比最大的属性)?首先,请注意
GR=IG/IV
(其中GR
是,IG
是信息增益,IV
是信息值(也称为内在值)),因此,如果IV=0
,GR
未定义。这种情况的一个例子是,所有训练示例的属性值都相同
现在,昆兰定义了GR
,以抵消IG
对多值属性的偏见。然而,他也指出,GR
可能偏向于IV
非常小的属性。为了克服这种偏倚,Quinlan指出,在选择具有最高增益比的属性时,只应考虑其<代码> IG的属性是平均的或更好的。
如果我理解正确,只考虑具有平均值或更好的
IG
属性有助于抵消对具有非常小的IV
属性的偏见,因为IG谢谢,但没有准确回答我的问题:(