点击上方“视学算法”,选择加"星标"或“置顶”

重磅干货,第一时间送达

本文转载自:机器之心  | 作者:Hanxiao Liu等

最近,谷歌大脑团队和 DeepMind 合作发布了一篇论文,利用 AutoML 技术实现了归一化激活层的进化,找出了 BatchNorm-ReLU 的替代方案 EvoNorms,在 ImageNet 上获得 77.8% 的准确率,超越 BN-ReLU(76.1%)。

  • 论文地址:https://arxiv.org/abs/2004.02967

  • 视频:https://youtu.be/RFn5eH5ZCVo

批归一化和激活函数是深度神经网络的重要组成部分,二者的位置常常重合。以往的神经网络设计中通常对二者分别进行设计,而最近谷歌大脑和 DeepMind 研究人员合作提出了一种新方案:将二者统一为一个计算图,从低级原语开始进行结构进化。研究者利用层搜索算法发现了一组全新的归一化-激活层 EvoNorms。这些层中的一部分独立于批统计量(batch statistics)。

实验证明,EvoNorms 不仅在包括 ResNets、MobileNets 和 EfficientNets 在内的多个图像分类模型上效果显著,它还能很好地迁移到 Mask R-CNN 模型(进行实例分割)和 BigGAN(用于图像合成)。在多种情况下,EvoNorms 的性能显著优于基于 BatchNorm 和 GroupNorm 的层。

搜索空间

研究者将每个归一化-激活层表示为一个计算图,即将输入张量转换为同样形状的输出张量(见图 1)。每个中间节点表示一元或二元运算(见表 1)。这些运算旨在保存输入张量的维度,以确保计算图中节点的形状彼此兼容。计算图共有 4 个初始节点:输入张量、常数零张量,以及沿着被初始化为 0 和 1 的通道维度的两个可训练向量 v_0 和 v_1。

图 1:左图:搜索到的归一化-激活层的计算图,该层独立于批统计量,研究者将其命名为 EvoNorm-S0。右图:使用 EvoNorm-S0 作为归一化-激活层的 ResNet-50,当 8 个 worker 上的批大小从 1024 到 32 不等的情况下,在 ImageNet 数据集上的性能结果。EvoNorm-S0 的性能还优于 MobileNetV2 和 Mask R-CNN 模型中基于批归一化(BN)和组归一化(GN)的层。

表 1:搜索空间的原语。

按照顺序可以生成随机图。从初始节点开始,研究者随机采样原语操作并根据操作的元数(arity)对其输入节点进行随机采样,从而生成新节点。

层搜索方法

该研究使用的搜索方法包含以下重要部分:

  • 将每个层与多个架构进行配对,并在轻量级代理任务中训练模型,从而评估每个层的性能。

  • 通过进化算法来优化多目标边界,使用高效的否决机制(rejection mechanism)进行增强,从而过滤掉不需要的层。

下图 3 展示了层搜索方法的整体工作流程:

图 3:层搜索算法的工作流程。将每个产生突变的层与 K 个架构配对,从头开始训练以得到 K 个多目标锦标赛选择算法的性能分数。

层评估

像 BatchNorm-ReLU 这类有用的层能够在多种网络架构中均具备良好的效果。然而,从图 4 中可以看到,那些在某一给定架构中表现不错的层,在迁移到其他架构后其性能未必就好。为了明显地提升其泛化性能,研究者将层搜索构建为一个多目标优化问题,其中每个候选层均在 K (K > 1) 个不同锚点架构上进行评估,以获得多个拟合值。

图 4:5000 个随机层与不同图像分类架构适配时的准确率。

代理任务与锚点架构

研究者将代理任务定义为在 CIFAR-10 数据集上的图像分类任务,并考虑在 ImageNet 上三个具有代表性的网络架构,将其针对文中的设置进行相应调整。这些架构包括:通道倍率(channel multiplier)为 0.25×的预激活(Pre-activation)ResNet50;通道倍率为 0.5×的 MobileNetV2;通道倍率为 0.5×的 EfficientNet-B0。

为处理 CIFAR-10 中图像分辨率低于 ImageNet 的问题,将以上网络架构的前两个用于缩小空间的卷积步长修改为 1。研究者将这些调整后的版本分别称为 ResNet50-CIFAR,MobileNetV2-CIFAR 和 EfficientNet-CIFAR。

图 5:锚点架构中的模块定义。从左到右依次为:ResNet-CIFAR、MobileNetV2-CIFAR 和 EfficientNet-CIFAR。

进化

该研究使用的进化算法是锦标赛选择算法的变体。在每一步中,基于全部层的随机子集构建锦标赛,获胜者可以生成突变后的进化版本,在经过评估后加入到候选层中。因此,随着这一过程不断重复,候选层的整体质量有所提升。研究者还通过保持获选层最近部分的滑动窗口,对进化执行正则化。

