基于统计的开源翻译系统介绍

本文介绍了多个开源的统计机器翻译(SMT)系统,包括Moses、Joshua、SilkRoad、SAMT、cdec、Phrasal和Jane。这些系统采用不同方法处理句法结构变化,支持多种翻译模型和特性,适用于不同平台和翻译任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       到目前为止,多个开源的SMT系统已经开发出来,在完成许多翻译任务中有着先进惊人的性能,如中国的英语和阿拉伯语的英文翻译。这些系统中的一些重点使用基于短语的模型(如摩西),且多年来已经已被广泛用于社区,而其他人试图用层次模型(如Joshua)处理不同语音之间的句法结构的变化。虽然这些系统和其使用的方法都能得到很有竞争力的翻译质量,但是他们的侧重点不一样,也有着不同的长处和弱点。以下我将对目前开源的SMT系统做个介绍。

一、Moses

       摩西是一个由英国爱丁堡大学的SMT先锋团队[科恩等人,2007 ]开发的翻译系统。摩西的最新版本支持许多特征和功能。例如,它支持基于短语和基于语法基础的模型(从短语/规则提取解码)。同时,它提供的因素翻译模型(factored translation model)使得系统能够使用在不同层次的多种信息。此外,混淆网络(confusion network)和字格(word lattices)可以用来作为输入,用以减小系统的最佳输出误差。此外,摩西包提供了许多有用的脚本和工具,以支持更多的功能。

http://www.statmt.org/moses/

二、Joshua

       Joshua是一个由约翰霍普金斯大学[李等人的语言和语音处理,2009 ]的语言语音处理中心开发的目前很先进的开源的SMT系统。Joshua中使用到的模型是分层的基于短语的模型[Chiang,2005]中提出的。除基本模型之外,它提供了一些有趣的特性,如SCFGs解码(语法注释),多方法译码和并行训练与Map-reduce。Joshua系统使用Java语言实现,在多平台上都有良好的可扩展性和可移植性。同时,使用Java也为试验新的思路和推进当前最先进的结果提供了更为简单的方法(相比C/C+ +而言)

http://joshua.sourceforge.net/Joshua/Welcome.html

三、SilkRoad

       丝绸之路是一个基于短语的SMT系统,由中国的五所大学和中科院(cas-ict,cas-ia,cas-is,厦门大学和哈工大)研发。丝绸之路系统是亚洲地区最早开源的机器翻译系统,起初的目标是完成中文和其他语种之间的翻译。后增强为对其他语对也可以翻译。它有几个非常有用的部分,例如分词模块,使得用户可以轻松地构建中国对外翻译系统。此外,其提供对多个解码器和规则提取的支持,可自行重组为多个各式各样的小系统。

http://www.nlp.org.cn/project/project.php?projid=14

四、SAMT

       SAMT的是一个由卡内基梅隆大学[zollmann和Venugopal,2006]研发的syntax-augmented的SMT系统。翻译使用目标树来生成规则,虽然没有严格尊重目标语法在解码。该系统的亮点是,它提供了一个简单又有效方法利用SMT句法信息,在好几个翻译任务中都有较好的结果,在有些情况下甚至优于层次短语的系统,又因为SAMT是在Hadoop中实现的,它可以从分布式处理大数据集的跨越计算机集群中得到帮助。

http://www.cs.cmu.edu/zollmann/samt/

五、cdec

       cdec是由克里斯Dyer和他的合作者[戴尔等人开发的一个强大的解码器,2010 ]。cdec的主要特征是采用了一种通用的翻译模型的内部表示,为试验各种模型和算法提供了框架结构。所以CDEC也可用于SMT aligner或更一般的学习框架。Cdec解码器因为是使用C++完成的,其速度非常之快。

http://cdec-decoder.org/index.php?title=MainPage

六、Phrasal

       Phrasal是一个由斯坦福大学的自然语言处理组[Cer等人,2010]开发的系统。除了传统的基于短语模型,它也支持非分层的基于短语的翻译模型,这种扩展对非连续的短语翻译有帮助。以这种方式,它可以更好地泛化看不见的数据,甚至可以处理分层处理模型(例如Joshua)没有处理到的情形。

http://nlp.stanford.edu/phrasal/

七、Jane

       Jane是一个C++实现的基于短语的层次基于短语模型的系统。它是由亚琛工业大学大学自然语言技术和模式识别组[维拉尔等人,2010]研发的。Jane支持许多有趣的功能(如Mira权重调整),其翻译结果也是非常有竞争力的。

http://www-i6.informatik.rwth-aachen.de/jane/

去年,谷歌发布了 Google Neural Machine Translation (GNMT),即谷歌神经机器翻译,一个 sequence-to-sequence (“seq2seq”) 的模型。现在,它已经用于谷歌翻译的产品系统。   虽然消费者感受到的提升并不十分明显,谷歌宣称,GNMT 对翻译质量带来了巨大飞跃。   但谷歌想做的显然不止于此。其在官方博客表示:“由于外部研究人员无法获取训练这些模型的框架,GNMT 的影响力受到了束缚。”   如何把该技术的影响力最大化?答案只有一个——开源。   因而,谷歌于昨晚发布了 tf-seq2seq —— 基于 TensorFlow 的 seq2seq 框架。谷歌表示,它使开发者试验 seq2seq 模型变得更方便,更容易达到一流的效果。另外,tf-seq2seq 的代码库很干净并且模块化,保留了全部的测试覆盖,并把所有功能写入文件。   该框架支持标准 seq2seq 模型的多种配置,比如编码器/解码器的深度、注意力机制(attention mechanism)、RNN 单元类型以及 beam size。这样的多功能性,能帮助研究人员找到最优的超参数,也使它超过了其他框架。详情请参考谷歌论文《Massive Exploration of Neural Machine Translation Architectures》。   上图所示,是一个从中文到英文的 seq2seq 翻译模型。每一个时间步骤,编码器接收一个汉字以及它的上一个状态(黑色箭头),然后生成输出矢量(蓝色箭头)。下一步,解码器一个词一个词地生成英语翻译。在每一个时间步骤,解码器接收上一个字词、上一个状态、所有编码器的加权输出和,以生成下一个英语词汇。雷锋网(公众号:雷锋网)提醒,在谷歌的执行中,他们使用 wordpieces 来处理生僻字词。   据雷锋网了解,除了机器翻译,tf-seq2seq 还能被应用到其他 sequence-to-sequence 任务上;即任何给定输入顺序、需要学习输出顺序的任务。这包括 machine summarization、图像抓取、语音识别、对话建模。谷歌自承,在设计该框架时可以说是十分地仔细,才能维持这个层次的广适性,并提供人性化的教程、预处理数据以及其他的机器翻译功能。   谷歌在博客表示: “我们希望,你会用 tf-seq2seq 来加速(或起步)你的深度学习研究。我们欢迎你对 GitHub 资源库的贡献。有一系列公开的问题需要你的帮助!”   GitHub 地址:https://github.com/google/seq2seq   GitHub 资源库:https://google.github.io/seq2seq/nmt/ 标签:tensorflow  seq2seq  谷歌  机器学习
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值