来源 | 微软研究院AI头条(ID:MSRAsia)

作者简介:孙可,中国科学技术大学信息学院在读博士生,目前在微软亚洲研究院视觉计算组实习,导师是王井东和肖斌老师。他的研究兴趣包括人体姿态估计、语义分割、图像分类等,曾在BMVC、ICCV、CVPR等国际顶级会议上发表过论文。

【编者按】对于视觉识别中的区域层次和像素层次问题,分类网络(如ResNet、VGGNet等)学到的表征分辨率比较低,在此基础上恢复的高分辨率表征空间区分度仍然不够强,使其在对空间精度敏感的任务上很难取得准确的预测结果。为此,微软亚洲研究院视觉计算组提出高分辨率深度神经网络(HRNet),对网络结构做了基础性的改变,由传统的串行连接高低分辨率卷积,改成并行连接高低分辨率卷积,通过全程保持高分辨率和对高低分辨率表征的多次信息交换来学到丰富的高分辨率表征,在多个数据集的人体姿态估计任务中取得了最佳的性能。

前言

视觉识别主要包括三大类问题:图像层次(图像分类),区域层次(目标检测)和像素层次(比如图像分割、人体姿态估计和人脸对齐等)。最近几年,用于图像分类的卷积神经网络成为解决视觉识别问题的标准结构,比如图1所示的LeNet-5。这类网络的特点是学到的表征在空间分辨率上逐渐变小。我们认为分类网络并不适合区域层次和像素层次的问题,因为学到的表征本质上具有低分辨率的特点,在分辨率上的巨大损失使得其在对空间精度敏感的任务上很难取得准确的预测结果。

图1. 典型的卷积神经网络:LeNet-5。其它典型的卷积神经网络,如AlexNet、VGGNet、GoogleNet、ResNet、DenseNet等,表征的空间分辨率均从大逐渐变小。

为了弥补空间精度的损失,研究者们在分类卷积神经网络结构的基础上,通过引入上采样操作和/或组合空洞卷积减少降采样次数来提升表征的分辨率,典型的结构包括Hourglass、U-Net等(如图2)。

在这类网络结构中,最终的高分辨表征主要来源于两个部分:第一是原本的高分辨率表征,但是由于只经过了少量的卷积操作,其本身只能提供低层次的语义表达;第二是低分辨率表征通过上采样得到的高分辨率表征,其本身虽然拥有很好的语义表达能力,但是上采样本身并不能完整地弥补空间分辨率的损失。所以,最终输出的高分辨率表征所具有的空间敏感度并不高,很大程度上受限于语义表达力强的表征所对应的分辨率。

图2. 从低分辨率表征恢复高分辨率表征

我们认为不应该局限于从分类卷积神经网络生成的低分辨率表征来恢复高分辨率表征这一路线,而应该为高分辨率表征学习建立新的网络结构。基于此,我们提出了高分辨率深度神经网络(High-Resolution Network,HRNet),在网络整个过程中始终保持高分辨率表征,同时多次在高低分辨率表征之间进行信息交换,从而学到足够丰富的高分辨率表征。

实验证明HRNet在人体姿态估计,以及图像分割、人脸对齐和目标检测等问题上取得了不错的结果。我们相信HRNet将取代分类深度神经网络成为计算机视觉识别等应用的新的标准结构。关于人体姿态估计的论文已发表在CVPR 2019 [1],相关代码已在GitHub上开源[2, 3]。

GitHub链接:

https://github.com/HRNet

高分辨率网络

我们在HRNet的整个网络中始终保持高分辨率表征,逐步引入低分辨率卷积,并且将不同分辨率的卷积并行连接。同时,我们通过不断在多分辨率表征之间进行信息交换,来提升高分辨率和低分辨率表征的表达能力,让多分辨率表征之间更好地相互促进,结构如图3所示。HRNet与先前的分类卷积神经网络有着基础性的区别:先前的分类将分辨率从高到低的卷积串行连接,HRNet则是并行连接。

图3. 高分辨率网络 (High-Resolution Network,HRNet)

关于多分辨率表征信息交换,这里以三个分辨率输入和三个分辨率输出为例,如图4所示。每一个分辨率的输出表征都会融合三个分辨率输入的表征,以保证信息的充分利用和交互。将高分辨率特征降到低分辨率特征时,我们采用stride为2的3x3卷积;低分辨率特征到高分辨率特征时,先利用1x1卷积进行通道数的匹配,再利用最近邻插值的方式来提高分辨率。相同分辨率的表征则采用恒等映射的形式。

图4. 多分辨率表征信息交换

实验

HRNet保持高分辨率表征,利用重复的多分辨率表征信息交换增强其表达能力,使模型所学的表征在空间精度上有显著的提升。实验中,我们首先在MS COCO数据集中的关键点检测任务上进行了消融实验,验证了表征分辨率的重要性和重复的多分辨率表征信息交换的有效性;然后在MS COCO、PoseTrack等标准数据集中与最先进的方法进行公平对比,都取得了更好的性能。

