Gaussian Error Linear Units (GELUs)

Bert使用了gelu激活
论文链接:https://arxiv.org/abs/1606.08415

我们提出了高斯误差线性单位(GELU),一种高性能的神经网络激活函数。 GELU非线性是随机正则化器的预期转换,它随机地将同一性或零映射应用于神经元的输入。 GELU非线性度按权重对输入进行加权,而不是像ReLU那样按符号对门进行加权。 我们针对ReLU和ELU激活对GELU非线性进行了经验评估。发现在所有考虑的任务包括计算机视觉,自然语言处理和语音任务方面的性能提高。

1 INTRODUCTION

早期的人工神经元使用二进制阈值单位(Hopfield,1982; McCulloch&Pitts,1943)。这些困难的二元决策可以通过S型激活来平滑,从而使神经元具有“发射速率”判释并可以进行反向传播训练。但是随着网络的不断深入,采用sigmoid激活的训练被证明比非平滑的,概率较低的ReLU(Nair&Hinton,2010年)的效果要差,后者会根据输入信号做出艰难的门控决策。尽管具有较少的统计动机,但ReLU仍然是一种有竞争力的工程解决方案,通常比sigmoid更快,更好地收敛。在ReLU成功的基础上,最近一种称为ELU的修改(Clevert等人,2016)允许类似ReLU的非线性输出负值,这有时会提高训练速度。总之,对于神经网络来说,激活选择一直是必要的体系结构决策,以免网络成为深度线性分类器。
深层非线性分类器可以很好地拟合其数据,因此网络设计师经常面临选择包括随机正则化器的选择,例如向隐藏层添加噪声或应用dropout(Sri hugeava等人,2014),并且此选择仍与激活功能分开。一些随机正则化函数可以使网络的行为类似于网络的整体,是伪整体(Bachman等人,2014),并可能导致准确性显着提高。例如,随机正则化器dropout通过零乘法随机更改一些激活决策来创建伪集合。非线性和dropout因此共同决定了神经元的输出,但是两项创新仍然截然不同。而且,两者都不归于另一个,因为流行的随机正则化器与输入无关,并且这种正则化器有助于非线性。

在本文中,我们引入了一种新的非线性,即高斯误差线性单元(GELU)。它与随机正则化器有关,因为它是对自适应dropout的一种修改的期望(Ba&Frey,2013)。这意味着对神经元输出的概率更大。我们发现,这种新颖的非线性在计算机视觉,自然语言处理和自动语音识别等任务中与ReLU或ELU模型匹配或超过。

2 GELU FORMULATION

我们通过组合dropout,zoneout和ReLU的属性来激发激活功能。首先请注意,ReLU和Dropout都会产生神经元的输出,其中ReLU确定性地将输入乘以零或一个,然后将Dropdrop随机乘以零。此外,一种称为zoneout的新RNN正则化器将输入乘以一个随机数(Krueger et al。,2016)。我们通过将输入乘以零或一来合并此功能,但是此零一掩码的值是随机确定的,同时还取决于输入。具体来说,我们可以将神经元输入x乘以m〜Bernoulli(Φ(x)),其中Φ(x)= P(X≤x),X〜N(0,1)是神经元输入x的累积分布函数。 标准正态分布。我们选择这种分布是因为神经元输入倾向于遵循正态分布,尤其是在批处理归一化的情况下。在这种设置下,输入随着x的减小而被“丢弃”的可能性更高,因此应用于x的变换是随机的,但仍取决于输入。以这种方式掩盖输入保留不确定性,但保持对输入值的依赖性。随机选择的掩码等于输入的随机零或恒等变换。这与自适应dropout非常相似(Ba&Frey,2013),但是自适应dropout与非线性一起使用,并使用逻辑非标准正态分布。我们发现有可能仅使用这种随机正则器来训练有争力的MNIST和TIMIT网络,而无需使用任何非线性。
我们经常需要神经网络的确定性决策,这引起了我们新的非线性。非线性是在输入x上随机正则化器的预期变换,即Φ(x)× Ix +(1 −Φ(x))×0x =xΦ(x)。
不严格地说,该表达式表示我们将x缩放比其他输入大多少倍。由于高斯的累积分布函数通常是使用误差函数计算的,因此我们将高斯误差线性单位(GELU)定义为:
GELU(x) = xP(X ≤ x) = xΦ(x)
GELU可以近似为:
在这里插入图片描述
或者:
xσ(1.702x)

我们可以使用N(µ,σ2)的CDF并将µ和σ作为可学习的超参数,但是在整个工作中,我们仅让µ = 0和σ= 1。因此,在以下实验中,我们不会引入任何新的超参数。 在下一部分中,我们将证明GELU在许多任务上都超过了ReLU和ELU的性能。
在这里插入图片描述
图1:GELU(µ = 0,σ= 1),ReLU和ELU(α= 1)

3 GELU EXPERIMENS

