作为我的学术研究项目的一部分,我正在尝试构建一个应用程序,在该应用程序中,我将从web上检索一组urls。任务是将这些urls中的每一个分类到某个类别中。
例如,下面的网址是关于板球http://www.espncricinfo.com/icc_cricket_worldcup2011/content/current/story/499851.html的,如果我给分类器这个特定的网址,它应该输出类别为“体育”。
为此,我使用了lingpipe分类器。我已经按照分类教程并运行了demo文件夹中的demo。我已经从下面的链接下载了20个新闻数据集。http://people.csail.mit.edu/people/jrennie/20Newsgroups
后来,我将训练样本大小从20减少到8,并运行了分类演示。它可以成功地训练数据,也可以测试数据。
但问题是,我是否需要在每次测试文档类别时都训练分类器?如果我对文档进行分类,那么训练和测试数据都需要4分钟。
我可以将训练过的数据存储一次,然后进行多次分类吗?
发布于 2011-05-27 07:12:04
您需要将经过训练的模型序列化到磁盘,然后可以对它们进行反序列化,并准备好分类器。
一旦你训练好了一个分类器,就可以使用
AbstractExternalizable.compileTo(classifier,modelFile);将模型写入磁盘。
要读入,您需要
AbstractExternalizable.readObject(modelFile);看看AbstractExternalizable的Java文档。
该模型将无法接受其他训练事件,因为它已被编译。
https://stackoverflow.com/questions/6040957
复制相似问题