【问题标题】:(human) Language of a document(人类)文档的语言
【发布时间】:2010-09-20 09:42:25
【问题描述】:

有没有办法(程序、库)大致知道文档是用哪种语言编写的?

我有一堆混合语言的文本文档 (~500K) 要导入支持 i18n 的 CMS (Drupal)..

我不需要完美匹配,只需要一些猜测。

【问题讨论】:

    标签: nlp classification language-detection


    【解决方案1】:

    似乎有一个 Perl 模块:Lingua::Identify

    保罗。

    【讨论】:

      【解决方案2】:

      有一种非常简单的方法可以做到这一点,因为您拥有需要识别的所有不同语言的语料库数据。这称为 n-gram 建模。不过,我认为 Lingua::Identify 已经这样做了,所以这是你最好的选择,而不是自己实现。

      【讨论】:

        【解决方案3】:

        Google Translation API 很酷,并且有一个 REST 接口。但是我需要向它发送很多 BIG 文档(是的,我可以使用摘录),即使 Google 是 Google,我也不认为这 公平。

        文件也不是我的,我会问我的客户是否可以将它们发送给第三方(即使 G 迟早 会得到它们;))。

        我想我会走 Perl 路径...

        【讨论】:

          【解决方案4】:

          通过在 Google 上搜索“determine language of document”,我发现了许多可以帮助您的不同网站。第一页上的第三个链接最终将我带到了 Google Code API 中的 function,这正是您所需要的。

          【讨论】:

            【解决方案5】:

            我会说你最好的选择是寻找你正在寻找的语言所独有的关键词——文章之类的东西。例如,“Un”将同时出现在西班牙语和法语中,但“une”可以识别为法语,而“unos”例如可以识别为西班牙语。变音符号也很有用——你会在西班牙语和葡萄牙语中看到“ñ”,在法语中看到“ç”,还有其他一些……诸如此类。

            edit - Paul 的解决方案可能是最好的;看起来它使用了我概述的方法,以及一些额外的方法。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2011-02-15
              • 1970-01-01
              • 1970-01-01
              • 2013-04-30
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多