版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
序列到序列模型与注意力机制张杲峰,刘刚,周庆国人民邮电出版社2025神经网络与深度学习(微课)内容概要序列到序列模型Bahdanau注意力机制通用注意力机制带注意力的序列到序列模型神经网络与深度学习2序列到序列(Seq2Seq)模型序列到序列模型可用于机器翻译、图像标题生成等任务。传统的序列到序列一般采用编码器-解码器架构。编码器和解码器实际上都是堆叠的循环神经网络层,例如长短期记忆网络或者门控循环单元网络。解码器decoder
编码器encoder
RNNx0您h0h1RNNx1是h2
RNNx2一个h3
RNNx3好人h5
RNNx5EOSz
RNNx4。h4
RNNy0youRNNy1areRNNy2aRNNy3goodRNNy5.
RNNy4personRNNy6EOS
y0y1
y2
y4
y3
y5
s0s1
s2
s4
s3
s5
神经网络与深度学习3序列到序列(Seq2Seq)模型编码器处理输入x,并从所有输入时间步长生成一个中间压缩表示,也称为上下文向量,记为z。另一方面,解码器接收z并生成输出序列y。神经网络与深度学习4解码器decoder
编码器encoder
RNNx0您h0h1RNNx1是h2
RNNx2一个h3
RNNx3好人h5
RNNx5EOSz
RNNx4。h4
RNNy0youRNNy1areRNNy2aRNNy3goodRNNy5.
RNNy4personRNNy6EOS
y0y1
y2
y4
y3
y5
s0s1
s2
s4
s3
s5
序列到序列(Seq2Seq)模型瓶颈问题当序列较长时,由于梯度消失的原因,中间表示z无法对所有输入时间步长的信息进行编码,尤其是距离较远、但又比较重要的时间步信息。神经网络与深度学习5解码器decoder
编码器encoder
RNNx0您h0h1RNNx1是h2
RNNx2一个h3
RNNx3好人h5
RNNx5EOSz
RNNx4。h4
RNNy0youRNNy1areRNNy2aRNNy3goodRNNy5.
RNNy4personRNNy6EOS
y0y1
y2
y4
y3
y5
s0s1
s2
s4
s3
s5
Bahdanau注意力机制为了避免瓶颈问题,巴赫达瑙等人在编码器和解码器之间引入注意力机制,称之为Bahdanau注意力机制。心理学认为,注意力是指人的心理活动指向和集中于某种事物的能力,具体而言,就是大脑选择信息、放大信息、引导信息并深化信息处理的能力。为什么需要这种能力呢?因为注意力解决了一个非常关键的问题:信息饱和,资源有限。神经网络与深度学习6Bahdanau注意力机制
神经网络与深度学习7Bahdanau注意力机制
神经网络与深度学习8Bahdanau注意力机制
神经网络与深度学习9Bahdanau注意力机制
神经网络与深度学习10通用注意力机制
神经网络与深度学习11通用注意力机制
神经网络与深度学习12他是一个网球球手
通用注意力机制
神经网络与深度学习13他是一个网球球手
通用注意力机制
神经网络与深度学习14他是一个网球球手
带注意力的序列到序列模型编码器classEncoderRNN(nn.Module):
def__init__(self,input_size,hidden_size):super(EncoderRNN,self).__init__()
self.hidden_size=hidden_size
self.embedding=nn.Embedding(input_size,hidden_size)#词嵌入
self.lstm=nn.LSTM(hidden_size,hidden_size)#定义LSTM
defforward(self,input,hidden,cell):embedded=self.embedding(input).view(1,1,-1)output=embeddedoutput,(hidden,cell)=self.lstm(output)
returnoutput,(hidden,cell)
definitHidden(self):
returntorch.zeros(1,1,self.hidden_size,device=device)神经网络与深度学习15input_size:词汇表大小(输入语言有多少个不同的词)hidden_size:隐藏层维度,决定模型的容量self.embedding:将离散的词索引转换为连续的密集向量self.lstm:LSTM循环神经网络,捕捉序列的时序依赖关系带注意力的序列到序列模型解码器classAttnDecoderRNN(nn.Module):
def__init__(self,hidden_size,output_size,dropout_p=0.1,max_length=MAX_LENGTH):super(AttnDecoderRNN,self).__init__()
self.hidden_size=hidden_size
self.output_size=output_size
self.dropout_p=dropout_p
self.max_length=max_length
self.embedding=nn.Embedding(self.output_size,self.hidden_size)
self.attn=nn.Linear(self.hidden_size*2,self.max_length)
self.attn_combine=nn.Linear(self.hidden_size*2,self.hidden_size)
self.dropout=nn.Dropout(self.dropout_p)
self.lstm=nn.LSTM(self.hidden_size,self.hidden_size)
self.out=nn.Linear(self.hidden_size,self.output_size)
神经网络与深度学习16output_size:输出词汇表大小(目标语言有多少个不同的词)max_length:最大序列长度,用于注意力权重矩阵self.attn:注意力计算层,输入维度hidden_size*2,输出max_lengthself.attn_combine:融合层,将注意力上下文与当前输入结合带注意力的序列到序列模型解码器
defforward(self,input,hidden,cell,encoder_outputs):embedded=self.embedding(input).view(1,1,-1)embedded=self.dropout(embedded)
attn_weights=F.softmax(
self.attn(torch.cat((embedded[0],hidden[0]),1)),dim=1)attn_applied=torch.bmm(attn_weights.unsqueeze(0),encoder_outputs.unsqueeze(0))
output=torch.cat((embedded[0],attn_applied[0]),1)output=self.attn_combine(output).unsqueeze(0)
output=F.relu(output)output,(hidden,cell)=self.lstm(output,(hidden,cell))
output=F.log_softmax(self.out(output[0]),dim=1)
returnoutput,(hidden,cell),attn_weights
definitHidden(self):
returntorch.zeros(1,1,self.hidden_size,device=device)神经网络与深度学习17torch.cat((
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中生利用声学传感器分析智能汽车能量回收系统优化课题报告教学研究课题报告
- 停车场车辆停放安全保卫安全消防管理制度范本
- 2026年建筑设计师招聘专业题库及答案解析
- 2026年电气工程师专业科目考试预测试题集
- 2026年减肥过程中的营养摄入与饮食规划考核题
- 2026江西九江市彭泽县部分县直事业单位选调7人备考题库有答案详解
- 1.2.2《数据管理与分析的应用价值》-课后作业 -信息技术-数据管理与分析选修3
- 2026年松滋市事业单位人才引进102人备考题库及答案详解(易错题)
- 2026新疆第三师图木舒克市招聘事业单位工作人员84人备考题库及一套完整答案详解
- 2026年中央广播电视总台招聘124人备考题库及答案详解(考点梳理)
- 代建工程安全管理
- 风电场培训安全课件
- 工程质量管理复盘总结
- (完整版)房屋拆除施工方案
- 供水管道抢修知识培训课件
- 广东物业管理办法
- 业务规划方案(3篇)
- 大客户开发与管理课件
- 上海物业消防改造方案
- 供应商信息安全管理制度
- 2025年农业机械化智能化技术在农业防灾减灾中的应用报告
评论
0/150
提交评论