研究生期间主要科研的内容,把基本公式推一推。

encoder-decoder机制

  • 核心:处理不定长数据时,先使用一个encoder模型(可以是任何模型,这里以RNN为例),将输入数据压缩成一个固定长度的隐表示cc。然后使用另一个decoder模型依次展开隐表示cc得到我们需要的内容。
  • 应用举例:
    • 文本翻译
    • 问答系统
  • 但是这样是有问题的,就是当输入很长的时候,把他们都压缩到cc中,必然会导致数据特征的丢失。
    机器学习5. RNN/LSTM/GRU 反向传播公式推导;encoder-decoder框架/attention机制汇总

attention机制

引用图片来自Google的《Attention is all you need》

  • 核心思想:注意力机制是一组三元组<Q,K,V>,表示的是Quere(查询)和Key(键)的相似性程度。然后根据相似性的大小,赋予Value(值)的取值。

  • 相似性的计算由很多种,主要有:

    • 点乘:Similarity(Q,K)=Q.KSimilarity(Q,K)=Q.*K
    • 余弦距离:S(Q,K)=Q.KQKS(Q,K)=\frac{Q.*K}{||Q||*||K||}(又名cosine相似性,更多关注了角度,而忽视了大小)
    • 常用1:S(Q,K)=QTWKS(Q,K)=Q^TWK ,W是要学习的权值
    • 常用2:S(Q,K)=W[Q,K]S(Q,K)=W[Q,K] ,将QK拼接在一起,W是要学习的权值
  • 对相似性S(Q,K)S(Q,K)进行softmax后就是我们Attention的权值,再乘以对应的Value就是Attention的结果。(除以dk是文中的一种小技巧,与本文无关)
    机器学习5. RNN/LSTM/GRU 反向传播公式推导;encoder-decoder框架/attention机制汇总

  • 在很多情况下,我们的value就是我们的K(即得到的注意力权值乘以自己就是操作结果,换个说法就是对K进行了加权求和

  • self-attention

    • 当Q=V=K ,即三元组都相等时,叫做自我注意力。在google那篇文章里以此为基础做出了Transformer
      机器学习5. RNN/LSTM/GRU 反向传播公式推导;encoder-decoder框架/attention机制汇总
附录:RNN/LSTM正相传播和BPTT推导

注意,公式中的梯度以某一时刻tt为例,若要计算某个参数的总梯度,只需要对不同时刻的梯度求和即可。此时要注意,靠后时间的梯度可以向前传播。

机器学习5. RNN/LSTM/GRU 反向传播公式推导;encoder-decoder框架/attention机制汇总
机器学习5. RNN/LSTM/GRU 反向传播公式推导;encoder-decoder框架/attention机制汇总

相关文章:

  • 2021-12-27
  • 2021-12-22
  • 2021-09-23
  • 2021-08-23
  • 2021-10-12
  • 2021-06-12
  • 2021-07-26
  • 2022-12-23
猜你喜欢
  • 2021-09-24
  • 2022-02-05
  • 2021-05-04
  • 2021-05-21
  • 2021-09-14
  • 2022-12-23
  • 2021-07-11
相关资源
相似解决方案