21

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

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

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

4

6 回答 6

21

放入谷歌的神奇词是“停用词”。这出现了一个看起来合理的列表

MySQL 也有一个内置的停用词列表,但这对我来说太全面了。例如,在我们的大学图书馆,我们遇到了问题,因为“第三世界”中的“第三”被认为是停用词。

于 2009-08-02T07:23:54.223 回答
5

这些被称为停用词,请查看此示例

于 2009-08-02T07:23:01.743 回答
5

根据您使用的英语子域,您可能需要/希望编译自己的停用词列表。一些通用的停用词在域中可能是有意义的。例如,“are”这个词实际上可能是某个领域的缩写/首字母缩略词。相反,您可能希望根据您的应用程序忽略一些特定于域的单词,而这些单词在一般英语领域中您可能不想忽略。例如,如果您正在分析医院报告的语料库,您可能希望忽略诸如“历史”和“症状”之类的词,因为它们会在每个报告中找到并且可能没有用(从普通的倒排索引的角度来看)。

否则,谷歌返回的列表应该没问题。Porter Stemmer使用这个,Lucene 搜索引擎实现使用这个

于 2009-08-05T19:02:56.683 回答
4

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

于 2009-08-02T07:24:59.040 回答
2

我想我在不久前使用 lucene.net 构建搜索应用程序时使用了德语的停用词列表。该站点也包含一个英语列表,并且该站点上的列表显然也是 lucene 项目默认使用的列表。

于 2009-08-02T07:59:08.613 回答
2

通常,这些词会以最高频率出现在文档中。假设您有一个全局单词列表:

{ Word Count }

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

此解决方案比字典尝试更好:

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

字典尝试更好:

  • 查找时间要快得多
  • 结果已预先缓存
  • 这很简单
  • 其他人想出了停用词。
于 2009-10-30T22:07:14.623 回答