深度学习之注意力机制

一、前提

该篇为基于实现LSTM中文情感倾向分析的基础上,为提高情感倾向预测的准确度,而引入的一个注意力机制模块,通过翻阅相关学术文献和其他资料所作的归纳总结。

二、注意力机制简介

简单来说,注意力机制与人类视觉注意力相似,正如人在看事物一样,会选择重点的对象,而忽略次要对象。近几年来,注意力机制在图片处理领域和自然语言处理领域得到广泛的应用,并展现出显著的效果。注意力机制主要是利用神经网络找到输入特征的有效部分。

三、Encoder-Decoder模型

注意力机制的框架主要是基于Encoder-Decoder框架发展而来。Encoder-Decoder模型又被称为编码-解码模型,其中Encoder会将输入的句子序列转化为一个固定长度的向量,Decoder会将该向量在转化为其他语言形式的句子序列。自然语言处理中的Encoder-Decoder框架如下图1所示(注:图片来源于网络)

图1 Encoder-Decoder框架

给出一组文本(X,Y),其中X={x1,x2,x3,...,xn},Y={y1,y2,y3,...,ym}。Encoder对X文本进行编码处理,通过非线性变换转化,将X文本转化为中间语义C,其表达式为:

C=φ(x1,x2,x3,...,xn)

Decoder对中间语义C和已生成的历史信息{y1,y2,y3,...,yi-1}来生成i时刻的信息yi,其表达式为:

yi=φ(C,y1,y2,y3,...,yi-1)

四、Attention模型

从Encoder-Decoder框架中可以注意到,每预测一个yi所对应的语义编码都是C,说明X中的每个词汇对Y中的每个词汇的影响程度都是相同的,这样会导致语义向量无法表达整个文本的信息,使得解码效果降低。基于Encoder-Decoder框架无法突出输入序列的区分度,因而专家们提出了注意力机制使Encoder-Decoder框架缺陷得到改善。注意力机制的结构框架如图2所示:

图2 注意力机制框架

当生成目标句子词汇yi时,都有唯一中间语义Ci与之对应,其中i=(1,2,3,...),其表达式如下所示:

y1=Φ(C1)

y2=Φ(C2,y1)

y3=Φ(C3,y1,y2)

以此类推,当i时刻时,

yi=Φ(Ci,y1,y2,y3,...,yi-1)

其中Ci与Encoder-Decoder框架中的中间语义C有所区别,它是一个权重处理后的权值,Ci的表达式为(注:由于博客无法使用MathType编写的公式,且本地编写困难,这里用截图代替)

其中,Vij表示为编码中的第j个词汇与解码中的第i个词汇之间的权值,hj表示为Encoder中第j个词汇的隐向量,bij表示一个矩阵,用于衡量编码中第i个词汇对解码中的第j个词汇的影响程度。

原文地址:https://www.cnblogs.com/zjkf8686/p/12286093.html

时间: 2024-07-30 21:38:29

深度学习之注意力机制的相关文章

深度学习之注意力机制(Attention Mechanism)

这篇文章整理有关注意力机制(Attention Mechanism )的知识,主要涉及以下几点内容: 1.注意力机制是为了解决什么问题而提出来的? 2.软性注意力机制的数学原理: 3.软性注意力机制与Encoder-Decoder框架: 4.自注意力模型的原理. 一.注意力机制可以解决什么问题? 神经网络中的注意力机制(Attention Mechanism)是在计算能力有限的情况下,将计算资源分配给更重要的任务,同时解决信息超载问题的一种资源分配方案.在神经网络学习中,一般而言模型的参数越多则

[转] 深度学习中的注意力机制

from: https://zhuanlan.zhihu.com/p/37601161 注意力模型最近几年在深度学习各个领域被广泛使用,无论是图像处理.语音识别还是自然语言处理的各种不同类型的任务中,都很容易遇到注意力模型的身影.所以,了解注意力机制的工作原理对于关注深度学习技术发展的技术人员来说有很大的必要. 人类的视觉注意力 从注意力模型的命名方式看,很明显其借鉴了人类的注意力机制,因此,我们首先简单介绍人类视觉的选择性注意力机制. 图1 人类的视觉注意力 视觉注意力机制是人类视觉所特有的大

