首页 / 专利库 / 人工智能 / 机器翻译 / 机器翻译模型、伪专业平行语料的确定方法、系统及设备

机器翻译模型、伪专业平行语料的确定方法、系统及设备

阅读:679发布:2020-05-11

专利汇可以提供机器翻译模型、伪专业平行语料的确定方法、系统及设备专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种 机器翻译 模型、伪专业平行语料的确定方法、系统及设备,属于信息技术领域,进一步涉及 人工智能 在该领域中的应用。所述方法包括:获取第一通用平行语料和专业领域的专业平行词语对,从第一通用平行语料中,查找每个专业平行词语对对应的候选平行语句对,用专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到伪专业平行语料。本方案根据专业平行词语对生成的伪专业平行语料较多。且由于本方案引入了专业领域的专业平行词语对的专业信息,因此使用本方案生成的伪专业平行语料对 基础 神经机器翻译 模型进一步微调之后,得到的神经机器翻译模型在该专业领域的翻译 质量 有很大提升。,下面是机器翻译模型、伪专业平行语料的确定方法、系统及设备专利的具体信息内容。

1.一种机器翻译模型的确定方法,其特征在于,所述方法包括:
机器翻译的模型训练端从数据服务端中获取伪专业平行语料,所述伪专业平行语料包括多个伪专业平行语句对,所述多个伪专业平行语句对是用专业领域的专业平行词语对,对第一通用平行语料包括的非专业领域的通用平行语句对中对应的通用平行词语对进行替换后得到的;
所述模型训练端根据所述多个伪专业平行语句对,对基础神经机器翻译模型进行训练,得到神经机器翻译模型,所述神经机器翻译模型用于进行机器翻译,所述基础神经机器翻译模型是通过第二通用平行语料对初始神经网络训练得到的,所述第一通用平行语料与所述第二通用平行语料相同或者不同。
2.一种伪专业平行语料的确定方法,其特征在于,所述方法包括:
获取第一通用平行语料和专业领域的N个专业平行词语对,所述第一通用平行语料包括非专业领域的多个通用平行语句对,所述N个专业平行词语对包括专业平行单词对和/或专业平行短语对,所述N为大于或等于1的整数;
从所述多个通用平行语句对中,查找与所述N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对;
如果查找到M个专业平行词语对对应的候选平行语句对,则从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,所述M小于或等于所述N;
用所述M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到机器翻译中的伪专业平行语料。
3.如权利要求2所述的方法,其特征在于,所述从所述多个通用平行语句对中,查找与所述N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对,包括:
从所述多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,其中,参考单语是指所述第一通用平行语料中的任一种语言,所述第一专业平行词语对是指所述N个专业平行词语对中的任一专业平行词语对;
如果查找到与所述参考单语词语之间的相似度大于所述相似度阈值的参考单语语句,则将查找到的参考单语语句所在的通用平行语句对,确定为所述第一专业平行词语对对应的候选平行语句对。
4.如权利要求3所述的方法,其特征在于,所述从所述多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,包括:
对所述多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个参考单语语句;
从所述多个聚类结果中,确定聚类中心与所述参考单语词语之间的相似度最大的聚类结果,得到目标聚类结果;
从所述目标聚类结果中,查找与所述参考单语词语之间的相似度大于相似度阈值的参考单语语句。
5.如权利要求2所述的方法,其特征在于,所述从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,包括:
确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,所述第一候选平行语句对是指第二专业平行词语对对应的任一候选平行语句对,所述第二专业平行词语对是指所述M个专业平行词语对中的任一专业平行词语对;
从所述多个词语中,获取与所述第二专业平行词语对中的参考单语词语的词性相同的词语;
确定获取的每个词语与所述参考单语词语之间的相似度;
从所述第一候选平行语句对中的参考单语语句中,确定第一目标词语,所述第一目标词语是指与所述参考单语词语之间的相似度最大的词语;
根据所述第一目标词语,从所述第一候选平行语句对中,确定与所述第二专业平行词语对对应的通用平行词语对。
6.如权利要求5所述的方法,其特征在于,所述确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,包括:
对所述第一候选平行语句对中的参考单语语句进行分词处理,得到多个单词;
按照所述多个单词的顺序,根据参考单语短语表,确定所述第一候选平行语句对中的参考单语语句是否包括短语;
如果所述第一候选平行语句对中的参考单语语句包括一个或多个短语,则对所述多个单词中除所述一个或多个短语之外的单词的词性进行标注,以及对所述一个或多个短语的词性进行标注。
7.如权利要求5或6所述的方法,其特征在于,所述根据所述第一目标词语,从所述第一候选平行语句对中,确定所述第二专业平行词语对对应的通用平行词语对,包括:
将所述第一候选平行语句对和所述第一目标词语作为词对齐模型的输入,通过所述词对齐模型输出第二目标词语,所述第二目标词语的词义与所述第一目标词语的词义相同,所述第二目标词语的语言是指所述第一通用平行语料中除参考单语之外的语言;
将所述第一目标词语和所述第二目标词语,确定为所述第二专业平行词语对对应的通用平行词语对。
8.如权利要求3所述的方法,其特征在于,所述参考单语是指所述第一通用平行语料中的源单语,且所述N个专业平行词语对的源单语与所述第一通用平行语料的源单语相同。
9.一种机器翻译系统,其特征在于,所述系统包括模型训练端和数据服务端,所述模型训练端用于执行权利要求1所述的方法,所述数据服务端用于执行权利要求2-8任一所述的方法。
10.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序,以实现权利要求2-8任一所述的方法的步骤。

说明书全文

机器翻译模型、伪专业平行语料的确定方法、系统及设备

技术领域

[0001] 本申请涉及信息技术领域,特别涉及一种机器翻译模型、伪专业平行语料的确定方法、系统及设备。

背景技术

