【发布时间】:2017-02-12 09:15:11
【问题描述】:
我正在使用训练数据生成 ML 决策树。根据我的用例,我需要查看决策树以获取有关数据分布的更多详细信息,例如每个节点的值等。我在 java 中使用 weka 来生成树,我可以使用简单的 print 语句查看树结构,但是weka 没有提供任何 API 来进一步研究树,树只是作为字符串提供。我不想解析字符串,是否有任何其他可用的库可以帮助通过正常遍历将树转换为规则集? 任何其他基于 ML 的库可以根据可用数据生成树并让您窥视树以进行规则提取等分析?
BufferedReader reader = new BufferedReader(
new FileReader("NewData.arff"));
Instances data = new Instances(reader);
reader.close();
data.setClassIndex(data.numAttributes() - 1);
String[] options = new String[1];
options[0] = "-U"; // unpruned tree
J48 tree = new J48(); // new instance of tree
tree.setOptions(options); // set the options
tree.setMinNumObj(100);
tree.buildClassifier(data); // build classifier
System.out.println(tree); // Print tree as string
现在我想窥视树以获得一些结果。请帮助我使用任何可用的库。
【问题讨论】:
标签: java machine-learning classification weka decision-tree