一种多维度的中英双语数据清洗方法
技术领域
本发明涉及一种机器翻译技术,具体为一种多维度的中英双语数据清洗方法。
背景技术
中英双语数据由中文句子和英文句组成且具有良好的互译性。中英双语句对来源广泛,比如平行网页、中英双语网页,科技文献标题和摘要,或其他文档资源。由于数据的获取大多都通过自动的方法,难免会引入错误和噪声(例如句子切分中的句对齐错误),并且双语内容翻译质量也很难保证。常见的问题如下所示:
(1)增译/漏译
中:【幽默笑话】青年与老和尚喝茶。
英:Tea with the old monk.
(2)完全不对应
中:4.睡觉姿势不正确严重影响婴幼儿的睡眠质量。
英:5Dietary irregularities seriously affect the healthy growth ofinfants and young children.
(3)错译
中:你这辈子从没有这样惊慌过。
英:I have never been so happy in my life.
无论是神经机器翻译还是统计机器翻译模型的训练都依赖于大量的双语平行句对,双语句对质量的好坏直接影响到机器翻译系统的性能。为提高机器翻译性能,最直接的办法就是不断扩充双语语料库。随着双语句对规模的不断增大,语言现象的不断丰富,语料来源的不断异构化,使得人工处理和评估语料早已不再可能。而使用计算机技术处理各种复杂的语料,如何尽可能设计完善的算法以去除语料中不同类型的噪声,成为一种挑战。目前自动语料质量评估方法大多基于长度比和基于词典的方法,虽然该方法简单有效,但是不能保证清洗后的数据具有良好的互译性。其中,基于长度比的方法单纯的应用了词长信息,没有考虑句对内容的互译;基于词典的方法严重依赖于词典,并且没有考虑词语搭配的合理性。
因此从内容、结构等多个维度对双语平行语料库进行优化处理是最优方法,用自动的方法合理的评估双语句对的质量好坏,对质量比较差的句对进行过滤,以期在一定程度上改善系统的翻译质量。
发明内容
针对中英机器翻译系统的训练需要大规模的高质量双语数据,为避免由于双语句对的质量问题而影响机器翻译系统性能,本发明要解决的问题是提供一种多维度的中英双语数据的清洗方法,能够准确高效的过滤低质量的双语数据,并保证处理后的数据具有良好的互译性。
为解决上述技术问题,本发明采用的技术方案是:
本发明一种多维度的中英双语数据的清洗方法,包括以下步骤:
1)数据预处理,将涵盖政治、军事、经济、新闻多个领域的中英双语高质量的数据和输入文件中的中英双语句对进行包括分词、实体识别以及英文单词词干化预处理;
2)生成词典,使用预处理后的中英双语高质量数据采用词对齐算法得到词对齐结果,经过统计处理生成中英词典和英中词典;
3)语言模型训练,训练中文和英语以词为单位的3-Gram语言模型;
4)使用中英词典、英中词典以及3-Gram语言模型对输入文件中的中英双语句对进行多维度评估,得到多个维度的评估分值;
5)将各个维度评估分值线性组合后得到每个双语句对的最终得分,最后滤除掉低于阈值的双语句对;
6)将剩余的双语句对作为高质量的中英双语句对存储在输出文件中,得到高质量语料库。
步骤2)中,使用预处理后的数据采用词对齐算法得到词对齐结果,经过统计处理生成中英词典和英中词典,采用机器翻译中词对齐算法对分词后的中英双语数据进行词对齐处理,得到两个词对齐文件,经过词对齐对称化后合并这两个文件,具体为:
201)将词对齐对称化后的文件进行词还原处理,生成初始化中英词典及英中词典并过滤两个词典中的低频词;
202)将初始化的中英词典中的词和译文互换后作为英中字典的补充,同理,对英中词典进行同样的补充。
步骤4)中,使用中英词典、英中词典以及3-Gram语言模型对输入文件中的中英双语数据进行多维度评估,得到多个维度的评估分值,分别计算待清洗数据的翻译覆盖度、流畅度、特征匹配率和长度比,并对流畅度和长度比分值进行正规化,最后得到各个维度的评估分值,具体为:
401)翻译覆盖度,通过以下公式计算得到:
其中,L(zh)和L(en)分别代表中文句子词长和英文句子词长,C(zh)和C(en)分别代表中文词语翻译正确个数和英文词语翻译正确的个数,Sdict代表平均翻译覆盖度分值;
402)流畅度,通过以下公式计算得到:
其中,Szh-gram和Sen-gram分别代表中文流畅度分值和英文流畅度分值,Sgram代表平均流畅度,P(wi|wi-N+1,…,wi-1)代表下一词的转移概率。
403)特征匹配率,通过以下公式计算得到:
其中,Ctemp(en)和Ctemp(zh)分别代表英文中的特征个数,Stemp代表特征匹配率分值;
404)长度比,通过以下公式计算得到:
其中,len(en|zh)代表英文词长和中文词长比值,Avglen(en|zh)代表平均长度比,平均长度比是在千万级高质量句对统计后结果,Slen-rate代表长度比分值。
405)分值正规化
在各个维度的评估中,翻译覆盖度和特征匹配率的得分属于区间[0,1],流畅度和长度比的得分属于区间[-∞,0],在计算句对最终得分前,对流畅度和长度比的得分进行正规化,统一分布在[0,1]之间,分值正规化通过以下公式计算得到:
其中,S为正规化前的分值,S'为正规化后的分值。
步骤5)中,将各个维度评估分值线性组合后得到每个双语句对的最终得分,通过以下公式计算得到:
Sdict、Sgram和Stemp衡量了中英句对互译的质量,Slen_rate衡量中英句对增译漏译程度。
本发明具有以下有益效果及优点:
1.本发明提出的一种多维度的中英双语数据的清洗方法,能够过滤掉互译程度差的低质量中英句对,且处理速度和准确率远超一般方法。
2.本发明方法使用自动句对质量评估方式过滤低质量双语数据,能够处理大规模的数据且无需任何复杂的计算,在具备高质量双语数据集前提下,该方法可以应用于其他语种的低质量双语句对的清洗。
3.本发明从多个维度来对双语句对进行评估,在中英句对的互译程度、用词搭配、句子流畅度层面上对数据质量进行全面的评估,使经过清洗后的数据质量得到了有效的保障。
附图说明
图1为本发明低质量双语句对清洗流程图;
图2为词典生成示例图;
图3为分值正规化的分布图。
具体实施方式
下面结合说明图对本发明进一步阐述。
本发明提出一种多维的中英双语数据的清洗方法,从多个维度评估双语句对质量。能够准确高效的过滤低质量的双语数据,并保证高质量数据具有良好的互译性。
本发明一种多维度的中英双语数据的清洗方法,包括以下步骤:
1)数据预处理,将涵盖政治、军事、经济、新闻多个领域的中英双语高质量的数据和输入文件中的中英双语句对进行包括分词、实体识别以及英文单词词干化预处理;
2)生成词典,使用预处理后的中英双语高质量数据采用词对齐算法得到词对齐结果,经过统计处理生成中英词典和英中词典;
3)语言模型训练,训练中文和英语以词为单位的3-Gram语言模型;
4)使用中英词典、英中词典以及3-Gram语言模型对输入文件中的中英双语句对进行多维度评估,得到多个维度的评估分值;
5)将各个维度评估分值线性组合后得到每个双语句对的最终得分,最后滤除掉低于阈值的双语句对;
6)将剩余的双语句对作为高质量的中英双语句对存储在输出文件中,得到高质量语料库。
步骤1)中,数据的预处理包括:
101)为生成高质量的特征词表,需对中英双语数据进行分词预处理,根据其语言特点选取不同的分词方法进行分词预处理。中文由于没有明显的词语标记,采用基于语言模型的词语切分方法进行词语切分;英语本身包含空格,则按照空格标点切分,同时注意关键词等问题。
102)为降低中英词典和英中词典的复杂度,增大两个词典的覆盖度,对中文和英文句子中的英文单词进行小写化和词干还原。单词小写化是将大写字母替换为对应的小写字母,词干化是将名词的复数变为单数、动词的其他形态变为基本形态。例如:
Parker/was/also/the/first/European/to/win/Finals/MVP/in/2007/.
帕克/是/第一/个/在/2007/年/赢得/总/冠军/MVP/的/欧洲/人/。
小写化预处理:
parker/was/also/the/first/european/to/win/finals/mvp/in/2007/.
帕克/是/第一/个/在/2007/年/赢得/总/冠军/mvp/的/欧洲/人/。
词干化预处理:
park/was/also/the/first/europ/to/win/final/mvp/in/2007/.
帕克/是/第一/个/在/2007/年/赢得/总/冠军/mvp/的/欧洲/人/。
103)为降低N-Gram语言模型的复杂度,训练N-Gram语言模型的数据需经过泛化预处理,包括实体翻译和标点替换等;
步骤2)中,使用预处理后的数据采用词对齐算法得到词对齐结果,经过统计处理生成中英词典和英中词典,采用机器翻译中词对齐算法对分词后的中英双语数据进行词对齐处理,得到两个词对齐文件,经过词对齐对称化后合并这两个文件,具体为:
201)将词对齐对称化后的文件进行词还原处理,生成初始化中英词典及英中词典并过滤两个词典中的低频词;
202)将初始化的中英词典中的词和译文互换后作为英中字典的补充,同理,对英中词典进行同样的补充。
词还原处理是指将原文词语按照词对齐结果对应还原。在图2示例中,由于存在一对多关系(“联合/主席”-“cochairman”、“人工智能”-“artificialintelligence”),在处理的过程中需要针对中英和英中分别进行处理。中英预处理即以中文为核心进行合并;英中预处理即以英文为标准进行合并。根据处理后文件在按照词的位置进行还原成词,加入到词典中生成生成初始化词典。
步骤3)中,训练3-Gram语言模型过程中,计算P(W3|W1W2)采用极大似然估计法进行求解,公式如下,其中C(W1W2)表示词序列W1W2出现的次数。
步骤4)中,对中英双语数据进行多维度的评估,分别计算待清洗数据的翻译覆盖度、流畅度、特征匹配率和长度比,并对流畅度和长度比分值进行正规化,最后得到各个维度的评估分值,具体流程如图1所示。
401)翻译覆盖度,也称平均翻译覆盖度,通过以下公式计算得到:
其中,L(zh)和L(en)分别代表中文句子词长和英文句子词长,C(zh)和C(en)分别代表中文词语翻译正确个数即正向覆盖度和英文词语翻译正确的个数即逆向覆盖度,Sdict代表平均翻译覆盖度分值。
402)流畅度,通过以下公式计算得到:
其中,Szh-gram和Sen-gram分别代表中文流畅度分值和英文流畅度分值,Sgram代表平均流畅度,P(wi|wi-N+1wi-1)代表当前词为wi-N+1wi-1下一词为wi的概率值。
403)特征匹配率,通过以下公式计算得到:
其中,Ctemp(en)和Ctemp(zh)分别代表英文中的特征个数,Stemp代表特征匹配率分值。特征指的是命名实体(数字、时间、人名、地名等)和标点符号。
404)长度比,通过以下公式计算得到:
其中,len(en|zh)代表英文词长和中文词长比值,Avglen(en|zh)代表平均长度比,平均长度比是在千万级高质量句对统计后结果,Slen-rate代表长度比分值。
405)分值正规化
在各个维度的评估中,翻译覆盖度和特征匹配率的得分属于区间[0,1],流畅度和长度比的得分属于区间[-∞,0]。在计算句对最终得分前,需对流畅度和长度比的得分进行正规化,统一分布在[0,1]之间,分值正规化通过以下公式计算得到,该函数的分布图如图3所示:
其中,S为正规化前的分值,S’为正规化后的分值。
步骤5)中,将各个维度评估分值线性组合后得到每个双语句对的最终得分,通过以下公式计算得到:
Sdict、Sgram和Stemp一定程度上衡量了中英句对互译的质量,Slen_rate衡量中英句对增译漏译程度。
下面以中英双语句对多维度评估结果为例进行说明,通过对中英双语句对进行多个维度的质量评估后得到最终分值,通过设定的阈值过滤掉低质量的中英双语句对,经过对中英双语句对多维度评估结果分析发现,多维度评估分值低于阈值的句对均为低质量的句对。
中英双语句对多维度评估结果示例
通过上述实验案例证明,本发明提出的一种多维度的中英双语数据的清洗方法,能够准确的过滤掉互译程度低、增译漏译以及错译类型的低质量中英句对,且处理速度和准确率远超一般方法;在中英句对的互译程度、用词搭配、句子流畅度层面上,通过翻译覆盖率、流畅度、特征匹配率以及长度比对数据质量进行全面的评估,使经过清洗后的数据质量得到了有效的保障。