当前位置: 首页 > 科技观察

华为突破封锁,对标谷歌Dropout专利,开源自研算法Disout

时间:2023-03-15 09:07:50 科技观察

本文经AI新媒体量子位授权转载(公众号ID:QbitAI),转载请联系出处.美国持续封锁,华为自研技术深入AI底层算法层面,开始向产业界开源研究成果。刚刚,华为诺亚实验室开源了Disout算法(地址在文末),直接对标谷歌专利的Dropout算法。而且,华为的新算法在很多任务上都超越了Dropout。比如在ImageNet上训练的ResNet-50可以达到78.76%的准确率,而GoogleDropout系列方法只有76.8%。该算法背后的论文已经被AAAI2020收录并公开。也介绍了华为究竟是如何提出Disout的。华为自研Disout:多项AI任务超越Dropout在申请专利时,谷歌将Dropout定义为“一种解决神经网络过拟合的系统和方法”。核心思想是在训练神经网络前向传播的过程中,Dropout可以使某个神经元的激活值以一定的概率p停止工作,即“Drop”(丢弃),提高网络的稳定性模型,并减轻超调。贴合现象。Disout是一种新颖的替代方案,它是一种通过研究特征图扰动来增强深度神经网络泛化能力的方法。简单来说,就是根据网络中间层的拉德马赫复杂度(ERC)来确定给定深度神经网络泛化误差的上界。并且在featuremap中引入扰动来降低网络的Rademacher复杂度,从而提高其泛化能力。它们之间的区别可以在下图中显示——即输出特征被扰动而不是被丢弃。相比之下,华为的做法效果更好。Disout不仅在传统的视觉任务上表现出色,超越了GoogleDropout的性能,而且在NLP任务和语音处理任务上也很有效。接下来我们来看看Disout和Dropout系列方法在各个数据集上的对比。首先对比CIFAR-10和CIFAR-100数据的测试精度。在全连接层实验中,华为提出的featuremapperturbation方法可以训练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%,而BlockDisout方法达到了78.76%的top-1准确率,超越了现有的其他技术。华为研究人员表示,他们的方法可以提高泛化能力,同时保留原始特征中的有用信息。此外,他们还在文本数据集IMDB和语音数据集UrbanSound8k上进行了实验,结果如下(文字在上,语音在下):核心突破:扰动输出特征而不是丢弃他们。那么,具体怎么做呢Wheredidyouarrive?让我们来看看泛化理论。泛化研究预期风险和经验风险之间的关系。以图像分类任务为例,整体预期风险R(fL)和训练集上的经验风险分别为:定义为1。定义1:给定由分布Q形成的实例训练数据集D={(x,y)},网络的经验Rademacher复杂度定义为:其中Rademacher变量在{-1,+1}独立均匀随机变量。使用经验Rademacher复杂性和MaDiarmid不等式,可以通过定理1获得预期风险的上限。定理1:给定>0,对于任何>0,至少以概率1?,对于所有∈,满足经验Rademacher在场景中的复杂性是有限的。ERC很难直接计算,因此在训练阶段通常使用ERC的上界或近似值来获得泛化能力更好的模型。了解了泛化理论之后,我们再来看特征图扰动。研究人员没有固定扰动值,而是通过降低网络的ERC来学习特征图的扰动值。一般来说,输入数据为xi的层l的输出特征fL(xi)的扰动操作可以表示为:其中εli是特征图上的扰动。上式中的扰动形式是在ERC的指导下自学的。由于ERC是根据网络最后一层的输出计算的,因此很难直接使用它来指导扰动。因此,研究人员利用如下定理,通过网络中间层的输出来间接表达网络的ERC:定理2用Kl[k;:]表示权重矩阵Kl的第k行||·||p是向量的p范数。假设||Kl[k;:]||p≤Bl,网络输出的ERC可以被中间特征的ERC约束:o和f分别是激活函数前后的特征图。Order:Then:那么,最优的扰动可以通过求解下式得到:直观上,过于剧烈的扰动会破坏原有的特征,降低网络的表示能力;而太小的扰动则不能起到很好的正则化效果。算法如下:实习生做的这篇论文,由华为诺亚实验室出品。来自北京大学、华为诺亚和悉尼大学的研究人员共7人,核心团队来自华为诺亚实验室。第一位是北京大学的唐业辉。这项研究是在他在华为诺亚实验室实习期间完成的。二是王云鹤,华为诺亚方舟实验室技术专家,唐业辉实习期间的导师。毕业于北京大学,发表相关领域学术论文40余篇,包括NeurIPS、ICML、CVPR、ICCV、TPAMI、AAAI、IJCAI等。主要从事边缘计算领域的算法开发和工程实现,研究领域包括深度神经网络的模型裁剪、量化、蒸馏和自动搜索。其他作者包括华为诺亚实验室的徐一兴和徐春景,以及北京大学的徐超。如果对本研究感兴趣,请收藏传送门:开源链接:https://github.com/huawei-noah/Disout