使用 MOSES 从印地语到英语的统计机器翻译

Avi*_*mar 3 hindi machine-translation moses

我需要使用 MOSES 创建一个印地语到英语的翻译系统。我有一个包含大约 10000 个印地语句子和相应英文翻译的平行语料库。我遵循了基线系统创建页面中描述的方法。但是,就在第一阶段,当我想标记我的印地语语料库并尝试执行

~/mosesdecoder/scripts/tokenizer/tokenizer.perl -l hi < ~/corpus/training/hi-en.hi> ~/corpus/hi-en.tok.hi
Run Code Online (Sandbox Code Playgroud)

,分词器给了我以下输出:

Tokenizer Version 1.1
Language: hi
Number of threads: 1
WARNING: No known abbreviations for language 'hi', attempting fall-back to English version...
Run Code Online (Sandbox Code Playgroud)

我什至尝试过,'hin'但它仍然无法识别该语言。谁能告诉制作翻译系统的正确方法。

alv*_*vas 5

摩西不支持印地语标记化,tokenizer.perl使用nonbreaking_prefix.*文件(来自https://github.com/moses-smt/mosesdecoder/blob/master/scripts/tokenizer/tokenizer.perl#L516

摩西提供的带有不间断前缀的语言是:

  • ca:加泰罗尼亚语
  • cs: 捷克语
  • 德:德语
  • el: 希腊语
  • zh: 英语
  • es: 西班牙语
  • fi:芬兰语
  • fr:法语
  • hu:匈牙利语
  • 是:冰岛语
  • 它:意大利语
  • lv:拉脱维亚语
  • nl:荷兰语
  • pl: 波兰语
  • pt:葡萄牙语
  • ro:罗马尼亚语
  • ru: 俄语
  • sk:斯洛伐克语
  • sl:斯洛文尼亚语
  • sv:瑞典语
  • ta:泰米尔语

来自https://github.com/moses-smt/mosesdecoder/tree/master/scripts/share/nonbreaking_prefixes


然而,所有的希望都没有消失,在使用 Moses 训练机器翻译模型之前,您肯定可以使用其他标记器对您的文本进行标记,尝试谷歌搜索“Hindi Tokenziers”,周围有很多。