文章快速检索  
  高级检索
激活函数LeafSpring的构建及多数据集对比研究
郜天柱1,2,3     
1. 中国科学院沈阳自动化研究所机器人学国家重点实验室, 辽宁 沈阳 110016;
2. 中国科学院机器人与智能制造创新研究院, 辽宁 沈阳 110016;
3. 中国科学院大学, 北京 100049
摘要: 针对神经网络中ReLU激活函数存在返回值非负及神经元未激活等问题,提出了一种全新的类ReLU激活函数——LeafSpring.LeafSpring既继承了ReLU的优势,又可以返回负值,通用性更强.LeafSpring函数的推导及函数性质也会被讨论.该激活函数还引入了刚度系数k,可以通过训练主动调节相邻两层的权重系数.为了减少计算量,LeafSpring可以在一定情况下简化为ReLU或Softplus.为了展现LeafSpring激活函数的性能,还将其与ReLU、Softplus及Sigmoid在4种不同类型的数据集上进行拟合精度对比.对比结果表明,LeafSpring在不同的数据集上均能兼顾拟合精度和收敛速度且在小网格规模可以更快、更准确地拟合复杂非线性函数.
关键词: 激活函数     神经网络     线性整流函数(ReLU)     LeafSpring    
Build and Multi-datasets Comparison Analysis of LeafSpring Activation Function
GAO Tianzhu1,2,3     
1. State Key Laboratory of Robotics, Shenyang Institute of Automation, Chinese Academy of Sciences, Shenyang 110016, China;
2. Institutes for Robotics and Intelligent Manufacturing, Chinese Academy of Sciences, Shenyang 110169, China;
3. University of Chinese Academy of Sciences, Beijing 110049, China
Abstract: To solve the problems of non-negative return value and non-activation of neuron in the ReLU activation function of neural network, we propose a new ReLU-like activation function called Leafspring activation function. LeafSpring not only inherits the advantages of ReLU but also returns negative values, which is more versatile. The derivation and properties of the LeafSpring activation function are discussed. In the LeafSpring activation function, we introduce the stiffness coefficient k, which can adjust the weight coefficient of two adjacent layers by training. To reduce the amount of computation, LeafSpring can be simplified to ReLU or Softplus in some cases. The performance of LeafSpring activation function is shown by comparing its fitting accuracy with that of ReLU, Softplus, and Sigmoid on four different types of datasets. Comparison results show that LeafSpring can give consideration to fitting accuracy and convergence speed in different datasets, and it can fit complex nonlinear functions faster and more accurately on a small grid scale.
Keywords: activation function     neural network     rectified linear unit (ReLU)     LeafSpring    

0 引言

近年来,人工智能和深度学习等技术发展迅速,已经在图像处理、语音识别和自然语言处理等领域取得突破,并显著提高了原有技术的预测精度.基于神经网络的算法,包括误差反向传播神经网络、卷积神经网络及循环神经网络等是实现人工智能和深度学习的重要算法基础[1-2].然而,无论是何种神经网络算法,都以感知机模型和非线性的激活函数作为基本结构.因而构建并研究激活函数,对发展神经网络算法乃至人工智能都具有重要意义.

目前,激活函数主要以线性整流函数(ReLU)[3]及Sigmoid等函数及其相关变体为主.由于ReLU激活函数和导数的数学运算均较为简单,计算时间短,速度快,占用资源少,所以当面对未知数据集时,ReLU成为了激活函数的首选类型.然而,ReLU也有其固有缺陷.首先,ReLU输出值为非负数且关于x轴不对称,因而其在学习包含负返回值的数据集时,速度会变得很慢.其次,训练过程中,ReLU常常引起神经元的永久不激活,永久不激活的神经元会占用大量的计算资源,造成浪费.再有,ReLU是分段线性函数,当其用于拟合光滑非线性函数时,在相同拟合精度下,采用ReLU作为激活函数的神经网络需要包含有更多的神经元或隐藏层.

为了弥补ReLU的不足,近年来出现了许多在ReLU的基础上进行简单修改的类ReLU激活函数,主要包括:Leaky ReLU,PReLU,RReLU,ELU,SELU及SReLU等[4-12].这些类ReLU激活函数本质上是将ReLU函数预先分段叠加,形成若干组固定连接方式的ReLU激活函数对,从而缓解原本ReLU激活函数在负输入下收敛慢及神经元永久不激活等问题.然而,理论上这些类ReLU函数是可以通过ReLU在本身的训练过程中自动拟合得到的,因而未能从根本上触及ReLU的本质.

