Attention模型和Transformer模型

1 Attention模型详解

1.1 注意力机制的基本原理

在第13章中我们学习了时序模型LSTM,它在处理文字、语音等时序信号时有着广泛的应用。例如,可以使用两个具有不同参数的LSTM模型进行机器翻译。一个汉译英模型的架构,如图14-1所示。

图14-1

在以上模型中,将待翻译的中文“我爱你”分成了三个词,顺序输入LSTM1,最后一个时刻的上下文信息 C 包含中文“我爱你”的完整信息,LSTM1就是编码器。

在翻译阶段,将 C 作为LSTM2的起始状态。LSTM2的第一个输入为“<Start>”,表示该位置是起始位置。输出状态 q_1 经过一个Softmax函数,预测出第一个(t=1)英文单词“I”。当 t=2 时,将上一时刻(t=1)的预测结果“I”作为该时刻的输入,预测出单词“love”。依此类推,使用LSTM2预测各个英文单词。预测类别除了正常的英文单词,还有终止字符“<End>”。预测出“<End>”字符,就表明英文句子结束,终止预测。可以看出,LSTM2就是解码器,用于把由编码器编码的中文句子解码成英文单词。

整个模型称为Encoder-Decoder模型或Seq2Seq(从序列到序列)模型。

不过,直接使用Seq2seq模型进行机器翻译会导致以下问题。

在编码阶段,输入序列的所有信息都在状态 C 中。但是,C 的描述能力有限,当输入序列较长时会丢失很多有用的信息。

由于存在长距离衰减问题,所以,当编码句子很长时,句子靠前的部分对 C 的影响将会降低。

在解码阶段,每个时刻使用前一时刻的预测结果作为输入,编码器信息 C 在 t=1 时刻作为状态信息被输入LSTM2。但是,随着序列的推移,编码信息 C 对翻译的影响越来越弱,因此,越靠后的内容,翻译结果越差。

在翻译领域,解码阶段的词和编码阶段的词有很强的映射关系,例如“爱”和“love”。但是,Seq2seq模型无法在翻译“love”时直接使用“爱”这个词提供的信息,因为在解码阶段只能使用编码阶段的全局信息。产生上述问题的原因是,在解码阶段缺乏对编码阶段各个词的直接利用。因此,需要对模型进行改造。改造后的模型,如图14-2所示。

图14-2

在图14-2中:编码阶段和之前的模型没有区别,保留了各个时刻的输出向量 v;在解码阶段,模型的预测方法有所变化,例如在 t=1 时刻的预测方法如下。

首先,分别计算LSTM2在 t=1 时刻的输出 q_1,以及 v_1、v_2、v_3 的相似度(match模块),即对 q_1 和 v_1、v_2、v_3 求内积,公式如下。

s_1=〈q_1,v_1 〉

s_2=〈q_1,v_2 〉

s_3=〈q_1,v_3 〉

s_1、s_2、s_3 可以理解成未被概率归一化的相似度。通过Softmax函数对 s_1、s_2、s_3 进行归一化,分别得到

a_1=e^(s_1 )/(∑_(i=1)^3▒e^(s_i ) )

a_2=e^(s_2 )/(∑_(i=1)^3▒e^(s_i ) )

a_3=e^(s_3 )/(∑_(i=1)^3▒e^(s_i ) )

满足 a_1+a_2+a_3=1。

a_1、a_2、a_3 为相似度得分,用于表示解码阶段 t=1 时刻和编码阶段各个词之间的关系的强弱。例如,解码器在第一个时刻翻译出来的词为“I”,它和输入词“我”关系最近,例如 a_1=0.95、a_2=0.03、a_3=0.02。这一步的主要目的是让输出对输入进行聚焦,找寻最应该注意的词。

接下来,根据相似度得分对 v_1、v_2、v_3 进行加权求和,即 h_1=a_1 v_1+a_2 v_2+a_3 v_3。

最后,使用向量 h_1 通过Softmax函数来预测单词。可以看出,h_1 由最受关注的向量 v 主导,关注度就是前一时刻计算出来的 a_1、a_2、a_3。

上述模型称为注意力(Attention)模型。注意力模型和人类进行翻译的方式接近。人类在进行翻译时,会先通读“我爱你”这句话,从而获得整体语义(LSTM1的输出)。在翻译阶段,人类除了会考虑整体语义,还会考虑各个输入词(“我”“爱”“你”)和当前待翻译词的映射关系(权重 a_1、a_2、a_3)。

1.2 Attention模型概述

14.1.1节讲解了Attention模型在Seq2Seq机器翻译中的应用。实际上,Attention作为一个近些年异常火爆的模型,有着广泛的应用。本节将介绍Attention模型的通用形式。

我们通过类比了解一下Attention模型。

家长带孩子去玩具店买玩具(一共有 n 个玩具),孩子自己挑玩具,用模型预测家长是否会在玩具店消费(只预测是否购买,不关心具体购买的玩具是什么)。每个玩具都有两类特征:1-形状,颜色,功能等;2-价格,安全性,益智性等。第一类特征主要用来吸引孩子;第二类特征则决定了家长是否会购买。设孩子自身的喜好对应于特征向量 q,玩具的第一类特征对应于向量 k,第二类特征对应于向量 v。模型的结构,如图14-3所示。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值