在实际使用
机器学习文本分类
算法(比如lda, bayes, k-means)的过程中,会发现文档的预处理非常重要,如果包含太多杂词,则算法效果往往会大打折扣。预处理中,停用词过滤是非常关键的一步,但就目前而言,并没有完全自动一步到位的实现,而且针对不同领域停用词可能还有变化。但是大体有些规律可以遵循,加上人工干预,应该能达到不错的效果。
Runner
Runs
Ran
*he
6. 搜集网络上一些公开的停用词表
下面是一些可行的停用词过滤方法,供参考:
1.词频
将训练集中的高频和低频词汇找出,然后经过人工干预,提出认为可用的词,剩下即为停用词。
2. 文档频率DF
如果一个词在文档集中出现的频率太高,那么可以认为这种词不会具有太大的表征意义,可以过滤。而对于过于低频的,也可以酌情丢掉。
3. 语法剔除,比如:
RunningRunner
Runs
Ran
可以归类为run这个词
4. 过滤包含数字,以及特殊字符的词,比如:
hello'*he
computer2
5. 将所有英文词汇转为lowercase
6. 搜集网络上一些公开的停用词表
http://www.webconfs.com/stop-words.php
http://snowball.tartarus.org/algorithms/english/stop.txt