此外,另一种类ReLU函数是Softplus[13-19]. Softplus是一种光滑连续函数,现对于ReLU,其在拟合光滑连续函数时会有一定优势.更重要的是,Softplus在趋于正无穷和负无穷时的渐近线所组成的分段函数即为ReLU激活函数,因而拟合线性函数时与ReLU相似. Softplus返回值恒大于零且导数依然是非零连续函数,可以防止神经元永久不激活.然而,由于Softplus函数的导数通常小于1,进而会存在梯度消失等问题.此外,Softplus的劣势还表现在其计算量上,由于包含指数函数等非线性运算,其每一步的计算量会显著大于ReLU.

基于Softplus和ReLU,本文构建了一种新的类ReLU激活函数—板簧(LeafSpring)激活函数.在LeafSpring激活函数中,还引入了刚度系数k,用于在训练过程中自适应地调节函数的光滑程度.由于系数k的引入,ReLU和Softplus成为了LeafSpring激活函数的两种特殊情况,因而LeafSpring可以继承前者的优势.又由于系数k可以通过训练改变符号,所以LeafSpring可以覆盖更广泛的输出值范围.再有,k值的大小可以影响LeafSpring的光滑程度,因而可以用于拟合不同曲率的函数.此外,通过合理简化,可以将局部的LeafSpring函数简化为ReLU,或整体简化为Softplus,从而降低计算量.

本文将从LeafSpring函数的构建出发,分析其与ReLU和Softplus的继承关系,并给出误差反向传播计算方法及合理简化方法.最后,本文以4个不同类型的数据集对其计算性能进行评估,测试该激活函数的可行性.

1 LeafSpring函数的构建

LeafSpring函数作为一种类ReLU函数,同样也是从ReLU函数推导而来的. ReLU函数的表达方式有很多种,这里仅以最基本的分段函数形式表示:

(1)

该表达方式简单明了,但是仍然是一种以分段形式表达的方式.这里可以借鉴Softplus函数的形式,将ReLU改写成如式(2)所示的形式:

(2)

由式(2)可得,当n趋于正无穷时,右侧函数就会无限趋近于ReLU函数且二者的定义域和值域均相同.于是可以定义右侧函数为新函数R(nx):

(3)

其中,n为正整数.因而有:

若令n=1,则函数R(nx)等价于Softplus函数:

由此可见,ReLU函数和Softplus函数都是R(nx)函数的特殊形式.然而,如果仅仅使用R(nx)函数依然无法解决激活函数返回负值的问题,因此可以将R(nx)函数进行变形,如式(4)所示:

(4)

此处,n的取值范围仍为正整数,如果将n的取值范围扩大到非零实数,则可以得到如式(5)所示函数,并定义为LeafSpring函数.

(5)

R(nx)函数类似,LeafSpring函数同样可以表示ReLU函数和Softplus函数,但是由于k值可以取为负值,LeafSpring函数可以返回负值.

根据LeafSpring函数的表达式,可以进而得到其在不同kx值下的函数图像,如图 1所示.

图 1 LeafSpring激活函数曲线 Fig.1 The curve of LeafSpring activation function

根据LeafSpring函数的图像及其表达式,当k的绝对值趋于0时,函数趋于平滑;当k的绝对值趋于无穷时,函数趋于在(0,0)点导数不连续.因而,k的作用更像是刚度系数对于板簧的作用,当刚度系数变化时,在相同的弯折程度下,板簧的变形曲率会随之不同.因此,本文将上述函数命名为LeafSpring函数,而系数k命名为刚度系数.

然而,R(nx)函数还可以被改写成如式(6)所示形式:

(6)

但是,该形式会使得当k随着训练的变化而跨越零点时,函数的导数发生阶跃,这样不利于其在训练过程中任意跨越零点,从而不利于其拟合任意函数.

2 LeafSpring函数特性分析

对于LeafSpring函数,可以对其奇偶性、导数特性及误差反向传播方法进行分析.

2.1 奇偶性

由式(5),可得:

所以,LeafSpring函数是关于kx的奇函数.由此可得,LeafSpring函数可以随着kx的取值不同,返回关于零点对称的值且该值的取值范围为实数.

