《Attentive Language Models》

博客指出语言模型存在无法处理长距离依赖和错误级联问题。提出改进思路,输出单词时结合上下文向量与当前隐藏层状态。猜想将其作为NMT的decoder,介绍了具体步骤及注意力分数的两种计算函数,实验显示single计算方式效果更好。

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

背景:语言模型LM通过将由每个预测步骤生成的信息整合到用于下一预测的上下文中来顺序地向前传播上下文向量。 这种信息向前传播的一个后果是,当新信息被整合到上下文中时,旧信息往往会从上下文中消失,也就是无法处理长距离依赖。第二个问题是上下文可以由更新的信息支配,所以当RNN-LM确实出错时,这个错误可以向前传播,导致序列的其余部分出现级联错误。

思路:在输出当前时刻的单词时,得到隐藏层状态后,通过计算之前的隐藏层状态得到一个上下文向量,然后把这个上下文向量和当前时刻隐藏层状态连接起来,经过一个tanh层处理,softmax后输出当前预测的单词。

猜想:把这个语言模型作为NMT的decoder。

首先使用一个多层RNN编码输入,在每一个时间步把上一个循环层的输出存储在记忆buffer中

然后计算上下文向量是当前时刻的隐藏层状态,是t时刻之前的隐藏层状态

接下来把上下文向量和当前隐藏层状态连接起来经过tanh层作为隐藏层的最终输出

最后使用softmax作为输出层得到当前时刻预测的单词

在计算注意力分数的时候,有两种计算函数

single表示只使用i时刻隐藏层状态中的信息,分数可以看作是状态的绝对相关性总结,每一个隐藏层状态的分数是固定不变的,如果使用single计算,图中则没有h3指向attention layer这条线

combined表示利用之前时刻隐藏层状态中的信息和当前t时刻隐藏层状态中的信息,分数可以看作是状态和当前时刻状态之间的相对相关性,每个时间步的分数是不一样的,图中显示的就是combined计算方式

从实验结果可以看出single的效果要好于combined

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值