热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ResNeXt论文笔记

ResNeXt:AggregatedResidualTransformationsforDeepNeuralNetworks摘要提出了ResNeXt架构ÿ

ResNeXt:Aggregated Residual Transformations for Deep Neural Networks

摘要

提出了 ResNeXt 架构,该架构依然采用堆叠构建块的方式构建。构建块内部采用分支结构。分支的数目称为 “基数”,作者认为,增加分支的数量比增加深度、宽度更高效。ResNeXt 在 ILSVRC 2016 分类比赛中获第二名。作者在 ImageNet-5K分类、COCO探测数据集上进行了实验,性能超过了 ResNet。代码和模型见[1]。

1. 简介

VGG、ResNet 采用了堆叠相同构建块来构建网络。Inception 对网络的组件进行精心设计,从而在更低的计算量取得较高的准确率。Inception 有一个核心逻辑:split-transform-merge。虽然 Inception 的解空间是 大卷积层的解空间的子空间,但我们期待使用 split-transform-merge 策略去接近大卷积、dense层的表示能力。

经过对组件精心的设计,Inception 的性能很高,但怎么去针对新数据集调整 Inception 的各个模块呢?

所以作者提出了 ResNeXt,它采用 VGG / ResNet 类似的堆叠方式,同时以一种简单,可扩展的方式实现了 Inception 中的 split-transform-merge 策咯。(结构如图 1 右)
图1
上面的结构有两种等价形式(图 3)。图 3b 和 Inception-ResNet 模块类似,但这里的各个 path 一样。图 3c 采用了 AlexNet 中的分组卷积。

在实验中,ResNeXt 的性能超过 ResNet。增加基数比增加深度、宽度更加有效。ResNeXt(指的是下一个维度)性能超过了 ResNet-101/152/200、Inception v3、Inception-ResNet-v2。100层的 ResNeXt 的性能超过了200层的 ResNet,并且计算量只有一半。ResNeXt 的结构比 Inception 简单很多。

2. 相关工作


  • 多分支卷积网络: Inception 就是精心设计的多分支结构。ResNet 可以被看作一个两分支结构,一个分支是 identity mapping。深度神经决策森林是树状多分支网络,学习多个分离的函数。
  • 分组卷积: 分组卷积最早可以追溯到 AlexNet。AlexNet 中分组卷积主要是为了用两块 GPU 来分布式训练。分组卷积的一个特例就是 Channel-wise 卷积。
  • 压缩卷积网络: 卷积分解(在空间 and/or 通道层面)是一种常用的卷积网络冗余、加速、压缩网络的常用技术。相比于压缩,作者希望有更强的表示能力。
  • 多模型集成: 对多个单独训练的网络进行平均是一种提高准确率的办法(在识别类比赛中广泛使用)。因为ResNet采用 additive behaviors,有人将 ResNet 理解为 一系列浅层网络 的集成。作者采用 加法 来聚合一系列的变换。但是作者认为将 ResNeXt 看作集成是不准确的,因为各个分支是同时训练的。

3. 方法

下面是 ResNeXt-50 的结构:
这里写图片描述
主要遵从了两个原则:

  • feature map 大小不变时,标准堆叠
  • 当 feature map 的大小减半,则通道数增加一倍

图3
上面展示了 ResNeXt 的两个等价形式
图4

3.4 模型容量

表2
表 1 中的两个模型的参数量 和 计算量 接近,基于此,作者认为两个模型的模型容量相近。(注:模型容量真应该这么算吗???)

4. 实施细节


  • 表 1 中 conv3、conv4、conv5 的下采样过程采用 stride 为 2 的 3x3 卷积。
  • 使用 8 块 GPU 来训练模型
  • 优化器:SGD
  • momentum:0.9
  • batch size:256 (每块 GPU 上 32)
  • weight decay:0.0001
  • 初始学习速率:0.1
  • 学习速率衰减策略同:[11]
  • 测试时从 短边为 256 的图像中裁出一个 224x224 的图像进行测试