相比于ReLU和Softplus激活函数,尽管前者关于原点对称,但是都无法解决返回值仅为非负数的问题.通过采用LeafSpring函数,就可以弥补其不足.

2.2 关于x的偏导数特性

由式(5),对x求偏导数可得:

可见,LeafSpring函数对x的偏导数为Sigmoid函数,而Sigmoid(kx)的图像如图 2所示.

图 2 Sigmoid(kx)的函数曲线 Fig.2 The curve of Sigmoid(kx)

图 2可得,通过引入刚度系数k,LeafSpring函数的对x的偏导数可以覆盖更大的变化范围,偏导数随x的变化率也可以通过训练k值进行自动调节,从而可以一定程度上减缓使用Softplus引起的梯度消失的问题.此外,当k=1或k=+∞时,LeafSpring函数可以兼容ReLU及Sigmoid的偏导数,从而可以继承二者在线性函数拟合方面的优势.

2.3 k值的误差反向传播特性

由式(5),对k求偏导可得:

可见,当LeafSpring函数对k求偏导数时,可以大量使用前向传播过程及返回值的误差反向传播过程中的中间数据变量,如ALeafSpring(kx)及k·ekx等.但是,不可否认,该方法仍存在计算量提升的问题,尤其是在计算分母项时,无法通过存储之前的计算数据来简化计算.但是,如果该方法能够在拟合精度和适应数据集范围上优于ReLU或Softplus,那么该方法仍存在较大价值.

由以上分析可知,尽管LeafSpring函数在计算量上会大于ReLU和Softplus,但是LeafSpring函数关于原点对称,可以返回负值,并且可以扩大导数的变化率变化范围,从而缓解梯度消失等问题,所以该方法具有通用性更强的优势,值得深入研究和广泛应用尝试.

3 LeafSpring函数的机理分析

LeafSpring函数无论是在值域范围还是偏导数变化率的协调性方面都优于ReLU和Softplus.其根本原因是引入了刚度系数k.但是,如果从另一个角度来分析,该参数之所以会起到如此不同的效果,是因为它在LeafSpring函数中是多次出现的.若具体分析其在神经网络中的作用机理,可以以如图 3所示的全连接神经网络结构为例.

图 3 神经网络结构图 Fig.3 The structure diagram of a neural network

图 3所示神经网络结构为多层神经网络的一部分,这里仅取其中的第i-1层、第i层及第i+1层. xba为第a层的第b个节点的输入,yba为第a层的第b个节点的输出,由此可得第i层的某一神经网络节点j的输入xji

其中,h为前层的节点编号,为了便于分析,这里仅对节点j进行分析.

经过第i层LeafSpring激活函数的处理,该层的输出可以表示为

对于i+1层的节点p,前层节点j对其输入为

(7)

其中,

(8)
(9)

可见,若将式(7)的系数经由式(8)和式(9)参数代入,则式(7)可以得到进一步简化,而其简化结果与Softplus激活函数的作用相同.

反观式(8)和式(9),两式都包含参数kji,而令两式相乘可得:

所以LeafSpring函数相对于Softplus,最根本的区别为:通过引入刚度系数k,在激活函数的位置同时调节该节点前后的权重系数,并保持其乘积值不变.

相比而言,以ReLU及Softplus等为激活函数的神经网络,对其权重系数的训练是逐层进行的且每层之间不存在相互协调;而LeafSpring函数在激活函数的位置就引入了前后权重系数的协调机制,从而可以以参数的形式自主学习层系数间的相互关系,避免个别节点由于梯度消失或未激活而形成孤立,造成资源浪费.

此外,相比于其它类ReLU算法,通过引入固定值的修正系数虽然可以一定程度上缓解ReLU算法所遇到的问题,但是这些参数的引入本质上是对个别权重系数的人为修正,存在超参数,其通用性较差.而LeafSpring激活函数尽管也起到了权重系数修正的作用,但是在修正的同时还保证了各层间权重系数的乘积的不变性,且该修正程度可以由神经网络训练自主学习得到,进而提高了通用性.

4 LeafSpring函数的合理简化

尽管从函数性质和作用机理分析,LeafSpring激活函数都继承并扩展了ReLU和Softplus激活函数,但是LeafSpring函数的表达式相对较复杂,实际应用难免造成训练计算量过大的问题.然而,由于ReLU和Softplus激活激活函数均为LeafSpring函数的特殊形式,如若其在实际训练过程中可以局部或整体简化为上述两种简单函数,或许可以大幅降低计算量.

