2021-06-27 ch22 注意力机制

为什么需要注意力机制?
理解文本、图片信息,能记住的信息是有限的,模型要利用好每一刻有用的部分,把注意力放在某一个部分
seq2seq 存在1、长依赖的梯度消失问题;2、瓶颈问题,decoder前置依赖c的训练好坏,所以需要attention来动态生成c

虽然加入注意力机制会部分缓解长依赖关系,但不会完全解决。

注意力机制:是一个不断更新权重,再加权求和的过程

seq2seq+attn基本框架

语料形式:[原文,译文]
训练过程:
encoder部分:f(x1) -> h1, ..., f(x_n,h_n-1) -> h_n
context向量是动态生成的(划重点!!!),也是连接 encoder 和 decoder 的桥梁和瓶颈
decoder部分:
输出序列 的第一个单词out_1= “”,

  1. g1 = f(out_1)
  2. g1和输入序列每个元素都做内积:g1 * h_1~h_n -> 归一化softmax -> 得到上下文向量c1,即h_1~h_n的加权和:c1 = w1 h1 + w2 h2 +... + wn h_n (w为注意力权重)
  3. decoder部分,先算一个分布:y1 = W_hy·[c1 g1]
  4. 输出序列的下一个单词 out_2 = argmax(softmax(y1)) 找到概率最大的单词

你可能感兴趣的:(2021-06-27 ch22 注意力机制)