停用词意义
- 在自然语言中,存在一些对理解而言意义不大的词,如中文中的“的、个、你”等。
- 系统在处理文本时,可以直接忽略停用词。
- 可以在基本不损失语义的情况下,提升系统的处理效率。
停用词的界定
字典
根据停用词的字典,直接将字典内的词过滤。
单词的文档频率(Document Frequency,DF)
若DF低于或高于一定的阈值,则作为停用词过滤掉。
DF:在文档集合中。有多少篇文档出现过这个词。
- 文档频率过低
这个词对于当前文档集合,影响不大。 - 文档频率过高
这个词可能没有什么特殊含义,对于文本的理解没有太大意义。
停用词处理程序实例
NLTK(Natural Language Toolkit)
- 帮助编程人员进行自然语言的处理。
- 安装,在pycharm中的setting中安装
语料库
使用路透社语料库(reuters)。
# 下载 “路透社” 语料库、
import nltk
#
nltk.download('reuters')
nltk.download('stopwords')
# 查看
from nltk.corpus import reuters, stopwords
# 路透社
print(reuters.fileids())
# 停用词
print(stopwords.fileids())
print(stopwords.words('english'))
作用
通过对路透社的实例过滤得到的单词,可以使用类似停用词字典的方式,对每一篇文章只保留DF满足一定要求的单词。