4.1 简化为ReLU函数

由式(2)和图 1可得,当系数n或刚度系数k趋于正无穷时,LeafSpring函数与ReLU函数等价.然而,如若k趋于负无穷,可以得到如(10)所示函数,记做做AReLUs(x).

(10)

AReLUs(x)函数形式简单,计算量与ReLU函数相同,所以同样可以作为LeafSpring函数的简化目标函数.

因而,在实际的算法计算中,可以在刚度系数的值得绝对值大于某一特定常数时,将其简化为ReLU或AReLUs(x)函数,从而降低计算量,如式(11)所示:

(11)

由式(11)分析可得,当LeafSpring函数在训练过程中,其刚度系数的训练结果较大,则其更接近于ReLU函数,使用ReLU函数对其进行简化,可以降低计算量.

4.2 简化为Softplus函数

由式(5)和图 1可得,当k的值取为1时,LeafSpring函数与Softplus函数完全相同,因而可以用Softplus函数代替LeafSpring函数,从而减少计算量.然而,在实际使用中,往往很难保证k的训练结果值为1,而且当k的值在以1为邻域的范围内变化时,其在小于1和大于1两个子邻域的取值对整体返回值的影响有较大不同,因而以此方式简化意义不大.但是,从LeafSpring函数的机理进行分析,可以得到另一条简化思路,这里同样以图 3所示神经网络结构为例.

对于第i+2层的第r个节点,其输入为

其中,

进而可得

(12)

根据式(12),若:

则:

因而,此时k作为调节两层权重系数的相互关系的作用消失了,从而刚度系数的作用仅仅体现在最后一层神经网络的返回值中,于是刚度系数的作用就可以被权重系数完全取代,在该情况下的LeafSpring函数可以被简化为Softplus函数,如式(13)所示:

(13)

进而,当以LeafSpring为激活函数的神经网络在训练过程中发生所有的刚度系数值均属于某一特定小区间,或任意两个刚度系数的商与1的差值的绝对值小于某一小量ε时,该神经网络的所有激活函数可以简化为Softplus函数.

通过合理简化,LeafSpring函数可以简化为ReLU或Softplus函数,从而降低计算量.然而,从另一个角度来分析,如若经过训练后的刚度系数值无法简化为ReLU或Softplus,则说明该训练数据集具有ReLU或Softplus在此规模的网格下无法学习到的特征.换言之,LeafSpring激活函数可以在同等网格规模下学习到更为丰富的特征,并将该特征以可表征层间权重系数关系的刚度系数的形式储存在激活函数中.

所以,对于某一未知数据集,可以优先采用LeafSpring激活函数对其进行神经网络拟合.如若训练结果倾向于ReLU或者Softplus,可以再转用或直接简化为后者;如若训练结果无法简化,则LeafSPring激活函数或许表征了比ReLU和Softplus更丰富的特征信息.

5 多数据集下不同激活函数拟合精度对比

尽管从函数特性和作用机理分析,LeafSpring激活函具有ReLU和Softplus等所不具备的特性,但是LeafSpring激活函数的神经网络拟合精度仍需要在不同的数据集下进行测试.然而,目前可用于神经网络训练的数据集众多,应用场景各异且神经网络结构对训练结果有较大的影响.而LeafSpring激活函数的优势在于其通用性,如若无法覆盖绝大多数数据集类型,则较难说明其通用性.所以,本文采用现有数据集及按照目标函数随机生成数据集的方法,来构造不同的数据集,并通过LeafSpring函数和ReLU、Softplus及Sigmoid等常用激活函数进行对比,考量拟合精度,从而分析LeafSpring激活函数的通用性等特点.

5.1 数据集的选取及构建

对于任意映射关系,可以按照该映射关系的导数的性质划分:将其导数存在且在定义域内为常数的映射关系定义为线性函数,对其导数存在且定义域不为常数的映射关系定义为非线性函数.如若导数不存在,则可以定义为分段函数.因而,可以选取和构建4种映射关系的数据集来分析各激活函数的拟合能力:线性映射、简单非线性映射、复杂非线性映射及分段函数映射.

5.1.1 线性映射数据集的构建

