zoukankan      html  css  js  c++  java
  • self-attention Transformer

    1. 首先我们的目标函数是 最大似然估计,需要计算的是P(Y|X),即为给定vector x 的情况下,输出vector为Y的概率

      1) 根据下图公式,我们可以看出,例如输入为 'we',输出为汉字的情况下,我们需要穷举计算所有汉字计算分母,是不可能的

      2)所以将其优化为RNN的概率连乘

    2. 最简单的self-attention

      1)在之前的seq2seq中的attention机制,我们是用Xi乘以querySj,得到Wij,再softmax得到权重Wi的,再用权重Wi点乘Xi再相加的

        那么这里面的 Query : Sj  Key: Xi  Value: Xi

      2) 在self-attention中

        1- 不再使用seq2seq中的RNN(时序)结构,允许并行计算

        2- Query从Sj变为Xi,将Query Key Value三者全变成Xi

     

    3.  带参数的self-attention

      1)高阶self-attention,由于Query , Key , Value 都是Xi,可以将其做线性变换进行区分

      2)在做softmax时,可以除以根号下dk,来减少softmax对极大值的敏感

    4. multi-head attention , 这边就讲的不清楚了

      1) 对输入序列Xi,将其维度等分成dk(自定义参数)份,对于每份都计算其self-attention的输出,再拼接起来

      2) 比如X为三维输入 (123,212,432),然后对每维度单独多维映射成query,key,value再计算其输出,最后拼接起来。

    5. Transformer 细节也讲的不清楚

  • 相关阅读:
    日报 18/07/10
    meta标签
    map 和 vector 的erase函数说明
    Intel CPU MMX SSE SSE2/3/4指令集手册下载URL
    关于c中 int, float, double转换中存在的精度损失问题
    c++ 常数后缀说明
    STL中容器的push()或者push_back()函数的一点说明
    fprintf, fscanf,printf,scanf使用时参数注意
    操作系统 庞丽萍 第七章
    辨析全局变量的声明与定义
  • 原文地址:https://www.cnblogs.com/ChevisZhang/p/13750242.html
Copyright © 2011-2022 走看看