电子科大提出BT-RNN:替代全连接操作而大幅度提升LSTM效率

优秀的 ResNet 和 DenseNet 等 CNN 架构试图绕过巨大而繁琐的全连接层,但改进 RNN 全连接式的线性变换仍然只有有限的研究。这篇电子科技大学提交 CVPR 2018 的论文正提出了一种稀疏性的张量表征,它相对于传统的 LSTM 不仅减少了多个数量级的参数,同时还实现了更好的收敛率与训练速度,机器之心对该论文做出了简要地介绍。


循环神经网络(RNN)最为擅长序列到序列的学习,它是神经网络架构(带有反馈连接)的一种,被设计用来捕获数据的动态时序行为。一般的全连接 RNN 通过反馈循环记忆先前信息,同时当梯度随着时间步成指数消失时,它不能很好地处理长序列 [14, 2]。与通过直接矩阵-向量乘法在层之间传递信息的一般 RNN 不同,长短期记忆(LSTM)引入了大量的门,并通过逐元素操作 [15] 传递信息。这一提升极大地缓解了梯度消失问题,因此 LSTM 及其变体,比如门控循环单元(GRU)[6] 在不同的计算机视觉任务 [3, 23, 40] 中被广泛用于建模序列中的长期关联性。


但是,LSTM 当前的参数过多,使其非常难以训练并容易出现过拟合。LSTM 可由下述等式描述:




其中 ⊙ 表示对应元素间的乘积,σ(·) 表示 sigmoid 函数,tanh(·) 表示双正切函数。权重矩阵 W_* 和 U_* 分别将输入 x_t 和隐藏状态 h_t-1 转换为单元更新 c_t tilde 和三个门:f_t、i_t 和 o_t。请注意,给定一个卷积神经网络(CNN)中的图像特征向量 x_t,它的形状将达到 I = 4096,和 I = 14 × 14 × 512(分别对于 vgg16 [36] 和 Inception v4 [38])。如果隐藏状态数字为 J=256,参数的总数量是 W_*的四倍,就是 4 × I × J,即会分别达到 4.1 × 106 和 1.0 × 108。所以,巨型矩阵向量乘法,即 W_∗ · x_t 是导致低效率的主要原因——当前的参数密集型设计不仅使模型难以训练,而且会导致高计算复杂度和存储占用。


此外,每个 W_∗ · x_t 实际上代表一个全连接操作或线性变换,将输入向量 x_t 转换为隐藏状态向量。然而,人们对于 CNN 的大量研究已证明:密集连接在提取图像中自然空间局部结构和局部相关性方面是非常低效的 [21,11]。近期的主要 CNN 结构如 DenseNet[16]、ResNet [12] 和 Inception v4 [38] 也在试图绕过巨大而繁琐的密集层 [39]。然而,有关改进 RNN 中密集连接的研究仍然非常有限 [29,33]。寻找更有效的设计来取代 W_* x_t 是非常有必要的。


在这项工作中,我们提出设计一个稀疏连接的张量表征,即 BTD(Block-Term decomposition)[8],以替代 LSTM 中冗余和密集连接的操作。BTD 是一种低秩逼近的方法,可以把高阶张量分解为多个 Tucker 分解模型 [42] 的总和。具体讲,我们把四个权重矩阵(即 W_∗)和输入数据 x_t 表征到不同阶的张量之中。在 RNN 训练的过程中,BTD 层自动学习参数间的关联性,以隐式剪枝掉来自 W·x 的冗余密集连接。通过将新的 BTD 层插入到当前的 RNN 表达式,我们提出了一种新型 BT-RNN 模型,其表征能力相似,但是参数却少了若干个数量级。图 1 展示了带有 Block-term 表征的改进 LSTM 模型。



图 1:BT-LSTM 架构。输入与隐藏态之间的冗余密集连接被低秩 BT 表征所替代。


BT-RNN 的主要优点如下:


  • 低秩 BTD 在输入到隐藏的变换中可以压缩密集连接,同时依然保持 LSTM 当前的设计理念。通过减少若干个数量级的模型参数,BTLSTM 相较于传统 LSTM 架构可以实现更好的收敛率,这显著加快了训练速度。
  • 输入数据中的每个维度可与作为核心张量(core tensors)存在的所有其它维度共享权重,因此 BT 在不同维度之间具有强连接,这提升了捕捉充足局部关联性的能力。实证结果表明,相较于张量训练模型 [32],BT 模型在模型参数相同的情况下有着更好的表征能力。
  • 多 Tucker 分解模型的设计可以显著减少对噪音输入数据的敏感性,并增加网络的宽度,从而得到一个更加鲁棒的 RNN 模型。与基于张量训练的张量方法 [48, 31] 相反,BT 模型不存在选择张量秩的困难,免除了研究者选择超参数的乏味工作。


为了证明 BTLSTM 模型的表现,我们设计了三个挑战性的计算机视觉任务(视频中的动作识别、看图说话、图像生成),并在对比基线 LSTM 和其它低秩变体(比如 Tensor Train LSTM/TT-LSTM)的情况下从量与质两个方面评估 BT-LSTM。实验结果表征 BT-LSTM 模型的表现很有前途。




图 2. 对三阶张量进行块分解。一个三阶张量的阶 X ∈ R^( I_1×I_2×I_3) 可以被近似为 N 个 Tucker 分解。我们将 N 称为 CP 秩,R1、R2、R3 称为 Tucker 秩,d 为核心阶。



图 3. 在三阶张量情况下的张量化(Tensorization)操作。(a)将形状为 I = I_1 · I_2 · I_3 的向量张量化为形状等于 I_1 × I_2 × I_3 的张量;(b)形状为 I_1 ×(I_2 · I_3) 的化矩张量化为形状为 I_1 ×I_2 ×I_3 的张量。



图 6. 在 UCF11 数据集上不同 RNN 模型的动作识别任务表现。CR 表示压缩率;R 表示 Tucker-rank,Top 表示训练中观察到的最高验证准确率。虽然 BT-LSTM 要比常规 LSTM 的参数数量(5890 万)要少 17,388 倍,前者的准确率却比后者要高 15.6%。同时,BT-LSTM 在与 TTLSTM 参数相近的情况下有额外 7.2% 的性能提升。



表 2. 目前 UCF11 数据集上的最佳成绩与电子科技大学研究中最佳结果的对比。



图 8. 在 MSCOCO 数据集上训练图像描述任务的结果。


论文:Learning Compact Recurrent Neural Networks with Block-Term Tensor Decomposition




论文链接:https://arxiv.org/abs/1712.05134


循环神经网络(RNN)是一种强大的序列建模工具。然而,在处理高维输入时,RNN 的训练会因为大量模型参数而变得非常耗费计算资源。这会让 RNN 难以处理很多重要的计算机视觉任务(如视频中的动作识别和图像字幕)。为了解决这一问题,我们提出了一种紧凑而灵活的新结构,它被称为 Block-Term 张量分解,它极大地减少了 RNN 的参数,并提高了训练效率。与其他低秩逼近方法,如 tensor-train RNN(TT-RNN)等相比,我们的方法(BT-RNN)不仅更加简洁(在同秩时),而且能以更少的参数获得原始 RNN 的更好逼近。BT-RNN 在三个具有挑战性的任务中,包括视频中的动作识别、图像字幕和图像生成上的预测精度和收敛速度均超过了 TT-RNN 和标准 RNN。其中,在 UCF11 数据集上进行动作识别任务时,BT-LSTM 的参数数量要比常规 LSTM 少 17,388 倍,同时准确率提升了超过 15.6%。


  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值