首先,构建一个规模为100 000×100的由(0,1)区间均匀分布随机数组成的数组X,作为数据集的输入值.接着将该数组的行向量按照规则:

进行运算,从而得到维数为100 000×25的新数组,并定义为Y,作为数据输出值.其中,[:,:a],表示选取该数组的前a列,[:,b:],表示选取该数组的b[20].

由此,数组X经过两次线性叠加转化为了数组Y,因而可以将此函数关系定义为

DDual_Line函数由于仅包括线性元素间的线性叠加,因而可以被用作构建线性函数映射的数据集.

5.1.2 简单非线性映射数据集的构建

与线性映射数据集相同,可以构建一个均匀分布随机数生成的数组X作为输入,规模为100 000×100,而其输出Y的构建规则为

其中,[·]*[·]表示数组的对应元素相乘[20].

由此数组X经过一次乘方运算,两次线性叠加运算转换为了规模为100 000×25的数组Y,这里可以将该函数定义为

DDual_Square函数包含简单的乘方运算及线性叠加运算,因而可以构建出简单非线性数据集.

5.1.3 复杂非线性映射数据集的构建

与前两种数据集构建方法类似,以规模为100 000×100的随机均匀分布数组X作为输入,输出数组Y的构建规则为

其中,sin,cos,square,sqrt及exp等函数分别表示对自变量数组的每一个元素进行正弦函数、余弦函数、乘方、开方及e指数运算[20].

由此,数组X经过6次复杂非线性运算及1次线性叠加运算,得到了规模为100 000×25的数组Y,该函数定义为

DSuper_Unline函数包含了复杂的非线性运算,因而可以用于构建复杂非线性映射.

5.1.4 分段函数映射数据集的选取

对于分段函数映射数据集,可以选取具有实际应用背景的,用于拟合归类关系的数据集.现有的开源数据集MNIST、CIFAR-10、CIFAR-100等的数据集,为了便于对比分析,本文所采用的分段函数映射数据集为MNIST和CIFAR-10.

5.2 不同激活函数拟合精度对比

利用上述构建或选取的数据集,采用两层全连接层作为隐藏层,全连接层分为稀疏(sparse)和致密(dense)两种结构,以分析隐藏层节点数量对拟合精度的影响.隐藏层的激活函数分别采用LeafSpring、ReLU、Softplus及Sigmoid四种.训练采用的损失函数为均方误差函数,权重系数和刚度系数的初值采用均匀分布的随机数,权重系数和刚度系数的更新采用误差反向传播方法.

前3个数据集规模一致,因而使用XY的前90 000行数据作为训练样本,后10 000行用作测试样本;而分段函数映射数据集,则使用MNIST的开源数据集的训练数据集和测试数据集.对于前3个数据集,为了表征其拟合精度,定义测试误差函数:

其中,t为测试数据集内的输出数据;y为训练后的神经网络的输出数据;mn为测试数据集的行数和列数,当其为下标时,整体表示对应行和列的元素.

通过使用训练数据集进行训练,并用测试数据集进行测试,可以得到拟合精度结果.

5.2.1 线性映射数据集的拟合对比

对于线性映射数据集,分别令隐藏层节点数为50 (sparse)和100 (dense),得到如图 4所示的拟合结果.

图 4 线性映射数据集拟合结果对比图 Fig.4 The fitting result compare on the dual_line database

图 4(a)可得,当隐藏层节点数较小时,相比于Sigmoid,ReLU、LeafSpring及Softplus激活函数都可以得到较好的拟合结果,其中ReLU激活函数的收敛速度最快,而LeafSpring和Softplus激活函数最终的拟合误差小于ReLU且后两者收敛速度相同.之所以ReLU激活函数具有较高的收敛速度,是因为其函数本身为分段线性的函数,当用于拟合线性函数时,可以得到更好的效果.而最终LeafSpring及Softplus激活函数在精度上的提高,是因为二者在网格规模有限的情况下可以拟合出更为复杂的函数.

图 4(b)可得,当隐藏层节点数较大时,4种激活函数均能得到较好的拟合结果.但是从收敛速度分析,ReLU大于LeafSpring和Softplus且远大于Sigmoid.这主要是因为在网格规模足够的情况下,神经网络可以通过权重系数学习到足够多的信息,而激活函数对于提高精度的作用不再显著.但是对于收敛速度,线性程度越高的函数,其收敛速度越快.

