SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%

点击上方“计算机视觉工坊”,选择“星标”

干货第一时间送达

129f16835896c738fde781ea1243b525.png

作者丨ChaucerG

来源丨集智书童

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第1张图片

选择一个好的激活函数可以对提高网络性能产生重要的影响。Handcrafted Activation是神经网络模型中最常见的选择。尽管ReLU有一些严重的缺点,但由于其简单性,ReLU成为深度学习中最常见的选择。

本文在已知激活函数Leaky ReLU近似的基础上,提出了一种新的激活函数,称之为Smooth Maximum Unit(SMU)。用SMU替换ReLU,ShuffleNet V2模型在CIFAR100数据集上得到了6.22%的提升。

1介绍

神经网络是深度学习的支柱。激活函数是神经网络的大脑,在深度神经网络的有效性和训练中起着核心作用。ReLU由于其简单性而成为深度学习领域的常用选择。尽管它很简单,但ReLU有一个主要的缺点,即ReLU死亡问题,在这种情况下,多达50%的神经元在网络训练期间死亡。

为了克服ReLU的不足,近年来提出了大量的激活方法,其中Leaky ReLU、Parametric ReLU 、ELU、Softplus、随机化Leaky ReLU是其中的几种,它们在一定程度上改善了ReLU的性能。

Swish是谷歌脑组提出的非线性激活函数,对ReLU有一定的改善;GELU是另一种常用的平滑激活函数。可以看出,Swish和GELU都是ReLU的光滑近似。近年来,人们提出了一些提高ReLU、Swish或GELU性能的非线性激活方法,其中一些是ReLU或Leaky ReLU的光滑逼近方法,还有TanhSoft、EIS、Padé激活单元、正交Padé激活单元、Mish、ErfAct等。

maximum function在原点处是非光滑的。在本文中,作者将探讨maximum function的平滑逼近如何影响网络的训练和性能。

2Smooth Maximum Unit

作者提出了Smooth Maximum Unit (SMU)。从|x|函数的光滑逼近中可以找到一个maximum function的一般逼近公式,它可以平滑逼近一般的maxout族、ReLU、Leaky ReLU或其变体、Swish等。作者还证明了GELU函数是SMU的一个特例。

2.1 平滑近似Maximum Function

Maximum Function定义如下:

5a959f8053d6afcb1713266c5d9455d7.png 式1

函数|x|在原点是不可微的。因此,从上式可以看出最大值函数在原点处也是不可微的。这里可以用Smooth函数来近似|x|函数。对于本文的其余部分,我们将只考虑两个近似| x, 在深度学习问题中使用这两个函数和近似的结果比其他近似|x|可以得到更好的结果。

注意,从上面平滑地近似|x|,而从下面平滑地近似|x|。这里 是一个平滑参数,当取 无穷大 时,近似函数平滑地逼近|x|。这里erf是高斯误差函数,定义如下:

5f187bb40465fad23ab344e21f780389.png

现将式(1)中的|x|函数替换为,则最大函数的光滑逼近公式如下:

5fab8be62f82a0720b11443a40c11ad9.png 式2

同理,可以推导出的光滑近似公式:

d21ed339fcec2a7b3b2da153fda78df6.png 式3

注意,当无穷大,;当, 。对于和的特定值,可以近似已知的激活函数。例如,, ,得到:

56ba7ec3bb500f9f478c1d0bd7a45582.png 式4

这是maxout族中的一个简单情况,而通过考虑和的非线性选择可以发现更复杂的情况。对于和的特定值,可以得到ReLU和Leaky ReLU的平滑近似。例如,考虑和,有ReLU的平滑近似:

21c81524d84f49fef992feeffa94112e.png 式5

GELU是ReLU的光滑近似。注意,如果方程(5)中取,则可以逼近GELU激活函数,这也表明GELU是ReLU的光滑近似。此外,考虑和α,可以得到Leaky ReLU或Parametric  ReLU的光滑逼近,这取决于α是超参数还是可学习参数。

02611401ea9e53fac408f459a9cb2e60.png 式6

请注意,式(5)和式(6)下端近似为ReLU或Leaky ReLU。同样地,可以从式(3)推导出近似函数,它将近似上面的ReLU或Leaky ReLU。

式(6)对输入变量x的相应导数为:

1aeff39ab6f9a68d844b77d9eb853d11.png 式7

其中,

52f87d150552c809eef649e228d54bb6.png

称方程(6)中的函数为Smooth Maximum Unit(SMU)。可以将方程(3)中的和α替换为一个函数,称之为SMU-1。对于所有的实验,将使用SMU和SMU-1作为激活函数。

2.2 通过反向传播学习激活参数

使用backpropagation技术更新可训练激活函数参数。作者在Pytorch和Tensorflow-KerasAPI中实现了向前传递,自动区分将更新参数。另外,可以使用CUDA的实现,α和µ参数的梯度可以计算如下:

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第2张图片 式8+9

α和µ既可以是超参数,也可以是可训练参数。对于SMU和SMU-1,α = 0.25,这是一个超参数。也将µ作为可训练参数,对SMU和SMU-1分别在1000000和4.352665993287951e−09初始化。

这里,具有SMU和SMU-1激活函数的神经网络密集在C(K)中,其中K是的子集,C(K)是K上所有连续函数的空间。

Proposition

设ρ是任意连续函数。设ρ表示一类具有激活函数ρ的神经网络,在输入层有n个神经元,在输出层有1个神经元,在隐层有任意数目的神经元。设为compact,那么当且仅当ρ是非多项式时C(K)的是dense。

3实验

3.1 分类

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第3张图片

3.2 目标检测

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第4张图片

3.3 语义分割

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第5张图片

4参考

[1].SMU: SMOOTH ACTIVATION FUNCTION FOR DEEP NETWORKS USING SMOOTHING MAXIMUM TECHNIQUE

本文仅做学术分享,如有侵权,请联系删文。

重磅!计算机视觉工坊-学习交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有ORB-SLAM系列源码学习、3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、深度估计、学术交流、求职交流等微信群,请扫描下面微信号加群,备注:”研究方向+学校/公司+昵称“,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进去相关微信群。原创投稿也请联系。

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第6张图片

▲长按加微信群或投稿

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第7张图片

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的视频课程(三维重建系列三维点云系列结构光系列手眼标定相机标定、激光/视觉SLAM、自动驾驶等)、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答五个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近4000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款

SMU激活函数 | 超越ReLU、GELU、Leaky ReLU让ShuffleNetv2提升6.22%_第8张图片

 圈里有高质量教程资料、可答疑解惑、助你高效解决问题

觉得有用,麻烦给个赞和在看~

你可能感兴趣的:(神经网络,算法,人工智能,深度学习,机器学习)