1.EBMT方法
1.1 传统的EBMT方法有五个步骤
1、先将英文源篇章 分解 为 若干短句。然后再分为若干短语片段(分句)
2、将短语片段在一个英文实例库上进行匹配,得到包含该短语 且 语义最接近(需要语义词典) 的英文实例
3、确定该英文实例对应的中文翻译
4、将英文短语与翻译进行对齐(确定该短语的中文翻译)
5、将中文翻译重组为一个完整的句子(得到翻译结果)
2.句子提取
2.1 目的及意义
从EBMT方法中可以看到,EBMT的翻译的前提是双语语料库的建立。即如何建立一个包含大量汉英句对的大型语料库,是构建我们翻译系统的基础。 以往构建双语库的方式是:从互联网上摘取一篇包含中英文互译的资料,然后通过人工的方式进行分句,并入库。这样的方法往往存在效率低下的问题,不适合构建大型的平行库。 因此我们考虑设计若干算法,利用机器来解决这个问题。在我们的系统中,句子对齐的模块就是要做到从一篇包含中英文译文的篇章中,提取对应中英文句子的功能,用于快速搭建起我们自己的语料库。 由于在双语语料中,翻译人员并不是总是一句一句的翻译过来,因此可能存在一对多,多对一的情况,甚至是多对多的情况。因此,句子的自动对齐是构建双语语料库的关键环节,是利用双语句对进行知识获取的基础。
2.2 句子提取的常用算法
2.2.1 基于长度的汉英句子对齐[1]
基于长度的汉英句子对齐是目前最常用的的句子对齐算法。作为一个基于统计的学习算法,它需要一个已经构建好的汉英句对库作为学习的支撑, 因此从如何选取这个公共的平行库就显得十分的重要。
目前找到的平行库有
1)北京大学 计算语言学研究所 统计的704句对的资源(可用),形式为xml。http://icl.pku.edu.cn/icl_groups/parallel/download.htm
2)LDC(包含大量语料库)不过要付费 https://catalog.ldc.upenn.edu/byyear
3)哈工大语言技术平台相关资源 http://ir.hit.edu.cn/demo/ltp/Sharing_Plan.htm
4)北京外国语大学的平行库 提供检索功能 没有提供原库 http://124.193.83.252/cqp/(但是够用)
算法流程:
a、根据训练库,统计不同模式句对出现的概率(1:0 0:1 1:1 2:1 1:2 0:2 2:0)
b、根据贝叶斯公式求出某个评价函数下出现某个模式的概率
c、根据极大似然性,利用动态规划搜索所有可能的解,满足概率最大的句对序列就是最后的对齐序列(搜索采用动态规划)、
由于亚欧语系在句子长度上的关系并没有得到理论上的验证,因此此方面的研究很少进展下去。同时,由于单纯基于长度的汉英句子对齐对于部分译文缺失的情况容易造成错误蔓延,鲁棒性不强,对需要对齐的语料库要求很高。
2.2.2 基于词典的汉英句子对齐[2]
基于词典的汉英句子对齐需要一个大规模的汉英词典,通过查找对应译文在目标片段中出现的情况,统计出现的互译的相关度。利用相关度作为评价函数。由于对齐的方法利用到了词汇的信息,因此更加具有科学性。然而由于词汇的译文往往比较多变,并且对库的依赖十分明显,因此相比于基于长度的方法稳定性不好,有时候甚至差于基于长度的方法。并且在匹配的过程中需要检索字典,效率往往也十分低下。
2.2.3 基于锚点的分段对齐算法[2]
通过设置锚点的方法,将全文分成若干子段,然后在利用上述的一种或者两种方法进行对齐。这样的分段思想解决了传统对齐的几个问题:
1. 防止错误的蔓延。上文提到了传统的对齐方式可能会造成错误的蔓延,一句话对错可能会影响到后面所有的句子对齐。因此通过分段的方式可以将错误控制在段内,不影响后面的对齐结果。
2. 减少搜索解的深度。若直接对全文进行对齐需要的内存开销非常大,若采取分段的方法,可以有效减少解的规模,并且利于并行计算。从而 提高算的速度。
参考文献
[1] Gale W A, Church K W. A program for aligning sentences in bilingual corpora[J]. Computational Linguistics, 1993:177–184.
[2]王飞. 多语种双语对齐平台的设计与实现[D]. 南京理工大学, 2004. DOI:10.7666/d.y624300.