• 软注意力和硬注意力的对比


    注意力和硬注意力的对比

    软注意力(确定):

    软(确定性)注意力机制使用所有键的加权平均值来构建上下文向量。对于软注意力,注意力模块相对于输入是可微的,因此整个系统仍然可以通过标准的反向传播方法进行训练。软注意力数学描述如下1
    e = f ( q , k ) α = s o f t m a x ( e ) = e x p ( e i ) ∑ k = 1 n e x p ( e k ) c = ∑ i = 1 n α i v i \begin{aligned} \pmb{e} &= f(\pmb{q},\pmb{k}) \\ \pmb{\alpha}&=softmax(\pmb{e})=\frac{exp(e_i)}{\sum_{k=1}^nexp(e_k)} \\ \pmb{c}&=\sum_{i=1}^{n}\alpha_i\pmb{v}_i \end{aligned} eeααcc=f(qq,kk)=softmax(ee)=k=1nexp(ek)exp(ei)=i=1nαivvi
    其中的 f ( q , k ) f(q,k) f(q,k)有很多种计算方法,如下表所示1

    在这里插入图片描述

    硬注意力(随机):

    硬(随机)注意力中的上下文向量是根据随机采样的键计算的。硬注意力可以实现如下1
    α ~ ∼ M u l t i n o u l l i ( { α i } ) c = ∑ i = 1 n α ~ i v i \widetilde{\alpha} \sim Multinoulli(\{\alpha_i\}) \\ \pmb{c}=\sum_{i=1}^{n}\widetilde{\alpha}_i\pmb{v}_i α Multinoulli({αi})cc=i=1nα ivvi
    注:多项式分布2:多项式分布是二项式分布的推广。二项式做n次伯努利实验,规定了每次试验的结果只有两个。如果现在还是做n次试验,只不过每次试验的结果可以有m个,且m个结果发生的概率互斥且和为1,则发生其中一个结果X次的概率就是多项分布。概率密度函数是:
    P ( X 1 = k 1 , X 2 = k 2 , ⋯   , X n = k n ) = n ! ( k 1 ! ) ( k 2 ! ) ⋯ ( k n ! ) ∏ i = 1 n ( p k i ) P(X_1=k_1,X_2=k_2,\cdots,X_n=k_n)=\frac{n!}{(k_1!)(k_2!)\cdots(k_n!)}\prod \limits_{i=1}^n(p_{k_i}) P(X1=k1,X2=k2,,Xn=kn)=(k1!)(k2!)(kn!)n!i=1n(pki)

    两者的对比和一种改进:

    与软注意力模型相比,硬注意力模型的计算成本更低,因为它不需要每次都计算所有元素的注意力权重。 然而,在输入特征的每个位置做出艰难的决定会使模块不可微且难以优化,因此可以通过最大化近似变分下限或等效地通过 REINFORCE 来训练整个系统。 在此基础上,Luong 等人提出了机器翻译的全局注意力和局部注意力机制3。 全局注意力类似于软注意力。 局部注意力可以看作是硬注意力和软注意力之间的有趣混合,其中一次只考虑源词的一个子集。 这种方法在计算上比全局注意力或软注意力更便宜。 同时,与硬注意力不同,这种方法几乎在任何地方都是可微的,从而更容易实现和训练。

    全局的注意力结构如下4

    在这里插入图片描述

    局部的注意力结构如下4

    在这里插入图片描述

    参考:


    1. Niu Z, Zhong G, Yu H. A review on the attention mechanism of deep learning[J]. Neurocomputing, 2021, 452: 48-62. ↩︎ ↩︎ ↩︎

    2. 《Show, Attend and Tell: Neural Image Caption Generation with Visual Attention》论文阅读 ↩︎

    3. Luong M T, Pham H, Manning C D. Effective approaches to attention-based neural machine translation[J]. arXiv preprint arXiv:1508.04025, 2015. ↩︎

    4. Luong M T, Pham H, Manning C D. Effective approaches to attention-based neural machine translation[J]. arXiv preprint arXiv:1508.04025, 2015.
      ranslation[J]. arXiv preprint arXiv:1508.04025, 2015. ↩︎ ↩︎

  • 相关阅读:
    springboot家校共育平台-计算机毕业设计源码54235
    SCSS的嵌套规则可以减少重复代码,那么如何在嵌套规则中使用父选择器?
    Hive调优方法
    DETR原理与代码超详细解读
    论文解析——异构多芯粒神经网络加速器
    Harmony import和export
    尚品汇后台管理项目(Vue)
    视频监控系统/安防监控/视频AI智能分析:小动物识别算法场景汇总
    关于学生使用flowus的一些事
    GUI编程--PyQt5--QLineEdit
  • 原文地址:https://blog.csdn.net/KPer_Yang/article/details/126356818