我有一个通过Weka GUI获得的分类器之一的.model文件。现在我想在某个实例上测试这个模型。谁能告诉我怎么做?
Classifier cModel = (Classifier)new NaiveBayes();
cModel.buildClassifier(isTrainingSet);
我不想像在这段代码中那样反复构建分类器。如何使用.model文件?
// Test the model
Evaluation eTest = new Evaluation(isTrainingSet);
eTest.evaluateModel(cModel, isTrainingSet);
答案 0 :(得分:15)
将您的代码与Omer提供的链接中的代码相结合:
Classifier cModel = (Classifier)new NaiveBayes();
cModel.buildClassifier(isTrainingSet);
weka.core.SerializationHelper.write("/some/where/nBayes.model", cModel);
Classifier cls = (Classifier) weka.core.SerializationHelper.read("/some/where/nBayes.model");
// Test the model
Evaluation eTest = new Evaluation(isTrainingSet);
eTest.evaluateModel(cls, isTrainingSet);
答案 1 :(得分:2)
你也应该训练你的过滤器
如果您想预测新实例而不重建/重新训练您的分类器/过滤器
你喊道:
1)训练他们两个
2)用weka.core.SerializationHelper
保存它们
3)在您的应用程序中重新加载它们并进行预测