选择标准。锦标赛获胜者的选择标准并非唯一,因为每个层都具备多个分数。下面展示了两个可实施的选项:

  • 平均值:具备最高平均准确率的层获胜(如图 6 中的 B);

  • 帕累托:位于帕累托边界上的随机层获胜(如图 6 中的 A、B、C 均获胜)。

突变。研究者通过以下三个步骤完成获胜层的计算图突变:

  1. 随机均匀选择中间节点;

  2. 随机均匀地使用表 1 中的新操作替换当前操作;

  3. 随机均匀地选择该节点的新的继任者。

图 6: 对于多目标进化的二选一锦标赛评价准则。

否决机制

质量。对于在任意三个 anchor 架构中进行了 100 个训练步后验证准确率低于 20% 的层,研究者选择丢弃。由于候选层中绝大部分无法获得有意义的学习动态(见图 2),因此这一简单机制可以确保计算资源集中在对有潜力的少量候选层进行完整的训练。

稳定性。除了质量以外,研究者还选择丢弃具备数值不稳定性的层。其基本原理是:向着最大化网络梯度范数的方向对抗式地调整卷积权重 θ,从而对候选层进行压力测试。

实验

在表 2 中,研究者将所发现的层与应用广泛的归一化激活层在 ImageNet 数据集上进行比较,包括使用谷歌之前提出的 Swish 激活函数的强基线。

表 2:不同的归一化-激活层在 ImageNet 上的测试准确率。需要移动平均数的项见图中蓝字。对于相同的架构,用相同的代码库和相同的训练设置会得到一样的结果。

表 3 展示了从另一个搜索实验中得到的 EvoNorms 的性能数据,该实验不使用包含批聚合操作(batch aggregation op)的层。

表 3:不具备批统计量的基于样本的层在 ImageNet 上的测试准确率。学习率和批大小呈线性关系。对相同的架构,用相同的代码库和相同的训练设置会得到一样的结果。

图 7 展示了具备大批量的 Evonorms 的学习动态。在相同的训练环境下,尽管训练损失较大,但在 ResNet-50 上 EvoNorm-B0 的性能仍然优于 BN-ReLU。

图 7:在批大小较大的情况下,ResNet-50 和 MobileNetV2 在 ImageNet 数据集上的训练/评估曲线。图中显示了每个层对应的测试准确率。

为了调查该研究发现的层能否在搜索时的分类任务以外的任务上实现泛化,研究者将其与 Mask R-CNN (He et al., 2017) 和 ResNet-FPN (Lin et al., 2017) 进行配对,并在 COCO 数据集上执行目标检测和实例分割任务。

表 4:在 COCO val2017 数据集上的 Mask R-CNN 目标检测和实例分割结果。

研究者进一步测试了 EvoNorms 在训练 GAN 时的可用性。运用 BigGAN 的训练步骤进行训练后,研究者在表 5 中给出了最佳表现的结果。使用 EvoNorm-B0 的 BigGAN-deep 生成的部分样本图像如图 8 所示。

表 5:BigGAN-deep 生成器中不同归一化激活层的图像合成性能,其中使用批统计量与不使用批统计量的层是彼此分离的。如图所示,中位数和最佳性能是在 3 个随机种子上取得的。IS 值越高越好,FID 值越低越好。

图 8:BigGAN-deep + EvoNorm-B0 生成的部分图像示例。

与只依赖一种方差的传统归一化范式不同,EvoNorm-B0 尝试在其 denominator 中混合两种方差。前者在同一 mini-batch 内捕捉不同图像的全局方差,后者则捕捉每个图像的局部方差。

图 9:EvoNorm-B0 的计算图。

研究者以 MobileNetV2 为例详细研究了上述问题。结果显示,EvoNorm-B0 在准确率-参数权衡和准确率-FLOPs 权衡方面都显著优于 BN-ReLU(见图 11)。这是因为 EvoNorms 的开销可以很大程度上由其性能收益来补偿。

图 11:MobileNetV2 配以不同的归一化激活层时的 ImageNet 准确率 vs 参数,以及准确率 vs FLOPs。

下图 10 在代理任务中对比了进化和随机搜索,从图中我们可以看到它们在优化搜索目标时的采样效率存在很大差距。

图 10:在代理任务中,进化 vs 随机搜索 vs 固定基线(BN-ReLU)的搜索进程。

作者信息

这篇论文的作者共有四位,分别来自谷歌大脑和 DeepMind。其中,一作是谷歌大脑研究科学家 Hanxiao Liu(刘寒骁)。他本科毕业于清华大学,2018 年在卡内基梅隆大学取得计算机科学博士学位,曾先后在微软、Citadel、DeepMind 等公司实习,2018 年加入谷歌担任研究科学家。

论文一作刘寒骁。

麻烦给我一个在看!

