Z-默特

一个完全可配置的开源工具

机器翻译系统的最小错误率训练

 

奥马尔F. 扎丹

约翰霍普金斯大学

 

计算机科学系

语言和语音处理中心

 

最新版本:2月14日2011年(1.50版).

最新网页更新:2月14日2011年.

 

1概述

Z-MERT是机器翻译系统最小错误率训练的软件工具(Och公司2003年). 它是:

  • 开源,非常容易运行,并且独立于平台。
  • 模块化评估指标,易于支持任何新的评估指标(演示视频!)具有可分解的充分统计数据。
  • 解码器完全模块化,要求使用任何解码器修改 功能。
  • 完全可配置,允许用户指定其20个参数的任何子集。
  • 高度优化,明显节省时间和空间。
  • 无错误:-)

 

2说明

最先进的机器翻译(MT)系统依赖于几种模型来评估目标语言中给定候选译文的“优劣”。每个模型都对应于一个功能,即<候选人翻译,外国的句子>配对。作为一个对数线性模型,我们需要为每个特征分配一个权重。Och公司(2003)提供了经验证据,表明设定这些权重时应考虑到最终判断机器翻译系统的评估指标(即,根据该评估指标衡量的开发组绩效最大化)。另一种见解Och的工作是存在一个有效的算法来寻找这些权重。这个过程被称为默特相位, 用于最小E错误R吃了T下雨。

 

MERT模块的存在可以以最小的努力与现有的机器翻译系统集成,这将有利于研究界。为了获得最大的效益,该工具应易于设置和使用,并且应具有明显的高效实施。梅尔茨(扎丹,2009年)是一种基于这些目标而开发的工具。我们非常小心地确保Z-MERT可以与任何MT 系统一起使用,而不需要修改代码,也不需要一个复杂的脚本网络,这种情况不幸地存在于当前的培训管道中。

 

三。为什么?你呢应该使用Z-MERT公司

  • Z-MERT 完全关于解码器的模块化.
  • Z-MERT公司支持任何评价指标(具有可分解的足够的 统计信息),并且需要最少的代码来实施任何新的评估指标.
  • Z-MERT 是用Java编写所有的平台都可以免费使用。
  • Z-MERT 是高度优化,使它既节省时间又节省空间,比用解释语言编写的实现快一个数量级,而且显然比Moses的C++MERT实现更快。
  • Z-MERT公司不需要监控并启动解码器并自动处理其输出。
  • Z-MERT 是完全可配置,允许用户指定 20某些MERT参数的任何子集。
  • Z-MERT 是完全记录在案,包括使用说明和 教程。
  • Z-MERT 产生人类可读的,(可选)冗长的,以及有用输出.

 

4下载、许可和引用

Z-默特氏症源代码、说明、文档和教程都包含在发行版中。除非你有充分的理由,否则你应该下载最新的版本(1.50版):

  • Z-MERT公司1.50版,已发布2011年2月14日.
  • Z-MERT公司1.41版,已发布2009年10月28日.
  • Z-MERT公司1.40版,已发布2009年10月27日.
  • Z-MERT公司1.30版,已发布2009年5月4日.
  • Z-MERT公司1.20版,已发布2009年3月3日.
  • Z-MERT公司1.10版,已发布2009年2月9日.
  • Z-MERT公司1.00版,已发布2009年1月20日.

 

Z-MERT是一个开源工具,根据GNU的通用公共许可证(LGPL)的条款授权。因此,个人和/或研究小组可免费使用。除非遵守许可条款,否则不得对其进行修改或重新分发,公开或私下进行。如有疑问,请联系作者以获得澄清和/或明确许可。

 

如果您在工作中使用Z-MERT,请引用以下论文:(BibTeX公司进入)

 

5Z-MERT的力学(缩写版)

Z-MERT非常容易使用。不需要编译或安装任何文件。只需编辑Z-默特氏症配置文件,以适应您想要的任何实验设置。详细的说明包含在Z中-默特氏症文档, 但基本上Z-MERT需要一个配置文件作为其主要参数,并且 它可以使用多少内存有一些限制:

 

            java-cpzmert.jar公司兹默特-马克斯曼500 ZMERT_配置.txt

 

在-马克斯曼参数告诉Z-MERT在解码器运行时不应该持续使用内存,在此期间 Z-MERT将处于空闲状态。500告诉Z-MERT它只能在积极的。(Java的-Xmx公司选项不适合您。文档解释了什么马克斯曼是。其实很简单,所以现在不用太担心。)

 

Z-MERT如何与解码器交互?配置文件告诉Z-MERT解码器是如何启动的。Z-MERT使用这些信息 启动解码器作为外部进程来生成翻译,然后 在参数调整中使用结果输出文件。这样做,Z-MERT 将解码器视为一个黑盒对它的内部结构一无所知。

 

