本文作者:灵感泉源

Bengio精简了传统RNN,性能可与Transformer媲美

灵感泉源 10-05 98
Bengio精简了传统RNN,性能可与Transformer媲美摘要: 太平洋科技快讯近日微软宣布将把和手机应用合并为一个应用旨在为用户提供更加统一和便捷的体验该更新将首先向移动端的测试人员推出让他们先行体验新应用的功能随后微软计划在不久的将来向所有用...

【太平洋科技快讯】近日,微软宣布将把Xbox Game Pass和Xbox手机应用合并为一个应用,旨在为用户提供更加统一和便捷的体验。该更新将首先向移动端的Xbox测试人员推出,让他们先行体验新应用的功能。随后,微软计划在不久的将来向所有用户开放这一合并后的应用。自2024年11月起,微软将不再支持Xbox Game Pass应用的新*,...

金磊 发自 凹非寺

量子位 | 公众号 QbitAI

深度学习三巨头之一的Yoshua Bengio,刚刚发布了一篇有趣的新论文——

RNN就是所需的全部吗?
Were RNNs All We Needed?

不仅论文的名字有意思,其结论更是精彩。

研究表明,精简十几年前的RNN们,性能上可以与最近序列模型(如Tran ormer等)相媲美!

具体而言,Bengio等人重新审视了诸如LSTM(1997)和GRU(2014)这些传统的RNN,认为这些模型的缺点是由于需要时间反向传播 (BPTT) 而导致速度较慢。

所以他们直接大刀阔斧地移除了LSTM和GRU中的隐藏状态依赖,让它们不再需要BPTT,从而可以 地并行训练。

而精简改良版的RNN们,名字分别叫做minLSTMminGRU

它们和传统RNN相比,不仅训练时所需的参数量大幅减少,并且完全可并行化。

嗯,是颇有一种大道至简的感觉了。

那么Bengio等人具体又是如何实现的?我们继续往下看。

Tran ormer和它的变体们可以说是近几年大热的架构,但与此同时缺点也是较为明显,那便是在处理长序列时的计算复杂度问题。

具体来说,Tran ormer模型在序列长度上的计算复杂度是二次方的,这使得它在处理长序列时资源的消耗就比较高。

因此就需要能够在训练时有效地处理长序列,同时在推理时保持 性能的替代方案——简化版的RNN。

这个过程的关键便是隐藏状态依赖,让它们不再需要BPTT,让效率直接飙升。

首先我们来看下Bengio团队对GRU的处理,即minGRU,总共分为2步。

步,去除之前隐藏状态的依赖。

在传统的GRU模型中,更新门zt和候选隐藏状态h~t的计算依赖于前一时刻的隐藏状态 ht-1。这导致模型在训练时无法实现并行处理,因为每个时间步的计算都依赖于前一个时间步的结果。

为了 这个问题,minGRU对GRU进行了修改,使更新门和候选隐藏状态的计算仅依赖于当前时刻的输入xt,而不依赖于ht-1:

通过这种方式,minGRU的每一时刻的计算可以 于其他时刻并行执行。

第二步,去除候选状态的范围限制。

在 步中,候选隐藏状态h~t仍然使用双曲正切函数(tanh)来限制其值的范围在 [−1,1][−1,1] 之间。虽然这有助于模型的稳定性,但它并不是并行化所必需的。

minGRU进一步简化模型,去除了对h~t的范围限制,将其替换为一个无需 函数的线性变换:

这样,候选隐藏状态的计算变得更加简单,并且没有任何范围限制。

在这种结构下,minGRU不仅减少了模型参数,而且可以利用并行扫描算法在训练时实现并行化,从而显著提高了处理长序列的速度。

此外,minGRU的输出尺度在时间上是 的,这有助于优化过程中的数值稳定性。整体变化如下:

接下来,我们再来看下Bengio团队对LSTM的处理,即minLSTM,共分为三步。

步,去除之前隐藏状态的依赖。

在传统的LSTM模型中,遗忘门ft、输入门it和候选细胞状态c~t的计算依赖于前一时刻的隐藏状态ht-1。

这导致模型在训练时无法实现并行处理,因为每个时间步的计算都依赖于前一个时间步的结果。

为了 这个问题,minLSTM对LSTM进行了修改,使遗忘门、输入门和候选细胞状态的计算仅依赖于当前时刻的输入xt,而不依赖于ht-1:

Bengio精简了传统RNN,性能可与Transformer媲美

通过这种方式,minLSTM的每一时刻的计算可以 于其他时刻并行执行。

第二步,去除候选状态的范围限制。

在 步中,候选细胞状态c~t仍然使用双曲正切函数(tanh)来限制其值的范围在 [−1,1][−1,1] 之间。虽然这有助于模型的稳定性,但它并不是并行化所必需的。

minLSTM进一步简化模型,去除了对c~t的范围限制,将其替换为一个无需 函数的线性变换:

这样,候选细胞状态的计算变得更加简单,并且没有任何范围限制。

第三步,确保输出在时间上是 的。

在许多序列建模设置中(例如文本生成),优化目标/输出在时间上是 的。

为了确保LSTM的输出在时间上是 的,minLSTM对遗忘门和输入门进行了归一化,确保它们的和为1,并且细胞状态的尺度在时间上是 的:

通过这种方式,minLSTM确保了其输出在时间上是 的,这有助于优化过程中的数值稳定性。

minLSTM的最终形式为:

在精简了RNN们之后,Bengio团队也展示了实验结果。

例如下图显示了minGRU、minLSTM和Mamba模型在训练效率方面的比较,具体包括训练运行时间、加速比和内存占用。

这些指标是在T4 GPU上,以64的批次大小进行测量的:

以及在下图中,还展示了在Shakespeare语言建模任务中,不同模型的学习曲线。

这个任务使用字符级生成对抗训练,目的是评估模型在文本生成任务中的表现,简化RNN模型在处理语言建模任务时具有较好的有效性和 率(特别是在需要快速训练和部署的应用场景中):

总而言之,Bengio团队认为,经过简化的RNN可能仍然是处理长序列任务的理想选择,尤其是在资源有限的场景下,因此也提出了问题 “Were RNNs All We Needed?”

在这项研究中,作者除了Bengio之外,还有一点值得关注,那便是一作是一位华人,Leo Feng

从公开的个人网站来看,Leo Feng师从Bengio,目前是蒙特利尔大学的博士生,目前正在Borealis AI进行研究实习。

Leo Feng的研究范围包括元学习和 模型的设计,其本科毕业于牛津大学。

那么你觉得精简版RNN这项研究如何?欢迎在评论区留言讨论。

论文地址:
https://arxiv.org/abs/2410.01201

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享