我正在做方言文本分类,并且将countVectorizer与朴素贝叶斯一起使用。功能的数量太多,我收集了4万种方言的2万条推文。每个方言都有5000条推文。并且功能总数为43K。我当时在想,也许这就是为什么我会过拟合。因为当我对新数据进行测试时,准确性下降了很多。那么,如何确定功能数量以避免数据过拟合?
答案 0 :(得分:1)
例如,您可以将参数 max_features 设置为5000,这可能有助于过度拟合。您也可以修改 max_df (例如将其设置为0.95)
答案 1 :(得分:1)
测试数据下降的原因是curse of dimensionality。您可以使用某些降维方法来减少这种影响。可能的选择是在sklearn中实现的潜在语义分析。