CN116720531A - 基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法 - Google Patents

基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法 Download PDF

Info

Publication number
CN116720531A
CN116720531A CN202310734663.5A CN202310734663A CN116720531A CN 116720531 A CN116720531 A CN 116720531A CN 202310734663 A CN202310734663 A CN 202310734663A CN 116720531 A CN116720531 A CN 116720531A
Authority
CN
China
Prior art keywords
syntax
dependency
attention
mongolian
word
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310734663.5A
Other languages
English (en)
Inventor
仁庆道尔吉
庞子豫
李雷孝
吉亚图
石宝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inner Mongolia University of Technology
Original Assignee
Inner Mongolia University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inner Mongolia University of Technology filed Critical Inner Mongolia University of Technology
Priority to CN202310734663.5A priority Critical patent/CN116720531A/zh
Publication of CN116720531A publication Critical patent/CN116720531A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,解析蒙汉平行语料库中的汉语语料的句法关系,根据句法关系构建句法量化矩阵;以汉语语料句子中的标记为节点,以句子中的标记之间的关系为边,构建句法图,根据所述句法图,构造句法依赖矩阵;将所述句法依赖矩阵和所述句法量化矩阵注入到Transformer翻译模型的自注意网络中,结合蒙汉平行语料库中的蒙语语料进行训练;训练结束得到蒙汉神经机器翻译模型,利用该模型进行蒙汉翻译。

Description

