注意力机制对神经机器翻译有多重要?这篇文章给你答案

托福2025-08-27 17:07:29佚名

注意力系统,是神经机器翻译体系里一个关键部分,它直接关系到译文的质量好坏。

可以说,缺少注意力机制,机器翻译的表现只能得到六七成的分数,而配备注意力机制后,翻译水平便能提升到八到九成的程度。

它具体运作方式是怎样的呢?许多人一说明,就是数不胜数的方程式,使人还没开始看,就立刻头晕目眩了。

近期,有篇文稿借助图像解析,详尽阐释了“注意力机制”的运作原理,同时以谷歌神经翻译为范例,阐述了其具体执行过程。

作者表示,这篇文章旨在帮助读者理解注意力原理,无需借助数学符号。他将以人类翻译工作为参照,将抽象概念具体化呈现。

神经机器翻译为何需要注意力机制?

神经机器翻译技术出现在2013年。当年,牛津大学的一个研究集体公布了一篇论文,其中包含了一种用于机器翻译的新颖方法。

这个新模型使用的是端到端的编码器-解码器结构。

翻译任务进行时,首先借助卷积神经网络(CNN),把初始文本转化成一连串的数字表示,接着再运用循环神经网络(RNN),把这一连串数字变成期望的目标语言。

因为梯度会出现失控或衰减现象,所以采用此手段难以捕捉到文本中距离较远的内容,进而造成译文质量显著降低。

二零一四年,Ilya及团队任职谷歌期间,研发了序列到序列的算法,该方案将循环神经网络功能拓展至编码与解码两个环节。

也将RNN的常见改进形式LSTM应用到了神经机器翻译领域,因此梯度失控和梯度消亡现象得到抑制谷歌在线翻译英语,长距离依赖的重新排序难题获得改善。

常言道此起彼伏,刚解决一事又遇新难。在方法层面,解码器从编码器获取的信息仅限于最终隐藏状态,该状态为向量形式,概括了输入文本序列的数字信息。

神经机器翻译注意力机制原理_图解谷歌神经翻译注意力运作_谷歌在线翻译英语

具体如下图中的两个红色节点所示。

对于类似下图这样的极长文本输入,我们特别期待这个内部状态能够全面反映输入序列,解码器便能仅凭这一向量描述,顺利实现转换。

但这确实不易,出现了毁灭性的记忆衰退。举例来说,刚才提及的那两段文字的字,当你现在目睹它们时,还能有多少留存于脑海?能否将它们转换成英文表达?

另外存在一个疑问,对于采用RNN架构的模型而言,无论输入文本的语句长度如何,最终都会被转化为一个预设长度的向量形式。

解析过程中常出现诸多波折,难以获取确切内容,句式越长越是棘手。

怎么办?“注意力机制”登场

二零一四年,该集体公布了一项研究成果,其中引入了关注机制,随后将这一方法应用于对视觉图形进行分门别类的操作上。

采用注意力机制的循环神经网络,其表现远超传统卷积神经网络,由此引发学术界对注意力机制研究的热潮。

很快,注意力就出现在了神经机器翻译中。

蒙特利尔大学的一个研究集体于ICLR 2015年发布了相关研究文献,该文献首次将注意力机制应用于神经机器翻译领域,此前的2014年9月,该文档已上传至arXiv平台。

关注点,是转换器与转换器之间的桥梁。凭借它,转换器得到的,就不再是一个单一的向量表示了,还包含来自转换器每个时间节点的向量表示,例如图中标示的绿色点。

图解谷歌神经翻译注意力运作_谷歌在线翻译英语_神经机器翻译注意力机制原理

借助聚焦机制,模型可以挑选性地留意输入序列中具有价值的片段,进而促使解码器与编码器之间达成对应关系。

之后,神经机器翻译所面临的问题,基本上也都有了解决方案。

2016年,谷歌推出了首个基于神经机器翻译的翻译系统。

现在,神经机器翻译已经成为了主流翻译工具的核心方法。

这段时期里,RNN与LSTM,已经获得众多说明。注意力机制究竟怎样实施?它究竟具备什么非凡之处?

接下来请你收看——

图解注意力运作机制

注意力分为两种类型,一种是涵盖所有编码器隐藏状态的类型,另一种是仅利用编码器隐藏状态部分信息的类型,当前讨论的注意力机制都属于前一种类型。

在开始之前,需要看换一下仅基于方法的模型是如何翻译的。

以一个将文本从德语翻译成英语的翻译员为例。

要是采用那种方式,他就会从开篇起逐字逐句地看德文材料,接着再逐字逐句地把它改成英文。倘若句子过于冗长,他在翻译的进程中留学之路,或许就记不起前面材料上的信息了。

