最近在写一东西,有在看注意力机制,将其数学原理总结一下。

神经网络中的注意力机制(Attention Mechanism)是在计算能力有限的情况下,将计算资源分配给更重要的任务,同时解决信息超载问题的一种资源分配方案。即是在注意给定任务中更加关键的信息,而可以适当的忽略不重要信息,从而提高任务处理的效率。

注意力机制可分为下面展示一些 软注意力(Soft-Attention)硬注意力(Hard-Attention)。可理解为对于N个输入信息 X=[x1,x2,...,xN],硬注意力机制往往在这N个输入信息种选取某一个(随机选择或选取概率最高的);而软注意力是考虑了N个输入,计算N个输入信息的加权平均。故在很多深度学习任务中采用软注意力机制,下文都是针对软注意力机制展开的。

1 注意力机制的数学原理

注意力机制的计算步骤

  1. 对所有输入信息计算其注意力分布
  2. 根据注意力分布计算Attention值

接下来分别解释一下注意力分布Attention值

1.1 基本形式(X Q)

对于N个输入信息 X=[x1,x2,...,xN]q为查询向量,定义注意力变量z∈[1,N] 表示被选择信息的索引位置即x的下标。

① 对所有输入信息计算其注意力分布
αi 表示在给定查询q时,输入信息向量X中第i个信息与查询q的相关程度
由此有:

其中σi构成的概率向量就称为注意力分布
s(xi,q)是注意力打分函数,有以下几种形式:

看的文章中缩放点积形式用的比较多,d是维度,W、U、v是网络学习出来的参数
② 根据注意力分布计算Attention值

1.2 键值对 形式(K V Q)

键值对形式是将基本形式中的输入信息向量X由(K,V)表示,那么N个输入信息就可以表示为(K, V)= [(k1,v1),(k2,v2),...,(kN,vN)],其中“键”K用来计算注意分布σi,“值”V用来计算聚合信息。
① 根据Query和Key计算二者的相似度
这里就是通过打分模型,计算出注意力得分

si = F(Q,ki)

② 用softmax函数对注意力得分进行数值转换

③ 根据权重系数对Value进行加权求和:

整个过程如下图所示:

注意力机制Attention Mechanism的数学原理相关推荐

  1. 注意力机制Attention Mechanism及论文

    注意力机制Attention Mechanism Q,K,V 注意力分数 seq2seq中注意力机制的应用 注意力机制源于对人类视觉的研究.在认知科学中,由于信息处理的瓶颈,人类会选择性地关注所有信息 ...

  2. 计算机视觉中的注意力机制--attention mechanism

    转载:https://zhuanlan.zhihu.com/p/56501461 张戎 引言 在机器翻译(Machine Translation)或者自然语言处理(Natural Language P ...

  3. 图像处理注意力机制Attention汇总(附代码)

    原文链接: 图像处理注意力机制Attention汇总(附代码,SE.SK.ECA.CBAM.DA.CA等) 1. 介绍 注意力机制(Attention Mechanism)是机器学习中的一种数据处理方 ...

  4. 注意力机制(Attention)最新综述论文及相关源码

    来源:专知 注意力机制(Attention)起源于模仿人类的思维方式,后被广泛应用于机器翻译.情感分类.自动摘要.自动问答等.依存分析等机器学习应用中.专知编辑整理了Arxiv上一篇关于注意力机制在N ...

  5. 注意力机制Attention详解

    注意力机制Attention详解 一.前言 2018年谷歌提出的NLP语言模型Bert一提出,便在NLP领域引起热议,之所以Bert模型能够火出圈,是由于Bert模型在NLP的多项任务中取得了之前所有 ...

  6. 注意力机制(Attention)原理详解

    文章结构 1. 为什么需要Attention 2. Attention的基本原理 3.自注意力机制(Self-Attention) 4.总结 1. 为什么需要Attention 在了解Attentio ...

  7. 神经网络注意力机制--Attention in Neural Networks

    Attention in Neural Networks and How to Use It http://akosiorek.github.io/ml/2017/10/14/visual-atten ...

  8. 序列到序列网络seq2seq与注意力机制attention浅析

    序列到序列网络 序列到序列网络(Sequence to Sequence network),也叫做seq2seq网络, 又或者是编码器解码器网络(Encoder Decoder network), 是 ...

  9. 论文阅读: 图像分类中的注意力机制(attention)

    本文简要总结一下attention机制在图像分类任务中的应用.attention作为一种机制,有其认知神经或者生物学原理: 注意力的认知神经机制是什么? 如何从生物学的角度来定义注意力? 在计算机视觉 ...

  10. 注意力机制 Attention

    注意力机制 前沿 注意力 认知神经学中的注意力 人工神经网络中的注意力机制 HAN(Hierarchical Attention Networks) Bi-LSTM + Attention + ten ...

最新文章

  1. matlab 绘制圆
  2. Maven的发布plugin配置
  3. javascript 面向对象(转)
  4. python读取api接口频率_Python基础(API接口测试)
  5. 键值数据库LevelDB的优缺点及性能分析
  6. Netty进行文件传输
  7. 怎样把台式机变成虚拟服务器,怎么把文件传到虚拟主机
  8. python图像线条提取_python3 图像细化(提取骨架线)
  9. 【剑指Offer学习】【面试题66:矩阵中的路径】
  10. Python的第三方库fileType
  11. java-----抽象类与接口
  12. 连接服务器成功获取角色信息,客户端 获取 服务器 角色属性
  13. 大二面试bat ,阿里巴巴面试经历,普通本科(二本)
  14. C语言(谭浩强版本,主讲人:小甲鱼)P1-P9
  15. 通过源码理解 vue beforecreated 周期与 created 周期之间发生了什么
  16. Mint UI—loadmore—Pull down下拉刷新将下拉刷新的箭头标志更换成其他图片(图文)
  17. 幼儿园计算机应用研修日志,信息技术教师研修日志三篇
  18. 在 Ubuntu 上安装 jstest-gtk 手柄测试
  19. OpenG - 三次B样条曲线
  20. cdn引入elementUi,如何使用message的提示信息——技能提升

热门文章

  1. JAVAFX的table样式修改
  2. pdf阅读神器推荐——PDF-XChange Editor V8
  3. 配置 Exchange ActiveSync 身份验证
  4. Cisco Packet Tracer思科模拟器交换机的HSRP技术
  5. 怎么检查计算机硬盘有没有供电,终于知道电脑硬件怎样全部检测
  6. 典型相关分析(SPSS)
  7. 网络工程师考试试题讲解视频教程
  8. Java格式化日期[转自http://java.chinaitlab.com/advance/923542.html ]
  9. 系统异常日志处理的思考
  10. 金蝶K3系统中间层群集部署方案