重磅 | 机器学习大神Bengio最新论文发布,专一RNN优化难题,将在NIPS提出新概念fraternal dropout

编译 | Troy·Chang、爱心心、reason_W
算法

校对 | reason_W网络


下个月机器学习领域的顶会Nips就要在大洋彼岸开幕啦,那么此次的Nips又有什么值得关注的亮点呢?Bengio在新做中提出了RNN优化的新概念fraternal dropout,经过最小化使用不一样的dropout mask的同一个RNN的预测差别,提高RNN对于不一样dropout mask的不变性,来对RNN进行优化。模型在对比实验中取得了很是惊艳的效果,同时在图像标注和半监督任务上也表现不俗,下面就跟随小编对这篇文章进行一发膜拜吧。架构

摘要

RNN做为神经网络中的一类十分重要的架构,主要用于语言建模和序列预测。然而,RNN的优化却至关棘手,比前馈神经网络要难的多,学界也提出了不少技术来解决这个问题。咱们在咱们中提出了一项叫作fraternal dropout的技术,主要经过利用dropout来实现这个目标。具体来讲,咱们首先用不一样的dropout mask对两个如出一辙的RNN进行训练,同时最小化它们(pre-softmax)预测的差别。经过这种方式,咱们的正则项会促进RNN的表示对dropout mask的不变性。咱们证实了咱们的正则项的上限是线性指望dropout目标,并且线性指望dropout目标已经被证实了能够解决dropout在训练和推理阶段的差别致使的较大差别(gap)。咱们在两个基准数据集(Penn Treebank 和Wikitext-2.)上进行了序列建模任务以评价咱们的模型,而且得到了十分惊艳的结果。咱们也证实了这种方法能够为图像标注(Microsoft COCO)和半监督(CIFAR-10)任务带来显著的性能提高。机器学习

1 前言

像LSTM网络(LSTM; Hochreiter & Schmidhuber(1997))和门控循环单元(GRU; Chung et al. (2014))这样的循环神经网络都是处理诸如语言生成、翻译、语音合成以及机器理解等序列建模任务的流行架构。然而因为输入序列的长度可变性,每一个时刻相同转换算子的重复应用以及由词汇量决定的大规模密集嵌入矩阵等问题的存在,与前馈网络相比,这些RNNs网络架构更加难以优化。也正是因为同前馈神经网络相比,RNNs在优化问题上遇到的这些挑战,使得批归一化以及它的变体(层归一化,循环批归一化,循环归一化传播),尽管确实带来了很大的性能提高,但其应用依然没有像它们在前馈神经网络中对应的部件同样成功(Laurent等, 2016),。一样的,dropout的朴素应用(Srivastava等,2014)也已经证实在RNNs中是无效的(Zaremba等,2014)。所以,RNNs的正则化技术到目前为止依然是一个活跃的研究领域。函数

为了解决这些挑战,Zaremba等人(2014)提出将dropout仅用于多层RNN中的非环式链接。Variational dropout(Gal&Ghahramani,2016))会在训练期间在整个序列中使用相同的dropoutmask。DropConnect(Wan等,2013)在权重矩阵上应用了dropout操做。Zoneout(Krueger et al等(2016))以相似的dropout方式随机选择使用前一个时刻隐藏状态,而不是使用当前时刻隐藏状态。相似地,做为批归一化的替代,层归一化将每一个样本内的隐藏单元归一化为具备零均值和单位标准误差的分布。循环批标准化适用于批标准化,但对于每一个时刻使用非共享的mini-batch统计(Cooijmans等,2016)。性能

Merity等人(2017a)和Merity等(2017b)从另外一方面证实激活正则化(AR)和时域激活正则化(TAR)也是正则化LSTMs的有效方法。学习

咱们提出了一个基于dropout的简单正则化,咱们称之为fraternal dropout。这个方法将最小化两个网络预测损失的等权重加权和(这两个网络由两个不一样dropoutmask在同一个LSTM上获得),并将两个网络的(pre-softmax)预测结果的L2差做为正则项相加。咱们分析证实了,该方法的正则化目标等于最小化来自不一样的i.i.d. dropoutmask的预测结果的方差。该方法将会提高预测结果对于不一样dropoutmask的不变性。同时,文章也讨论了咱们的正则项和线性指望dropout(Ma等,2016)、II-model(Laine&Aila,2016)以及激活正则化(Merity等,2017a)的相关性,而且经过实验证实了咱们的方法与这些相关方法相比带来的性能提高,第五部分的ablation study将进一步解释这些方法。测试

