【论文阅读】Activate or Not: Learning Customized Activation(CVPR2021)

论文题目:Activate or Not: Learning Customized Activation

论文地址:https://arxiv.org/pdf/2009.04759.pdf

代码地址:https://github.com/nmaac/acon

文章贡献:

1. 提出了一个新颖的角度来理解:Swish可以解释为ReLU的一种平滑近似;

2. 基于这个发现,论文进一步分析ReLU的一般形式Maxout系列激活函数,从而得到Swish的一般形式、简单且有效的ACON激活函数;

3. 提出meta-ACON,明确学习是否激活神经元,显著提高了表现。

1 背景与动机

ReLU是最常用的激活函数,最近NAS搜索到的Swish效果显著,但是没有一种很好的解释来说明为什么Swish效果好,因此作者根据公式得出:Swish可以解释为ReLU的一种平滑近似,使其具备可解释性。

由ReLU-->Swish转换,作者进一步得出其一般形式Maxout-->ACON的转换,ACON增加的计算量可忽略不计,但提高了各种任务的精度。

ACON中的切换因子β可以控制激活函数在线性和非线性之间的切换,但仅仅使用梯度下降法优化因子并不能很好地学习这个切换。因此作者进一步提出meta-ACON,可根据输入自适应的调整激活与否。

下图左边是ReLU激活函数,对每个神经元节点均使用同一程度的激活;右边是ACON,选择性的对每个节点有不同的激活程度:

下图是ImageNet图像分类任务中2种激活函数和SE注意力在不同深度的网络上涨点的对比,随着网络深度的加深,Swish和SENet涨点变小,但meta-acon仍然能提供稳定的涨点,且效果远好于另外2项:

2 相关工作

(1)激活函数

0处不可微,其他值可微。

 

是许多当前激活函数的通用公式。

对于一个输入为x的神经网络,常见的隐藏层节点表示为:

 而在Maxout中,隐藏层表示为:

Maxout可以看做是在深度学习网络中加入一层激活函数层,包含一个参数k。这一层相当于是ReLU、sigmoid等,其特殊之处在于增加了k个神经元,然后输出激活值最大的值,因此参数个数增为k倍。

maxout-networks-4-1024

具体理解可参考[6].

  • SiLU和Swish

由NAS搜索而来,SiLU:,Swish:

SiLU在很多视觉任务上优于其他标量激活,而Swish具有很大的潜力。

将全局上下文编码为一个超函数,并相应地适应分段线性激活函数。参数量大,效果好,但在深层网络上效果没那么显著。

尽管DY-ReLU可以从概念上概括SENet,但它的效果没有SENet好。

ACON与DY-ReLU的区别: 1.学习决定是线性还是非线性; 2.比ReLU参数量小; 3.在深度网络上效果也很显著。

(2)动态网络

标准CNNs对所有样本共享相同的网络结构和卷积核,但动态CNNs使用基于输入样本的动态内核、宽度或深度,获得了显著的准确性。

以往动态网络的3种形式:1.学习动态内核;2.使用基于注意力的方法来改变网络结构;3.专注于卷积网络的动态深度,对于不同的样本跳过一些层。

该论文动态地学习了激活函数的非线性程度,它控制了非线性层的程度,即动态的选择激活与否。

(3)神经网络的设计空间

神经网络体系结构的设计主要包括kernel level space和feature level space。最常见的特征设计空间是通过通道维度,空间维度和特征组合来优化性能。在最近流行的核设计空间中,可以优化核形状和核计算。

该论文在非线性水平上提供了一个新的设计空间,可以每层共享参数,每通道共享参数或者每个像素都是不同的参数。

3 ACON结构[1]

(1)RuLU-Swish转换

对于一个最大函数 max(x1,...,xn) , 可以通过一个简单而通用的近似公式来获取它的平滑近似:

易知式1中当β-->∞时,S(β)=max(x1,...,xn);当β-->0时,S(β)=1/n * (x1+...+xn)。

神经网络中很多激活函数都有max(ηa(x), ηb(x))的形式,比如ReLU,η表示线性函数。于是当n=2时,式1有如下推导:

为了便于展示,这里用x1表示ηa(x),x2表示ηb(x),展开推导过程:

当ηa(x)=x,ηb(x)=0时,由式1得S(β)为max函数,即Relu;由式2可得S(β)=x*σ(βx),即Swish的表达式。

即ReLU 是 Maxout (式1)的一种特殊形式,Swish 是 ACON(式2) 的一种特殊形式。

(2)Maxout-ACON转换

