关于Weka中的RandomTree

时间:2011-01-30 21:58:27

标签: weka data-mining

当我在RandomTree配置中观察到minNum字段时,我正在玩weka。我阅读了描述“叶子中实例的最小总重量”。 但是,我真的不明白这意味着什么。

我玩了那个号码,我意识到当我增加它时,由此产生的树的大小减少了。我无法确定为什么会发生这种情况。

任何帮助/参考将不胜感激。

1 个答案:

答案 0 :(得分:2)

这与叶子节点上的最小实例数有关(在决策树中,默认情况下通常为2,如J48)。设置此参数越高,树的一般性就越高,因为具有少量实例的叶子会产生过于细化的树结构。

以下是iris数据集的两个示例,其中显示了-M选项如何影响结果树的大小:

$ weka weka.classifiers.trees.RandomTree -t iris.arff -i

petallength < 2.45 : Iris-setosa (50/0)
petallength >= 2.45
|   petalwidth < 1.75
|   |   petallength < 4.95
|   |   |   petalwidth < 1.65 : Iris-versicolor (47/0)
|   |   |   petalwidth >= 1.65 : Iris-virginica (1/0)
|   |   petallength >= 4.95
|   |   |   petalwidth < 1.55 : Iris-virginica (3/0)
|   |   |   petalwidth >= 1.55
|   |   |   |   sepallength < 6.95 : Iris-versicolor (2/0)
|   |   |   |   sepallength >= 6.95 : Iris-virginica (1/0)
|   petalwidth >= 1.75
|   |   petallength < 4.85
|   |   |   sepallength < 5.95 : Iris-versicolor (1/0)
|   |   |   sepallength >= 5.95 : Iris-virginica (2/0)
|   |   petallength >= 4.85 : Iris-virginica (43/0)

Size of the tree : 17

$ weka weka.classifiers.trees.RandomTree -M 6 -t iris.arff -i

petallength < 2.45 : Iris-setosa (50/0)
petallength >= 2.45
|   petalwidth < 1.75
|   |   petallength < 4.95
|   |   |   petalwidth < 1.65 : Iris-versicolor (47/0)
|   |   |   petalwidth >= 1.65 : Iris-virginica (1/0)
|   |   petallength >= 4.95 : Iris-virginica (6/2)
|   petalwidth >= 1.75
|   |   petallength < 4.85 : Iris-virginica (3/1)
|   |   petallength >= 4.85 : Iris-virginica (43/0)

Size of the tree : 11

作为旁注,随机树依赖于装袋,这意味着存在属性的子采样(随机选择K以在每个节点处分割);然而,与REPTree相反,没有修剪(就像在RandomForest中一样),所以你最终可能会得到非常嘈杂的树木。