综合分析图 4(a)和图(b),LeafSpring激活函数在线性映射数据集上的作用与Softplus类似且在收敛速度可以接受的情况下,可得到较高的拟合精度.

5.2.2 简单非线性映射数据集的拟合对比

对于简单非线性映射数据集,分别令隐藏层节点数为50 (sparse)和100 (dense),可以得到如图 5所示的拟合结果.

图 5 简单非线性映射数据集拟合结果对比图 Fig.5 The fitting result comparison on the simple nonlinear mapping database

图 5(a)可得,相比于ReLU,LeafSpring、Softplus及Sigmoid都可以得到较好的拟合精度,而且LeafSpring和Softplus的拟合精度最高.从收敛速度看,尽管ReLU激活函数收敛速度最快,但是最终收敛值误差较大,而LeafSpring激活函数和Softplus激活函数兼顾了收敛速度和精度.之所以会出现这样的结果,是因为Softplus及LeafSpring激活函数本身均为非线性的光滑曲线,当其用于拟合简单的具有单一光滑曲线类型的函数时,可以在小网格规模下拟合出目标函数.类似地,Sigmoid函数尽管也可以拟合出目标函数,但是由于其本身具有极强的非线性,所以很难快速训练成目标函数.而ReLU激活函数,由于其本身为分段线性函数,小网格规模较小的情况下,很难将复杂的光滑曲线信息学习到有限的权重系数内.

图 5(b)可得,随着网格规模的提高,4种激活函数都可以以较快的速度收敛到较小的误差且精度不相上下.这主要是因为网格规模的增加使得激活函数的作用减弱,从而4种激活函数都可以得到较好的结果.反观细节,ReLU激活函数的拟合精度略低于LeafSpring和Softplus激活函数,这也能一定程度上说明ReLU在此类型的数据集上应用受到了限制.

综合分析图 5(a)图 5(b),与线性数据集类似,LeafSpring激活函数在简单非线性映射数据集上的作用与Softplus相同且可以在网格规模有限的情况下得到较好的拟合精度.

5.2.3 复杂非线性映射数据集的拟合对比

对于复杂非线性映射数据集,分别令隐藏层节点数为100 (sparse)和200 (dense),可以得到如图 6所示的拟合和训练结果.

图 6 复杂非线性映射数据集拟合结果对比 Fig.6 The fitting result comparison on the complex nonlinear mapping database

图 6(a)图 6(b)可得,无论是训练数据集还是测试数据集,LeafSpring激活函数比其余3种激活函数收敛速度都快,拟合精度都高.这主要是因为在复杂的非线性映射中,LeafSpring激活函数可以通过训练刚度系数k,在不同的节点自适应地学习不同光滑程度的信息.而ReLU、Softplus及Sigmoid,由于其不能主动调节相邻层之间的权重系数关系,很难在网格规模有限的情况下拟合出复杂的分线性映射.

图 6(c)可得,当网格规模增大,ReLU和LeafSpring激活函数都可以得到较好的拟合精度和收敛速度.这主要是因为当网格规模足够大时,ReLU可以用线性函数拟合出任意非线性函数,从而达到了与LeafSpring相当的精度.

综合分析图 6(a)~图 6(c),LeafSpring激活函数可以在小网格规模下以较高速度和精度拟合复杂非线性函数且优于其余3种激活函数.

5.2.4 分段函数映射数据集的选取的拟合对比

对于分段函数映射数据集MINST,分别令隐藏层节点数为20(sparse)和50(dense),可以得到如图 7所示的拟合结果.

图 7 MNIST数据集拟合结果对比 Fig.7 The fitting result comparison on the MNIST database

图 7可得,无论是在网格稀疏还是稠密的状态下,LeafSpring和ReLU激活函数在收敛速度和精度上均优于其余2种激活函数,而且在网格数量更大的情况下,LeafSpring激活函数可以得到略高于ReLU的拟合精度结果.该结果表明,LeafSpring激活函数在拟合MNIST数据集时,同样有较好的表现,并且在网格数量丰富的情况下,可以学习到更高丰富的信息.

同样,对于分段函数映射数据集CIFAR-10,由于数据集维数较高,分别令隐藏层节点数为50(parse)和200(dense),并以数据集中的后10%作为测试样本,可以得到如图 8所示的拟合结果.