运用专注阅读技巧时,他逐字逐句地审视德文材料,并记录下核心词汇,接着借助这些核心词汇,把德文材料转化成英文表达。

模型会对每个单词进行评分,确定关注点,分配不同的重要性。根据这些分数,通过计算编码器隐藏状态的加权求和,能够汇集编码器的隐藏状态信息。最终目的是生成一个能够反映上下文信息的向量。

注意力层的实现可以分为6个步骤。

第一步:准备隐藏状态

图解谷歌神经翻译注意力运作_谷歌在线翻译英语_神经机器翻译注意力机制原理

首先,需要设定首个解码器的初始状态(红色),同时也要调取全部可用的编码器状态(绿色)。具体到本例,存在四个编码器的状态,以及当前解码器的状态。

第二步:获取每个编码器隐藏状态的分数

用评分机制算出每个编码器内部状态的得分,得分是标量值。这个例子里,评分机制是解码器与编码器内部状态做点积运算的结果。

=

10, 5, 10

得分十五分等于乘以十加上乘以五再加上乘以十,其中点代表加一

那个示例里,编码器内部状态的关联值为六十,非常突出,表明紧随其后的词汇生成会受到该编码器内部状态极大影响。

第三步:通过层运行所有得分

我们先把得分置入函数层级,确保得分(即标量值)的总和等于1,这些得分能够反映注意力的分布情况。

得分 记录得分结果 为零

务必留意,依据得分,分数是指数形式。关注点仅按计划分配。事实上,这些数值并非二进制,而是介于零和一之间的浮点数。

第四步:将每个编码器的隐藏状态乘以其得分

把各个编码单元的内部表征同评分值相乘,便可得出对应的位置向量。该过程即构成了对齐环节。

得分 记录得分 记录150 记录601 记录150 记录350

关注程度数值很低,所有其他编码器内部表征,与输入单词的对应关系都变得微乎其微。这表明,最先转换的词汇,应当和拥有嵌入信息的源词相吻合。

第五步:将对齐向量聚合起来

将对齐向量聚合起来,得到语境向量。

得分 记录得分 150 601 150 350 等于

0+5+0+0, 0+0+0+0, 0+1+0+0

第六步:将语境向量输入到解码器中

这个环节的具体操作,要看模型结构的规划,接下来的实例里谷歌在线翻译英语,将展示解码器怎样运用上下文信息,在模型构造中。

整体的运行机制,如下图所示:

那么,注意力机制是如何发挥作用的呢?

反向传播力求让结果尽可能符合实际状况,这是通过调整循环神经网络中的权重参数以及评分机制来实现的,如果存在评分机制的话。

这些权重会作用在编码器的内部状态上,同时也会作用在解码器的内部状态上,然后会作用在注意力分数上。

谷歌神经机器翻译如何应用注意力机制?

在阐述谷歌神经机器翻译模型之前,有必要先了解其他两种模型,接着再进行相关说明。

团队的研究

神经机器翻译注意力机制原理_谷歌在线翻译英语_图解谷歌神经翻译注意力运作

这个体系融合了双重信息解析的机制,并配备关键点识别的功能,接下来是系统构造的要点说明:

编码单元是一个能同时处理正向与逆向信息的循环网络结构。解码单元是一个单向循环网络,其起始内部状态,由逆向编码单元循环网络结构末尾的内部状态转换而来。

2、注意力层中的评分函数使用的是/。

下个解码器时间步的输入由两部分组成,一部分是前个解码器时间步(粉红色)的输出结果,另一部分是当前时间步(深绿色)的语境向量值,这两部分内容被合并在一起使用。

该模型构造,在WMT’14英法语资料集上,其BLEU评级为26.75。

相当于在将德语文本翻译成英语的时候,用了两个翻译员。

翻译员甲,在逐字逐句查看德语文本时,会记录下核心词汇。翻译员乙,在反着逐字逐句查看德语文本时,也记录下核心词汇。

这两个翻译员,会定期讨论他们在讨论之前阅读的每一个单词。

阅读完德文资料,译者B会参照彼此的商议,并运用挑选好的词语,把内容转换成英文。

在这里,翻译员A,是正向RNN,翻译员B,是反向RNN。

斯坦福大学团队的研究

与其它研究团队的架构对比,斯坦福大学团队所设计的模型体系,不仅适用范围更广,而且构造更为精简。具体优势体现为:

编码器由两层LSTM构成,解码器同样采用这种结构,其起始隐状态为编码器最终隐状态。

他们的模型评分方法有四种类型,分别是斜杠形式,点乘方式,基于减法,还有引号结构。

相关推荐

猜你喜欢

大家正在看

换一换