基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法
技术领域
本发明属于电数据处理中的自然语言翻译技术领域,特别涉及一种基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法。
背景技术
神经机器翻译是一种利用大量的翻译实例并结合人工神经网络来学习源语言与目标语言之间概率分布的技术,但是蒙汉平行语料库建设还不完善,属于低资源语言,并且传统蒙古文的构词方式复杂,低频词汇较多,直接利用神经网络翻译效果较差,无法直接将其他具有丰富预料的翻译任务上的翻译方法应用到蒙汉翻译中。大量研究表明,句法信息具有改进这些模型的功能。因此,如何利用语料中的先验知识并合理地嵌入到神经机器翻译中是一个具有重要的学术研究价值和广阔的应用前景的问题。
机器翻译现有的各种方法都是结合了主流NMT和传统SMT模型的优点。通常,先验知识用于增强NMT,例如离散字典[T.Luong,I.Sutskever,Q.Le,O.Vinyals,andW.Zaremba.Addressing the rare word problem in neural machine translation.inProc.53rd Annu.Meeting Assoc.Comput.Linguistics 7th Int.Joint Conf.NaturalLang.Process.,Jul.2015,pp.11–19;J.Gu,Z.Lu,H.Li,and V.O.Li.Incorporatingcopying mechanism in sequence-to-sequence learning.in Proc.54th Annu.MeetingAssoc.Comput.Linguistics.Aug.2016,pp.1631–1640],词汇限制[H.Mi,Z.Wang,andA.Ittycheriah.V ocabulary manipulation for neural machine translation.inProc.54th Annu.Meeting Assoc.Comput.Linguistics,Aug.2016,pp.124–129;S.R.Indurthi,I.Chung,and S.Kim.Look harder:A neural machine translation modelwith hard attention.in Proc.57th Annu.Meeting Assoc.Comput.Linguistics,Jul.2019,pp.3037–3043],某些术语的翻译[T.Alkhouli,G.Bretschner,and H.Ney.Onthe alignment problem in multi-head attention-based neural machinetranslation.in Proc.3rd Conf.Mach.Transl.,Res.Papers,Oct.2018,pp.177–185.]和可解释对齐[S.Garg,S.Peitz,U.Nallasamy,and M.Paulik.Jointly learning to alignand translate with transformer models.in Proc.Conf.Empirical Methods NaturalLang.Process.9th Int.Joint Conf.Natural Lang.Process.,Nov.2019,pp.4453–4462]。在一些研究中,SMT模型/规则已经集成到NMT中。
曹宜超[基于单语语料库的汉蒙神经机器翻译方法研究[D].中国科学技术大学,2020]提出了一种结合词向量对齐和语言建模的蒙汉神经机器翻译方法。利用汉语和蒙语单语语料库分别训练二者的词向量,然后使用对齐的汉蒙词向量来初始化模型的词向量层,同时模型在进行翻译的过程中使用单语语料进行语言建模的训练,从而增强模型的编码解码能力。赵亚平等人[赵亚平,苏依拉,牛向华,仁庆道尔吉.基于神经网络迁移学习的蒙汉机器翻译方法[J].计算机应用与软件,2020,37(01):179-185]针对蒙汉神经机器翻译过程中出现严重未登录词的问题,利用字节编码技术对蒙汉平行语料进行预处理,实验结果表明字节对编码技术有效缓解了未登录词现象。
然而,现有的方法并没有充分利用NMT体系结构的潜力。特别是NMT难以高效利用外部先验知识。神经机器翻译只采用双语训练数据,不要求额外先验知识,如大规模单语语料、标注语料、双语词典、语言结构信息等。另外,神经机器翻译的结构特点决定了采用外部资源是很困难的。单语语料、标注语料、双语词典等资源在统计机器翻译中可以显著提高翻译质量,而这些先验知识在神经机器翻译中并没有得到充分应用。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,以期进一步提高蒙汉神经机器的翻译质量。
为了实现上述目的,本发明采用的技术方案是:
基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,包括如下步骤:
步骤1,解析蒙汉平行语料库中的汉语语料的句法关系,根据句法关系构建句法量化矩阵;
步骤2,以汉语语料句子中的标记为节点,以句子中的标记之间的关系为边,构建句法图,根据所述句法图,构造句法依赖矩阵;
步骤3,将所述句法依赖矩阵和所述句法量化矩阵注入到Transformer翻译模型的自注意网络中,结合蒙汉平行语料库中的蒙语语料进行训练;
步骤4,训练结束得到蒙汉神经机器翻译模型,利用该模型进行蒙汉翻译。
与现有技术相比,本发明的有益效果是:
(1)本发明利用源语言的句法依赖矩阵和句法量化矩阵引导注意力网络,显式并有效地集成句法先验知识,将句法依赖关系和句法密切程度注入到自注意网络中,以学习句法细节加强句法约束,从而提高翻译质量。其中句法密切程度指句中词与词,或字与词之间的关系权重。句法依赖关系表示两个词之间是什么关系,比如副词,形容词;而句法密切程度表示一个句子中,词与词之间相关性的强弱。
(2)本发明融合基于句法依赖矩阵和句法量化矩阵的蒙汉神经机器翻译模型,为了提高解码器捕获句法标记之间依赖关系的能力,在解码器中添加一个中间层对齐正则化,使解码器的中间层与目标对齐,可以让模型更好地学习长距离序列标记的依赖关系。
附图说明
图1为本发明整体流程图。
图2为“猴子吃梨”的句法依赖关系图。
图3为输入序列“猴子吃梨”的单词级和子单词级句法矩阵。
图4为句法图节点随机删除。
图5为对输入序列“猴子吃梨”的句法感知自注意网络流程图。
图6为“猴子吃梨”量化矩阵推导图。
图7为量化矩阵引导的自注意网络流程图。
图8为融合两种注意力网络的Transformer架构图。
具体实施方式
下面结合附图和实施例详细说明本发明的实施方式。
针对前述问题,本发明利用源语言句法依赖矩阵和句法量化矩阵来显式地引导自注网络,利用先验知识丰富模型学习的可利用特征,提高模型的翻译性能。如图1所示,本发明基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,主要包括如下步骤:
步骤1,解析蒙汉平行语料库中的汉语语料的句法关系,根据句法关系构建句法量化矩阵。
在本步骤中,主要是先对汉语语料和蒙语语料进行数据清洗和分词处理,然后通过外部句法解析器Stanford CoreNLP生成汉语语料的句法关系,从而构建单词之间的标记关系。
本发明所使用的蒙汉平行语料库共含1,260,324条语句对,内容包含专有名词或短语、文学作品、计算机类的相关名词和术语、新闻报告、歇后语及俚语、公司或者机构名称、网络对话或日常聊天等,涉及范围十分广泛。
由于蒙汉双语语料库包含大量的不规范语句对,因此数据清洗及筛选是很重要的一环,由人工制订规则使用正则表达式匹配并替换、删除对应的内容。利用python将平行语料以制表符分隔,合并成一个文件,然后在Emeditor文本编辑器中以CSV视图打开,分隔符选择制表符。对蒙汉语料进行数据清洗,以下操作对蒙语、汉语语料均生效,若某句蒙语被判定需要删除,即使汉语不存在问题也需要被删除,反之亦然。
①以utf-8的形式存储语料;
②把标点符号由全角抓换成半角,并替换成空格加标点加空格的形式,防止分词时将标点和双语语料切分到一起;
③删除包含等无效字符的行;
④删除包含加减乘除符号、%所在行,“+”、“%”会对后续进行依存句法分析时造成干扰;
⑤将《》、[]、︿﹀、<>、〔〕、【】统一替换成(),然后匹配括号及括号内的内容进行删除;
⑥删除左右括号不匹配的行;
⑦含“·”、正反斜杠、“\n”等的句子多包含人名、大量计算机英文术语表达,将这些句子删除;
⑧删除空行,包括仅含空白符的行;
⑨将数字的不同表达方式统一化;
⑩去除一些无法识别的编码如:\uexxx;
NMT模型在训练时受限于显存容量等客观条件,通常会控制其模型规模。与模型规模直接相关的超参数有词嵌入维度、句子长度、语料库词典大小、编、解码器的构成单元及层数等。随之而来的是NMT模型对未登录词的处理困难,一方面体现在被标记成UNK的单词无法参与模型训练,降低了NMT模型完整捕获源语言、目标语言语义信息的能力,并且如果某几个句子前半段相同,后半段都被UNK替换,也会造成歧义。主要解决办法有:1、使用外部词典或者扩大词表。2、使用字符(Character)级、子词(Sub-word)级别的细粒度句法单元。
本发明使用Transformer作为翻译模型,由于Transformer最后有一个全连接层,其参数量与目标语言词表的大小成正比,因此控制汉语词表大小要比控制蒙语词表大小更加严格。此外,语料库里存在大量的数字和英文,各种数字、英文字母组合也会给模型带来大量噪声。基于以上考虑,本发明使用Jieba(算法见表4-1)、Stanford CoreNLP对汉语、蒙古语进行分词,同时对数字和字母进行处理,具体流程为:将数据清洗后的汉语语料和蒙语语料的顺序随机重排,并将数字和英文字母全部拆散,对汉语句子按单字切分,对蒙语句子按空格切分。
算法1:JieBa分词算法
输入:语料数据
输出:分词结果及单词词性
dag=get_dag(sentence,word2freq)#构造DAG:根据输入生成Trie树,把每个词出现的频率转换为频率,根据Trie树生成有向无环图
best_path=find_optimal_path(sentence,dag)#寻找最优路径:根据动态规划查找最大概率路径的方法,得到最大概率路径,最后得到最大概率的切分组合。
best_path=adjust_by_hmm(best_path)#HMM调整:对于未登录词,采用了基于汉字成词能力的HMM模型,使用了Viterbi算法
result="".join(edge["label"]for edege in best_path)
return result#返回分词结果
为了提高低资源语言(蒙汉)的翻译质量,本发明在编码器中加入了源端句法依赖项,即句法矩阵作为附加信息。对于任何给定的源语言句子x=x1,...,xn,首先使用外部句法解析器Stanford CoreNLP生成句法关系,如图2所示,然后根据句法关系构建token-to-token关系。句子中的标记,如图2所示单词之间的关系,即单词之间的依存关系(从属关系),如:图2中的nsubj代表两词是主谓关系,det是限定词。
由此,本步骤中的句法量化矩阵的构建方法可以描述为:对于长度为I的输入句子X,通过外部句法解析器Stanford CoreNLP提取依赖树T,然后根据依赖树T计算单词级依赖距离,依赖距离定义为树上一个单词到另一个单词的路径长度,两个直接连接的单词之间的依赖距离赋值为1。例如,如图6所示,“猴子”本身的依赖距离为0,“梨”与“那”的依赖距离为1,“吃了”与“一个”的依赖距离为2。这样,一个词与“猴子”一词的依赖距离越近,该词与“猴子”一词的句法依赖关系就越紧密。
根据原始词序遍历每个单词,并同时计算当前遍历的单词与各单词(包括它自己)之间的依赖距离;结合所有依赖距离序列di,通过高斯分布导出句法量化矩阵矩阵的每一行表示每个词与各单词的句法依赖程度。因此,当对单词“猴子”进行编码时,自注意网络可以在依赖关系量化矩阵的帮助下,有区别地关注与依赖关系更相关的单词。
步骤2,以汉语语料句子中的标记为节点,以句子中的标记之间的关系为边,构建句法图,根据所述句法图,构造句法依赖矩阵。
具体地,本发明利用Stanford CoreNLP中的API构建句法依赖矩阵,方法如下:
使用Stanford CoreNLP对句子进行依赖句法分析,先调用word_tokenize()函数对句子进行分词,然后调用dependency_parse()返回每个分词之间的依存关系,分析结果为三元组构成的列表;最后将依赖关系分派到单字级别,构建句法依赖矩阵,矩阵中有依赖关系(除了ROOT关系)的两个单字对应的坐标设置为1,否则设置为0。要注意的是,一条语料中有时候不只含有一句话,Stanford CoreNLP在处理依赖关系时会将每个小句子分开处理,需要将其结果重排序,合并为一句话。
由于Transformer默认隐式地学习句法知识,因此在本发明中利用句法信息显式地增强模型学习句法知识的能力。将外部句法解析器Stanford CoreNLP生成的句法关系转换成句法图,如图2所示,其中节点表示句子中的标记,边表示它们之间的关系。本发明考虑了每两个相关标记的双向关系,并拟添加自循环边,以确保每个节点表示直接影响其新的表示。为了便于积分,这些图最终将以矩阵的形式提供给自注意网络。
由于蒙汉平语料库规模较小且语料库质量一般,容易导致严重的数据稀疏问题,因此本发明在词级之外使用JieBa和Stanford CoreNLP分词构造子词级句法图来适应子词分段。为此,考虑词级句法解析的结果,并考虑子词连接。本发明将分段的子词设置为成对相关,并将子词关系定义为句法矩阵中表示相关性的常数1。输入序列“猴子吃梨”的词级和子词级句法矩阵实例如图3所示。
步骤3,将句法依赖矩阵和句法量化矩阵注入到Transformer翻译模型的自注意网络中,结合蒙汉平行语料库中的蒙语语料进行训练。
本步骤中,句法依赖矩阵的注入方法如下:
为了便于积分,将所述句法图最终将以矩阵的形式提供给自注意网络。构建Transformer翻译模型,利用句法知识改进低资源(蒙汉)语言翻译质量。根据源语句的句法依赖关系,在传统多头自注意力的基础上利用mask机制生成一个额外的句法相关表征作为原表征的补充,通过提取句法依赖部分作为偏差,在计算注意分数时突出显式句法,从而利用句法知识先验地引导自注意网络,并通过句法感知屏蔽强化句法相关标记的表达。由于缺乏具有黄金标准解析的蒙汉双语语料库,在使用Stanford CoreNLP生成句法关系的同时,会带来大量的噪声。因此,最后为保持捕获源句句法表示的强度,也为了消除StanfordCoreNLP生成的噪声,本发明引入句法图节点随机删除机制,使其自适应地引入多个注意力表示,并通过调整句法图实现动态多句法感知的自注意表示,利用融合策略来整合其自注意表示,并求出最终表示。
给定一个源句子x=x1,...,xn时,Transformer编码器首先将其转换为嵌入向量Ex∈Rn×d。为了弥补非线性建模导致的位置信息缺失,除了词嵌入外,还将相对位置表示的位置嵌入作为一个必不可少的部分注入到嵌入中。
将输入x线性变换为查询Q、键K和值V三个不同的矩阵,则注意力点积计算为:
其中,将QKT的结果除以使梯度更加稳定,缓解因点积值过大而导致的梯度消失。为了表示的多样化,注意过程被并行执行H次,即多重注意头的数量。每个注意通道的线性权重Q、K、V不同。H的值被相连并再次投影以产生最终值。
前馈网络用于线性表征和非线性变换:
FNN(X)=ψ(xW1+b1)W2+b2
其中ψ(·)为激活函数。
另一项关键技术Layer-Normalization用于保证数据特征分布的稳定性,加快模型的收敛速度:
其中σ和μ分别为方差和均值,α和β为可训练参数。
上述组件除了在第一层中嵌入外,在层间迭代,当前层的输入是前一层的输出。此外,为了避免梯度消失和梯度爆炸,在每个子层中都使用了残差网络。
对于长度为n的句子,每个注意头的输入是嵌入得到的矩阵通过三种不同的线性投影/>将其转化为三个矩阵Qh∈Rn ×d',Kh∈Rn×d',Vh∈Rn×d'。其中D'=d/H,H是注意头数。根据多头自注意公式,计算的注意力权重的点积形式表示为:
然后用句法矩阵重新对Sh∈Rn×n进行评分:
Sh'=γ(Sh,Mh)
其中,句法矩阵Mh∈Rn×n,γ()表示句法感知掩码,Sh的句法相关部分被保留,不相关部分被丢弃。此外,在Sh中添加了句法约束Sh',用以强调句法信息。最后,用softmax函数测量句子的权重分布,并将结果应用到值Vh上,得到自注意头h的表示。
为了获得句法感知掩码生成额外句法表征的表示,同时也为了消除StanfordCoreNLP生成句法关系时所带来的噪声,本发明进一步对句法图节点进行随机删除。在某种程度上,每个句法图节点(单词或子单词)将基于伯努利分布进行删除,将参数设置为0.1,这在一定程度上保证了表示的整体完整性。被删除的节点和其他节点之间的句法依赖关系也将被忽略,因此,句法矩阵的相应元素将被设置为无效。句法图节点随机删除过程如图4所示。
将源句(嵌入表示在第一层,隐藏表示在高层)及其对应的丢弃句法图馈送到具有共享句法感知的自注意层子层,生成额外的多重注意表示。设x和句法图分别表示源句及其对应句法图的表示形式,ζ()表示节点随机删除,上述过程可归纳为:
O'=SSA(x,ζ(graph))
其中,SSA(·)是句法感知的自注意表示。
因此,在本发明中,针对Transformer翻译模型,引入句法图节点随机删除机制,使其自适应地引入多个注意力表示,并通过对节点随机删除机制参数以及删除节点的数调整句法图来实现动态多句法感知的自注意表示,最后通过不同的融合策略来整合动态多句法感知的自注意表示,并且求出其最终表示。其中包括average pooling,high-way network,linear network。high-way network有以下几种形式:
y=H(x,Wh)*T(x,WT)+x*(1-T(x,Wt))
其中x是输入,y是输出。H(x,Wh)和T(x,Wt)分别是权重Wh和W的两个仿射函数,这意味着对x进行了仿射变换。输出的值T(x,Wt)是一个浮点数属于(0,1),T(x,Wt)是控制y中H(·)和x的权值的门。T(x,Wt)和H(x,Wh)的激活函数分别是Relu和Sigmoid。对于high-waynetwork和linear network,本发明将动态多句法感知的自注意表示的各个部分拼接为输入,并在仿射函数中动态适应权重矩阵的维数。值得注意的是,由于本发明并没有额外初始化一个前馈网络,而是仅使用原本的前馈网络,因此,相较于传统的Transformer编码器,句法感知的编码器并没有引入额外的训练参数,其流程如图5所示。
并且,通过句法感知屏蔽对依赖矩阵进行部分屏蔽,得到一个额外的句法相关表征作为原表征的补充,加入到自注意网络中。
同时,本发明句法量化矩阵注入,目的是构建一个句法依赖扩展的自注意网络,将其与基于源语言句法依赖的蒙汉神经机器翻译模型进行融合。通过构造单词标记间依赖密度的量化矩阵,将显式句法约束用来指导自注意网络,用于学习句法细节和消除注意分布的分散性。首先,利用句法图(如图2)导出句法量化矩阵,用其来度量句法依赖的紧密程度,如图6所示。
句法量化矩阵的注入方法可描述如下:
对于输入句子X,源注释序列H由词嵌入Ex与位置编码和的初始化组成。进一步来说,将句法量化矩阵Ds和输入句子X的源注释序列H均作为注意力网络中N个注意头的输入。与原始Transformer类似,第l个编码器层的查询向量、键向量和值向量计算如下:
其中是由第l个编码器层的句子注释Hl线性投影的三个向量,表示权重;dk=dmodel/H,H0为初始源注释序列(l=0),dmodel表示模型向量维数。接下来,计算每个查询与所有键之间的点积,并除以/>得到对齐分数Sl,Sl表示在注释当前单词时,应该对其他单词进行多少关注。在对齐分数之后,显式地对其施加句法约束,逐点加权句法量化矩阵Ds,并强制模型关注单词之间的句法依赖关系,所依赖的公式如下:
其中,表示Kl的转置,/>是基于单词依赖分布的对齐分数,/>是/>的第i行,表示基于第i个单词Xi的依赖分布的缩放对齐分数。σ是关于经验值的高斯方差集,通常是一个很小的数字。也就是说通过量化单词之间的依赖关系,将其重新加权的对齐分数转化为高斯概率密度的值。/>是Ds的第i行j列,dij是单词对Xi和Xj的依赖距离。在此之后,GaussDist(dij)作为/>的第(i,j)项,它实际上是一个方差σ2和输入Dij的高斯分布。
在此基础上,量化后的注意力权重通过softmax函数进行归一化,结果为Zl,并用Zl来表示单词之间的对应关系,Ol是输出表示。编码词的句法依赖关系越近,可以分配的注意权重就越高。注意权重乘以值向量,以产生单个注意头的输出表示。所有输出表示的连接被传递到线性投影层,用来生成后续解码的上下文向量。
由于本发明引入大量句法先验知识,因此为了提高解码器捕获句法标记之间依赖关系的能力,在Transformer翻译模型的解码器中添加一个中间层对齐正则化,使解码器的中间层与目标对齐,而不是将解码器的输入与目标对齐,从而帮助模型更好的学习句子间长距离序列之间的依赖关系,并避免添加额外的训练参数。中间层对齐正则化考虑了目标句的中间潜在对齐,在中间层中聚合分层的标记信息可以更好地学习长距离序列标记的依赖关系。
具体地,将对齐正则化损失定义为每层的源和目标单词对齐之间的差异,衡量这种差异的一种方法是使用对齐概率之间的交叉熵损失。将第k层的第i个蒙古语单词和第j个中文单词之间的对齐概率表示为P(i,j,k),对齐正则化损失可以计算为:
AlignmentLoss=-∑(i,j)P(i,j,k)log(P(i,j,k))
总和是所有可能的蒙古语和汉语单词索引,目标是尽量减少损失,以鼓励更好的对齐;
修改Transformer解码器的训练目标函数以包含对齐正则化项,原始损失函数表示为Loss,则具有对齐正则化的修改后的目标函数为:
TotalLoss=Loss+λ*AlignmentLoss
其中,λ是控制对齐正则化项权重的超参数;在试验中可以尝试不同的λ值,以找到对齐目标和整体翻译目标之间的适当平衡。
在训练期间,通过适当修改注意力机制计算所选中间层的对齐概率P(i,j,k),根据计算出的对齐概率计算对齐正则化损失AlignmentLoss,并将其添加到总损失TotalLoss中用于反向传播和参数更新。
综上所述,在对句子进行编码时,利用句法量化矩阵指导自注意力网络,让其根据编码词的依赖密切程度,引导模型对不同单词施加不同的注意力。基于句法量化矩阵引导的自注意网络框架如图7所示。
Transformer模型假设可以通过注意力机制自动学习句法知识,然而已有研究表明这种学习程度仍不足以捕捉到深层的句法细节,额外添加句法信息可以改进翻译效果。因此,本发明将句法量化矩阵融合于基于源语言句法依赖引导的蒙汉神经机器翻译模型中。
Transformer中自注意力机制默认两个单词之间的距离为1,意味着自注意力机制初始时“平等”的看待两个单词之间的关联性,需要在在训练时慢慢分辨分词之间的“弱关联”和“强关联”,而是用于衡量序列中任意两个单词之间的关联度的矩阵,矩阵中的元素值越大说明该元素横纵坐标所代表的两个单词之间的关联就越强。相较于仅执行单一的注意力,使用不同的权重矩阵将输入信息投影到n个不同的向量空间(注意力头数),共同关注来自不同位置的不同表示子空间的信息是有益的,也即多头注意力。具体可以表示为:
MultiHead(Q,K,V)=Concat(head1,head2,...,headh)Wo
headi=Attention(ExWi Q,ExWi K,ExWi V)
其中:权重矩阵Wo∈Rd×dd′=d/n,n为多头注意力的头数。
具体到本发明,源语句的句法关系和句法依赖矩阵被作为调整编码自注意力的依据,进而生成句法相关表征,让其作为原表征的补充而不是简单地作为语言特征输入模型。这种对注意力权重的调整是建立在多头注意力基础上的,保留了多头注意力表征的多样性,使得所生成的句法相关表征蕴含来自不同表示子空间的信息,避免了由于仅保留句法相关部分而可能带来的局部偏差。从局部建模的角度考虑,基于多头注意力的方式完善了可能忽略全局信息的句法感知建模方式。因此,作为补充信息,由局部建模得到的句法相关表征没有引入额外的噪声,相反,它在引入句法信息的同时也丰富了源语句表征的多样性。
本发明将句法量化矩阵和句法依赖矩阵同时作为Transformer模型的编码器输入,使用不同的权重矩阵将输入信息投影到n个不同的向量空间,n为注意力头数,共同关注来自不同位置的不同表示子空间的信息;
同时,在Transformer翻译模型的解码器中加入中间对齐正则化,使用解码器的中间层与目标对齐;而不是将解码器的输入与目标对齐。在这种情况下,本发明的模型避免了添加额外的训练参数。形式上,将中间对齐正则化定义为预测词和真实词之间的交叉熵损失。
综上所述,在对句子进行编码时,利用句法量化矩阵和依赖矩阵指导自注意力网络,让其根据编码词的依赖密切程度,引导模型对不同单词施加不同的注意力。在解码器中拟加入中间层对齐正则化,从而帮助模型更好的学习句子间长距离序列之间的依赖关系。融合后的Transformer架构图如图8所示。
步骤4,训练结束得到蒙汉神经机器翻译模型,利用该模型进行蒙汉翻译。
本发明通过将句法依赖矩阵注入到Transformer翻译模型一的编码器自注意网络中,结合蒙汉平行语料库中的蒙语语料进行训练;将句法量化矩阵注入到Transformer翻译模型二的编码器自注意网络中,结合蒙汉平行语料库中的蒙语语料进行训练。
为验证本发明所提方法的有效性,在一个实施例中,针对蒙古文文本数据做了以下实验。本发明的基线模型称之为Transformer_Base,为了实验的可复现性以及排除单次实验带来的不确定性,在随机种子seed为100、6421、2169、500和256所对应的初始化网络参数上进行5次实验。
Transformer模型参数设置如下:词向量维度Embedding_dim为256,前馈全连接层为2048,多头注意力的头数head_size为8,dropout_rate为0.2;每次实验使用两块显卡;训练时的每个批次的大小batch_size为120;最大句子长度max_length为100;选择AdamW作为优化器,设置初始学习率为0.0001,β1=0.9,β2=0.999,∈=1e-08,λ=0.02,使用Warm Up策略调整学习率,设置arm_steps为3000。将数据处理后的624,995条平行语料提取前50万句,再次进行随机乱序,又滤除部分句子后,最终划分的训练集、验证集和测试集划分如表1:
表1:实验数据集划分
总数 训练集 验证集 测试集
498921 479173 9979 9779
其中,传统蒙文词表大小为110,560,汉语词表大小6,085。
5次实验的BLEU值如表2所示,BLEU值由sacrebleu的corpus_bleu()函数和统计机器翻译moses系统中的multi-bleu-detok.perl分别计算得出,其中corpus_bleu()基于Transformer的蒙汉翻译基准模型中的平滑函数参数设置为“none”,即不采用任何平滑函数,在BLEU值测评中,平滑函数的选择会极大影响最终得分。上述两种方式计算得出的BLEU值结果均一致,原理上BLEU值在0到1中取值,为了观察方便,通用做法是乘以100。
表2:6层堆叠的Transformer_Base的BLEU值
模型 100 6421 2169 500 256 平均值
Transformer_Base 38.377 38.280 38.566 38.362 38.588 38.435
由表2可看出Transformer_Base的BLEU值较为稳定,在38.4上下浮动,说明Transformer_Base模型的参数适应性较好。
这里对基线Transform_Base模型进行实验后,又对进行了对比实验,分别是改进编码器的Transformer模型一(Transformer_One),改进解码器的Transformer模型二(Transformer_Two),模型融合后的Transformer模型三(Transformer_Three)。实验参数与上文的相同,在随机种子100、6421、2169、500和256下进行实验。将4个模型分别在6层堆叠40轮训练,之所以要在这个条件下做实验是为了验证将改进Transformer模型融合之后的有效性。6层堆叠对应的基线模型和4个改进模型参数量如表3所示:
表3:层堆叠对应的各个模型的参数总量
模型 模型参数量
Transformer_Base 48,787,909
Transformer_One 50,046,181
Transformer_Two 49,051,077
Transformer_Three 50,309,349
从表中可见,6层堆叠的4个模型参数量都在五千万左右,其中改进编、解码器的模型参数最多,较之基准模型增加了1,521,440,改进编码器和改进解码器的参数分别增加了1,258,272、263,168,占参数增加总量的82.7%、17.3%。实验训练后的BLEU值如表4所示:
表4:BLEU值
模型 100 6421 2169 500 256 平均值
Transformer_Base 38.377 38.280 38.566 38.362 38.588 38.435
Transformer_One 43.866 44.795 45.236 45.251 44.933 44.816
Transformer_Two 37.183 28.482 36.939 35.264 16.351 30.844
Transformer_Three 45.966 46.005 44.840 44.722 45.698 45.446
由表4可看出Transformer_Three比Transformer_One、Transformer_Two平均高出0.63、14.602个BLEU值,并且明显高于基线模型,较之基线模型BLE U值分别增加了7.011,但是Transformer_Two的实验结果并不理想,后续着重在解码器方面进行改进,以实现对于Transformer_Two模型实验结果的提升。实验一方面可以证明本发明的整个模型框架是有效的,另一方面证明加入依存句法信息可以提升模型效果。
以上实验能够充分证明本发明所提方法的有效性,该方法能够为蒙古文、汉语机器翻译预测任务提供理论及实践参考。