图 8 IFAR-10数据集拟合结果对比 Fig.8 The fitting result comparison on the CIFAR-10 database

图 8可得,无论是在网格稀疏还是稠密的状态下,LeafSpring、ReLU和Softplus激活函数在收敛速度和精度上均优于Sigmoid.而且在网格数量较小的情况下,LeafSpring激活函数可以得到略高于ReLU和Softplus的拟合精度结果.该结果表明,当LeafSpring激活函数拟合CIFAR-10时,同样有较好的表现,并且在网格数量有限的情况下,可以得到更高的拟合精度.

综合CIFAR-10和MINST两个数据集上的表现,LeafSpring激活函数能够在拟合分段函数时,以较快的拟合速度,得到更好的拟合效果.

综合分析多数据集下不同激活函数的拟合精度,LeafSpring在所有的数据集下均表现出了优异的拟合能力.无论是在拟合速度还是最终拟合精度上,LeafSpring激活函数均可以以较小的网格规模得到较好的拟合结果.而且在复杂的非线性数据集下,LeafSpring激活函数的拟合精度和收敛速度均优于其余3种激活函数.所以,LeafSpring激活函数的通用性更强,更适于在未知数据集上优先尝试使用.

6 结论

本文从ReLU激活函数出发,借鉴Softplus与ReLU的关系,构建了LeafSpring激活函数,并引入刚度系数的概念.通过分析其函数特性,发现该函数关于原点对称,可以返回负值,并且可以扩大导数的变化率范围,从而缓解梯度消失等问题,进而通用性更强.通过分析其作用机理,发现该函数可以在保证相邻两层权重系数乘积不变的情况下,调节权重系数的大小起到权重系数修正的作用.此外,为了简化计算,本文分析了LeafSpring激活函数和ReLU和Softplus激活函数的转化关系,并给出简化方法.最后,通过将LeafSpring、ReLU、Softplus及Sigmoid等激活函数在线性、简单非线性、复杂非线性及分段函数数据集上进行拟合训练,得到了不同激活函数在多种数据集上的拟合误差或精度结果.结果表明,LeafSpring激活函数在多种数据集下收敛速度和精度均较好,且通用性更强,并发现其在小网格规模下可以更好地拟合出复杂非线性函数.

诚然,本文所对比的激活函数类型及数据集种类较少,尚不能绝对证明LeafSpring激活函数对于所有类型的数据集,在所有结构的神经网络算法中都可以取得较好效果.此外,本文仅讨论了激活函数本身对拟合速度和精度的影响,未涉及神经网络结构、算法优化对结果的影响.未来,会对LeafSpring进行更加深入的研究,以进一步解决上述问题.