2 FRATERNAL DROPOUT

Dropout在神经网络中是一种强大的正则化方式。它一般在密集链接的层上更有效,由于与参数共享的卷积层相比,它们更容易受到过拟合的影响。出于这个缘由,dropout是RNN系列一个重要的正则化方式。然而,dropout的使用在训练和推理阶段之间是存在gap的,由于推理阶段假设是用线性激活的方式来校订因子,所以每一个激活的指望值都会不一样。(小编注:为了更好的理解这部份内容,你们能够参考Dropout with Expectation-linear Regularization - https://arxiv.org/abs/1609.08017 ,这篇文章从理论上分析了dropout的ensemble模式和通常的求指望模式的gap。而后提出了将这个gap做为一种正则化方式,也就是说gap的优化目标就是要尽量小)。另外,带有dropout的预测模型一般会随着不一样dropout mask而变化。然而,在这种状况下理想的结果就是最后的预测结果不随着dropout mask的变化而变化。优化

所以,提出fraternal dropout的想法就是在训练一个神经网络模型时,保证在不一样dropout masks下预测结果的变化尽量的小。好比,假定咱们有一个RNN模型M(θ),输入是X,θ 是该模型的参数,而后让ui

表示预测模型,即给定一个在t时间点的输入样例X,dropout mask是

当前输入是zt ,其中zt 是关于输入X的一个函数,隐藏层的状态是跟以前时刻有关。一样的,

是跟整个输入目标样本对(X,Y)在第t时刻的损失值相关的。

在fraternal dropout中,咱们采用两个相同的RNN来同时前馈输入样本X。这两个RNN共享相同的模型参数θ,可是在每一个时刻t有不一样的dropout masks 。这样在每一个时间点t,会产生两个损失值

所以,fraternal dropout总体的损失函数就能够由下面公式表示,

其中κ是正则化系数,m是

的维数, 是fraternal dropout正则化项,具体表示以下,


咱们采用蒙特卡洛采样来估计

其中
和计算 值使用的是同一表达式。所以,额外的计算能够忽略不计。

咱们注意到,以下面所示,咱们正则化项的目标等价于最小化在不一样dropout masks下,预测函数的方差(附录中有证实)

备注1 假定均是独立同分布的,dropout masks和是上述的预测函数。

所以,

3 相关工做

3.1 线性指望dropout相关工做

Ma et al.(2016)分析研究显示下述二者之间的预期偏差(在样本上)是有上限的,即在全部的dropout mask下的模型的指望值与使用平均mask的指望值之间的偏差。基于这一结论,他们提出了明确地最小化差别(咱们在咱们的该符号表达中采用了他们的正则式),

其中,s是dropout mask。可是,基于可行性考虑,他们提出在实践中使用下列正则式进行替代,

特别地,这个式子是经过在网络中的两次前馈输入(分别使用和不使用dropout mask),以及最小化主要网络损失(该损失是在有dropout的状况下的)和前面指定的正则项(可是在无dropout的网络中没有反向传播梯度)来实现的。Ma et al.(2016)的目标是最小化网络损失以及指望差别,这个指望差别是指来自独立的dropout mask的预测值和来自指望的dropout mask的预测值之间的差别。同时,咱们的正则项目标的上限是线性指望dropout,以下式所示(附录中证实):

结果代表,最小化ELD目标能够间接地最小化咱们的正则项。最终如前文所述,他们仅在无dropout的网络中应用了目标损失(target loss)。实际上,在咱们的ablation研究中(参见第5节),咱们发现经过网络(无dropout)反向传播目标损失(target loss)会让优化模型更难。可是,在该设置中,同时反向传播目标损失(target loss)可以得到包括性能增益和收敛增益的网络收益。咱们认为因为在所用实例(case)中,网络权重更有可能经过反向传播更新来达到目标,因此咱们的正则项收敛速度会更快。尤为对于权重dropout(Wan et al., 2013)更是如此,由于在这种状况下,dropout权重将不会在训练的迭代中得到更新。

3.2 II –model 相关工做

为了实如今半监督分类任务中提升性能的目标,Laine & Aila(2016)提出了II –model。他们提出的模型和咱们提出的模型类似,除了他们仅在其中一个网络中应用了目标损失(target loss),而且使用的是依赖时间的权重函数(而咱们使用常量k/m),能够等价因而咱们模型的深度前馈版本。他们实例的直觉(intuition)是利用未标记的数据来最小化两种预测上的差别,即两种使用不一样dropout mask的同一网络的预测值。并且,他们也在监督任务中测试了他们的模型,可是没法解释使用这一正则项带来的提高。

经过对咱们的实例(case)进行分析,咱们证实了,最小化该正则项(在II –model中也使用了)同最小化模型预测结果(备注1)中的方差是等价的。此外,咱们也证实了正则项同线性指望dropout(命题1)之间的关系。在第5节,咱们研究了基于没有在II –model中使用的两种网络损失的目标的影响。咱们发如今两个网络中应用目标损失(target loss)将使得网络得到关键性的更快的收敛。最后,咱们注意到时域嵌入(temporal embedding ,Laine&Aila(2016)提出的另外一模型,声称对于半监督学习来讲,是比II –model更好的版本)在天然语言处理应用中至关的棘手,由于保存全部时刻的平均预测值会十分消耗内存(由于预测值的数目每每很是大-数以万计)。还有一点,咱们证实了在监督学习的实例(case)中,使用时间依赖的权重函数来代替一个常量值k/m是没有必要的。由于标记的数据是已知的,咱们没有观察到Laine&Aila(2016)提到的问题,即当在早期训练的epoch中太大时,网络会陷入退化。咱们注意到寻找一个优化的常量值比调整时间依赖的函数更加容易,这也在咱们的实例中进行了实现。

和II –model的方法类似,咱们的方法也和其余半监督任务相关,主要有Rasmus et al.(2015)和Sajjadi et al.(2016)。因为半监督学习并非本文要关注的部分,所以咱们参考了Laine&Aila(2016)的更多细节。

4 实验

4.1 语言模型

在语言建模的情形下,咱们在两个基准数据集Penn Tree-bank(PTB)数据集(Marcus等,1993)和WikiText-2(WT2)数据集(Merity等,2016)上测试了咱们的模型。预处理操做参考了Mikolov等(2010)(用于PTB语料库),而且用到了Moses tokenizer(Koehn等,2007)(用于WT2数据集)。

对于这两个数据集,咱们都采用了Merity等人描述的AWD-LSTM 3层架构。 (2017a)。 用于PTB的模型中的参数数量是2400万,而WT2的参数数量则是3400万,这是由于WT2词汇量更大,咱们要使用更大的嵌入矩阵。 除了这些差别以外,架构是相同的。

  • Penn Tree-bank(PTB)词级任务

咱们使用混淆度指标来评估咱们的模型,并将咱们得到的结果与现有的最好结果进行比较。表1显示了咱们的结果,在现有benchmark上,咱们的方法达到了最早进的性能。

  • WikiText-2词级任务

在WikiText-2语言建模任务的状况下,咱们的表现优于目前的最新技术水平。 表2列出了最终结果。关于实验的更多细节能够在5.4节中找到。

4.2 图像标注

咱们也把fraternal dropout应用到了图像标注任务上。咱们使用著名的show and tell模型做为baseline(Vinyals等,2014)。这里要强调的是,在图像标注任务中,图像编码器和句子解码器架构一般是一块儿学习的。但既然咱们想把重点放在在RNN中使用fraternal dropout的好处上,咱们就使用了冻结的预训练ResNet-101(He 等,2015)模型做为咱们的图像编码器。这也就意味着咱们的结果不能与其余最早进的方法直接比较,可是咱们提供了原始方法的结果,以便读者能够看到咱们的baseline良好的表现。表3提供了最终的结果。

咱们认为,在这个任务中,κ值较小时,效果最好,由于图像标注编码器在开始时就被给予了全部信息,所以连续预测的方差会小于在无条件的天然语言处理任务中的方差。Fraternal dropout可能在这里是有利的,主要是由于它对不一样mask的平均梯度进行了平均,从而更新权重频率更快。

5 ABLATION STUDIES (模型简化测试)

在本节中,咱们的目标是研究与咱们方法密切相关的现有方法。expectation linear dropout (Ma et al. ,2016),Π-model(Laine & Aila 2016)和activity regularization(Merity et al. 2017b),咱们全部的ablation studies(小编注:ablation study是为了研究模型中所提出的一些结构是否有效而设计的实验)都是采用一个单层LSTM,使用相同的超参数和模型结构。

5.1 线性指望DROPOUT (ELD)

第二部分已经讨论了咱们法方法和ELD方法的联系。这里咱们进行实验来研究使用ELD正则化和咱们的正则化(FD)性能上的差别。除了ELD,咱们还研究了一个ELD的改进版ELDM。ELDM就是跟FD的用法类似,将ELD应用在两个相同的LSTM上(在原做者的实验中只是在一个LSTM上用了dropout)。所以咱们获得了一个没有任何正则化方式的基准模型。图1画出了这几种方法训练过程的曲线。与其余方法相比,咱们的正则化方法在收敛性上表现的更好。而在泛化性能上,咱们发现FD和ELD类似,而基准模型和ELDM表现得更差。有趣的是,若是一块儿看训练和验证曲线,ELDM彷佛还有待进一步的优化。

5.2 Π-MODEL

由于Π-MODEL和咱们的算法类似(即便它是为前馈网络中的半监督学习而设计的),因此咱们为了明确咱们算法的优点,分别从定性和定量的角度研究了它们在性能上的差别。首先,基于PTB(Penn Treebank Dataset)任务,咱们运行了单层LSTM和3层AWD-LSTM来在语言建模上对两种算法进测试比较。图1和2显示了测试结果。咱们发现咱们的模型比Π-MODEL收敛速度明显加快,咱们相信这是由于咱们采用两个网络(Π-MODEL相反)反向传播目标损失,致使了更多的采用基于目标梯度的参数更新。

尽管咱们设计的算法是专门来解决RNN中的问题,但为了有一个公平的对比,咱们在半监督任务上也与Π-MODEL作了对比。所以,咱们使用了包含10类由32x32大小图像组成的CIFAR-10数据集。参照半监督学习文献中一般的数据拆分方法,咱们使用了4000张标记的图片和41000张无标记图片做为训练集,5000张标记的图片作验证集合10000张标记的图片作测试集。咱们使用了原版的56层残差网络结构,网格搜索参数

dropout率在{0.05,0.1,0.15,0.2},而后保持剩下的超参数不变。咱们另外测验了使用无标记数据的重要性。表4给出告终果。咱们发现咱们算法的表现和Π-MODEL几乎同样。当无标记数据没有使用时,fraternal dropout仅仅比普通的dropout表现得要稍微好些。

5.3激活正则化(AR)和时域激活正则化(TAR)分析

Merity et al.(2017b)的做者们研究了激活正则化(AR)的重要性,和在LSTM中的时域激活正则化(TAR),以下所示,

表4:基于ResNet-56模型在改变的(半监督任务)CIFAR-10数据集的准确率。咱们发现咱们提出的算法和II模型有同等的表现。当未标记数据没有被使用,传统dropout会破坏性能,可是fraternal dropout提供了略好的结果。这意味着当缺少数据和不得不使用额外的正则方法时,咱们的方法是有利的。

图4:Ablation研究:使用PTB词级模型的单层LSTM(10M参数)的训练(左)和验证(右)混淆度。显示了基准模型、时域激活正则化(TAR)、预测模型(PR)、激活正则化(AR)和fraternal dropout(FD,咱们的算法)的学习动态曲线。咱们发现与对照的正则项相比,FD收敛速度更快,泛华性能更好。

其中,是LSTM在时刻t时的输出激活(所以同时取决于当前输入和模型参数)。注意AR和TAR正则化应用在LSTM的输出上,而咱们的正则化应用在LSTM的pre-softmax输出上。可是,由于咱们的正则项可以分解以下:

而且,封装了一个项和点积项,咱们经过实验肯定了在咱们的方法中的提高并非单独由正则项决定的。TAR目标也有一个类似的争论。咱们在上运行网格搜索,包括在Merity et al.(2017b)中提到的超参数。咱们在提出的正则项中使用。并且,咱们也在一个正则式为正则项(PR)上进行了比较,以进一步排除仅来自于正则项的任何提高。基于这一网格搜索,咱们选择了在验证集上对全部正则化来讲最好的模型,另外还报告了一个未使用已说起的4种正则化的基准模型。学习动态如图4所示。与其余方法相比,咱们的正则项在收敛和归纳期间都表现更好。当描述的任意正则项被应用时,平均隐藏态激活减小(如图3所示)。

5.4 LANGUAGE MODELING FAIR COMPARISON(语言模型比较)

正如4.1小节所述,因为Melis等人(2017)的影响,咱们要确保fraternal dropout可以超越现有的方法不只仅是由于普遍的超参数网格搜索。所以,在咱们的实验中,咱们保留了原始文件中提到的绝大多数超参数,即嵌入和隐藏状态大小,梯度裁剪值,权重衰减以及用于全部dropout层的值(词向量上的dropout,LSTM层间的输出,最终LSTM的输出和嵌入dropout)。

固然,也进行了一些必要的变化:

  • AR和TAR的系数必须改变,由于fraternal dropout也影响RNN的激活(如5.3小节所述) - 咱们没有进行网格搜索来得到最好的值,而是简单地去除了AR和TAR正则项。

  • 因为咱们须要两倍的内存,因此batch的size被减少了一半,从而让模型产生大体相同的内存量需求,而且能够安装在同一个GPU上

最后一项变更的地方是改变ASGD的非单调间隔超参数n。咱们在n∈{5,25,40,50,60}上进行了一个网格搜索,而且在n取最大值(40,50和60)的时候得到了很是类似的结果。所以,咱们的模型使用普通SGD优化器的训练时间要长于原始模型。

为了确保咱们的模型效果,咱们在PTB数据集上经过使用不一样种子的原始超参数(不进行微调)运行了10个学习程序来计算置信区间。平均最佳验证混淆度为60.64±0.15,最小值为60.33。测试混淆度分别为58.32±0.14和58.05。咱们的得分(59.8分验证混淆度和58.0分测试混淆度)比最初的dropout得分好。

因为计算资源有限,咱们在WT2数据集对fraternal dropout运行了一次单独的训练程序。在这个实验中,咱们使用PTB数据集的最佳超参数(κ= 0.1,非单调间隔n = 60,batch size减半)。

咱们证明使用fine-tuning会对ASGD有好处(Merity等,2017a)。然而,这是一个很是耗时的作法,由于在这个附加的学习过程当中可能会使用不一样的超参数,因此经过普遍的网格搜索而得到更好的结果的可能性更高。所以,在咱们的实验中,咱们使用与官方存储库中实施的相同的fine-tunin程序(甚至没有使用fraternal dropout)。表5中列出了fine-tuning的重要性。

咱们认为,运行网格联合搜索全部超参数可能会得到更好的结果(改变dropout率多是尤为有利,由于咱们的方法就明确地使用了dropout)。然而,咱们这里的目的是排除仅仅由于使用更好的超参数而表现更好的可能性。

6 结论

在论文中,咱们提出了一个叫作fraternal dropout的简单RNNs正则化方法,经过做为正则项来减小模型在不一样的dropout mask上预测结果的方差。经过实验证实了咱们的模型具备更快的收敛速度,同时在基准语言建模任务上取得了最早进的成果。 咱们也分析研究了咱们的正则项和线性指望dropout (Ma 等,2016)之间的关系。咱们进行了一系列的ablation 研究,从不一样的角度评估了模型,并从定性和定量的角度将其与相关方法进行了仔细比较。

论文连接 Fraternal Dropout

https://arxiv.org/abs/1711.00066

相关文章
相关标签/搜索