我已经编写了代码来创建模型并保存它。它工作正常。我的理解是,默认情况下,数据被分成 10 折。我希望在创建模型时将数据分成两组(训练和测试)。在 Weka UI 上,我可以使用“百分比拆分”单选按钮来完成。我想知道如何通过代码来做到这一点。我希望它分为两部分,80% 是训练,20% 是测试。这是我的代码。
FilteredClassifier model = new FilteredClassifier();
model.setFilter(new StringToWordVector());
model.setClassifier(new NaiveBayesMultinomial());
try {
model.buildClassifier(trainingSet);
} catch (Exception e1) { // TODO Auto-generated catch block
e1.printStackTrace();
}
ObjectOutputStream oos = new ObjectOutputStream(
new FileOutputStream(
"/Users/me/models/MyModel.model"));
oos.writeObject(model);
oos.flush();
oos.close();
这里的 trainingSet 已经填充了 Instances 对象。有人可以帮我弄这个吗?
提前致谢!