繁体   English   中英

JAVA的WEKA决策树格式不可读

[英]WEKA Decision Tree from JAVA is not in a readable format

我正在尝试从JAVA程序中打印树。 这就是我得到的结果。 我知道它是“点”格式的,可​​以使用Graphviz将其转换为图形格式,但是即使使用Graphviz,我仍然得到那些奇怪的字符(例如N28c97a5仍然是图形的一部分。 如何将其转换为ASCII?

我想得到这样的东西

随机树

attribute_2 < 1759.5
|   attribute_2 < 1638.5
|   |   attribute_3 < 1656.5
|   |   |   attribute_0 < 2027.5 : A (6/0)
|   |   |   attribute_0 >= 2027.5 : B (3/0)
|   |   attribute_3 >= 1656.5 : A (28/0)
|   attribute_2 >= 1638.5

但我实际上得到了

digraph Tree {
edge [style=bold]
N28c97a5 [label="1: A"]
N28c97a5->N6659c656 [label="attribute_2 < 1978"]
N28c97a5->N6d5380c2 [label="attribute_2 >= 1978"]
N6d5380c2 [label="2: A"]
N6d5380c2->N45ff54e6 [label="attribute_3 < 1682"]
N45ff54e6 [label="3: B"]
N45ff54e6->N2328c243 [label="attribute_3 < 1595"]
N45ff54e6->Nbebdb06 [label="attribute_3 >= 1595"]
Nbebdb06 [label="4: B"]
Nbebdb06->N7a4f0f29 [label="attribute_3 < 1676.5"]
N7a4f0f29 [label="5: B"]
N7a4f0f29->N45283ce2 [label="attribute_0 < 2010.5"]
N45283ce2 [label="6: B"]
N45283ce2->N2077d4de [label="attribute_3 < 1622.5"]
N2077d4de [label="7: B"]
N2077d4de->N7591083d [label="attribute_1 < 2112.5"]
N2077d4de->N77a567e1 [label="attribute_1 >= 2112.5"]
N45283ce2->N736e9adb [label="attribute_3 >= 1622.5"]
N7a4f0f29->N6d21714c [label="attribute_0 >= 2010.5"]
Nbebdb06->N108c4c35 [label="attribute_3 >= 1676.5"]
N6d5380c2->N4ccabbaa [label="attribute_3 >= 1682"]

}

toGraph方法以Graphviz格式生成输出,适用于使用Graphviz的dot程序生成树的图像。

您在Weka GUI输出窗口中看到的,对于RandomTree分类器而言,生成人类可读输出的方法是toString 对于某些分类器类型,例如J48,可能还有您想要的toSummaryString方法。

您可以在Javadoc中检查Weka类的方法和属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM