我想使用Apache Mahout和使用朴素贝叶斯分类器对一堆文档进行分类。我进行所有预处理并将我的训练数据集转换为特征向量,然后训练分类器。现在我想将一堆新实例(待分类实例)传递给我的模型,以便对它们进行分类。
但是,我认为必须对我的待分类实例和训练数据集进行预处理?如果是这样的话,为什么我可以在现实场景中使用分类器,在我构建模型的时候我不会有待分类的实例?
Apache Spark怎么样?你在那里工作吗?我可以制作分类模型并使用它来对以后看不见的实例进行分类吗?
答案 0 :(得分:0)
从Mahout 0.10.0开始,Mahout提供了Spark支持的Naive Bayes实现,可以从CLI,Mahout shell或嵌入到应用程序中运行:
http://mahout.apache.org/users/algorithms/spark-naive-bayes.html
关于培训/测试集之外的新文档的分类,这里有一个教程:
http://mahout.apache.org/users/environment/classify-a-doc-from-the-shell.html
其中解释了如何使用trival java native String方法进行标记化,使用字典和训练/测试集中的df-count对看不见的文本进行矢量化和分类。
请注意,本教程旨在从Mahout-Samsara环境的spark-shell中使用,但基本思想可以调整并嵌入到应用程序中。