英语的“停止词汇”列表?

时间:2009-08-02 07:19:16

标签: language-agnostic indexing filtering stop-words nlp

我正在为一些英语文本生成一些统计数据,我想跳过一些不感兴趣的词,例如“a”和“the”。

  • 我在哪里可以找到一些这些无趣的词汇?
  • 这些单词的列表是否与英语中最常用的单词列表相同?

更新:这些显然被称为“停用词”,而不是“跳过词”。

6 个答案:

答案 0 :(得分:21)

投入谷歌的神奇词汇是“停止词汇”。这会出现a reasonable-looking list

MySQL也有built-in list of stop words,但这对我的口味来说太过全面了。例如,在我们的大学图书馆,我们遇到了问题,因为“第三世界”中的“第三”被认为是一个停止词。

答案 1 :(得分:5)

这些被称为stop words,请检查此sample

答案 2 :(得分:5)

根据您正在使用的英语子域,您可能/希望编译自己的停用词列表。一些通用的停用词在域中可能是有意义的。例如。 “是”这个词实际上可能是an abbreviation/acronym in some domain。相反,您可能希望忽略某些特定于域的单词,具体取决于您的应用程序,您可能不希望在通用英语领域中忽略这些单词。例如。如果您正在分析医院报告的语料库,您可能希望忽略“历史”和“症状”等词语,因为它们会在每个报告中找到并且可能没有用(从普通的香草倒置索引角度来看)。

否则,Google返回的列表应该没问题。 Porter Stemmer uses this和Lucene seach引擎实现uses this

答案 3 :(得分:4)

获取有关大型txt语料库中词频的统计信息。忽略频率上的所有单词>一些数字。

答案 4 :(得分:2)

我想我之前使用lucene.net构建了一个搜索应用程序时,我使用了来自here的德语的停用词列表。该网站也包含一个英文列表,该网站上的列表也是lucene项目默认使用的列表。

答案 5 :(得分:2)

通常,这些字词会出现在频率最高的文档中。 假设你有一个全球词汇列表:

{ Word Count }

使用单词列表,如果您将最高计数的单词排序为最低单词,则会有一个图形(计数(y轴)和单词(x轴),它是反向对数函数。所有停止单词将在左侧,“停用词”的停止点将位于最高的一阶导数存在的位置。

此解决方案优于字典尝试:

  • 此解决方案是一种不受语言约束的通用方法
  • 这种尝试可以学习哪些单词被视为“停用词”
  • 此尝试将为非常相似的集合产生更好的结果,并为集合中的项目生成唯一的单词列表
  • 可以在以后重新计算停用词(可以使用缓存和统计确定停用词可能已经从计算时更改)
  • 这也可以消除基于时间或非正式的单词和名称(例如俚语,或者如果你有一堆公司名称作为标题的文件)

字典尝试更好:

  • 查找时间快得多
  • 预先结果
  • 简单
  • 其他人提出了停止词。