[0002] 当前,神经机器翻译(neural machine translation,NMT)模型已被广泛应用到日常生活中,例如,对文献资料、新闻资讯等进行翻译。但是,文本在不同上下文情景、不同领域中的意思呈现多样化,且目前基本是通过通用平行语料来训练得到神经机器翻译模型,而通用平行语料中的大部分平行语料是非专业领域(out-of-domain,OOD)的,专业领域(in-domain,IND)的平行语料很少,因此,使用通用平行语料训练得到的神经机器翻译模型在专业领域的翻译质量较低。为了保证专业领域的文本的翻译质量,还需要使用大量的专业平行语料对神经机器翻译模型进一步微调,来提高神经机器翻译模型在该专业领域的翻译质量,因此,亟需一种类似专业平行语料(又称伪专业平行语料)的生成方法。其中,平行语料包括多种不同语言的文本集,待翻译的文本集可以称为源单语语料,翻译得到的文本集可以称为目标单语语料。
[0003] 相关技术中,可以采用反向翻译技术来确定伪专业平行语料,即使用现有的神经机器翻译模型对现有的专业领域的目标单语语料进行翻译,得到对应的源单语语料,将目标单语语料与翻译得到的源单语语料合并作为伪专业平行语料。但是,由于现有的专业领域的目标单语语料较为稀缺,因此,根据现有的专业领域的目标单语语料生成的伪专业平行语料有限,且不具有可持续性。并且,在使用该伪专业平行语料对神经机器翻译模型进一步微调之后,对神经机器翻译模型在该专业领域的翻译质量提升有限。发明内容
[0004] 本申请提供了一种机器翻译模型、伪专业平行语料的确定方法、系统及设备,可以解决相关技术中生成的伪专业平行语料有限,对神经机器翻译模型在专业领域的翻译质量提升有限的问题。所述技术方案如下:
[0005] 第一方面,提供了一种机器翻译模型的确定方法,该方法包括:
[0006] 机器翻译的模型训练端从数据服务端中获取伪专业平行语料,伪专业平行语料包括多个伪专业平行语句对,多个伪专业平行语句对是用专业领域的专业平行词语对,对第一通用平行语料包括的非专业领域的通用平行语句对中对应的通用平行词语对进行替换后得到的;模型训练端根据多个伪专业平行语句对,对基础神经机器翻译模型进行训练,得到神经机器翻译模型,神经机器翻译模型用于进行机器翻译,基础神经机器翻译模型是通过第二通用平行语料对初始神经网络训练得到的,第一通用平行语料与第二通用平行语料相同或者不同。
[0007] 其中,一个通用平行语句对包括非专业领域的一句源单语语句和一句目标单语语句,通过专业平行词语对,对一个通用平行语句对中对应的通用平行词语对进行替换后,可以得到一句伪专业源单语语句和一句伪专业目标单语语句,也即是一个伪专业平行语句对包括一句伪专业源单语语句和一句伪专业目标单语语句。其中,一个专业平行词语对包括专业领域的一个专业源单语词语和一个专业目标单语词语。
[0008] 需要说明的是,平行语料是指使用不同语言对照书写、句子之间相互对齐、相互翻译的文本。通用平行语料是指在各个领域都能够适用的平行语料。伪专业平行语料是指在专业领域的专业性介于通用平行语料和专业平行语料之间的一种平行语料,在专业领域中,伪专业平行语料的专业性高于通用平行语料,且低于专业平行语料。
[0009] 平行语句对是指使用不同语言对照书写、句子之间相互对齐、相互翻译的语句对。通用平行语句对是指在各个领域都能够适用的平行语句对。专业平行语句对是指专业领域的平行语句对。伪专业平行语句对是指专业性介于通用平行语句对和专业平行语句对之间的一种平行语句对,在专业领域中,伪专业平行语句对的专业性高于通用平行语句对,且低于专业平行语句对。
[0010] 平行词语对是指使用不同语言对照书写、词语之间相互翻译的词语对。专业平行词语对是指专业领域的平行词语对。
[0011] 为了实现机器翻译,模型训练端可以先根据第二通用平行语料对初始神经网络进行训练,得到基础神经机器翻译模型。但是由于第二通用平行语料中包括的专业领域的平行语料较少,因此,基础神经翻译模型在专业领域的翻译质量有限。为了提高专业领域的翻译质量,当模型训练端从数据服务端获取到伪专业平行语料之后,可以根据伪专业平行语料包括的多个伪专业平行语句对,对基础神经机器翻译模型进行调优训练,得到神经机器翻译模型。也即是,通过伪专业平行语料对基础神经翻译模型进一步微调,从而可以保证微调后得到的神经机器翻译模型在专业领域的翻译质量得到提升。
[0012] 第二方面,提供了一种伪专业平行语料的确定方法,该方法包括:
[0013] 获取第一通用平行语料和专业领域的N个专业平行词语对,第一通用平行语料包括非专业领域的多个通用平行语句对,N个专业平行词语对包括专业平行单词对和/或专业平行短语对,N为大于或等于1的整数;从多个通用平行语句对中,查找与N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对;如果查找到M个专业平行词语对对应的候选平行语句对,则从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,其中,M小于或等于N;用M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到机器翻译中的伪专业平行语料。
[0014] 在本申请实施例中,可以从专业领域的相关网站上直接获取专业电子字典,该专业电子字典中包括大量的专业平行词语对,此外,还可以随时向专业电子字典中添加新的专业平行词语对,也即对专业电子字典进行扩充。例如,可以从大量的平行语料中获取专业领域的专业平行词语对,还可以从专业领域的相关网站上获取专业领域的专业平行词语对,将获取到的专业领域的所有专业平行词语对添加到专业电子字典中,以对专业电子字典进行扩充,也即扩充之后的专业电子字典可以包括专业领域的N个专业平行词语对。其中,N个专业平行词语对可以包括专业平行单词对和/或专业平行短语对。此外,可以从机器翻译的相关网站上获取第一通用平行语料,第一通用平行语料可以是非专业领域的平行语料,第一通用平行语料包括非专业领域的多个通用平行语句对。其中,非专业领域可以包括一个或多个不同的领域。
[0015] 需要说明的是,本申请实施例提供的伪专业平行语料的确定方法适用于各种专业领域,例如,医疗、法律、体育、财经、IT等专业领域,平行双语可以是英法、英德、法英、德法等双语。
[0016] 由于第一通用平行语料包括非专业领域的多个通用平行语句对,而且第一通用平行语料包括大量的通用平行语句对,因此,通过M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换之后,可以得到大量的伪专业平行语句对,也即是,伪专业平行语料可以包括大量的伪专业平行语句对,且由于专业领域的专业平行词语对较多且容易扩充,因此本方案具有可持续性。另外,由于本方案引入了专业领域的专业平行词语对,也即增加了专业领域的专业词语的覆盖率,增强了专业信息,因此,使用本方案生成的伪专业平行语料对基础神经机器翻译模型进行微调之后,得到的神经机器翻译模型在专业领域的翻译质量有较大提升。
[0017] 在本申请实施例中,可以从多个通用平行语句对中,通过相似度计算方法,即可以通过计算N个专业平行词语对中的每个专业平行词语对与多个通用平行语句对之间的相似度,来查找与N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对,将查找到的所有的候选平行语句对作为候选语料。也即是,从多个通用平行语句对中,查找与N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对,包括:
[0018] 从多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,其中,参考单语是指第一通用平行语料中的任一种语言,第一专业平行词语对是指N个专业平行词语对中的任一专业平行词语对;如果查找到与参考单语词语之间的相似度大于相似度阈值的参考单语语句,则将查找到的参考单语语句所在的通用平行语句对,确定为第一专业平行词语对对应的候选平行语句对。
[0019] 在本申请实施例中,为了提高获取候选平行语句对的效率,数据服务端还可以通过聚类算法,以及词与句相似度计算方法,来获取候选平行语句对。也即是,从多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,包括:
[0020] 对多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个参考单语语句;从多个聚类结果中,确定聚类中心与参考单语词语之间的相似度最大的聚类结果,得到目标聚类结果;从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句。
[0021] 需要说明的是,参考单语语句是指语言为参考单语的语句。参考单语词语是指语言为参考单语的词语。参考单语可以是指第一通用平行语料中的任一种语言,也即参考单语可以是第一通用平行语料中的源单语,也可以是第一通用平行语料中的目标单语,且N个专业平行词语对的源单语与第一通用平行语料的源单语相同。其中,源单语是指机器翻译中待翻译的文本的语言,目标单语是指翻译得到的文本的语言。
[0022] 在本申请实施例中,数据服务端查找到M个专业平行词语对中的每个专业平行词语对对应的候选平行语句对之后,可以确定第一候选平行语句对中的第一目标词语和第二目标词语,将第一目标词语和第二目标词语确定为第二专业平行词语对对应的通用平行词语对。其中,第一目标词语是指与第二专业平行词语对中的参考单语词语的词性相同且与参考单语词语之间的相似度最大的词语,第二目标词语是指与第一目标词语的词义相同的词语,第一候选平行语句对是指第二专业平行词语对对应的任一候选平行语句对,第二专业平行词语对是指M个专业平行词语对中的任一专业平行词语对。
[0023] 也即是,从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,包括:确定第一候选平行语句对中的参考单语语句包括的多个词语的词性;从多个词语中,获取与第二专业平行词语对中的参考单语词语的词性相同的词语;确定获取的每个词语与参考单语词语之间的相似度;从第一候选平行语句对中的参考单语语句中,确定第一目标词语,第一目标词语是指与参考单语词语之间的相似度最大的词语;根据第一目标词语,从第一候选平行语句对中,确定与第二专业平行词语对对应的通用平行词语对。
[0024] 其中,确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,包括:对第一候选平行语句对中的参考单语语句进行分词处理,得到多个单词;按照多个单词的顺序,根据参考单语短语表,确定第一候选平行语句对中的参考单语语句是否包括短语;如果第一候选平行语句对中的参考单语语句包括一个或多个短语,则对多个单词中除一个或多个短语之外的单词的词性进行标注,以及对一个或多个短语的词性进行标注。
[0025] 可选地,如果第一候选平行语句对中的参考单语语句不包括短语,则对多个单词的词性进行标注,从而可以确定第一候选平行语句对中的参考单语语句包括的多个词语的词性。
[0026] 需要说明的是,本申请实施例在词性标注之后,从该多个词语中,可能会获取到与第二专业平行语句对中的参考单语词语的词性相同的一个词语,也可能会获取到与第二专业平行语句对中的参考单语词语的词性相同的多个词语。另外,一个词语的词性可以是名词、动词、介词、形容词、副词等,假设第二专业平行词语对的词性为名词,则获取到的一个或多个词语的词性也为名词。
[0027] 在本申请实施例中,根据第一目标词语,从第一候选平行语句对中,确定第二专业平行词语对对应的通用平行词语对的实现方式可以有多种,接下来列举出两种实现方式。
[0028] 在一种可能的实现方式中,根据第一目标词语,从第一候选平行语句对中,确定第二专业平行词语对对应的通用平行词语对,包括:将第一候选平行语句对和第一目标词语作为词对齐模型的输入,通过词对齐模型输出第二目标词语,第二目标词语的词义与第一目标词语的词义相同,第二目标词语的语言是指通用平行语料中除参考单语之外的语言;将第一目标词语和第二目标词语,确定为第二专业平行词语对对应的通用平行词语对。
[0029] 在另一种可能的实现方式中,可以根据词性标注,以及词相似度计算方法,来确定第二目标词语。为了便于描述,以参考单语为源单语、通用平行语料中除参考单语之外的语言为目标单语为例进行描述。与前述确定第一目标词语的方法相似,根据第二专业平行词语对中的目标单语词语,以及第一候选平行语句对中目标单语语句中的多个词语,按照词性标注和词相似度计算方法,来确定第二目标词语。首先,通过对目标单语语句中的多个词语的词性进行标注,获取该多个词语中与目标单语词语的词性相同的词语,然后,计算获取的与目标单语词语的词性相同的每个词语与目标单语词语的词相似度,将与目标单语词语的词相似度最大的词语确定为第二目标词语。
[0030] 第三方面,提供了一种伪专业平行语料的确定装置,所述确定装置具有实现上述第一方面中伪专业平行语料的确定方法行为的功能。所述确定装置包括至少一个模,该至少一个模块用于实现上述第一方面所提供的伪专业平行语料的确定方法。
[0031] 也即是,本申请提供的一种伪专业平行语料的确定装置,该伪专业平行语料的确定装置可以由软件硬件或者两者的结合实现成为计算机设备的部分或者全部。该装置包括:获取模块、查找模块、确定模块和替换模块。
[0032] 获取模块,用于获取第一通用平行语料和专业领域的N个专业平行词语对,第一通用平行语料包括非专业领域的多个通用平行语句对,N个专业平行词语对包括专业平行单词对和/或专业平行短语对,N为大于或等于1的整数;
[0033] 查找模块,用于从多个通用平行语句对中,查找与N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对;
[0034] 确定模块,如果查找到M个专业平行词语对对应的候选平行语句对,则从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,其中,M小于或等于N;
[0035] 替换模块,用于用M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到机器翻译中的伪专业平行语料。
[0036] 可选地,查找模块包括:
[0037] 查找单元,用于从多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,其中,参考单语是指第一通用平行语料中的任一种语言,第一专业平行词语对是指N个专业平行词语对中的任一专业平行词语对;
[0038] 第一确定单元,用于如果查找到与参考单语词语之间的相似度大于相似度阈值的参考单语语句,则将查找到的参考单语语句所在的通用平行语句对,确定为第一专业平行词语对对应的候选平行语句对。
[0039] 可选地,查找单元包括:
[0040] 聚类子单元,用于对多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个参考单语语句;
[0041] 第一确定子单元,用于从多个聚类结果中,确定聚类中心与参考单语词语之间的相似度最大的聚类结果,得到目标聚类结果;
[0042] 查找子单元,用于从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句。
[0043] 可选地,确定模块包括:
[0044] 第二确定单元,用于确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,第一候选平行语句对是指第二专业平行词语对对应的任一候选平行语句对,第二专业平行词语对是指M个专业平行词语对中的任一专业平行词语对;
[0045] 第一获取单元,用于从多个词语中,获取与第二专业平行词语对中的参考单语词语的词性相同的词语;
[0046] 第三确定单元,用于确定获取的每个词语与参考单语词语之间的相似度;
[0047] 第四确定单元,用于从第一候选平行语句对中的参考单语语句中,确定第一目标词语,第一目标词语是指与参考单语词语之间的相似度最大的词语;
[0048] 第五确定单元,用于根据第一目标词语,从第一候选平行语句对中,确定第二专业平行词语对对应的通用平行词语对。
[0049] 可选地,第二确定单元包括:
[0050] 分词处理子单元,用于对第一候选平行语句对中的参考单语语句进行分词处理,得到多个单词;
[0051] 第二确定子单元,用于按照多个单词的顺序,根据参考单语短语表,确定第一候选平行语句对中的参考单语语句是否包括短语;
[0052] 标注子单元,用于如果第一候选平行语句对中的参考单语语句包括一个或多个短语,则对多个单词中除一个或多个短语之外的单词的词性进行标注,以及对一个或多个短语的词性进行标注。
[0053] 可选地,第五确定单元包括:
[0054] 输出子单元,用于将第一候选平行语句对和第一目标词语作为词对齐模型的输入,通过词对齐模型输出第二目标词语,第二目标词语的词义与第一目标词语的词义相同,第二目标词语的语言是指第一通用平行语料中除参考单语之外的语言;
[0055] 第三确定子单元,用于将第一目标词语和第二目标词语,确定为第二专业平行词语对对应的通用平行词语对。
[0056] 可选地,参考单语是指第一通用平行语料的源单语,且N个专业平行词语对的源单语与第一通用平行语料的源单语相同。
[0057] 第四方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器用于存储执行上述第二方面所提供的伪专业平行语料的确定方法的程序,以及存储用于实现上述第二方面所提供的伪专业平行语料的确定方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述存储设备的操作装置还可以包括通信总线,该通信总线用于该处理器与存储器之间建立连接。
[0058] 第五方面,提供了一种机器翻译系统,所述系统包括模型训练端和数据服务端,所述模型训练端用于执行上述第一方面所述的方法,所述数据服务端用于执行上述第二方面所述的方法。
[0059] 第六方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第二方面所述的伪专业平行语料的确定方法。
[0060] 第七方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的伪专业平行语料的确定方法。
[0061] 上述第三方面、第四方面、第五方面、第六方面和第七方面所获得的技术效果与第一方面和第二方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
[0062] 本申请提供的技术方案至少可以带来以下有益效果:
[0063] 由于第一通用平行语料包括非专业领域的多个通用平行语句对,而且第一通用平行语料包括大量的通用平行语句对,因此,通过M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换之后,可以得到大量的伪专业平行语句对,也即是,伪专业平行语料可以包括大量的伪专业平行语句对,且由于专业领域的专业平行词语对较多且容易扩充,因此本方案具有可持续性。另外,由于本方案引入了专业领域的专业平行词语对,也即增加了专业领域的专业词语的覆盖率,增强了专业信息,因此,使用本方案生成的伪专业平行语料对基础神经机器翻译模型进行微调之后,得到的神经机器翻译模型在专业领域的翻译质量有较大提升。附图说明
[0064] 图1是本申请实施例提供的一种机器翻译模型的确定方法所涉及的系统架构图;
[0065] 图2是本申请实施例提供的一种计算机设备的结构示意图;
[0066] 图3是本申请实施例提供的一种机器翻译模型的确定方法的流程图
[0067] 图4是本申请实施例提供的另一种机器翻译模型的确定方法的流程图;
[0068] 图5是本申请实施例提供的一种伪专业平行语料的确定方法的流程图;
[0069] 图6是本申请实施例提供的另一种伪专业平行语料的确定方法的流程图;
[0070] 图7是本申请实施例提供的一种伪专业平行语料的确定装置的结构示意图。