代码实现基于 图 3c ,并且在卷积后加BN+ReLU,在 shortcuut 加和只有使用ReLU。图3的三种形式是等价的,之所以选择 c 来实现,因为它更简单、代码更高效。

5. 实验


5.1 ImageNet-1K 数据集的实验

基数 vs. 宽度
在保持计算量不变的情况下,增大基数,能够减少误差。并且 ResNeXt 的训练误差更低,说明 表示能力更强。

这里写图片描述
通过上图可以看出,增加基数可以减小误差;并且训练误差更低,所以表示能力没有下降。
这里写图片描述

基数 vs. 更深、更宽
这里写图片描述
通过上表可以看出,增加基数比深度、宽度更高效

残差的影响
这里写图片描述
残差很有必要

和当前最好的算法的对比
这里写图片描述

5.2 ImageNet-5K 数据集的实验

效果基本同 ImageNet-1K
这里写图片描述
这里写图片描述

5.3 CIFAR 数据集的实验

增加模型宽度 和 增加模型基数的对比
这里写图片描述
通过上图可以看出:增加基数是一个更高效的办法
这里写图片描述

[11] S. Gross and M. Wilber. Training and investigating Residual Nets. https://github.com/facebook/fb.resnet.torch, 2016.


推荐阅读
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • JavaScript设计模式之策略模式(Strategy Pattern)的优势及应用
    本文介绍了JavaScript设计模式之策略模式(Strategy Pattern)的定义和优势,策略模式可以避免代码中的多重判断条件,体现了开放-封闭原则。同时,策略模式的应用可以使系统的算法重复利用,避免复制粘贴。然而,策略模式也会增加策略类的数量,违反最少知识原则,需要了解各种策略类才能更好地应用于业务中。本文还以员工年终奖的计算为例,说明了策略模式的应用场景和实现方式。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • Google Play推出全新的应用内评价API,帮助开发者获取更多优质用户反馈。用户每天在Google Play上发表数百万条评论,这有助于开发者了解用户喜好和改进需求。开发者可以选择在适当的时间请求用户撰写评论,以获得全面而有用的反馈。全新应用内评价功能让用户无需返回应用详情页面即可发表评论,提升用户体验。 ... [详细]
  • 从高级程序员到CTO的4次能力跃迁!如何选择适合的技术负责人?
    本文讲解了从高级程序员到CTO的4次能力跃迁,以及如何选择适合的技术负责人。在初创期、发展期、成熟期的每个阶段,创业公司需要不同级别的技术负责人来实现复杂功能、解决技术难题、提高交付效率和质量。高级程序员的职责是实现复杂功能、编写核心代码、处理线上bug、解决技术难题。而技术经理则需要提高交付效率和质量。 ... [详细]
  • Learning to Paint with Model-based Deep Reinforcement Learning
    本文介绍了一种基于模型的深度强化学习方法,通过结合神经渲染器,教机器像人类画家一样进行绘画。该方法能够生成笔画的坐标点、半径、透明度、颜色值等,以生成类似于给定目标图像的绘画。文章还讨论了该方法面临的挑战,包括绘制纹理丰富的图像等。通过对比实验的结果,作者证明了基于模型的深度强化学习方法相对于基于模型的DDPG和模型无关的DDPG方法的优势。该研究对于深度强化学习在绘画领域的应用具有重要意义。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • HashMap的扩容知识详解
    本文详细介绍了HashMap的扩容知识,包括扩容的概述、扩容条件以及1.7版本中的扩容方法。通过学习本文,读者可以全面了解HashMap的扩容机制,提升对HashMap的理解和应用能力。 ... [详细]
  • {moduleinfo:{card_count:[{count_phone:1,count:1}],search_count:[{count_phone:4 ... [详细]
author-avatar
谁的板砖在飞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有