Claims (10)

1.基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,包括如下步骤:
步骤1,解析蒙汉平行语料库中的汉语语料的句法关系,根据句法关系构建句法量化矩阵;
步骤2,以汉语语料句子中的标记为节点,以句子中的标记之间的关系为边,构建句法图,根据所述句法图,构造句法依赖矩阵;
步骤3,将所述句法依赖矩阵和所述句法量化矩阵注入到Transformer翻译模型的自注意网络中,结合蒙汉平行语料库中的蒙语语料进行训练;
步骤4,训练结束得到蒙汉神经机器翻译模型,利用该模型进行蒙汉翻译。
2.根据权利要求1所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,所述步骤1,对汉语语料和蒙语语料进行数据清洗和分词处理,然后通过外部句法解析器Stanford CoreNLP生成汉语语料的句法关系,从而构建单词之间的标记关系。
3.根据权利要求2所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,所述步骤1,将数据清洗后的汉语语料和蒙语语料的顺序随机重排,并将数字和英文字母全部拆散,对汉语句子按单字切分,对蒙语句子按空格切分。
4.根据权利要求1所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,所述步骤1,句法量化矩阵的构建方法为:对于长度为I的输入句子X,通过外部句法解析器Stanford CoreNLP提取依赖树T,然后根据依赖树T计算单词级依赖距离,依赖距离定义为树上一个单词到另一个单词的路径长度,两个直接连接的单词之间的依赖距离赋值为1;根据原始词序遍历每个单词,并同时计算当前遍历的单词与各单词之间的依赖距离;结合所有依赖距离序列di,通过高斯分布导出句法量化矩阵矩阵的每一行表示每个词与各单词的句法依赖程度。
5.根据权利要求4所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,所述步骤2,利用Stanford CoreNLP中的API构建句法依赖矩阵,方法如下:
使用Stanford CoreNLP对句子进行依赖句法分析,先调用word_tokenize()函数对句子进行分词,然后调用dependency_parse()返回每个分词之间的依存关系,分析结果为三元组构成的列表;最后将依赖关系分派到单字级别,构建句法依赖矩阵,矩阵中有依赖关系(除了ROOT关系)的两个单字对应的坐标设置为1,否则设置为0。
6.根据权利要求4所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,所述步骤3,句法依赖矩阵的注入方法如下:
在多头自注意力的基础上利用mask机制生成一个额外的句法相关表征作为原表征的补充,通过句法感知屏蔽强化句法相关标记的表达,引入句法图节点随机删除机制,使其自适应地引入多个注意力表示,并通过调整句法图实现动态多句法感知的自注意表示,利用融合策略来整合其自注意表示,并求出最终表示;
句法量化矩阵的注入方法如下:
将句法量化矩阵Ds和输入句子X的源注释序列H均作为注意力网络中N个注意头的输入,第l个编码器层的查询向量、键向量和值向量计算如下:
其中是由第l个编码器层的句子注释Hl线性投影的三个向量,/>表示权重;dk=dmodel/H,H0为初始源注释序列(l=0),dmodel表示模型向量维数;然后计算每个查询与所有键之间的点积,并除以/>得到对齐分数Sl,Sl表示在注释当前单词时,应该对其他单词进行多少关注;在对齐分数之后,显式地对其施加句法约束,即,逐点加权句法量化矩阵Ds,并强制模型关注单词之间的句法依赖关系,所依赖的公式如下:
其中,KlT表示Kl的转置,是基于单词依赖分布的对齐分数,/>是/>的第i行,表示基于第i个单词Xi的依赖分布的缩放对齐分数,σ是关于经验值的高斯方差,即,通过量化单词之间的依赖关系,将其重新加权的对齐分数转化为高斯概率密度的值;/>是Ds的第i行j列,GaussDist(dij)作为/>的第(i,j)项,是一个方差σ2和输入dij的高斯分布,dij是单词对Xi和Xj的依赖距离;
在此基础上,量化后的注意力权重通过softmax函数进行归一化,结果为Zl,Zl表示单词之间的对应关系;Ol是输出表示;
编码词的句法依赖关系越近,可以分配的注意权重就越高,注意权重乘以值向量,以产生单个注意头的输出表示,所有输出表示的连接被传递到线性投影层,用来生成后续解码的上下文向量。
7.根据权利要求4所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,将句法量化矩阵和句法依赖矩阵同时作为Transformer模型的编码器输入,使用不同的权重矩阵将输入信息投影到n个不同的向量空间,n为注意力头数,共同关注来自不同位置的不同表示子空间的信息;同时,在Transformer翻译模型的解码器中加入中间对齐正则化,使用解码器的中间层与目标对齐。
8.根据权利要求4所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,所述步骤3,给定一个源句子x=x1,...,xn时,Transformer编码器首先将其转换为嵌入向量Ex∈Rn×d,并加入相对位置表示的位置嵌入;
将输入线性变换为查询Q、键K和值V三个不同的矩阵,则注意力点积计算为:
注意过程被并行执行H次,即多重注意头的数量,每个注意通道的线性权重Q、K、V不同,H的值被相连并再次投影以产生最终值;
前馈网络用于线性表征和非线性变换:
FNN(X)=ψ(xW1+b1)W2+b2
其中ψ(·)为激活函数;
采用Layer-Normalization保证数据特征分布的稳定性,加快模型的收敛速度:
其中μ为均值,α和β为可训练参数;
除了在第一层中嵌入外,在层间迭代,当前层的输入是前一层的输出;
对于长度为n的句子,每个注意头的输入是嵌入得到的矩阵通过三种不同的线性投影/>将其转化为三个矩阵Qh∈Rn×d',Kh∈Rn×d',Vh∈Rn×d',其中D'=d/H,计算的注意力权重的点积形式为:
然后用句法矩阵重新对Sh∈Rn×n进行评分:
Sh'=γ(Sh,Mh)
其中,句法矩阵Mh∈Rn×n,γ()表示句法感知掩码,Sh的句法相关部分被保留,不相关部分被丢弃。此外,在Sh中添加了句法约束Sh',用以强调句法信息。最后,用softmax函数测量句子的权重分布,并将结果应用到值Vh上,得到自注意头h的表示。
9.根据权利要求8所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,对于句法依赖矩阵,引入句法图节点随机删除机制,使其自适应地引入多个注意力表示,并通过对节点随机删除机制参数以及删除节点的数调整句法图实现动态多句法感知的自注意表示,然后通过不同的融合策略整合动态多句法感知的自注意表示,求出其最终表示;并通过句法感知屏蔽对依赖矩阵进行部分屏蔽,得到一个额外的句法相关表征作为原表征的补充,加入到自注意网络中。
10.根据权利要求1所述基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法,其特征在于,在Transformer翻译模型的解码器中加入中间层对齐正则化,使解码器的中间层与目标对齐,而非将解码器的输入与目标对齐,从而帮助模型更好的学习句子间长距离序列之间的依赖关系;
其中,将对齐正则化损失定义为每层的源和目标单词对齐之间的差异,将第k层的第i个蒙古语单词和第j个中文单词之间的对齐概率表示为P(i,j,k),对齐正则化损失可以计算为:
AlignmentLoss=-∑(i,j)P(i,j,k)log(P(i,j,k))
总和是所有可能的蒙古语和汉语单词索引,目标是尽量减少损失,以鼓励更好的对齐;
修改Transformer解码器的训练目标函数以包含对齐正则化项,原始损失函数表示为Loss,则具有对齐正则化的修改后的目标函数为:
TotalLoss=Loss+λ*AlignmentLoss
其中,λ是控制对齐正则化项权重的超参数;
在训练期间,通过适当修改注意力机制计算所选中间层的对齐概率P(i,j,k),根据计算出的对齐概率计算对齐正则化损失AlignmentLoss,并将其添加到总损失TotalLoss中用于反向传播和参数更新。
CN202310734663.5A 2023-06-20 2023-06-20 基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法 Pending CN116720531A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310734663.5A CN116720531A (zh) 2023-06-20 2023-06-20 基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310734663.5A CN116720531A (zh) 2023-06-20 2023-06-20 基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法

