我正在使用 Weka 库在 java 中构建一个文本分类器。
首先我删除停用词,然后我使用词干分析器(例如将汽车转换为汽车)。现在我有 6 个预定义的类别。我在每个类别的 5 个文档上训练分类器。文件的长度相似。
当要分类的文本很短时,结果还可以。但是当文本超过 100 字时,结果变得越来越陌生。
我返回每个类别的概率如下:概率:
[0.0015560238056109177, 0.1808919321002592, 0.6657404531908249, 0.004793498469427115, 0.13253647895234325, 0.01448161348153481]
这是一个非常可靠的分类。
但是当我使用超过 100 个单词的文本时,我会得到如下结果:
概率:[1.2863123678314889E-5, 4.3728547754744305E-5, 0.9964710903856974, 5.539960514402068E-5, 0.002993481218084141, 4.23437119E-5]-4
这太好了。
现在我使用朴素贝叶斯多项式对文档进行分类。我已经阅读了它,发现我可以在较长的文本上表现得奇怪。可能是我现在的问题?
任何人都知道为什么会这样?