4

我正在创建一个用于检测短文本语言的应用程序,平均少于 100 个字符并包含俚语(例如推文、用户查询、短信)。

我测试的所有库都适用于普通网页,但不适用于非常短的文本。迄今为止提供最佳结果的库是 Chrome 的语言检测 (CLD) 库,我必须将其构建为共享库。

当文本由非常短的单词组成时,CLD 会失败。在查看 CLD 的源代码后,我发现它使用 4-gram,这可能是原因。

我现在正在考虑的提高准确性的方法是:

  • 删除品牌名称、数字、网址和“软件”、“下载”、“互联网”等词
  • 使用字典 当文本包含多个超过阈值的短单词或包含的单词太少时。
  • 该词典是根据维基百科新闻文章 + hunspell 词典创建的。

什么数据集最适合这项任务?我该如何改进这种方法?

到目前为止,我正在使用 EUROPARL 和 Wikipedia 文章。我在大部分工作中都使用 NLTK。

4

3 回答 3

6

极短文本的语言检测是当前研究的主题,因此无法给出确凿的答案。Twitter 数据的算法可以在Carter、Tsagkias 和 Weerkamp 2011中找到。另请参阅那里的参考资料。

于 2011-04-10T22:17:43.760 回答
5

是的,这是一个研究课题,并且已经取得了一些进展。

例如,http://code.google.com/p/language-detection/上“语言检测”的作者为短消息创建了新的配置文件。目前,它支持 17 种语言。

我在大约 500 条推文的集合中将它与 Bing 语言检测器进行了比较,这些推文大多是英语和西班牙语。准确度如下:

   Bing = 71.97%
   Language-Detection Tool with new profiles = 89.75%

有关更多信息,您可以查看他的博客: http ://shuyo.wordpress.com/2011/11/28/language-detection-supported-17-language-profiles-for-short-messages/

于 2012-01-19T18:29:54.307 回答
-2

也省略科学名称或药物名称等。你的方法对我来说似乎很好。我认为维基百科是创建字典的最佳选择,因为它包含标准语言。如果你没有时间用完,你也可以使用报纸。

于 2012-04-11T09:59:47.423 回答