我在java中实现了KNN分类器,结果很奇怪。如果我对数据集示例亚马逊书评进行情感分析,我得到了 55% 的准确率。从 100 个测试文档中,55 个正确分类为负面或正面评论,45 个错误分类。但如果我将 KNN 用于类别分类示例相机或书籍,那么我的准确率达到 95%。
有一些解释我的代码是错误的?任何想法?
我在java中实现了KNN分类器,结果很奇怪。如果我对数据集示例亚马逊书评进行情感分析,我得到了 55% 的准确率。从 100 个测试文档中,55 个正确分类为负面或正面评论,45 个错误分类。但如果我将 KNN 用于类别分类示例相机或书籍,那么我的准确率达到 95%。
有一些解释我的代码是错误的?任何想法?
@Christopher Pfohl 是对的。它们是不同的方法,对您来说有一个关键区别。一般来说,情感分析(基于简单的词袋)比您的案例中的类别分类要复杂得多。
顺便说一句,只是一个澄清,55%不是精度,而是精度。(更多信息:http ://en.wikipedia.org/wiki/Accuracy_and_precision#In_binary_classification )