关于《注意力模型--Attention注意力机制》的学习

关于<注意力模型--Attention注意力机制>的学习 此文大部分参考深度学习中的注意力机制(2017版) 张俊林的博客,不过添加了一些个人的思考与理解过程.在github上找到一份基于keras框架实现的可运行的注意模型代码:Attention_Network_With_Keras (对这个模型的详细理解可参考:<注意力模型的一个实例代码的实现与分析>) 注意力模型:对目标数据进行加权变化.人脑的注意力模型,说到底是一种资源分配模型,在某个特定时刻,你的注意力总是集中在画面中的

zz深度学习中的注意力模型

中间表示: C -> C1.C2.C3 i:target -> IT j: source -> JS sim(Query, Key) -> Value Key:h_j,类似某种“basis”: 从图9可以引出另外一种理解,也可以将Attention机制看作一种软寻址(SoftAddressing):Source可以看作存储器内存储的内容,元素由地址Key和值Value组成,当前有个Key=Query的查询,目的是取出存储器中对应的Value值,即Attention数值.通过Quer

深度残差收缩网络:(四)注意力机制下的阈值设置

对于基于深度学习的分类算法,其关键不仅在于提取与标签相关的目标信息,剔除无关的信息也是非常重要的,所以要在深度神经网络中引入软阈值化.阈值的自动设置,是深度残差收缩网络的核心贡献.需要注意的是,软阈值化中的阈值,需要满足一定的条件.这篇文章中的阈值设置,事实上,是在注意力机制下进行的.下面分别介绍阈值需要满足的条件.注意力机制以及具体的阈值设置方法. (1)阈值需要满足的条件 在软阈值化中,阈值的取值有一定的要求:首先,阈值必须是正数:其次,阈值不能太大,否则输出会全部为零. 更重要的是,每个样

深度学习应用在哪些领域让你觉得 “我去,这也能行!”?

Z Stupid 田渊栋. 周若凡等 439 人赞同 Pointer Networks (https://arxiv.org/pdf/1506.03134.pdf) NIPS15的论文,通过改进RNN用来解决一些传统cs问题,比如凸包,三角剖分,甚至是TSP,最神奇的地方在于这玩意效果竟然还不错,甚至比一些近似算法效果好.OI/ACM党出身的我表示三观都被毁了…… Synthesizing Dynamic Textures and Sounds by Spatial-Temporal Gener

(转)深度学习前沿算法思想

深度学习前沿算法思想 本文转自: https://mp.weixin.qq.com/s?__biz=MzA5NDExMTAzNA==&mid=2649981646&idx=2&sn=8fe05eac5a5068efb65ca1602e5fd3a0&chksm=8854b69bbf233f8db5dbaa1ea8396d181c9a35e760ab3c1c4934b504f69fe92683972d78d327&mpshare=1&scene=2&sr

用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践

转自https://zhuanlan.zhihu.com/p/25928551 近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文题目便是文本分类问题,趁此机会总结下文本分类领域特别是应用深度学习解决文本分类的相关的思路.做法和部分实践的经验. 业务问题描述: 淘宝商品的一个典型的例子见下图,图中商品的标题是"夏装雪纺条纹短袖t恤女春半袖衣服夏天中长款大码胖mm显瘦上衣夏".淘宝网后台是通过树形的多层的类目体系管理商品的,覆盖叶子类目数量达上万个,商品量也

深度学习从被监督走向互动

来源:http://tech.163.com/16/0427/07/BLL3TM9M00094P0U.html 编者按:2016年是人工智能诞辰60周年.4月22日,2016全球人工智能技术大会(GAITC) 暨人工智能60年纪念活动启动仪式在北京国家会议中心举行,约1600余专家.学者及产业界人士出席大会. 大会专题报告由中国人工智能学会副秘书长.地平线机器人技术创始人兼CEO余凯博士主持.嘉宾包括中国人工智能学会理事长.中国工程院院士李德毅,IBM中国研究院大数据及认知计算研究总监苏中,百度