我是机器学习的新手。目前,我正在使用Naive Bayes(NB)分类器,通过NLTK和python将小文本分为正,负或中性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度量:
然后,在将MAXINFOGAIN与前100个和前1000个功能一起使用时,我用增量训练集绘制了火车误差和测试误差:
因此,在我看来,尽管使用FREQENT可以获得最高的准确性,但是最好的分类器是使用MAXINFOGAIN的分类器,对吗?吗?使用前100个功能时,我们会产生偏差(测试错误接近训练错误),添加更多训练示例将无济于事。为了改善这一点,我们将需要更多功能。具有1000个功能,偏差会减少,但误差会增加...这样可以吗?我是否需要添加更多功能?我真的不知道该怎么解释...
再次感谢...