成为VIP会员查看完整内容
VIP会员码认证
首页
主题
发现
会员
服务
注册
·
登录
0
华为突破封锁,对标谷歌Dropout专利,开源自研算法Disout,多项任务表现更佳
2020 年 5 月 19 日
THU数据派
来源:量子位
本文约
2100字
,建议阅读
7分钟
。
本
文
介绍华为诺亚实验室开源Disout算法,直接对标谷歌申请专利的Dropout算法。
美国持续封锁,华为的技术自研,已经深入到了AI底层算法层面上,并开始将研究成果面向业界开源。
刚刚,华为诺亚实验室开源Disout算法
(地址在文末)
,直接对标谷歌申请专利的
Dropout算法
。
而且,在多项任务上,华为的新算法都超过了Dropout。比如,在ImageNet上训练的ResNet-50可以达到78.76%的准确率,而谷歌Dropout系列方法仅为76.8%。
这一算法背后的论文,已被AAAI 2020收录,并对外公开。华为到底提出的Disout到底如何,也得以呈现。
华为自研Disout:多项AI任务超越Dropout
在申请专利时,谷歌将Dropout定义为“解决神经网络过拟合的系统和方法”。
其核心的思路是,训练神经网络前向传播过程中,Dropout能让某个神经元的激活值以一定的概率p停止工作,也就是“Drop”
(丢弃)
,提升模型稳定性,来缓解过拟合现象。
而
Disout
是提出的新型替代方案,是一种通过研究
特征图扰动
来增强深度神经网络的泛化能力的方法。
简单来说,就是根据网络中间层的Rademacher 复杂度
(ERC)
,确定给定深度神经网络的泛化误差上界。
并将扰动引入特征图,来降低网络的Rademacher复杂度,从而提高其泛化能力。
它们之间的区别可以用下面这张图来展示——也就是对输出特征进行扰动,而不是丢弃。
相比之下,华为的方法效果更好。
Disout不但在传统视觉任务上表现优异,超越谷歌Dropout性能,在NLP任务以及语音处理任务上,同样具备有效性。
接下来,就让我们一起看下Disout在各个数据集上与Dropout系列方法的对比。
首先,CIFAR-10的和CIFAR-100数据上的测试准确率对比。
全连接层实验中,华为所提出的特征图扰动方法,训练CNN达到85.24%的准确度,相比于最新的RDdrop方法,测试准确率分别在CIFAR-10和CIFAR-100数据集上提高了2.13%和1.58%。
华为研究人员表示,他们提出的Disout方法可以有效地降低经验Rademacher的复杂度,同时保留模型的表示能力,从而具有较好的测试性能。
在卷积层实验上,华为的方法可以适用于卷积层,提高深度神经网络的性能,而且优于DropBlock方法,性能分别提高了0.32%和0.63%。
ImageNet 数据集实验中结果也显示,华为提出的特征扰动方法不仅可以替换常规的dropout方法提高深度神经网络的性能,而且可以提升最近提出的Dropblock方法的性能。
与传统的dropout方法相比,Disout将准确性从76.80%提高到77.71%,Block Disout方法达到了78.76%的top-1准确率,超过其他现有技术。
华为研究人员说,他们的方法可以在提高泛化能力并保留原始特征的有用信息。
此外,他们还在文本数据集IMDB和语音数据集UrbanSound8k上进行了实验,结果如下(上为文本、下为语音):
核心突破:对输出特征进行扰动,而不是丢弃
那么,具体又是如何做到的呢?我们一起来了解一下
泛化理论
。
泛化理研究的是期望风险与经验风险之间的关系。
以图像分类任务为例,总体期望风险R(f
L
)和训练集上的经验风险
是:
Rademacher经验复杂度(ERC)被广泛用于量化期望风险和经验风险之间的差距,它的定义如定义1所示。
定义1
:给定由分布Q成的𝑁个实例D= {(x
𝑖
,y
𝑖
)}的给定训练数据集,网络𝑓
𝐿
的经验Rademacher复杂度定义为:
其中Rademacher变量是{-1,+ 1}中的独立统一随机变量。
使用经验Rademacher复杂度和MaDiarmid不等式,可以通过定理1得出预期风险的上限。
定理1
:给定𝜌 >0,对任意𝛿>0,至少以概率1−𝛿,对于所有的𝑓
𝐿
∈𝐹,满足
根据定理1,研究人员发现,期望风险和经验风险之间的差距,可以借助特定神经网络和数据集上的经验Rademacher复杂度加以限制。
直接计算ERC比较难,因此通常在训练阶段使用ERC的上限或近似值,来获得具有更好泛化的模型。
了解完泛化理论,就来看下
特征图扰动
。
研究人员通过
减少网络的ERC来学习特征图的扰动值
,而不是固定扰动值。
通常,对具有输入数据x
i
的第l层的输出特征f
L
(x
i
)所采用的干扰操作可以表示为:
其中,ε
l
i
是特征图上的扰动 。
上面的等式中扰动的形式是在ERC指导下自行学习得到的。由于ERC是通过网络最后一层的输出计算出来的,直接使用它来指导扰动将非常困难。
因此,研究人员使用以下定理,通过网络中间层的输出来间接表达网络的ERC:
定理 2
用K
l
[k;:]表示权重矩阵K
l
的第k行 ||・||p是向量的 p-norm。假设|| K
l
[k;:] ||
p
≤ B
l
,网络输出的ERC 可以被中间特征的ERC限制:
o 和 f 分别是在激活函数之前和之后的特征图。令:
则:
那么,最优的扰动,就可以通过求解下式得到:
直观地, 过于剧烈的扰动将破坏原始的特征并降低网络的表示能力;而过小的扰动不能很好地起到正则化效果。
算法如下所示:
实习生一作,华为诺亚实验室出品
这篇论文,一共有7名研究人员,分别来自北京大学、华为诺亚和悉尼大学,核心团队来自华为诺亚实验室。
一作是北京大学的
唐业辉
,这一研究是他在华为诺亚实验室实习期间完成。
二作是
王云鹤
,华为诺亚方舟实验室技术专家,也是唐业辉实习时的导师。
毕业于北京大学,在相关领域发表学术论文40余篇,包含NeurIPS、ICML、CVPR、ICCV、TPAMI、AAAI、IJCAI等。
主要从事边缘计算领域的算法开发和工程落地,研究领域包含深度神经网络的模型裁剪、量化、蒸馏和自动搜索等。
其他作者有来自华为诺亚实验室的
许奕星、许春景、
北京大学的
许超
等人。
如果你对这项研究感兴趣,请收好传送门:
开源链接:
https://github.com/huawei-noah/Disout
论文链接:
https://www.aaai.org/Papers/AAAI/2020GB/AAAI-TangY.402.pdf
——
END
——