我正在使用朴素贝叶斯模型将文档分类为正面和负面标签。对于大约72个文档的小型平衡数据集,它似乎工作得很好。但是当我添加更多标记为负面的文档时,分类器会将所有内容预测为负面。
我将数据集分为80%的训练集和20%的测试集。添加更多标记为负面的文档确实使数据集变得不平衡。可能是这种不平衡导致分类器将每个测试文档都预测为负面?我使用的是TextBlob/nltk实现的朴素贝叶斯模型。
有什么想法吗?
回答:
是的,可能是你的数据集使分类器产生了偏见。如果没有非常明显的信号告诉分类器选择哪个类别,它选择最常见的类别(在你的情况下是负面)是合理的。你有没有尝试过绘制类别分布与准确率的关系图?另一个可以尝试的方法是k折交叉验证,这样你就不会碰巧抽取到一个有偏见的80-20训练-测试分割。