【自然语言处理四】注意力机制

本文探讨了自然语言处理中的注意力机制,旨在解决Seq2Seq模型在处理长序列时的问题。通过引入注意力机制,可以更好地关注输入序列中的关键信息。同时,文章提供了tensorflow和pytorch的代码实现示例。
摘要由CSDN通过智能技术生成

1.注意力机制

2014年,Ilya Sutskever等学者提出了著名的Sequence to Sequence(Seq2Seq)模型,但其中存在两个问题:

1)encoder 最后一个 hidden state,与句子末端词汇的关联较大,难以保留句子起始部分的信息。因此当句子过长时,模型性能下降很快。

2)句子中每个词都赋予相同的权重的做法是不合理的,这样没有足够的区分度。

同样的,在计算机视觉领域中,CNN模型也存在着这样的问题,特别是当图像尺寸很大时,这个问题更加明显。

针对以上缺陷,Dzmitry Bahdanau, Yoshua Bengio等人发表《Neural machine translation by jointly learning to align and translate》,提出了Attention Mechanism,希望实现软区分,并给出了一些 attention 的可视化效果图。同年,Kelvin Xu等人发表论文《Show, Attend and Tell: Neural Image Caption Generation with Visual Attention》,将注意力机制引入了计算机视觉领域。他们同时提出了两种注意力机制,即Soft Attention和Hard Attention。

在这里插入图片描述

2.代码实现

tensorflow
import tensorflow as tf
x=tf.constant([[1,0,0],[0,2,2]],dtype=tf.float32)
w_query=tf.constant([[1,0],[1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值