希望这能让您了解运行Z-MERT有多简单。完整的细节(以及教程)可以在 发行版中找到,因此下载并开始梅尔丁已经.

 

6常见问题解答

: 为什么开发Z-MERT?

A: Z-MERT是JHU更大努力开发的一部分约书亚(Li 等人,2009年),一个开源包,包含完整的MT培训管道的组件,包括一个MERT模块。我们认为Joshua的实现不适合我们现有的灵活性和易用性。所以我们编写了自己的实现,Z-MERT诞生了。

 

: 这是否意味着我需要约书亚使用Z-MERT?

A: 一点也不。甚至连它的功能都不完全是由它的功能而存在的。

 

: 为什么叫它Z-默特?

A: 我们使用了David的一个实现Chiang 来电C-默特。所以,我补充道,Z,作为字母表的最后一个字母,这意味着这是世界将永远需要的最后一个MERT实现!每个人都知道那封信Z真是太棒了。

 

: 我对MERT算法本身有一些问题。你能帮助我吗?

A: 理想情况下,指的是Och的纸张(Och公司2003年)就够了。 不幸的是,MERT的关键思想在Och的纸张。我的Z-MERT报纸(扎丹,2009年)包含解释默特氏症优化算法, 所以它可能是非常有用的。

 

: 还有什么你的报纸?

A: 纸张(包含在Z-MERT分布中)包含Z-默特氏症 伪码,将我的实现与两个现有的实现进行对比,并讨论一些Z-默特氏症特征。它还报告了一些实验,说明Z-默特氏症运行效率。

 

: 我觉得你应该感谢一些人。我是对的还是我对的?

A: 你说得对。首先,这项研究得到了国防部高级研究项目局的GALE项目的部分支持,合同号为HR0011-06-2-0001。更重要的是,我要感谢JHU的Joshua开发团队的一些成员,他们提供了持续和有益的讨论、反馈和想法: 志斐Li,Lane Schwartz,Wren Thornton和我们的团队领导Chris Callison Burch。

 

: 我有一个未回答的问题。我现在该怎么办?

A: 问吧!好好利用这一系列管子:ozaidan@cs.jhu.edu.

 

: 哇,你真有耐心回答所有这些问题。

A: 这是一个问题还是一个qompliment公司?

 

7历史

注:版本更改以小数点后第一位(例如。1.05版1.10版)反映重大变化,如功能或用途的变化。小数点后第二位的变化(例如。1.23版1.24版)反映文件、说明、输出等的细微变化。

 

1.50版(2011年2月14日)

       试图访问代码的错误已修复-1数组的元素。

       固定 标志传递到泰康.

       第四个选项(螺纹数 用于评分)。

       增加了 第五个选项(位置泰康jar文件)。

更好的批量评估(和-BLEU),开销更少。

小文档 更改(修复打字错误等)。

1.41版(2009年10月28日)

已添加-数据文件编码=utf8标志到 tercom-0.7.25的启动命令。

1.40版(2009年10月27日)

添加了-BLEU公制,可与tercom-0.7.25一起使用。
添加了-txtNrm公司文本规范化的参数。
小的修改(排字等)。

1.30版(2009年5月4日)

更好文档。
错误修复:已修复布鲁的处理非常短的句子和空行。
轻微的文档更改(修复打字错误等)。

1.20版2009年3月3日

已添加.java语言,可与tercom-0.7.25一起使用。
错误修复:布鲁的中的详细输出埃瓦醇;早衰行为。
异常处理;消除了不必要的静态使用;代码风格的改进。
略为高效的文件处理。
消除了一些冗余的充分统计计算,并进行了批处理。
轻微的文档更改(修复打字错误等)。

1.10版(2009年2月9日)

完整的文档
.jar包装
视频演示(在Z-MERT中实现新的度量)

1.00版(2009年1月20日)

初次发布!

 

8工具书类

Li等人,2009年: (PDF格式@国际计算语言学协会选集)

Z。,C。卡利森伯克,C。染色工,J。甘特凯维奇,S。胡丹普尔, L。施瓦茨,W。桑顿J.J。韦斯, 和O。扎丹. 2009Joshua:用于基于解析的机器翻译的开源工具包。EACL 2009年第四次统计机器翻译研讨会论文集,第135-139页。

 

Och公司2003年: (PDF格式@国际计算语言学协会选集)

F。Och公司. 2003统计机器翻译中的最小错误率训练。在诉讼中国际计算语言学协会,第160-167页。

 

扎丹,2009年: (PDF格式)

O。扎丹. 2009Z-MERT:一个完全可配置的开源工具,用于机器翻译系统的最小错误率培训。布拉格数学语言学公报,第91:79-88号。