统计翻译系统中的开源工具们

(根据 计算机世界/2007年/10月/22日/第B15版 文章改编)

开源工具对统计翻译带来的意义不必多说,想必也都能体会出来。Brown等提出IBM模型是在20世纪90年代初,而IBM模型广泛使用和研究的年份竟然是1999年以后!促成这种想象的原因竟是开源工具包的出现!开源工具的出现,降低了研究的准入门槛,使得我们可以正真意义上的站在巨人的肩膀上,来做进一步的探索!感谢那些开源工具们,记住他们,利用他们,让我们的研究更上一层楼!

一、开源工具

1. 首个开源统计机器翻译工具包Egypt (包含著名的GIZA++)

Egypt开发的统计机器翻译工具包包括4个模块。其中,用于训练词语对齐的模块GIZA现在仍然被广泛使用。GIZA++是GIZA的改进版,GIZA++实现了IBM 公司提出的5个模型,其主要思想是利用EM算法对双语语料库进行迭代训练,由句子对齐得到词语对齐。GIZA是独立于语言的,能够对任何两种语言进行训练,这也是统计机器翻译的优点之一。现在几乎所有的统计机器翻译系统都利用这一工具进行词语对齐的训练。(值得一提的是GIZA++是由统计机器翻译牛人——弗朗茨·约瑟夫·欧赫(Franz Joseph Och) ,该牛人领导的翻译团队多次在NIST测评中夺得第一,而当这位牛人遇到google公司,更是说如虎添翼)

2.  语言模型训练工具SRILM 

SRILM是一个建立和使用统计语言模型的开源工具包,从1995年开始由SRI 口语技术与研究实验室(SRI Speech Technology and Research Laboratory)开发,现在仍然不断推出新版本,被广泛应用于语音识别、机器翻译等领域。这个工具包包含一组C++类库、一组进行语言模型训练和应用的可执行程序等。利用它可以非常方便地训练和应用语言模型。给定一组连续的词,调用SRILM提供的接口,可以得到这组词出现的概率。

3.  机器翻译的自动评测工具Mteval 

在一些著名的统计机器翻译国际评测中普遍使用自动评测与人工评测相结合的方法,例如美

国国家技术和标准研究所(NIST)举行的评测。Mteval便是他们开发的自动评测工具,最新版本是mteval-11b.pl,是用Perl语言写成的。

4.最大熵模型训练工具YASMET

用于训练最大熵的训练工具,也是由Franz Joseph Och开发的,真正意义上来说,这属于一个机器学习的工具包。

二、开源系统

1. 首个基于短语的统计机器翻译系统“法老”(Pharaoh)

“法老”是较早公开的统计机器翻译系统,由美国南加州大学信息科学实验室(Information Science Institute)的菲利普·科恩(Philipp Koehn)在2004年做博士论文期间编写的。“法老”包括两大部分: 训练和解码。训练过程用来从语料库中获得统计知识。它利用了已有的开源软件GIZA++和SRILM,GIZA++用来训练词语对齐,SRILM训练语言模型,但解码没有公开源代码。“法老”原理简单,易于使用,它的出现对于推动机器翻译研究起到了非常大的作用。

2. 中国首个开源的统计机器翻译系统丝路(SilkRoad)

“法老”的出现揭开了统计机器翻译的神秘面纱,然而其核心部分——解码器的源码仍然没有公开。为此,中国的研究人员联合开发了一个完全开放源代码的统计机器翻译系统——“丝路”。该系统由中国的五家研究机构和高校(中科院计算所、中科院自动化所、中科院软件所、厦门大学、哈尔滨工业大学)联合开发,并在2006年中国第二届统计机器翻译研讨会上发布。“丝路”包括以下模块: 语料预处理及后处理模块“仙人掌”、词语对齐模块“楼兰”、短语抽取模块“胡杨”、以及三个解码器(“骆驼”、“绿洲”和“商队”)。这是第一次将一个完整的统计机器翻译系统公开,极大地促进了国内统计机器翻译的快速发展。

3.  摩西(Moses)

“摩西”是“法老”的升级版本,它增加了许多功能,是由英国爱丁堡大学、德国亚琛工业

大学等八家单位联合开发的一个基于短语的统计机器翻译系统。来自这些单位的研究人员于2006年在约翰霍普金斯大学召开了一次研讨会,利用6个星期的时间共同开发了这一系统。整个系统用C++语言写成,从训练到解码完全开放源代码,可以运行在Windows平台和Linux平台。顺便提一句,现在大家基本上都在使用的就是这套Moses的翻译系统,基本上属于翻译领域里的一个baseline了。

4.小牛(Niutrans)

由中国的东北大学自然语言处理实验室开发。系统全部由C++开发,运行速度快,占用内存少。但目前该系统仅支持基于(层次)短语/基于句法的模型。作为国内翻译系统的后起之秀,我也希望小牛(Niutrans)能做的越来越好!

时间: 2024-07-31 16:00:54

统计翻译系统中的开源工具们的相关文章

支付系统中的常用工具