参考文献
[1] 斋藤康毅. 深度学习入门:基于Python的理论与实现[M]. 第1版. 北京: 人民邮电出版社, 2018: 1-285.
Saito K. Introduction to deep learning:Theory and implementation based on Python[M]. 1st ed. Beijing: People's post and Telecommunications Press, 2018: 1-285.
[2] 刘宇晴, 王天昊, 徐旭. 深度学习神经网络的新型自适应激活函数[J]. 吉林大学学报(理学版), 2019, 57(4): 1–3.
Liu Y Q, Wang T H, Xu X. A new adaptive activation function of deep learning neural network[J]. Journal of Jilin University (Science Edition), 2019, 57(4): 1–3.
[3] Nair V, Hinton G E. Rectified linear units improve restricted Boltzmann machines[C]//27th International Conference on Machine Learning. Haifa, Israel. Madison, WI, USA: Omnipress, 2010: 807-814.
[4] He K M, Zhang X Y, Ren S Q, et al. Delving deep into rectifiers: Surpassing human-level performance on ImageNet classification[C]//2015 IEEE International Conference on Computer Vision. Piscateway, NJ, USA: IEEE, 2015: 1026-1034.
[5] Peng J T, Chen L, Iqbal Muhammad Ather, et al. Extreme Learning Machine based on Rectified Nonlinear Units[C]//2nd Workshop on Advanced Research and Technology in Industry Applications. Paris, France: Atlantis Press, 2016: 1525-1530.
[6] Maas A L, Hannun A Y, Ng A Y. Rectifier nonlinearities improve neural network acoustic models[C/OL]//30th International Conference on Machine Learning.[2019-02-26]. http://ai.stanford.edu/~awni/papers/relu_hybrid_icml2013_final.pdf.
[7] He K, Zhang X, Ren S, et al. Delving deep into rectifiers: Surpassing human-level performance on imagenet classification[C]//IEEE International Conference on Computer Vision. Piscateway, NJ, USA: IEEE, 2015: 1026-1034.
[8] Xu B, Wang N, Chen T et al. Empirical evaluation of rectified activations in convolutional network[J/OL]. arXiv: 1505.00853. (2015-11-27)[2019-05-21]. https://arxiv.org/abs/1505.00853.
[9] Clevert D A, Unterthiner T, Hochreiter S. Fast and accurate deep network learning by exponential linear units (ELUs)[J/OL]. arXiv: 1511.07289. (2016-01-22)[2019-05-26]. https://arxiv.org/abs/1511.07289.
[10] Petersen P, Voigtlaender F. Optimal approximation of piecewise smooth functions using deep ReLU neural networks[J]. Neural Networks, 2018, 108: 296–330.
[11] Konstantin Eckle, Johannes Schmidt-Hieber. A comparison of deep networks with ReLU activation function and linear spline-type methods[J]. Neural Networks, 2019, 111: 232–242.
[12] Liu Y, Wang X, Wang L, et al. A modified leaky ReLU scheme (MLRS) for topology optimization with multiple materials[J]. Applied Mathematics and Computation, 2019, 352: 188–204.
[13] Zhao H Z, Liu F X, Li L Y, et al. A novel Softplus linear unit for deep convolutional neural networks[J]. Applied Intelligence, 2017, 48(4): 1–14.
[14] Oliver Y. Riemannian metrics for neural networks I: Feedforward networks[J/OL]. arXiv: 1303.08.18, 2015. (2015-01-03)[2019-05-26]. https://arxiv.org/abs/1303.0818?context=cs.LG.
[15] Shi P, Li G H, Yuan Y M, et al. Prediction of dissolved oxygen content in aquaculture using Clustering-based Softplus extreme learning machine[J]. Computers and Electronics in Agriculture, 2019, 157: 329–338.
[16] 郜丽鹏, 郑辉. 基于PReLUs-Softplus非线性激励函数的卷积神经网络[J]. 沈阳工业大学学报, 2018, 40(1): 54–59.
Gao L P, Deng H. Convolution neural network based on PReLUs-Softplus nonlinear excitation function[J]. Journal of Shenyang University of technology, 2018, 40(1): 54–59.
[17] 孙艳丰, 杨新东, 胡永利, 等. 基于Softplus激活函数和改进Fisher判别的ELM算法[J]. 北京工业大学学报, 2015, 41(9): 1341–1348.
Sun Y F, Yang X D, Hu Y L, et al. ELM algorithm based on Softplus activation function and improved Fisher discriminant[J]. Journal of Beijing University of Technology, 2015, 41(9): 1341–1348.
[18] Senior A, Lei X. Fine context, low-rank, Softplus deep neural networks for mobile speech recognition[C/OL]//2014 IEEE International Conference on Acoustics, Speech and Signal Processing. Piscateway, NJ, USA: IEEE. (2014-07-14)[2019-05-26]. https://ieeexplore.ieee.org/document/6855087.
[19] Shi P, Li G, Yuan Y, et al. Prediction of dissolved oxygen content in aquaculture using clustering-based Softplus extreme learning machine[J]. Computers and Electronics in Agriculture, 2019, 157: 329–338.
[20] 埃里克·马瑟斯. Python编程从入门到实践[M]. 第1版. 北京: 人民邮电出版社, 2018: 1-459.
Eric M. Python programming from introduction to practice[M]. 1st ed. Beijing: People's post and Telecommunications Press, 2018: 1-459.
http://dx.doi.org/10.13976/j.cnki.xk.2020.9332
中国科学院主管,中国科学院沈阳自动化研究所、中国自动化学会共同主办。
0

文章信息

郜天柱
GAO Tianzhu
激活函数LeafSpring的构建及多数据集对比研究
Build and Multi-datasets Comparison Analysis of LeafSpring Activation Function
信息与控制, 2020, 49(3): 306-314, 322.
Information and Control, 2020, 49(3): 306-314, 322.
http://dx.doi.org/10.13976/j.cnki.xk.2020.9332

文章历史

收稿/录用/修回: 2019-06-12/2019-10-08/2020-01-10

工作空间