上表是ACON中ηa(x)和ηb(x)不同取值表示的一些结果,可以得到不同的ACON系列激活函数以及其对应的Maxout系列激活函数。

对ACON-C进行分析,求一阶导数及其极限:

即ACON-C在x趋近于正无穷时,其一阶导数取值为p1,负无穷时取值为p2:

为了求得ACON-C一阶导数具体的上下界取值,对其求二阶导数:

令二阶导数=0,则=0.

有: (2-y)*e^y + y + 2 = 0,解得方程后有y=(+/-)2.39936。则ACON-C一阶导数上界为1.0998p10.0998p2,下界为1.0998p20.0998p1。

对Swish求二阶导可得,Swish一阶导的上下界为(1.0998, -0.0998)是固定的,而ACON的一阶导上下界由p1和p2决定。

下图分别是ACON-C不同p1p2取值对应的激活函数图、不同beta取值对应的激活函数图、恒定p1p2下不同β的取值对应的一阶导数图:

 

即p1p2影响的是一阶导的上下界取值,而beta影响的是一阶导趋近于上下界的速度,不同的beta对应了ACON-C激活函数的线性-非线性程度。

(3)meta-ACON

ACON激活函数的激活与否和激活程度是由β控制的,当β-->∞时,ACON-C=max(p1x, p2x)非线性;当β-->0时,ACON=mean(p1x, p2x)线性。

因此提出一个G(x)模块来由输入特征图x(CxHxW)学习β。论文提出了G(x)的3种设计空间:

  1. layer-wise:β=,每层共享参数β,得到的β大小为1。
  2. chnnel-wise:βc=,每个通道共享参数β,得到的β大小为Cx1x1。其中W是1x1卷积的参数,有W1(C-->C//r),W2(C//r-->C),r=16。
  3. pixcel-wise:,每个像素之间都有独自的β,得到的β大小为CxHxW。

其中chnnel-wise代码如下,相当于是对特征图CxHxW平均池化为Cx1x1,在对其进行2次1x1conv+bn操作,由sigmoid激活函数求得β:

layer-wise需要对x在dim=1上也求平均再激活,而pixcel-wise在dim=2/3上均不需要求平均,而是直接对x激活。

4 实验结果

(1)图像分类

在浅层和深层网络上ACON系列的效果(与ReLU对比):

  • ACON系列均比ReLU效果好,说明可微分和平滑转换的优点;
  • ACON-C优于ACON-A/B,说明ACON-C一阶导的自适应上下界(p1p2取值)有效;
  • 随着网络层数的增加,Swish仅有些微的改进,而ACON-C依然持续改进。

在浅层和深层网络上meta-ACON的效果(与ReLU对比):

对于浅层网络,将所有的ReLU都改成meta-ACON;对于深层网络,仅将blocks中3x3卷积后的那一个ReLU改成meta-ACON。在所有的网络结构上均取得了显著效果,参数量的增加可忽略不计。

meta-ACON显著效果的可解释性:

上图为在resnet50的最后一个layer上学习到的β分布,一共输入7个样本,在meta-ACON上,不同的样本具有不同的β分布,而ACON上所有样本均具有相同的β分布。

  • meta-ACON比ACON学习更广泛的分布;
  • 每个样本都有自己的β,而不是共享同一个β;
  • 一些样本有更多接近于零的值,这意味着一些神经元在这一层趋于不激活。

与其他激活函数的对比:

meta-ACON三种设计空间的对比:

与SENet的对比:

由于SE模块是通道注意力,因此这里的meta-ACON使用的channel-wise设计空间。

ACON 的更多特例 ACON-FReLU:

FReLU[4]也属于Maxout系列,是近期出现的在视觉任务中更有潜力的激活函数,在轻量级网络中效果显著。

有如下形式,其中T(x)代表简单高效的空间上下文特征提取器(3x3depthwise-conv+bn):

将式2的(和T(x)一样,3x3depthwise-conv+bn)后,可得ACON-FReLU:

由于FReLU和网络的原始块中都含有depthwise-conv[5],因此直接替换ReLU为FReLU不是最优的(depthwise-conv重复利用)。

因此论文设计了一个TFNet,仅使用逐点卷积(1x1卷积)和ACON-FReLU:

 

使用ACON-FReLU的TFNet和其他先进静态网络的效果对比:

(2)目标检测

(3)语义分割

参考文档

[1] CVPR 2021 | 自适应激活函数ACON: 统一ReLU和Swish的新范式

[2] 激活函数(ReLU, Swish, Maxout)

[3] DyReLU=SE+Maxout?

[4] FReLU

[5] 深度可分离卷积

[6] 深度学习(二十三)Maxout网络学习

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值