我正在尝试基于文本挖掘建立一个预测模型。我对模型中应该设置多少特征感到困惑。我的分析中有1000份文档(因此语料库大约会占用700份)。语料库中的术语数量大约为20000,因此超过了文档数量(P >> N)。拥有如此多的特征有意义吗?
在使用HashingTF方法时,特征的数量应该高于语料库中术语的总数吗?还是应该设定得更少一些(比如512个特征)?
我有点困惑。
回答:
假设你只是在谈论使用单个词作为特征,你是对的,我们希望p < n。(由于你似乎已经了解这个意思,这里不引用来源。)
最后,为了达到p < n,你可以选择以下方法:
-
选择计数大于等于k的特征。测量不同k值的性能,并选择最佳的k,或者-
-
使用所有特征,但应用L1正则化。
如果你像提到的使用哈希方法,你应该将特征数量设置得比512还要少,因为 –
- n=700和p=512仍然过于偏斜。
- 通常,只有很少的几个词是重要的。在你的情况下,甚至可能少于50个。你可以尝试哈希桶的数量设置为{10, 20, 50, 100, 500, 1000},然后选择最佳的一个。
祝你好运!