朴素贝叶斯分类中的未知单词

问题描述 投票:2回答:1

如何使用未知单词测试文本分类问题?在训练模型时,我们可以使用平滑技术(Laplace add-1)来确保任何单词每个类至少可以获得1个计数。

那么,在测试阶段呢?如果训练数据中没有出现单词,那么处理它的最佳方法是什么?简单地跳过它,或者给它一个1的出现?

谢谢,任何建议或意见。具体来说,我使用的是朴素贝叶斯分类器。

machine-learning smoothing text-classification
1个回答
2
投票

当你对一个实例进行分类时,想想发生了什么,如果你对一个看不见的特征进行add-1平滑,那么你只需要乘以一个非常小的概率(1 / vocabSize)(或者添加一个非常的日志)小概率)到你的累积分数。如果您正在跳过看不见的功能,则分数不会发生任何变化。

所以,一般来说,你的测试数据中看不见的特征不应该对你的分类决定有所影响 - 你对它没有任何了解,因为你没有在训练中看到它,所以在平滑的情况下你会成倍增加(或者为每个班级的所有分数添加相同的小(log-)概率,或者您只是忽略所有课程分数。

如果您不相信,只需尝试两者,看看它是否有任何区别。

© www.soinside.com 2019 - 2024. All rights reserved.