Я пытаюсь отобразить дерево решений, сгенерированное различными классами, используя классы WEKA в моей собственной программе.В частности, я использую два разных: J48 (реализация C4.5) и RandomTree.У одного есть функция graph (), а у другого - функция toGraph (), которая, похоже, обладает одинаковыми функциями для своих соответствующих классов.
Так как они оба показывают java.lang.String в качестве возвращаемого типа, который я ожидалчтобы увидеть что-то похожее на то, что вы видите при использовании приложения Explorer:
act = STRETCH
| size = SMALL
| | Color = YELLOW
| | | age = ADULT : T (1/0)
| | | age = CHILD : F (1/0)
| | Color = PURPLE
| | | age = ADULT : T (2/0)
| | | age = CHILD : F (1/0)
| size = LARGE
| | age = ADULT : T (4/0)
| | age = CHILD : F (2/0)
act = DIP : F (8/0)
Вместо этого я получаю что-то вроде этого:
digraph Tree {
edge [style=bold]
N13aaa14a [label="1: T"]
N13aaa14a->N268b819f [label="act = STRETCH"]
N268b819f [label="2: T"shape=box]
N13aaa14a->N10eb017e [label="act = DIP"]
N10eb017e [label="3: F"]
N10eb017e->N34aeffdf [label="age = CHILD"]
N34aeffdf [label="4: F"shape=box]
N10eb017e->N4d20a47e [label="age = ADULT"]
N4d20a47e [label="5: T"shape=box]
}
Это что-то уникальное для библиотек WEKA или это какое-тотип стандартного формата Java?Это похоже на некоторые из JSON-материалов, которые я видел, работая над другим проектом, но я так и не познакомился с ним.
Есть ли простой способ написать функцию для отображения ее в более понятном для человека формате?