attention机制

参考视频:
【Attention 注意力机制】激情告白transformer、Bert、GNN的精髓

attetion就是权重,权重就是attention
Transformer、BERT、GPT等等这几年最流行的AI模型全是在它的基础上发展起来的。

在AI翻译中,输入一句话,机器是如何通过上下文动态改变翻译结果的?秘诀就是attention机制

两个RNN结构组合,形成Encoder-Decoder模型,先对一句话编码,然后再解码,就能实现机器翻译。但是这种不管输入多长,都同意压缩成相同长度编码C的做法,会导致翻译精度下降。
attention机制_第1张图片

attention机制就是通过输入不同的C来解决这个问题

attention机制_第2张图片

这里的 α t i \alpha_{ti} αti表示在 t t t时刻所有输入的权重,从 C t C_t Ct的角度上看,这些权重就是不同输入的注意力。

attention机制_第3张图片
这里的 α t i \alpha_{ti} αti就是attention分布。
网络结构定义好后,我们可以通过神经网络的训练得到最好的attention权重矩阵。

通过attention的引入,我们打破了只能利用encoder形成单一向量的限制,让每一时刻模型都能动态地看到全局信息,将注意力集中到对当前单词翻译最重要的信息上

attention机制_第4张图片

既然attention模型本身已经对所有输入进行了打分,那么RNN中的顺序就没用了,不如全部简化掉,因此就有了self-attention:

attention机制_第5张图片

attention机制_第6张图片

将得到的权重放到一个前馈神经网络中,就很好地嵌入了上下文的信息。

attention机制_第7张图片

这样的步骤重复几次效果会更好(多层attention)。这个过程类似于照镜子,每次出门前,多照几次镜子,每次全身打量一番,不同部位给予不同的权重,决定突出的部位。

Decoder的时候,不仅要看之前产生的输出,而且还得看Encoder得到的输出

attention机制_第8张图片

attention的变体遍地开花。

attention机制_第9张图片

核心思想:通过加权求和解决context的理解。本质上就是在不同的上下文下,专注不同的信息。

你可能感兴趣的:(深度学习,人工智能)