超越BN-ReLU!谷歌大脑等提出EvoNorms:归一化激活层的进化相关推荐

  1. 归一化激活层的进化:谷歌Quoc Le等人利用AutoML 技术发现新型ML模块

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 最近,谷歌大脑团队和 DeepMind 合作发布了一篇论文,利用 AutoML 技 ...

  2. 超越Mask-RCNN:谷歌大脑的AI,自己写了个目标检测AI

    方栗子 发自 凹非寺 量子位 出品 | 公众号 QbitAI 这是一只AI生出的小AI. 谷歌大脑的Quoc Le团队,用神经网络架构搜索 (NAS) ,发现了一个目标检测模型.长这样: △ 看不清请 ...

  3. 超越CLIP!谷歌大脑多模态学习新作CLIPPO:仅从像素理解图像和语言

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入->CV微信技术交流群 转载自:机器之心 | 编辑:袁铭怿 CLIPPO 是一种统一的模型,用 ...

  4. 「谷歌大脑」提出通过对长序列进行摘要提取,AI可自动生成「维基百科」

    原文来源:arXiv 作者:Peter J. Liu.Mohammad Saleh.Etienne Pot.Ben Goodrich.Ryan Sepassi.Łukasz Kaiser.Noam S ...

  5. 图像风格迁移_图像风格迁移—谷歌大脑团队任意图像风格化迁移论文详解

    点击蓝字关注我们 AI研习图书馆,发现不一样的世界 风格迁移 图像风格化迁移是一个很有意思的研究领域,它可以将一张图的风格迁移到另外一张图像上,由此还诞生了Prisma和Ostagram这样的商业化产 ...

  6. 谷歌大脑团队任意图像风格化迁移论文详解,模型还可以跑在您本地浏览器里...

    图像风格化迁移是一个很有意思的研究领域,它可以将一张图的风格迁移到另外一张图像上,由此还诞生了Prisma和Ostagram这样的商业化产品.本文,我们将介绍谷歌大脑团队的一篇很有影响力的论文: Ex ...

  7. 是你的数据还不够强!谷歌大脑「数据增强」开源,大神QuocLe出品

    你的数据还不够强. 玩深度学习的人都知道,AI算法大部分是数据驱动.数据的质量一定程度上决定了模型的好坏. 这就有了深度学习天生的一个短板:数据不够多.不够好. 而数据增强就是解决这一问题的有效办法. ...

  8. 谷歌大脑开源「数据增强」新招数:ImageNet准确率达85%,大神Quoc Le出品

    十三 发自 凹非寺  量子位 报道 | 公众号 QbitAI 你的数据还不够强. 玩深度学习的人都知道,AI算法大部分是数据驱动.数据的质量一定程度上决定了模型的好坏. 这就有了深度学习天生的一个短板 ...

  9. 均值归一化_超越BN和GN!谷歌提出新的归一化层:FRN

    码字不易,欢迎给个赞! 欢迎交流与转载,文章会同步发布在公众号:机器学习算法工程师(Jeemy110) 目前主流的深度学习模型都会采用BN层(Batch Normalization)来加速模型训练以及 ...

最新文章

  1. TIOBE 2月编程语言排行榜:Python逼近C,Groovy重回TOP 20
  2. ZooKeeper伪分布式集群安装
  3. TypeError: new(): data must be a sequence (got float)
  4. 阿里云服务器 宝塔面板 配置Python项目
  5. history 历史命令记录功能如何防坏人(高级)
  6. 完成端口与高性能服务器程序开发
  7. c++优先队列小节(常常弄混)
  8. 轻松学习分布式|系列2|负载均衡算法。
  9. hive split 注意事项
  10. 时间+地区 选择器
  11. Unity音频可视化插件
  12. 算法 | golang 实现 key有序map
  13. 计算机网络(2.10)物理层- 宽带接入技术-ADSL 技术
  14. Linux教程(第5版)习题部分习题及答案
  15. python随机生成英文字符串_如何用Python语言生成随机字符串 | 学步园
  16. 鸿蒙系统小白,站在小白用户的立场上看待华为的鸿蒙系统
  17. faceu激萌相机里面vue_激萌相机怎么玩?激萌相机faceu使用教程[多图]
  18. maven的setting文件-02
  19. 基于自主数字身份的个人数据区块链托管破解征信“断直连”困局
  20. 【SAP业务模式】之STO(一):业务背景和前台操作

热门文章

  1. Matlab与线性代数 -- 矩阵的秩
  2. Modeling System Behavior with Use Case(1)
  3. 【POJ】2377 Bad Cowtractors(最大生成树)
  4. 使用深度学习阅读和分类扫描文档
  5. AI 复活「她」! GPT-3 帮美国小哥复刻逝去未婚妻,但又夺走她……
  6. 全球数据进入ZB时代,希捷如何让数据创造深价值?
  7. 发布AI操作系统、应用市场,开源机器学习数据库和AI操作系统内核,第四范式这波操作有点秀!
  8. 终于有人把 Python 讲清楚了!
  9. 当最懂 5G 的中国移动遇见云,移动云专题赛正式启动!
  10. 32岁程序员面试被拒:比又穷又忙更可怕的,是2020年你还不懂...