1. 表征分辨率对性能的影响

HRNet可输出4种分辨率的表征(1x、2x、4x、以及8x),我们针对不同的网络输出分辨率在两组模型上做了对比实验,如图5所示。

图5.  网络输出分辨率对结果的影响,1x、2x和4x分辨率表征在人体姿态估计的性能。

从图5中,我们可以清楚地看到,网络输出表征的分辨率降低会使得模型的性能有巨大的损失。分辨率在2x时,性能降低了接近6% AP,4x时降低了20% AP。这体现了表征分辨率对于空间精度的重要性。

2. 多分辨率表征信息交换对性能的影响

图6.  蓝色框内为阶段内的多分辨率表征信息交换(Int. exchange within),绿色框为阶段间的多分辨率表征信息交换(Int. exchange across),红色框为最终的多分辨率表征信息交换(Final exchange)。

表1. 多尺度特征融合对性能的影响,实验中每个网络是从随机初始化开始训练的。

我们考虑了三种信息交换(如图6),结果如表1。可以看到,多分辨率表征信息交换可以将不同分辨率的表征信息进行充分的交换利用,对表征增强的作用十分明显,可以到达2.6% AP的提升。

3. 在标准数据集上的性能

MS COCO数据集是关键点检测的最权威的数据集之一,我们在该数据上对我们的方法进行验证,结果如表2所示。

表2.  COCO test-dev上与最先进方法的性能比较

我们可以看到,在相同的输入图像大小下,我们的小模型HRNet-W32在参数量和计算量都小于SimpleBaseline(ResNet-152)一半的情况下,取得了1.2% AP的提高,而大模型HRNet-W48取得了1.8% AP的提升,在引入额外数据的情况下,大模型展现了更强的表达能力,有更显著的提升。

表3. 在Pose-Track数据集上与最先进方法的性能比较

在表3中,我们在Pose-Track数据集的两个任务上进行了验证:(1)多帧人体姿态估计,可以利用其他帧的信息估计某帧的姿态;(2)多帧人体姿态跟踪,需要把不同帧间的同一个人的姿态关联起来。前者性能用mAP来评价,后者性能用MOTA来评价。可以看到在两个任务上,我们都取得了最好的性能。

结语

我们改变了现有的基于分类网络的人体姿态估计的网络结构,提出了高分辨率深度神经网络(HRNet)。该网络能够成功学到足够丰富的高分辨率表征的原因在于,整个过程保持高分辨率,以及多次对高低分辨率表征进行信息补足。HRNet在多个数据集的人体姿态估计任务中取得了当前最好的性能,也在图像分割、人脸对齐和目标检测等问题上取得了不错的结果。我们相信HRNet将取代以分类网络为基础的网络架构,成为计算机视觉识别等应用的新标准结构。

[1] Ke Sun, Bin Xiao, Dong Liu, Jingdong Wang: Deep High-Resolution Representation Learning for Human Pose Estimation. CVPR 2019

[2] https://github.com/leoxiaobin/deep-high-resolution-net.pytorch

[3] https://github.com/HRNet

(*本文为 AI科技大本营转载文章,转载请联系原作者)

CTA核心技术及应用峰会

5月25-27日,由中国IT社区CSDN与数字经济人才发展中心联合主办的第一届CTA核心技术及应用峰会将在杭州国际博览中心隆重召开,峰会将围绕人工智能领域,邀请技术领航者,与开发者共同探讨机器学习和知识图谱的前沿研究及应用。议程设置请请识别海报二维码查看。

目前CTA峰会倒计时1天!还没有拿到入场券的小伙伴可以识别海报二维码或者点击阅读原文,即刻抢购。你也添加小助手微信15101014297,备注“CTA”,了解票务以及会务详情。

推荐阅读

  • 危机加剧:ARM釜底抽“芯”,华为腹背受敌

  • 面对996,程序员如何利用“碎片时间”涨薪?

  • 权威解读 GitHub、Apache 疑云:主流开源软件究竟是否会被闭源?

  • Kaggle季军新手笔记:利用fast.ai对油棕人工林图像进行快速分类(附Python代码)

  • 程序员连拿3份Offer,每份高达45K?他说做对了这些!

  • ARM到底是一家什么样的公司?

  • 为什么你写了一万小时的代码,却没能成为架构师?| 程序员有话说

  • 别怀疑,孩子在家里也能学编程!

  • 百花村区块链山的选民们, 超有趣!

点击阅读原文,了解CTA核心技术及应用峰会」