StringUtils.java 处理常用字符串:判断是否为空isEmpty(String value); 按字典排序并拼接参数:createLinkString(Map<String,String> params); 1 import java.util.ArrayList; 2 import java.util.Collections; 3 import java.util.List; 4 import java.util.Map; 5 6 public class StringUtils

怎样在Windows系统中获取开源软件SVN更多的Revision记录

在前一篇日志中,我介绍了怎样通过一些工具基于开源软件SVN获取某个方法修改的次数,不过可以注意到,像Tortoise SVN的图形界面只能显示最近100次Revision,如果想要度量更大时间范围,需要借助其他工具.在这里:http://subversion.apache.org/packages.html 实际上提供了很多操作系统下的SVN命令行工具,例如在Windows下,我们可以使用Win32Svn这样一个工具. 在设置好环境变量后,并在对应目录下,我们只需要在cmd中输入: svn lo

在Linux CentOS6系统中安装开源CMS程序OpenCart的教程

OpenCart是一个开放源码的店面,旨在为您提供灵活和细粒度的在线店面管理.在开始之前,您应该已经在您的Linode上设置了一个LAMP堆栈.您还应该设置主机名. PHP设置 为了使用OpenCart,您需要确保正确地配置了PHP.确保下面的设置与你/etc/php.ini 文件中的值相匹配: /etc/php.ini register_globals = Off magic_quotes_gpc = Off file_uploads = 1 session_auto_start = 0 此外

一些开源的统计机器翻译系统简要介绍

最近打算深入了解一下机器翻译系统的具体功能模块,以东北大学的Niutrans为蓝本,其用户手册里有一些对其他开源的统计机器翻译系统的介绍,觉得也不错,就简要地记一下发在这里. Moses:Edinburgh大学SMT小组开发.最新版本的同时支持基于短语的以及基于句法的模型(从短语,规则的提取到解码).提供了分解的翻译模型,使得信息在不同层之间利用.还有混淆网络以及词格作为输入的使用,减弱了在ambiguous upstream 系1-best输出的错误.此外Moses的package提供了很多有

JVM 性能调优实战之:使用阿里开源工具 TProfiler 在海量业务代码中精确定位性能代码

本文是<JVM 性能调优实战之:一次系统性能瓶颈的寻找过程> 的后续篇,该篇介绍了如何使用 JDK 自身提供的工具进行 JVM 调优将 TPS 由 2.5 提升到 20 (提升了 7 倍),并准确定位系统瓶颈:我们应用里静态对象不是太多.有大量的业务线程在频繁创建一些生命周期很长的临时对象,代码里有问题.那么问题来了,如何在海量业务代码里边准确定位这些性能代码?本文将介绍如何使用阿里开源工具 TProfiler 来定位这些性能代码,成功解决掉了 GC 过于频繁的性能瓶颈,并最终在上次优化的基础

开发者和系统管理者最喜爱的开源工具Vim 起步学习的五个技巧

多年来,我一直想学 Vim.如今 Vim 是我最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.我说的学习,指的是真正意义上的学习.想要精通确实很难,所以我只想要达到熟练的水平. 我使用了这么多年的 Linux ,我会的也仅仅只是打开一个文件,使用上下左右箭头按键来移动光标,切换到插入模式,更改一些文本,保存,然后退出.但那只是 Vim 的最最基本的操作.我的技能水平只能让我在终端使用 Vim 修改文本,但是它并没有任何一个我想象中强大的文本处理功能.这样我完全无法用 V

合约广告系统-常用广告系统开源工具

常用广告系统开源工具 常用广告系统开源工具 是否可以用开源工具快速地搭建广告系统?可以肯定的说,基本是可以的.很多重要的模块,如上章所讲的architecture里的模块很多都可以借助开源工具实现. 在实际的广告系统中我们会用到很多的开源工具.下面我将分别讲述几个开源开具.基本上所有的大的广告系统公司都要使用Hadoop平台,除了google.Hadoop是广告平台中建模的基础,Hadoop有很多子项目,有的子项目与Hadoop有密切的联系,有的子项目仅是在Hadoop框架体系下深挖出来的一些I

ArcMap2Sld:一个将MXD中图层配图样式转换为OGC的SLD文件的开源工具

在一个项目中,用户采用GeoServer做为GIS服务器(原因嘛当然是免费能省钱,经过验证可能还会在性能和稳定性等表现力也有优越性),但是手上收集的数据都是ESRI格式的,这倒不打紧,因为GeoServer直接能够支持ESRI的shape file和ArcSDE两种数据格式,要命的是用户的配图也是用ESRI,mxd中40个左右的图层组织和专题图样式都配好了.在网上查了大部分关于在GeoServer中发布服务的样式都是建议在uDig中重新配置,然后导出SLD文件,添加到GeoServer中.由于时

【翻译mos文章】Linux x86 and x86-64 系统中的SHMMAX最大值

Linux x86 and x86-64 系统中的SHMMAX最大值 参考原文: Maximum SHMMAX values for Linux x86 and x86-64 (文档 ID 567506.1) 目标: 问题1:32-bit (x86) Linux system 系统中的最大值? 问题2:64-bit (x86-64) Linux system系统中的最大值? 解决方案: 答案1: Oracle Global Customer Support 官方推荐 SHMMAX 的最大值是小于