具体实施方式

[0071] 为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
[0072] 首先,对本申请实施例中涉及的部分术语进行解释说明,以方便理解。
[0073] 神经机器翻译:是2014年开始兴起的一种机器翻译方法。NMT逐渐应用递归神经网络卷积神经网络、注意机制等技术来构造对文本序列的编码和解码模型,从而实现对文本的翻译。神经机器翻译从2016年以来已基本全面取代传统的基于统计的机器翻译。
[0074] 领域适应学习:是迁移学习的一种方法。领域自适应适用于解决神经机器翻译模型面临的训练数据集和测试数据集以及真实场景数据分布不一致的挑战。领域自适应学习的思路是将不同领域的数据特征映射到同一个特征空间,这样可利用其它领域数据来增强专业领域训练。
[0075] 模型微调(fine tuning,FT):对已经训练好的NMT模型,用少量的专业领域的数据再训练以提高该NMT模型在该专业领域的性能。
[0076] 平行语料(parallel corpus):指使用不同语言对照书写、句子之间相互对齐、相互翻译的文本。平行语料是训练神经机器翻译模型的重要数据。
[0077] 单语语料(monolingual corpus):指使用单一语言书写的文本。单语语料是用来构成平行语料的基础。
[0078] 词对齐(word alignment):指对机器翻译模型训练用的平行语料中,将目标单语词语与源单语词语中词义相同的词语进行对齐的操作。由于不同语言的语法、表达方式、使用习惯不同,平行语料中词的对齐关系存在较大差异。建立平行语料词汇之间的对应关系,可以提高NMT模型的翻译质量。
[0079] 机器翻译自动评价方法(bilingual evaluation understudy,BLEU):业界用来对机器翻译质量的一种自动评估指标。BLEU是用于测量机器翻译得到的文本与翻译参考文本之间的相似度的一种算法,BLEU值越大表明机器翻译的质量越高。
[0080] 伪专业平行语料:指在专业领域的专业性介于通用平行语料和专业平行语料之间的一种平行语料,在专业领域中,伪专业平行语料的专业性高于通用平行语料,且低于专业平行语料。
[0081] 请参考图1,图1是本申请实施例提供的一种机器翻译模型的确定方法所涉及的系统架构图。该系统架构包括模型训练端101和数据服务端102,模型训练端101与数据服务端102之间可以以无线或者有线等方式连接以进行通信,本申请对此不作限定。
[0082] 模型训练端101用于从数据服务端102中获取伪专业平行语料,并根据获取的伪专业平行语料,对基础神经机器翻译模型进行训练,得到神经机器翻译模型。数据服务端102用于获取专业领域的专业平行词语对,以及第一通用平行语料,并根据专业平行词语对和通用平行语料生成伪专业平行语料,并存储伪专业平行语料。
[0083] 其中,伪专业平行语料包括多个伪专业平行语句对,该多个伪专业平行语句对是用专业领域的专业平行词语对,对第一通用平行语料包括的非专业领域的通用平行语句对中对应的通用平行词语对进行替换后得到的。神经机器翻译模型用于进行机器翻译,基础神经机器翻译模型是通过第二通用平行语料对初始神经网络训练得到的,第一通用平行语料与第二通用平行语料相同或者不同。
[0084] 其中,一个通用平行语句对包括非专业领域的一句源单语语句和一句目标单语语句,通过专业平行词语对,对一个通用平行语句对中对应的通用平行词语对进行替换后,可以得到一句伪专业源单语语句和一句伪专业目标单语语句,也即是一个伪专业平行语句对包括一句伪专业源单语语句和一句伪专业目标单语语句。其中,一个专业平行词语对包括专业领域的一个专业源单语词语和一个专业目标单语词语。
[0085] 需要说明的是,平行语料是指使用不同语言对照书写、句子之间相互对齐、相互翻译的文本。通用平行语料是指在各个领域都能够适用的平行语料。伪专业平行语料是指在专业领域的专业性介于通用平行语料和专业平行语料之间的一种平行语料,在专业领域中,伪专业平行语料的专业性高于通用平行语料,且低于专业平行语料。
[0086] 平行语句对是指使用不同语言对照书写、句子之间相互对齐、相互翻译的语句对。通用平行语句对是指在各个领域都能够适用的平行语句对。专业平行语句对是指专业领域的平行语句对。伪专业平行语句对是指专业性介于通用平行语句对和专业平行语句对之间的一种平行语句对,在专业领域中,伪专业平行语句对的专业性高于通用平行语句对,且低于专业平行语句对。
[0087] 平行词语对是指使用不同语言对照书写、词语之间相互翻译的词语对。专业平行词语对是指专业领域的平行词语对。
[0088] 需要说明的是,对于专业领域的专业平行词语对的获取方式可以有多种,例如,可以从专业领域的相关网站上直接获取专业电子字典,该专业电子字典中包括大量的专业平行词语对,此外,还可以随时向专业电子字典中添加新的专业平行词语对,也即对专业电子字典进行扩充。例如,可以从大量的平行语料中获取专业领域的专业平行词语对,还可以从专业领域的相关网站上获取专业领域的专业平行词语对,将获取到的专业领域的所有专业平行词语对添加在专业电子字典中,以对专业电子字典进行扩充,从而可以得到大量的专业领域的专业平行词语对。
[0089] 另外,模型训练端101在调优训练得到神经机器翻译模型之后,还可以用于为各种用户终端提供该神经机器翻译模型,以使用户终端可以使用该神经机器翻译模型进行机器翻译。
[0090] 需要说明的是,在本申请实施例中,模型训练端101可以是一台服务器,也可以是多台服务器构成的服务器集群,还可以是一个计算服务中心,数据服务端102可以是一台服务器,也可以是多台服务器构成的服务器集群,还可以是一个云计算服务中心,本申请实施例对此不作限定。
[0091] 值得注意的是,在本申请实施例中,模型训练端101与数据服务端102可以为同一设备,也可以为不同的设备。其中,设备可以指上述一台服务器、一个服务器集群或者一个云计算服务中心。也即是,模型训练端101与数据服务端102可以处于同一个云端,或者处于不同的云端,或者为同一个服务器或服务器集群,或者为两个独立的服务器或服务器集群,又或者,模型训练端101和数据服务端102中的一个处于云端,另一个为一台服务器或者一个服务器集群,本申请实施例对此不作限定。基于此,模型训练端101与数据服务端102之间具体的通信方式可以有多种,本申请实施例对此不作限定。
[0092] 请参考图2,图2是根据本申请实施例提供的一种计算机设备的结构示意图,该计算机设备可以是图1中所示的数据服务端102,也可以是模型训练端101。该计算机设备包括至少一个处理器201、通信总线202、存储器203以及至少一个通信接口204。
[0093] 处理器201可以是一个通用中央处理器(central processing unit,CPU)、网络处理器(NP)、微处理器、或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
[0094] 通信总线202用于在上述组件之间传送信息。通信总线202可以分为地址总线数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0095] 存储器203可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器203可以是独立存在,并通过通信总线202与处理器201相连接。存储器203也可以和处理器201集成在一起。
[0096] 通信接口204使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口204包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合等。
[0097] 在具体实现中,作为一种实施例,处理器201可以包括一个或多个CPU,如图2中所示的CPU0和CPU1。
[0098] 在具体实现中,作为一种实施例,计算机设备还可以包括处理器208,该处理器208可以包括一个或多个图形处理器(graphics processing unit,GPU),如图2中所示的GPU0和GPU1,该一个或多个GPU可以用于处理本申请实施例中深度学习相关的计算操作。
[0099] 在具体实现中,作为一种实施例,计算机设备可以包括多个处理器,如图2中所示的处理器201、处理器205和处理器208。这些处理器中的每一个可以是一个单核处理器(single-CPU或single-GPU),也可以是一个多核处理器(multi-CPU或multi-GPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
[0100] 在具体实现中,作为一种实施例,计算机设备还可以包括输出设备206和输入设备207。输出设备206和处理器201通信,可以以多种方式来显示信息。例如,输出设备206可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备207和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备207可以是鼠标键盘触摸屏设备或传感设备等。
[0101] 在一些实施例中,存储器203用于存储执行本申请方案的程序代码210,上述任一处理器可以执行存储器203中存储的程序代码210。也即是,该计算机设备可以通过上述任一处理器以及存储器203中的程序代码210,来实现下文图4实施例提供的伪专业平行语料的确定方法。
[0102] 本申请实施例还提供了一种芯片。该芯片中集成了用于实现上述任一处理器的功能的电路和一个或者多个接口。可选的,该芯片支持的功能可以包括上述方案实施例中的相应处理动作,此处不再赘述。
[0103] 请参考图3,图3是本申请实施例提供的一种机器翻译模型的确定方法的流程图。该方法可以包括如下步骤。
[0104] 步骤301:机器翻译的模型训练端从数据服务端中获取伪专业平行语料,伪专业平行语料包括多个伪专业平行语句对。
[0105] 在一些实施例中,模型训练端可以向数据服务端发送平行语料获取请求。当数据服务端接收到平行语料获取请求时,可以将存储的伪专业平行语料发送给模型训练端。
[0106] 其中,数据服务端存储的伪专业平行语料可以为数据服务端预先生成的。也即是,数据服务端预先根据专业领域的专业平行词语对,以及通用平行语料,生成并存储伪专业平行语料。具体的生成方法可以参考下述图5所示的实施例,本申请实施例在此不展开说明。
[0107] 步骤302:模型训练端根据多个伪专业平行语句对,对基础神经机器翻译模型进行训练,得到神经机器翻译模型,该神经机器翻译模型用于进行机器翻译,基础神经机器翻译模型是通过第二通用平行语料对初始神经网络训练得到的,第一通用平行语料与第二通用平行语料相同或者不同。
[0108] 为了实现机器翻译,模型训练端可以先根据第二通用平行语料对初始神经网络进行训练,得到基础神经机器翻译模型。但是由于第二通用平行语料中包括的专业领域的平行语料较少,因此,基础神经翻译模型在专业领域的翻译质量有限。为了提高专业领域的翻译质量,当模型训练端从数据服务端获取到伪专业平行语料之后,可以根据伪专业平行语料包括的多个伪专业平行语句对,对基础神经机器翻译模型进行调优训练,得到神经机器翻译模型。也即是,通过伪专业平行语料对基础神经翻译模型进一步微调,从而可以保证微调后得到的神经机器翻译模型在专业领域的翻译质量得到提升。
[0109] 其中,模型训练端可以先根据第二通用平行语料对初始神经网络进行训练,得到基础神经机器翻译模型,之后,可以根据伪专业平行语料中包括的多个伪专业平行语句对,对基础神经机器翻译模型进行调优训练,得到领域自适应的神经机器翻译模型。
[0110] 示例性地,模型训练端可以在Transformer的开源fairseq模型平台上构建初始神经网络,并进行后续的训练和调优训练。
[0111] 也即是,如图4所示,假设第一通用平行语料与第二通用平行语料相同,数据服务端可以获取专业领域的专业平行词语对,以及通用平行语料,并生成伪专业平行语料。模型训练端可以通过通用平行语料对初始神经网络进行训练,得到基础神经机器翻译模型。在得到基础神经机器翻译模型后,模型训练端可以从数据服务端获取伪专业平行语料,并使用伪专业平行语料对基础神经机器翻译模型进一步训练,使神经机器翻译模型更好的学习到该专业领域的文本特征,得到在专业领域翻译质量更高的神经机器翻译模型。
[0112] 模型训练端得到训练好的神经机器翻译模型之后,各种用户终端可以从模型训练端上调用该神经机器翻译模型,又或者,模型训练端还可以将神经机器翻译模型部署在其他的服务器或者云端上,用户终端可以从这些服务器或者云端上调用该神经机器翻译模型。另外,模型训练端还可以直接将训练好的神经机器翻译模型部署在各种用户终端上,以使用户终端可以直接使用该神经翻译机器模型进行机器翻译。
[0113] 其中,用户终端可以为便携式终端,例如手机、笔记本电脑平板电脑等,还可以是台式电脑、智能家电、智能音箱、智能手环等,各种用户终端用于使用本申请中的神经机器翻译模型进行机器翻译。
[0114] 在本申请实施例中,数据服务端可以根据专业领域的专业平行词语对,以及通用平行语料,生成伪专业平行语料,生成的伪专业平行语料中专业词语的覆盖率较高,也即该伪专业平行语料的专业性较高。模型训练端可以从数据服务端获取该伪专业平行语料,并使用伪专业平行语料对基础神经翻译模型进行调优训练,这样,可以更有效地提高神经机器翻译模型在专业领域的翻译质量,后续可以将该神经机器翻译模型部署到各种用户终端上,或者用户终端可以调用该神经机器翻译模型,利于用户终端使用该神经机器翻译模型进行专业领域的文本翻译,得到高质量的翻译结果。
[0115] 图5是本申请实施例提供的一种伪专业平行语料的确定方法的流程图,该方法可以应用于图1所示的数据服务端中,数据服务端可以为图2所示的计算机设备,存储器203中存储有可以执行该方法的程序代码210,该程序代码210可以由处理器201、处理器205或者处理器208来执行,以实现图5实施例提供的机器翻译中伪专业平行语料的生成方法。
[0116] 在一些实施例中,图5所示的伪专业平行语料的确定方法可以由处理器208执行存储器210中的程序代码来实现,也即可以通过处理器208中的GPU来执行下述步骤501至步骤504。
[0117] 请参考图5,该方法包括如下步骤:
[0118] 步骤501:获取第一通用平行语料和专业领域的N个专业平行词语对,第一通用平行语料包括非专业领域的多个通用平行语句对,N个专业平行词语对包括专业平行单词对和/或专业平行短语对,N为大于或等于1的整数。
[0119] 在本申请实施例中,数据服务端可以从专业领域的相关网站上直接获取专业电子字典,该专业电子字典中包括大量的专业平行词语对,此外,还可以随时向专业电子字典中添加新的专业平行词语对,也即对专业电子字典进行扩充。例如,可以从大量的平行语料中获取专业领域的专业平行词语对,还可以从专业领域的相关网站上获取专业领域的专业平行词语对,将获取到的专业领域的所有专业平行词语对添加到专业电子字典中,以对专业电子字典进行扩充,也即扩充之后的专业电子字典可以包括专业领域的N个专业平行词语对。另外,还可以随时向专业电子字典中添加专业平行词语对,也即对专业电子字典进行扩充。其中,N个专业平行词语对可以包括专业平行单词对和/或专业平行短语对。此外,可以从机器翻译的相关网站上获取第一通用平行语料,第一通用平行语料可以是非专业领域的平行语料,第一通用平行语料包括非专业领域的多个通用平行语句对。其中,非专业领域可以包括一个或多个不同的领域。
[0120] 需要说明的是,一个专业平行词语对包括专业领域的一个专业源单语词语和一个专业目标单语词语,一个通用平行语句对包括非专业领域的一句源单语语句和一句目标单语语句。
[0121] 此外,本申请实施例提供的伪专业平行语料确定方法适用于各种专业领域,例如,医疗、法律、体育、财经、IT等专业领域,平行双语可以是英法、英德、法英、德法等双语。
[0122] 示例性地,以医疗专业领域和英法双语为例,数据服务端可以从大量的平行语料中获取医疗专业领域的专业平行词语对,还可以从医疗专业的相关网站上获取医疗专业领域的专业平行词语对,将获取到的所有的专业平行词语对构建为专业电子字典。也即是,该专业电子字典中可以包括N个专业英法平行词语对,其中,一个专业英法平行词语对可以为一个专业英法平行单词对或者一个专业英法平行短语对,也即是,一个专业英法词语对可以是由词义相同的一个专业英语单词和一个专业法语单词组成的,或者是由词义相同的一个专业英语短语和一个专业法语短语组成的。数据服务端还可以从机器翻译的相关网站上获取第一通用平行语料,例如,欧洲议会网站(Europarl v7)和新闻评述平台(News-commentary)提供的第一通用平行语料,该第一通用平行语料中包括非专业领域的多个通用英法平行语句对,一个通用英法平行语句对可以是由语义相同且词对齐的一句英语语句和一句法语语句组成的。
[0123] 步骤502:从多个通用平行语句对中,查找与N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对。
[0124] 在本申请实施例中,数据服务端可以从多个通用平行语句对中,通过相似度计算方法,即可以通过计算N个专业平行词语对中的每个专业平行词语对与多个通用平行语句对之间的相似度,来查找N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对,将查找到的所有的候选平行语句对作为候选语料。
[0125] 作为一种示例,数据服务端可以从多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,如果查找到与参考单语词语之间的相似度大于相似度阈值的参考单语语句,则将查找到的参考单语语句所在的通用平行语句对,确定为第一专业平行词语对对应的候选平行语句对。其中,第一专业平行词语对是指N个专业平行词语对中的任一专业平行词语对,参考单语是指第一通用平行语料中的任一种语言。
[0126] 需要说明的是,在本申请实施例中,可以通过词与句相似度计算方法,计算第一专业平行词语对中的参考单语词语与多个通用平行语句对中的参考单语语句之间的相似度。
[0127] 在本申请实施例中,为了提高获取候选平行语句对的效率,数据服务端还可以通过将聚类算法、以及词与句相似度计算方法相结合的方式,来获取候选平行语句对。
[0128] 作为一种示例,数据服务端可以对多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果,其中,每个聚类结果包括一个或多个参考单语语句。然后,从多个聚类结果中,确定聚类中心与第一专业平行词语对中的参考单语词语之间的相似度最大的聚类结果,得到目标聚类结果。从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句,将查找到的参考单语语句所在的通用平行语句对作为第一专业平行词语对对应的候选平行语句对。
[0129] 在本申请实施例中,数据服务端可以使用聚类算法对多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果。由于每个聚类结果具有一个聚类中心,因此,数据服务端可以根据词与句相似度计算方法,从多个聚类结果中,确定聚类中心与第一专业平行词语对中的参考单语词语之间的相似度最大的聚类结果,得到目标聚类结果。在得到目标聚类结果之后,数据服务端还可以根据词与句相似度计算方法,从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句,将查找到的参考单语语句所在的通用平行语句对作为第一专业平行词语对对应的候选平行语句对。
[0130] 在一种可能的实现方式中,数据服务端可以直接通过对比语句之间词语的相似度的方式,将多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果。也即是,对于多个通用平行语句对中的参考单语语句,查找参考单语语句中出现同一专业领域的词汇的数量大于数量阈值的参考单语语句,将查找到的参考单语语句作为一个聚类结果。由于通用平行语句对中包含大量的不同专业领域的参考单语语句,因此,数据服务端对所有的参考单语语句进行聚类可以得到多个聚类结果。之后,可以将每个聚类结果中的任一句参考单语语句作为对应的聚类中心,也即每个聚类中心是一句参考单语语句。然后数据服务端可以通过词与句相似度计算方法,计算每个聚类中心与第一专业平行词语对中的参考单语词语之间的相似度,将相似度最大的聚类中心所在的聚类结果确定为目标聚类结果。在得到目标聚类结果之后,再根据词与句相似度计算方法,从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句,将查找到的参考单语语句所在的通用平行语句对,确定为第一专业平行词语对对应的候选平行语句对。
[0131] 在另一种可能的实现方式中,数据服务端可以先将多个通用平行语句对中的参考单语语句进行句向量表示,也即是,将每个参考单语语句转换为对应的句向量。通过计算向量之间的相似度的方式,将多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个参考单语语句。由于每个参考单语语句具有对应的句向量,因此,可以将每个聚类结果包括的一个或多个参考单语语句一一对应的一个或多个句向量的平均值作为对应的聚类中心,也即每个聚类中心是一个向量。然后数据服务端可以将第一专业平行词语对中的参考单语词语进行词向量表示,计算每个聚类中心与第一专业平行词语对中的参考单语词语对应的词向量之间的相似度,将相似度最大的聚类中心所在的聚类结果确定为目标聚类结果。之后,再根据词与句相似度计算方法,从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句,将查找到的参考单语语句所在的通用平行语句对确定为第一专业平行词语对对应的候选平行语句对。
[0132] 示例性地,数据服务端可以采用facebook高效相似搜索和密集向量聚类工具faiss来实现上述聚类以及词与句相似度计算,得到每个专业平行词语对中的每个参考单语词语对应的候选平行语句对。由于该faiss工具将聚类算法和词与句相似度计算方法进行了融合,使用该工具可以直接得到候选平行语句对。
[0133] 需要说明的是,参考单语可以是指第一通用平行语料中的任一种语言,也即参考单语可以是源单语,也可以是目标单语,且专业平行词语对的源单语与第一通用平行语料的源单语相同。其中,源单语是指机器翻译中待翻译的文本的语言,目标单语是指翻译得到的文本的语言。
[0134] 还需要说明的是,上述数量阈值和相似度阈值可以事先根据经验设置,本申请实施例对此不作具体限定,且对于不同的专业平行词语对,根据相似度阈值确定得到的候选平行语句对的数量可能不同。
[0135] 步骤503:如果查找到M个专业平行词语对对应的候选平行语句对,则从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,M小于或等于N。
[0136] 在本申请实施例中,数据服务端可能会查找到N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对,当然,数据服务端可能只会查找到N个专业平行词语对中的部分专业平行词语对对应的候选平行语句对。也即是,数据服务端可以查找到M个专业平行词语对对应的候选平行语句对,其中,M小于或等于N。之后,数据服务端可以从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对。
[0137] 在一些实施例中,数据服务端可以确定第一候选平行语句对中的第一目标词语和第二目标词语,将第一目标词语和第二目标词语确定为第二专业平行词语对对应的通用平行词语对。其中,第一目标词语是指与第二专业平行词语对中的参考单语词语的词性相同且与参考单语词语之间的相似度最大的词语,第二目标词语是指与第一目标词语的词义相同的词语,第一候选平行语句对是指第二专业平行词语对对应的任一候选平行语句对,第二专业平行词语对是指M个专业平行词语对中的任一专业平行词语对。
[0138] 作为一种示例,数据服务端可以通过下述步骤(1)以及步骤(2)来确定第二专业平行词语对对应的通用平行词语对。
[0139] (1)确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,从该多个词语中,获取与第二专业平行词语对中的参考单语词语的词性相同的词语,确定获取的每个词语与参考单语词语之间的相似度,从第一候选平行语句对中的参考单语语句中,确定第一目标词语。
[0140] 在本申请实施例中,数据服务端可以通过词性标注算法,确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,从多个词语中,获取与第二专业平行词语对中的参考单语词语的词性相同的词语,然后根据词相似度计算方法,确定获取的每个词语与参考单语词语之间的相似度,将相似度最大的词语确定为第一目标词语。
[0141] 由于专业平行词语对中可能包括单词和/或短语,即第二专业平行词语对可以是专业单词对或者专业短语对,第一候选平行语句对中的参考单语语句包括的多个词语也可能包括单词和/或短语,相应的,第一目标词语可能是单词,也可能是短语。因此,在确定第一候选平行语句对中的参考单语语句包括的多个词语的词性之前,可以先确定第一候选平行语句对中的参考单语语句中的多个词语是否包括短语,然后再进行词性标注。如果第一候选平行语句对中的参考单语语句包括短语和单词,则可以对多个词语中的短语的词性进行标注,以及对多个词语中的单词的词性进行标注。如果第一候选平行语句对中的参考单语语句不包括短语,也即仅包括多个单词,则对多个单词的词性进行标注。
[0142] 可选地,确定第一候选平行语句对中的参考单语语句包括的多个词语的词性的一种实现方式可以为:对第一候选平行语句对中的参考单语语句进行分词处理,得到多个单词,按照多个单词的顺序,根据参考单语短语表,确定第一候选平行语句对中的参考单语语句是否包括短语。如果第一候选平行语句对中的参考单语语句包括一个或多个短语,则对多个单词中除一个或多个短语之外的单词的词性进行标注,以及对一个或多个短语的词性进行标注。如果第一候选平行语句对中的参考单语语句不包括短语,则对多个单词的词性进行标注。
[0143] 在本申请实施例中,数据服务端可以预先获取参考单语短语表,根据参考单语短语表,来确定第一候选平行语句对中的参考单语语句中的多个词语是否包括短语。也即是,数据服务端按照多个单词中每个单词在参考单语语句中的顺序,将参考单语短语表中包括的每个参考单语短语与多个单词进行匹配。如果多个单词中匹配到参考单语短语,即表示该参考单语语句包括短语,将匹配到的一个或多个短语作为参考单语语句包括的短语。然后,数据服务端可以对参考单语语句中的多个单词中除短语之外的单词的词性进行标注,对匹配到的所有的短语的词性进行标注。如果未匹配到参考单语短语,即该参考单语语句不包括短语,则数据服务端对参考单语语句中的多个单词的词性进行标注。
[0144] 在一种可能的实现方式中,数据服务端可以根据第一通用平行语料中的多个参考单语语句,构建参考单语短语表,该参考单语短语表包括多个参考单语短语。具体的构建方法可以参考相关技术。
[0145] 需要说明的是,本申请实施例在词性标注之后,从该多个词语中,可能会获取到与第二专业平行语句对中的参考单语词语的词性相同的一个词语,也可能会获取到与第二专业平行语句对中的参考单语词语的词性相同的多个词语。另外,一个词语的词性可以是名词、动词、介词、形容词、副词等,假设第二专业平行词语对的词性为名词,则获取到的一个或多个词语的词性也为名词。
[0146] 示例性地,本申请实施例中的词相似度计算方法可以是余弦相似度计算方法,余弦相似度计算方法是用向量空间中两个向量的夹的余弦值作为度量两个个体(短语、语句、单词等)间的相似度的一种计算方法。数据服务端在获取到与第二专业平行语句对中的参考单语词语的词性相同的词语之后,可以通过余弦相似度计算方法,计算该参考单语词语与获取的每个词语之间的词相似度,将词相似度最大的词语确定为第一目标词语。
[0147] 需要说明的是,使用余弦相似度计算方法之前,数据服务端可以将第二专业平行词语对中的参考单语词语进行词向量表示,以及将获取的与该参考单语词语的词性相同的每个词语进行词向量表示,从而可以得到参考单语词语的词向量,以及与该参考单语词语的词性相同的每个词语的词向量。之后,可以计算该参考单语词语的词向量与该参考单语词语的词性相同的每个词语的词向量之间的余弦值,将余弦值作为词相似度,进而可以将与参考单语词语的词相似度最大的词语确定为第一目标词语。
[0148] (2)根据第一目标词语,从第一候选平行语句对中,确定第二专业平行词语对对应的通用平行词语对。
[0149] 在本申请实施例中,根据第一目标词语,从第一候选平行语句对中,确定第二专业平行词语对对应的通用平行词语对的实现方式可以有多种,也即是在确定第一目标词语之后,确定第二专业平行词语对对应的通用平行词语对中的第二目标词语的实现方式可以有多种,接下来列举出两种实现方式。
[0150] 在一种可能的实现方式中,数据服务端可以通过词对齐模型,来确定第二目标词语,进而组成第二专业平行词语对对应的通用平行词语对。具体地,数据服务端可以将第一候选平行语句对和第一目标词语作为词对齐模型的输入,通过词对齐模型输出第二目标词语,第二目标词语的词义与第一目标词语的词义相同,且第二目标词语的语言是指第一通用平行语料中除参考单语之外的语言。之后,可以将第一目标词语和第二目标词语,确定为第二专业平行词语对对应的通用平行词语对。
[0151] 由于词对齐模型可以将平行语句对中的两个语句词义相同的词语进行对齐,即建立两个语句之间词义相同的词语的对应关系,因此,将第一候选平行语句对和第一目标词语作为词对齐模型的输入之后,可以通过词对齐模型输出与第一目标词语对齐的第二目标词语。
[0152] 示例性地,本申请实施例中的词对齐模型可以是根据第一通用平行语料对初始词对齐模型进行训练得到的。例如,本申请实施例中的初始词对齐模型可以采用IBM fast align对齐模型,然后使用第一通用平行语料对该初始词对齐模型进行训练,然后根据训练好的词对齐模型来确定第二目标词语。
[0153] 在另一种可能的实现方式中,数据服务端可以根据词性标注和词相似度计算方法,来确定第二目标词语。为了便于描述,以参考单语为源单语、第一通用平行语料中除参考单语之外的语言为目标单语为例进行描述。与前述确定第一目标词语的方法相似,根据第二专业平行词语对中的目标单语词语,以及第一候选平行语句对中目标单语语句中的多个词语,按照词性标注和词相似度计算方法,来确定第二目标词语。首先,通过对目标单语语句中的多个词语的词性进行标注,获取该多个词语中与目标单语词语的词性相同的词语,然后,计算选择出的每个词语与目标单语词语的词相似度,将与目标单语词语的词相似度最大的词语确定为第二目标词语。
[0154] 需要说明的是,在这种实现方式中,计算词相似度采用的词相似度计算方法也可以是余弦相似度计算方法,具体的实现方式可以参考前述确定第一目标词语的过程,在此不再赘述。
[0155] 步骤504:用M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到机器翻译中的伪专业平行语料。
[0156] 在本申请实施例中,数据服务端从M个专业平行词语对中的每个专业平行词语对对应的候选平行语句对中,查找与每个专业平行词语对对应的通用平行词语对之后,可以用M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换。以第二专业平行词语对为例,可以用第二专业平行词语对中的参考单语词语,对第一目标词语进行替换,用第二专业平行词语对中的除参考单语词语之外的单语词语,对第二目标词语进行替换,将替换后的候选平行语句对确定为伪专业平行语料中的伪专业平行语句对。
[0157] 需要说明的是,上述实施例中是将多个词语中与对应的专业平行词语对中的参考单语词语的词性相同的词语进行替换。在另一些实施例中,也可以对词性为非名词的词语进行过滤,只对词性为名词的词语进行替换,从而可以减少根据专业平行词语对对候选平行语句对中词语替换的误差。
[0158] 在本申请实施例中,参考单语可以是源单语,且专业平行词语对的源单语与第一通用平行语料的源单语相同。在这种情况下,数据服务端可以用第二专业平行词语对中的专业源单语词语,对第一目标词语进行替换,用第二专业平行词语对中的专业目标单语词语,对第二目标词语进行替换,将替换后的候选平行语句对确定为伪专业平行语料中的伪专业平行语句对。
[0159] 需要说明的是,在机器翻译中,通常将专业领域的专业平行语料作为测试数据集,以测试神经机器翻译模型的翻译准确率。本申请实施例中的第一通用平行语料是非专业领域的平行语料,而根据本申请实施例提供的技术方案所生成的伪专业平行语料在专业领域的专业性是高于通用平行语料的,且低于专业平行语料的,伪专业是一个中间概念,是相对专业的,根据相对专业的伪专业平行语料对基础神经机器翻译模型进行微调,可以在专业领域内提高神经机器翻译模型的翻译质量,即在专业领域内提高翻译准确率。
[0160] 接下来通过图6对本申请实施例提供的伪专业平行语料的确定方法进行解释。参见图6,平行四边形节点表示方法流程中的输入数据或者输出数据,矩形节点表示方法流程中的操作,箭头代表操作或者数据的走向,对图6中涉及的部分操作和数据的解释如下:
[0161] 输入数据:第一通用平行语料、专业领域的N个专业平行词语对。
[0162] 词与句相似度计算:对于N个专业平行词语对中的每个专业平行词语对,查找通用平行语料中对应的候选平行语句对,作为候选语料。
[0163] 词性标注:以第二专业平行词语对为例,对第二专业平行词语对对应的候选平行语句对中的参考单语语句中的每个词语的词性进行标注,按照词性标注结果,获取与第二专业平行词语对中的参考单语词语的词性相同的词语。
[0164] 词相似度计算:计算获取的与第二专业平行词语对中的参考单语词语的词性相同的每个词语与第二专业平行词语对中的参考单语词语之间的相似度,并将相似度最大的词语确定为第一目标词语。
[0165] 词对齐:通过词对齐模型,确定第二专业平行词语对对应的候选平行语句对中的第二目标词语。
[0166] 对齐替换:用M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到机器翻译中的伪专业平行语料。
[0167] 输出数据:伪专业平行语料。
[0168] 示例性地,接下来通过一段代码对本申请实施例提供的伪专业平行语料确定方法进行解释说明。首先,可以获取通用英法平行语料Oc以及医疗专业领域的N个专业英法平行词语对,将N个专业英法平行词语对构建为医疗专业英法平行电子字典Id。假设,医疗专业英法平行电子字典中英语为源单语,法语为目标单语,医疗专业英法平行电子字典中包括医疗专业领域的N个专业英法平行词语对,每个专业英法平行词语对由词义相同的一个专业源单语词语和一个专业目标单语词语组成。通用英法平行语料中英语单语语句为源单语语句,法语单语语句为目标单语语句,一对通用英法平行语句对是由对照翻译的一句源单语语句和一句目标单语语句组成。
[0169]
[0170] 然后,使用聚类算法将通用平行语料Oc中的源单语语句进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个源单语语句。对于医疗专业英法平行电子字典中一个专业源单语词语Ilang1,Ilang1∈Id,通过词与句相似度计算方法,计算Ilang1与每个聚类中心的相似度。将与Ilang1的相似度最高的一个聚类中心所在的聚类结果,确定为目标聚类结果。然后计算Ilang1与目标聚类结果中包括的每个源单语语句的相似度。将相似度大于相似度阈值的源单语语句所在的通用英法平行语句对作为候选英法平行语句对SK,其中,K表示SK中的语句对的数量。
[0171] 在本申请实施例中,可以通过采用前述facebook高效相似搜索和密集向量聚类工具faiss来查找通用英法平行语料中Ilang1对应的候选英法平行语句对SK。
[0172] 其次,将候选英法平行语句对SK中的每句源单语语句Slang1进行分词,得到多个单词,按照该多个单词在该源单语语句Slang1中的顺序,根据源单语短语表,确定Slang1中是否包括短语。如果Slang1中包括一个或多个短语,将Slang1中除一个或多个短语之外的单词进行词性标注,以及将Slang1中每个短语的词性进行标注。进行词性标注之后,获取Slang1中与专业源单语词语Ilang1的词性相同的词语,通过词相似度计算方法,计算获取的与专业源单语词语Ilang1的词性相同的每个词语与专业源单语词语Ilang1之间的相似度,将相似度最高的词语确定为Slang1中的第一目标词语Wlang1。将第一目标词语Wlang1、源单语语句Slang1以及对应的目标单语语句Slang2输入词对齐模型中,词对齐模型输出Slang2中与Wlang1的词义相同的且对齐的词语,即输出第二目标词语Wlang2。然后,用专业源单语词语Ilang1对源单语语句Slang1中的第一目标词语Wlang1进行对齐替换,得到伪专业英语单语语句Glang1,用与Ilang1对应的专业目标单语词语Ilang2对第二目标词语Wlang2进行对齐替换,得到伪专业法语单语语句Glang2。
[0173] 假设医疗专业英法平行电子字典中的每个专业英法平行词语对均可以从通用英法平行语料中查找到对应的候选英法平行语句对,根据前述方法,用医疗专业英法平行电子字典中的每一个专业源单语词语Ilang1和对应的专业目标单语词语Ilang1,对对应的第一目标词语Wlang1和第二目标词语Wlang2进行替换,将替换后的所有的候选英法平行语句对作为医疗专业领域的伪专业英法平行语料L。其中,伪专业英法平行语料L中包含多个替换后的候选英法平行语句对。
[0174] 由于医疗专业英法平行电子字典中包括的医疗专业领域的专业词语很多,因此根据上述方法确定的医疗专业领域的伪专业英法平行语料可以有很多,且该伪专业英法平行语料中的专业词语的覆盖率很高,后续使用该伪专业英法平行语料对基础神经机器翻译模型进行微调,得到的神经机器翻译模型在医疗专业领域的翻译质量会提升很多。
[0175] 由于本申请实施例提供的伪专业平行语料的确定方法适用于各种专业领域,例如,医疗、法律、体育、财经、IT等专业领域,平行语料中的两种语言可以是英法、英德、法英、德法等双语。接下来将以医疗专业领域和英法双语,以及参考单语为源单语为例,结合具体实例,对本申请实施例提供的伪专业平行语料的确定方法进行介绍。
[0176] 表1为本申请实施例中的医疗专业英法平行电子字典中包括的N个专业英法平行词语对中的一部分,医疗专业英法平行电子字典是由获取的医疗专业领域的N个专业英法平行词语对构建的。表1中左边一列为医疗专业英法平行电子字典中专业英语单语词语的一部分,右边一列为与左边一列对应的专业法语单语词语。
[0177] 表1
[0178]
[0179] 以表1中的专业英法平行单词对“cystitis”和“cystites”为例,可以获取第一通用平行语料中与专业英语单语词语“cystitis”对应的候选平行语句对。具体地,可以使用聚类工具对第一通用平行语料进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个英语单语语句,每个聚类结果具有一个聚类中心,然后根据词与句相似度计算方法,计算“cystitis”与每个聚类中心的相似度,选择相似度最大的聚类结果,得到目标聚类结果。然后计算“cystitis”与目标聚类结果中包括的每一句英语单语语句的相似度,查找相似度大于相似度阈值的英语单语语句,将查找到的英语单语语句所在的通用平行语句对作为与专业英语单语词语“cystitis”对应的候选平行语句对。
[0180] 表2为本申请实施例中选择出来的与“cystitis”对应的候选平行语句对。表2左边一列是候选平行语句对中的英语单语语句,表2中间一列表示相似度,表2右边一列是通用平行语料中与左边一列相对应的法语单语语句。表2中的所有的英语单语语句是按照相似度的值从大到小的顺序排列,其中,英语单语语句“But few predicted last year's SARS epidemic,a pneumonia caused by coronavirus.”与“cystitis”的相似度最大,为28.428。
[0181] 表2
[0182]
[0183]
[0184] 获取与“cystitis”对应的候选平行语句对之后,可以获取每个候选平行语句对中与专业平行单词对“cystitis”和“cystites”对应的通用平行单词对。具体地,可以对候选平行语句对中的每一句英语单语语句进行分词,得到多个单词,根据英语单语短语表,可以确定表1中的英语单语语句中不包含短语,然后对每一句英语单语语句中的多个单词的词性进行标注。
[0185] 表3示出了本申请实施例中对表1中的英语单语语句“But few predicted last year's SARS epidemic,a pneumonia caused by coronavirus.”进行词性标注的结果。参见表3,第三列列出了最左一列的英语词语对应的词性,其中,“NN”和“NNP”均表示名词。按照词性标注的结果,可以获取该句英语单语语句中与“cystitis”的词性相同的词语,由于“cystitis”的词性为名词,也即获取该英语单语语句中的名词,参见表3,获取的词语为“SARS”、“pneumonia”和“coronavirus”。然后,采用余弦相似度方法分别计算这三个名词与“cystitis”的相似度,分别为0.849、0.896、0.878,可知,“pneumonia”与“cystitis”的相似度最大,即将“pneumonia”确定为第一目标词语。
[0186] 表3
[0187]
[0188] 在确定第一目标词语之后,这里可以选择根据词对齐模型来确定第二目标词语。例如,可以将“pneumonia”、以及“pneumonia”所在的候选平行语句对输入词对齐模型,通过词对齐模型将候选平行语句对中的英语单语语句和法语单语语句中的词义相同的词语进行对齐,并输出第二目标词语,第二目标单词为“pneumonie”。参见表3,表3中最左一列是上述英语单语语句中的多个单词,表3中最右一列是与该句英语单语语句对应的法语单语语句中的多个单词。
[0189] 按照与上述方法相同的方法对表2中的所有的候选平行语句对进行处理,获取所有候选平行语句对应的第一目标单词和第二目标单词,然后用专业英语词语“cystitis”对第一目标词语进行替换,用专业法语词语“cystites”对第二目标词语进行替换。表4是根据本申请实施例提供的伪专业平行语料的确定方法,对表2中的候选平行语句对中的第一目标词语和第二目标词语进行替换后得到的3对伪专业平行语句对。
[0190] 表4
[0191]
[0192] 接下来介绍根据本申请实施例提供的伪专业平行语料的确定方法,生成伪专业平行语料的生成速度,以及根据该伪专业平行语料对基础神经机器翻译模型进行微调后,对神经机器翻译模型的翻译性能提高情况,仍以医疗专业领域和英法双语为例进行介绍。
[0193] 首先,获取训练初始神经网络的数据集,包括训练数据集、测试数据集。参见表5,训练数据集来自于欧洲议会网站(Europarl v7)和新闻评述平台(News-commentary)提供的通用平行语料,训练数据集的数据规模为200万对,测试数据集可以来自于欧洲药品管理局(EMEA v3)提供的医疗专业领域的专业英法平行语料,测试数据集的数据规模为1000对,训练数据集和测试数据集的来源地址为http://opus.nlpl.eu/。
[0194] 需要说明的是,本实验中用于对初始神经网络进行训练的第二通用平行语料,与用于生成伪专业平行语料的第一通用平行语料相同,以下实验内容将第一通用平行语料和第二通用平行语料均称为通用平行语料。
[0195] 表5
[0196]
[0197]
[0198] 本申请实施例中的初始神经网络是基于Transformer的开源fairseq模型平台构建的。参见表6,采用通用平行语料对初始神经网络进行训练,得到基础神经机器翻译模型,并在上述测试数据集上进行测试,得到的BLEU值为20.22。再使用通用平行语料对基础神经机器翻译模型进行微调,并在相同的测试数据集上进行测试,得到的BLEU值为20.41,可见,仅使用非专业领域的通用平行语料对基础神经机器翻译模型进行微调,最终对专业领域的翻译质量的提升很小,因此,需要使用相对专业的伪平行语料对基础神经机器翻译模型进行微调,来更有效的提升在专业领域内的机器翻译的质量。
[0199] 由于相关技术中,可以通过计算通用平行语料与专业平行语料之间的相似度,来选取通用平行语料中相对专业的平行语料,作为伪专业平行语料,该技术选取的伪专业平行语料的专业性与本申请实施例中选取的候选平行语句对的专业性相近,因此本申请实施例还将直接使用候选平行语句对对基础神经机器翻译模型进行微调,并测试这种情况下在专业领域内的翻译质量。
[0200] 参见表6,使用本申请实施例提供的技术方案所选取的候选平行语句对对基础神经机器翻译模型进行微调,并在测试数据集上进行测试,得到的BLEU值为20.54。需要说明的是,选取的候选平行语句对的数据规模为3.8万对,为了保证微调使用的数据集的规模一致,可以将该3.8万对数据进行重复使用,以使候选平行语句对的数据规模增强到200万对。可见,直接使用通用平行语料中选出的相对专业的平行语料对基础神经机器翻译模型进行微调,可以进一步的提高在专业领域内翻译质量。
[0201] 参见表6,使用本申请提供的技术方案生成的英法伪专业平行语料对基础神经机器翻译模型进行微调,在测试集上进行测试,得到的BLEU值为23.41。可见,本申请实施例提供的技术方案生成的伪专业平行语料对神经机器翻译模型在医疗专业领域的翻译质量的提升是有较大帮助的。
[0202] 表6
[0203]
[0204] 本申请实施例除了上述对英法翻译进行了相关实验,还对法英、英德和德英翻译均进行了实验。参见表7,使用法英双语的通用平行语料对初始神经网络进行训练,并在法英双语的测试数据集上进行测试,得到的BLEU值为20.59。用伪专业法英平行语料对基础神经翻译模型进一步微调后,在测试集上进行测试得到的BLEU值为26.86。同样可以看出,在英德和德英双语翻译中,测试得到的BLEU值提升也较高。实验结果表明,用基于专业领域的专业平行词语对生成的伪专业平行语料对基础神经机器翻译模型进一步微调之后,得到的神经机器翻译模型在专业领域的翻译质量的提升是显著的。
[0205] 表7
[0206]
[0207] 相关技术中还有一种伪专业平行语料的生成方法,是采用单语反向翻译的方法。具体地,将现有的专业平行语料中的目标单语语句输入神经机器翻译模型中,输出翻译得到的源单语语句,并将翻译得到的源单语语句与对应的目标单语语句组合成为伪专业平行语料。本申请实施例还在生成相同数据规模的伪专业平行语料的情况下,对比了该相关技术和本申请的技术方案分别所需的时间成本。
[0208] 表8为上述相关技术和本申请的技术方案的生成速度对比表。参见表8,在相同的实验条件下,根据该相关技术生成100万对伪专业平行语句对所需的时间为9天,根据本申请的技术方案生成相同规模的伪专业平行语句对所需的时间为23小时。可见,本申请提供的技术方案生成伪专业平行语料的效率更高。
[0209] 表8
[0210]
[0211] 综上所述,在本申请实施例中,由于专业领域的专业平行词语对较多,而且第一通用平行语料包括大量的通用平行语句对,因此,通过M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换之后,可以得到大量的伪专业平行语句对,也即是,伪专业平行语料可以包括大量的伪专业平行语句对,且由于专业领域的专业平行词语对较多且容易扩充,因此本方案具有可持续性。另外,由于本方案引入了专业领域的专业平行词语对,也即增加了专业领域的专业词语的覆盖率,增强了专业信息,因此,使用本方案生成的伪专业平行语料对基础神经机器翻译模型进行微调之后,得到的神经机器翻译模型在专业领域的翻译质量有较大提升。
[0212] 图7是本申请实施例提供的一种伪专业平行语料的确定装置的结构示意图,该伪专业平行语料的确定装置可以由软件、硬件或者两者的结合实现成为计算机设备的部分或者全部,该计算机设备可以为图2所示的计算机设备。参见图7,该装置包括:获取模块701、查找模块702、确定模块703和替换模块704。
[0213] 获取模块701,用于获取第一通用平行语料和专业领域的N个专业平行词语对,第一通用平行语料包括非专业领域的多个通用平行语句对,N个专业平行词语对包括专业平行单词对和/或专业平行短语对,N为大于或等于1的整数;
[0214] 查找模块702,用于从多个通用平行语句对中,查找与N个专业平行词语对中的每个专业平行词语对对应的候选平行语句对;
[0215] 确定模块703,如果查找到M个专业平行词语对对应的候选平行语句对,则从查找到的每个候选平行语句对中,确定与相应专业平行词语对对应的通用平行词语对,其中,M小于或等于N;
[0216] 替换模块704,用于用M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换,以得到机器翻译中的伪专业平行语料。
[0217] 可选地,查找模块702包括:
[0218] 查找单元,用于从多个通用平行语句对中的参考单语语句中,查找与第一专业平行词语对中的参考单语词语之间的相似度大于相似度阈值的参考单语语句,其中,参考单语是指第一通用平行语料中的任一种语言,第一专业平行词语对是指N个专业平行词语对中的任一专业平行词语对;
[0219] 第一确定单元,用于如果查找到与参考单语词语之间的相似度大于相似度阈值的参考单语语句,则将查找到的参考单语语句所在的通用平行语句对,确定为第一专业平行词语对对应的候选平行语句对。
[0220] 可选地,查找单元包括:
[0221] 聚类子单元,用于对多个通用平行语句对中的参考单语语句进行聚类,得到多个聚类结果,每个聚类结果包括一个或多个参考单语语句;
[0222] 第一确定子单元,用于从多个聚类结果中,确定聚类中心与参考单语词语之间的相似度最大的聚类结果,得到目标聚类结果;
[0223] 查找子单元,用于从目标聚类结果中,查找与参考单语词语之间的相似度大于相似度阈值的参考单语语句。
[0224] 可选地,确定模块703包括:
[0225] 第二确定单元,用于确定第一候选平行语句对中的参考单语语句包括的多个词语的词性,第一候选平行语句对是指第二专业平行词语对对应的任一候选平行语句对,第二专业平行词语对是指M个专业平行词语对中的任一专业平行词语对;
[0226] 第一获取单元,用于从多个词语中,获取与第二专业平行词语对中的参考单语词语的词性相同的词语;
[0227] 第三确定单元,用于确定获取的每个词语与参考单语词语之间的相似度;
[0228] 第四确定单元,用于从第一候选平行语句对中的参考单语语句中,确定第一目标词语,第一目标词语是指与参考单语词语之间的相似度最大的词语;
[0229] 第五确定单元,用于根据第一目标词语,从第一候选平行语句对中,确定第二专业平行词语对对应的通用平行词语对。
[0230] 可选地,第二确定单元包括:
[0231] 分词处理子单元,用于对第一候选平行语句对中的参考单语语句进行分词处理,得到多个单词;
[0232] 第二确定子单元,用于按照多个单词的顺序,根据参考单语短语表,确定第一候选平行语句对中的参考单语语句是否包括短语;
[0233] 标注子单元,用于如果第一候选平行语句对中的参考单语语句包括一个或多个短语,则对多个单词中除一个或多个短语之外的单词的词性进行标注,以及对一个或多个短语的词性进行标注。
[0234] 可选地,第五确定单元包括:
[0235] 输出子单元,用于将第一候选平行语句对和第一目标词语作为词对齐模型的输入,通过词对齐模型输出第二目标词语,第二目标词语的词义与第一目标词语的词义相同,第二目标词语的语言是指第一通用平行语料中除参考单语之外的语言;
[0236] 第三确定子单元,用于将第一目标词语和第二目标词语,确定为第二专业平行词语对对应的通用平行词语对。
[0237] 可选地,参考单语是指第一通用平行语料中的源单语,且N个专业平行词语对的源单语与第一通用平行语料的源单语相同。
[0238] 在本申请实施例中,由于专业领域的专业平行词语对较多,而且第一通用平行语料包括大量的通用平行语句对,因此,通过M个专业平行词语对,对相应候选平行语句对中对应的通用平行词语对进行替换之后,可以得到大量的伪专业平行语句对,也即是,伪专业平行语料可以包括大量的伪专业平行语句对,且由于专业领域的专业平行词语对较多且容易扩充,因此本方案具有可持续性。另外,由于本方案引入了专业电子字典中专业领域的专业平行词语对,也即增加了专业领域的专业词语的覆盖率,增强了专业信息,因此,使用本方案生成的伪专业平行语料对基础神经机器翻译模型进行微调之后,得到的神经机器翻译模型在专业领域的翻译质量有较大提升。
[0239] 需要说明的是:上述实施例提供的伪专业平行语料的确定装置在确定伪专业平行语料时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的伪专业平行语料的确定装置与伪专业平行语料的确定方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0240] 本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
[0241] 所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0242] 在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
[0243] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例实施例方案的目的。
[0244] 另外,在本申请实施例各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0245] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,DSL))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,DVD))或半导体介质(例如:固态硬盘(solid state disk,SSD))等。值得注意的是,本申请提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
[0246] 以上所述为本申请提供的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