使用 Stanford NLP 检测语言

Detecting language using Stanford NLP

我想知道是否可以使用 Stanford CoreNLP 来检测句子是用哪种语言写的?如果是这样,这些算法的精确度如何?

几乎可以肯定,目前 Stanford COreNLP 中没有语言识别。 'almost' - 因为不存在更难证明。

编辑:不过,以下是间接证据:

  1. main 上都没有提到语言识别 页,也不CoreNLP page, nor in FAQ(虽然有 一个问题 'How do I run CoreNLP on other languages?'),也不在 2014 CoreNLP 作者的论文
  2. 组合多个 NLP 库的工具 包括 Stanford CoreNLP 使用另一个语言库 标识,例如 DKPro Core ASL;还有其他 用户 谈论语言识别和 CoreNLP 没有提到这个能力
  3. CoreNLP 的源文件包含 Language 类,但与语言识别无关 - 你可以 手动检查 'language' 字词 here
  4. 的全部 84 次出现

尝试 TIKA, or TextCat, or Language Detection Library for Java(他们报告“53 种语言的精度超过 99%”)。

一般来说,质量取决于输入文本的大小:如果它足够长(比如说,至少有几个词并且不是特别选择的),那么精确度可以相当不错 - 大约 95%。

Standford CoreNLP 没有语言 ID(至少现在没有),请参阅 http://nlp.stanford.edu/software/corenlp.shtml


关于语言 detection/identification 工具的负载更多。但一定要对报告的精度持保留态度。它通常被狭义地评估,受限于:

  • 修复语言列表,
  • 大量的测试句子和
  • 使用相同的语言和
  • 训练实例与测试实例的比例偏斜。

值得注意的语言 ID 工具 包括:

来自 meta-guide.com 的详尽列表,参见http://meta-guide.com/software-meta-guide/100-best-github-language-identification/


值得注意的语言识别相关共享任务(含training/testing数据)包括:


另请参阅