2011-05-18 46 views
4

作为我的学术研究项目的一部分,我正在尝试构建一个应用程序,其中我将从Web中检索一组网址。任务是将这些网址中的每一个归类到某个类别中。使用lingpipe分类

例如,下面的URL是关于板球http://www.espncricinfo.com/icc_cricket_worldcup2011/content/current/story/499851.html 如果我给这个特定的URL分类器,它应该给输出类别作为“体育”。

为此,我使用lingpipe分类器。我遵循分类教程并运行演示文件夹中的演示。我已经下载了从以下链接下载的20个新闻数据集。 http://people.csail.mit.edu/people/jrennie/20Newsgroups

后来,我将训练样本大小从20减少到8,并运行分类演示。它可以成功地训练数据并可以测试数据。

但问题是,每次我想测试文档类别时,是否需要训练分类器? 如果我运行文件分类,则需要4分钟的时间来进行培训和测试数据。

我可以存储一次训练过的数据并分几次执行分类吗?

+0

顺便说一下,S.O.要求你不要签名。 (这也被认为是不好的形式,“请尽量抽空来帮助我”)。 [查看常见问题](http://stackoverflow.com/faq) – Crisfole 2013-01-07 18:21:28

回答

4

您需要将训练过的模型序列化到磁盘,然后您可以反序列化它们并让分类器准备就绪。

一旦你有一个分类培训了使用

AbstractExternalizable.compileTo(classifier,modelFile); 

要写入模型到磁盘。

要阅读你将需要

AbstractExternalizable.readObject(modelFile); 

看那Java文档的AbstractExternalizable

由于 已被编译,因此该模型将无法接受其他培训活动。