我们评估了MNIST分类(具有10个类别,60k训练示例和10k测试示例的灰度图像),MNIST自动编码,Tweet词性标记(1000个训练,327个验证和500个测试Tweet,TIMIT帧识别(3696个训练,1152个验证和192个测试音频句子)和CIFAR-10 / 100分类(具有10/100类的彩色图像,50k训练示例和10k测试示例的GELU,ELU和ReLU。 我们不评估像LReLU这样的非线性,因为它与ReLU相似(有关LReLU的描述,请参见Maas等人(2013年))。

3.1 MNIST CLASSIFICATION

让我们通过复制Clevert等人的实验来验证这种非线性可与先前的激活函数竞争。 (2016)。为此,我们训练了一个具有GELU(μ= 0,σ= 1),ReLU和ELU(α= 1)的完全连接的神经网络。每个8层,128个神经元宽的神经网络都针对50个时期进行训练,批量大小为128个。此实验与Clevert等人的实验不同。 我们使用的是Adam优化器(Kingma和Ba,2015),而不是没有动量的随机梯度下降,并且我们还展示了非线性如何很好地处理dropout。
在这里插入图片描述
图2:MNIST分类结果。 左边是没有dropout的损失曲线,右边是dropout率为0.5的曲线。 每条曲线是五次运行的中值。 训练集的对数损失是较深的下部曲线,而较淡的,较高的曲线是验证集对数损失的曲线。
在这里插入图片描述
图3:MNIST稳健性结果。 使用不同的非线性,我们记录了随着输入噪声测试集精度下降和对数损失增加的情况。 MNIST分类器在没有dropout的情况下经过训练,接收到的输入具有统一的噪声Unif [-a,a],并在不同的水平a处添加到每个示例,其中a = 3是最大噪声强度。 在这里,GELU显示出与ELU和ReLU匹配或超过的鲁棒性。

权重使用单位范数行进行初始化,因为这会对每个非线性的性能产生积极影响(Hendrycks&Gimpel,2016; Mishkin&Matas,2016; Saxe等,2014)。 请注意,使用训练集中的5k验证示例对学习速率{10^-3、10 ^-4、10 ^-5}进行调试,并获取五次运行的中位数结果。 使用这些分类器,我们在图3中证明了使用GELU的分类器对噪声输入具有更好的鲁棒性。 图2显示,无论有或没有dropout的情况下,GELU的训练对数损失中值往往最低。 因此,尽管GELU受另一种随机过程的启发,但与dropout相称。

3.2 MNIST AUTOENCODER
现在,我们考虑一种自我监督的设置,并在MNIST上训练深层自动编码器(Desjardins等,2015)。为此,我们使用一个网络,该网络的顺序依次为1000、500、250、30、250、500、1000层。我们再次使用Adam优化器,批量大小为64。我们的损失是均方损失。 我们将学习率从10^-3更改为10 ^-4。我们还尝试了0.01的学习率,但ELU却出现了发散,GELU和RELU的收敛性很差。图4中的结果表明GELU可适应不同的学习率,并且明显优于其他非线性。
在这里插入图片描述
图4:MNIST自动编码结果。 每条曲线是三个运行的中值。 左图是学习率为10^-3的损失曲线,右图是学习率为 10 ^-4的损失曲线。 浅而细的曲线对应于测试集的对数损失。
在这里插入图片描述
图5:TIMIT帧分类。 学习曲线显示训练集收敛,较浅的曲线显示验证集收敛。

3.3 TWITTER POS TAGGING
自然语言处理中的许多数据集都相对较小,因此从少的示例中很好地概括激活很重要。为了应对这一挑战,我们比较了带有POS标签的推文中的非线性(Gimpel等,2011; Owoputi等,2013),其中包含25个标签。推文标记器只是一个两层网络,其中预先训练的单词向量在5600万条推文的语料库上进行了训练(Owoputi等人,2013)。输入是要标记的单词的向量及其左,右相邻单词的向量的串联。每层具有256个神经元,dropout保持概率为0.8,并且在调整学习速率{10^-3,10 ^-4,10 ^-5}的同时,使用Adam优化了网络。
我们每个学习率对每个网络进行五次训练,GELU的测试集错误中位数为12.57%,ReLU的测试集错误中位数为12.67%,而ELU的测试集错误中位数为12.91%。

3.4 TIMIT FRAME CLASSIFICATION
我们的下一个挑战是使用TIMIT数据集进行电话识别,该数据集可在无噪声的环境中录制680个扬声器。该系统是一个5层,2048个神经元宽的分类器(如Mohamed等人,2012年),具有39个输出电话标签,且dropout率为0.5(如Srivas tava,2013年)。该网络以11帧为输入,并且必须使用26 MFCC,每帧能量和微分特征来预测中心帧的电话。我们调整学习率{10 ^−3,10 ^−4,10 ^−5}并使用Adam进行优化。每个设置运行五次后,我们得到图5的中值曲线,在最低验证误差下选择的测试误差中值对于GELU为29.3%,对于ReLU为29.5%,对于ELU为29.6%。
在这里插入图片描述
图6:CIFAR-10结果。 每条曲线是三个运行的中值。 学习曲线显示训练集错误率,较浅的曲线显示测试集错误率。

3.5 CIFAR-10/100 CLASSIFICATON
接下来,我们证明对于更复杂的体系结构,GELU非线性再次优于其他非线性。 我们分别在浅层卷积神经网络和深层卷积神经网络上分别使用CIFAR-10和CIFAR-100数据集(Krizhevsky,2009)评估该激活函数。
我们的浅层卷积神经网络是一个9层网络,具有Salimans&Kingma(2016)的体系结构和训练过程,同时使用批处理归一化来加快训练速度。该体系结构在附录A中进行了描述,并且最近没有进行数据增强的情况下在CIFAR-10上获得了最佳结果。数据增强没有被用来训练该网络。我们使用5k验证示例调整学习初始速率{10-3、10-4、10-5},然后根据交叉验证的学习率再次训练整个训练集。该网络使用Adam优化了200个时期,在第100个时期,学习率线性下降到零。 结果如图6所示,每条曲线均为三个运行的中值。最终,GELU的错误率中值为7.89%,ReLU的错误率中值为8.16%,ELU的错误率中值为8.41%。
接下来,我们考虑在CIFAR-100上有40个层的广泛残差网络,并且扩大因子为4(Zagoruyko&Komodakis,2016)。我们按照(Loshchilov&Hutter,2016)所述的(T0 = 50,η= 0.1)学习率进度表训练了50个时期,采用Nesterov动量和dropout保持概率0.7。有人注意到ELU在残差网络中会发生梯度爆炸(Shah 等,2016),而在残差块末尾进行批量归一化可以缓解这种情况。因此,我们使用Conv-Activation-Conv-Activation-BatchNorm块架构来宽容对待ELU。经过三轮运行,我们获得了图7中值收敛曲线。同时,GELU的误差中位数为20.74%,ReLU的误差中位数为21.77%(不做上述变化,带有ReLU的原始40-4 WideResNet的误差中位数为22.89%(Zagoruyko&Komodakis,2016)),而ELU的误差中位数为22.98%。
在这里插入图片描述
图7:CIFAR-100广域残差网络结果。 学习曲线显示在带dropuout时训练集收敛,而较浅的曲线显示无dropout时测试集收敛。

4 DISCUSSION
在多个实验中,GELU优于以前的非线性,但在其他方面与ReLU和ELU相似。例如,当σ→0且µ = 0时,GELU成为ReLU。 此外,ReLU和GELU渐近相等。实际上,GELU可以看作是平滑ReLU的一种方法。为此,请回想一下ReLU = max(x,0)= x1(x> 0)(其中1是指标函数),而如果µ = 0,σ= 1,则GELU为xΦ(x)。然后,CDF是ReLU使用的二进制函数的平滑近似,例如sigmoid平滑二进制阈值激活的方式。与ReLU不同,GELU和ELU可以为负也可以为正。实际上,如果我们使用标准柯西分布的累积分布函数,则负值时ELU(当α= 1 /π时)渐近等于xP(C≤x),C〜Cauchy(0,1)。 如果将行向下移动1 /π,则正值的值是xP(C≤x)。 这些是先前非线性的一些基本关系。
但是,GELU有几个显着差异。该非凸,非单调函数在正域中不是线性的,并且在所有点处都显示出曲率。以此同时。单调凸函数ReLUs和ELUs在正域中是线性的,因此可能缺少曲率。因此,与ReLU或ELU相比,增加的曲率和非单调性可使GELU更容易地近似复杂函数。此外,由于ReLU(x)= x1(x> 0)且GELU(x)=xΦ(x)若µ = 0,σ= 1,我们可以看到ReLU根据其符号来门控输入,而GELU 根据其输入比其他输入大多少来加权其输入。另外,重要的是,鉴于GELU是随机正则化函数的期望,因此具有概率解释。
我们还提供了两个使用GELU的实用技巧。首先,我们建议在进行GELU训练时使用动量优化器,这是深度神经网络的标准。其次,使用高斯分布的累积分布函数的近似值非常重要。Sigmoid函数σ(x)= 1 /(1 + e^-x)是正态分布的累积分布函数的近似值。但是,我们发现Sigmoid线性单位(SiLU)xσ(x)的性能比GELUs差,但通常比ReLUs和ELUs好。不是使用xσ(x)近似Φ(x),我们使用在这里插入图片描述(Choudhury,2014)1或xσ(1.702x)。
两者都是足够快的,易于实现的近似值,在本文的每个实验中我们都使用前者。

5 CONCLUSION
对于本文评估的众多数据集,GELU始终超过了ELU和ReLU的准确性,使其成为之前非线性的可行替代方案。

A NEURAL NETWORK ARCHITECTURE FOR CIFAR-10 EXPERIMENTS
在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值