如何使用java代码在weka中用新实例测试现有模型?

发布于 2024-11-28 10:00:27 字数 381 浏览 0 评论 0原文

我有一个通过 Weka GUI 获得的分类器之一的 .model 文件。现在我想在某些实例上测试这个模型。谁能告诉我该怎么做?

Classifier cModel = (Classifier)new NaiveBayes();  
cModel.buildClassifier(isTrainingSet);  

我不想像这段代码一样一次又一次地构建分类器。如何使用 .model 文件执行此操作?

 // Test the model
 Evaluation eTest = new Evaluation(isTrainingSet);
 eTest.evaluateModel(cModel, isTrainingSet);

I have a .model file of one of the classifier which I got through Weka GUI. Now I would like to test this model on some instance. Can anyone tell me how to do this ?

Classifier cModel = (Classifier)new NaiveBayes();  
cModel.buildClassifier(isTrainingSet);  

I don't want to build classifier again and again like in this code. How to do this using .model file?

 // Test the model
 Evaluation eTest = new Evaluation(isTrainingSet);
 eTest.evaluateModel(cModel, isTrainingSet);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浮生未歇 2024-12-05 10:00:27

将您的代码与 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);

Combining your code with the code found in the link provided by 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);
扭转时空 2024-12-05 10:00:27

你也应该训练你的过滤器
如果您想预测新实例而不重建/重新训练您的分类器/过滤器
你应该:
1)训练他们两个
2)使用weka.core.SerializationHelper保存它们
3)将它们重新加载到您的应用程序中并进行预测

you shoud train your filter too
if you want to predict new instances without rebuild /retrain your classifier / filter
you shoud:
1) train both of them
2) save them with weka.core.SerializationHelper
3) reload them in your application and make prediction

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文