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 细节也讲的不清楚

  • 相关阅读:
    基本输入输出函数
    变长参数表函数的编写
    一文精通Linux 命令行
    Linux 下的种种打包、压缩、解压命令
    GIT补丁怎么打?
    GIT 合并的冲突解决途径
    GIT 库整理方法
    GIT中常用命令详解1.reset
    霍夫曼编码及译码
    C语言链表实现队列
  • 原文地址:https://www.cnblogs.com/ChevisZhang/p/13750242.html
Copyright © 2011-2022 走看看