我是机器学习的新手。目前,我使用 NLTK 和 python 使用朴素贝叶斯 (NB) 分类器将 3 类中的小文本分类为正面、负面或中性。
在进行一些测试后,使用由 300,000 个实例(16,924 个正例、7,477 个负例和 275,599 个中性例)组成的数据集,我发现当我增加特征数量时,准确率会下降,但正类和负类的准确率/召回率会上升。这是 NB 分类器的正常行为吗?我们可以说使用更多功能会更好吗?
一些数据:
Features: 50
Accuracy: 0.88199
F_Measure Class Neutral 0.938299
F_Measure Class Positive 0.195742
F_Measure Class Negative 0.065596
Features: 500
Accuracy: 0.822573
F_Measure Class Neutral 0.904684
F_Measure Class Positive 0.223353
F_Measure Class Negative 0.134942
提前致谢...
编辑 2011/11/26
我用朴素贝叶斯分类器测试了 3 种不同的特征选择策略(MAXFREQ、FREQENT、MAXINFOGAIN)。首先是每个类别的准确性和 F1 度量:

然后,当使用具有前 100 个和前 1000 个特征的 MAXINFOGAIN 时,我用增量训练集绘制了训练误差和测试误差:
所以,在我看来,虽然使用 FREQENT 实现了最高准确度,但最好的分类器是使用 MAXINFOGAIN 的分类器,对吗?当使用前 100 个特征时,我们有偏差(测试误差接近于训练误差)并且添加更多训练示例将无济于事。为了改善这一点,我们将需要更多功能。有了 1000 个特征,偏差会减少,但误差会增加……这样可以吗?我是否需要添加更多功能?我真的不知道如何解释这个......
再次感谢...