告别低分辨率网络,微软提出高分辨率深度神经网络HRNet | CVPR 2019相关推荐

  1. CVPR 2019 | 告别低分辨率网络,微软提出高分辨率深度神经网络HRNet

    我爱计算机视觉曾经两次报道HRNet: 1. CVPR2019 | 微软.中科大开源基于深度高分辨表示学习的姿态估计算法 (论文出来第二天就向大家推送解读了) 2. 分割.检测与定位,高分辨率网络显神 ...

  2. 普林斯顿大学英伟达Facebook提出基于深度神经网络的全动态推理,助力轻量级网络!...

    关注公众号,发现CV技术之美 ▊ 写在前面 深层神经网络是一种功能强大.应用广泛的模型,能够多级抽象提取任务相关信息.然而,这种成功通常是以计算成本.高内存带宽和长推理延迟为代价的,这使得它们无法部署 ...

  3. 深度神经网络算法有哪些,深度神经网络主要模型

    有哪些深度神经网络模型? 目前经常使用的深度神经网络模型主要有卷积神经网络(CNN) .递归神经网络(RNN).深信度网络(DBN) .深度自动编码器(AutoEncoder) 和生成对抗网络(GAN ...

  4. 报名 | “智见AI”SpringCamp:物体检测与深度神经网络模型设计

    AI未来的路在哪里?有的先行者早已智见!扫描下文中的二维码或点击阅读原文,即可参与本次"智见AI"SpringCamp--计算机视觉之物体检测与深度神经网络模型设计专场,与大咖一同 ...

  5. 由深度神经网络想到的人生意义和哲理

    ◆ ◆ ◆ 导读 几周前,我经历工作项目的调动,恰好给了我空余时间重拾那些很久没有碰过的感兴趣的话题.机器学习是我兴趣列表中的第一项.这是一个已经广泛渗入科技领域的话题,但我对其一无所知.仅几周的泛读 ...

  6. 神经网络中隐藏层的作用,深度神经网络隐藏层数

    神经网络隐藏层是什么 一个神经网络包括有多个神经元"层",输入层.隐藏层及输出层.输入层负责接收输入及分发到隐藏层(因为用户看不见这些层,所以见做隐藏层). 这些隐藏层负责所需的计 ...

  7. 周志华:深度学习不只是深度神经网络

    周志华教授是美国计算机学会 (ACM).美国科学促进会 (AAAS).国际人工智能学会 (AAAI) .国际电气电子工程师学会 (IEEE) .国际模式识别学会 (IAPR).国际工程技术 (IET/ ...

  8. 告别深度学习炼丹术!谷歌大脑提出“权重无关”神经网络

    来源:新智元 本文约5600字,建议阅读10+分钟. 无需权重训练!谷歌再向深度学习炼丹术发起"攻击". [ 导读 ]神经网络训练中"权重"有多重要不言而喻.但 ...

  9. Google和微软分别提出分布式深度学习训练新框架:GPipe PipeDream

    [进群了解最新免费公开课.技术沙龙信息] 作者 | Jesus Rodriguez 译者 | 陆离 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) [导读]微软和谷歌一直在致 ...

最新文章

  1. Linux下的软件安装方法介绍
  2. 使用Swagger2Markup实现API文档的静态部署(一):AsciiDoc
  3. wow服务器已满 队列位置5,《魔兽世界》前夕版本中“碧空之歌”排队人数近万,有必要排吗?...
  4. WiFi攻击中的“核武器”长啥样?来,今天咱们开开眼...
  5. numpy——mgrid
  6. kswapd0 挖矿_bioset linux_linux bioset 进程 腾讯云
  7. ARMS在APM工具选型中的实践
  8. 利用 AFN 上传相册或拍照图片
  9. 链表的常见操作(转)
  10. MVC HtmlHelperTModel 类
  11. 如何使用SQL查询视图,Postico使用技巧分享~
  12. 计算机设备财产登记册,幼儿园财产登记制度
  13. 《统计会犯错——如何避免数据分析中的统计陷阱》目录—导读
  14. 原生Js从0开始实现一个链家网地图画圈找房功能
  15. 自动驾驶哪国强?各国和地区自动驾驶成熟度指数 | 自动驾驶系列
  16. Freemaker判断是否为空
  17. php linter,是否有PHP的linter使所有异常像Java一样显式?
  18. python制作pdf教程_学以致用:Python爬取廖大Python教程制作pdf!
  19. Opencv每日函数 图像分割模块 watershed分水岭算法
  20. 网络原理(2)——网络开发

热门文章

  1. URAL 2027 URCAPL, Episode 1 (模拟)
  2. sql server 的一些记录
  3. HDOJ_ACM_数塔
  4. 从一个数组中寻找出现奇数次的数字
  5. Linux驱动之LCD驱动编写
  6. 云主机启动提示Booting from Hard Disk GRUB
  7. 读Lodash源码——chunk.js
  8. 定制简单的Linux系统
  9. 解压和生成 system.imgdata.img ( ext4格式)
  10. 表情的机器自动识别(有图有真相)