Publications (1)

Publication Number Publication Date
CN116720531A true CN116720531A (zh) 2023-09-08

Family

ID=87865784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310734663.5A Pending CN116720531A (zh) 2023-06-20 2023-06-20 基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法

Country Status (1)

Country Link
CN (1) CN116720531A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992888A (zh) * 2023-09-25 2023-11-03 天津华来科技股份有限公司 基于自然语义的数据分析方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992888A (zh) * 2023-09-25 2023-11-03 天津华来科技股份有限公司 基于自然语义的数据分析方法及系统

Similar Documents

Publication Publication Date Title
Tan et al. Neural machine translation: A review of methods, resources, and tools
Zhu et al. Knowledge-based question answering by tree-to-sequence learning
Zhang et al. SG-Net: Syntax guided transformer for language representation
CN109062907B (zh) 融入依存关系的神经机器翻译方法
CN112765345A (zh) 一种融合预训练模型的文本摘要自动生成方法及系统
Xu et al. Cross-domain and semisupervised named entity recognition in chinese social media: A unified model
Wang et al. Fret: Functional reinforced transformer with bert for code summarization
Yang et al. Towards bidirectional hierarchical representations for attention-based neural machine translation
CN113657123A (zh) 基于目标模板指导和关系头编码的蒙语方面级情感分析方法
CN111125333B (zh) 一种基于表示学习与多层覆盖机制的生成式知识问答方法
Li et al. Setransformer: A transformer-based code semantic parser for code comment generation
CN113901847A (zh) 基于源语言句法增强解码的神经机器翻译方法
CN116720531A (zh) 基于源语言句法依赖和量化矩阵的蒙汉神经机器翻译方法
Gao et al. Generating natural adversarial examples with universal perturbations for text classification
Heo et al. Multimodal neural machine translation with weakly labeled images
Gong et al. Enhancing low-resource neural machine translation with syntax-graph guided self-attention
CN115545033A (zh) 融合词汇类别表征的中文领域文本命名实体识别方法
Sun Analysis of Chinese machine translation training based on deep learning technology
Zhang et al. Mind the gap: Machine translation by minimizing the semantic gap in embedding space
CN115659172A (zh) 基于关键信息掩码与拷贝的生成式文本摘要方法
Zhang et al. Self-supervised bilingual syntactic alignment for neural machine translation
CN112380882B (zh) 一种具有误差修正功能的蒙汉神经机器翻译方法
CN115455144A (zh) 用于小样本意图识别的完型填空式的数据增强方法
Erraki et al. NLP summarization: abstractive neural headline generation over a news articles corpus
CN114358006A (zh) 基于知识图谱的文本内容摘要生成方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination