CS224dlecture9 神经机器翻译和注意力机制

本文探讨神经机器翻译的优势,如端到端训练、分布式表示和更好的上下文利用。注意力机制通过允许模型关注源序列的特定部分来改进翻译质量,通过计算编码器和解码器状态的相似性来决定权重。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

神经机器翻译

构造一个大型网络,以一种端到端的方式对这个网络进行训练和优化

端到端指的是(编码器-解码器结构)还是源语言-目标语言?
在这里插入图片描述
Encoder:将输入序列压缩成一个语义向量c
Decoder:根据语义向量c生成一个指定的序列

两种模式:
(1)将语义向量c作为decoder的初始状态
(2)将语义向量c当做decoder每一步的输入
在这里插入图片描述

神经机器翻译 的优势:

(1)用端到端的形式进行训练,可以从一个单一的损失函数同时训练模型的所有参数
(2)分布式表示,允许在相似的词和短语之间建立统计关系,并借此获得更好的预测。
(3)更好的利用上下文信息(原因:分布式表示能够共享统计关系,传统的机器翻译系统使用的是词的one-hot表示,由于数据的稀疏性,不能构造超过5-gram的模型)。
(4)生成更流畅的文本

注意力机制

思想

传统的机器翻译模型在长句上的表现不好,与其使用编码器的最后一个隐层状态Y来生成目标语句,不如直接编码过程中所有的隐层编码向量,即源对应的所有编码状态都可以用来进行翻译工作了,因此我们在翻译任何词的时候,需要知道使用哪个编码器状态,注意力机制告诉我们源的哪一部分是用于下一步的翻译的,也就是建立了源和翻译输出的一种隐式的对应关系,所有隐式状态被保存在内存中。

实现

在开始生成后,想要生成下一个词时,使用隐层状态去决定访问之前产生的哪一个隐层状态(存在内存中 ),由于此时还没有生成当前的隐层状态,因此选用前一个隐层状态作为注意力机制的基准,结合前一个隐层状态和当前隐层状态的一个元素给内存中中的每个状态一个分数。再根据注意力机制给出的权值计算上下文向量。
在这里插入图片描述
在这里插入图片描述

注意力函数->得到分数

基本方法:使用解码器隐层状态和编码器隐层状态的内积来实现,相当于找相似的词(即相同语义的词)并基于此生成分数。
不同的论文研究中score函数有所不同。

目前在注意力机制中的发展:
(1)使用两次注意力机制(两个方向)。
(2)fertility?(还没看懂:论文:More substantive models of attention using:position+Markov+fertility)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值