新型神经网络结构?详解胶囊网络到底是什么东东

2018 年 8 月 28 日 极市平台

极市平台(ExtremeMart)是深圳极视角旗下的专业视觉算法开发与分发平台,为开发者提供行业场景集,每月上百真实项目需求,算法分发,技术共享等,旨在联合开发者建立起良好的计算机视觉生态。已与上百名开发者建立了合作并转化了上百种视觉算法。

PS.8月29日(本周三)晚20:00~21:30,图普科技深度学习算法工程师小美,及格灵深瞳算法工程师张德兵,将为大家分享基于分布式人脸训练谜题思路及背后的工业级应用,公众号回复“32”即可获取直播详情。

来源:我是程序员

https://zhuanlan.zhihu.com/p/42864711


摘要:胶囊网络是如何克服卷积神经网络的一些缺点,包括需要更少的训练数据,保存图像细节,处理模糊性的呢?看完本文你就知道了!


胶囊网络(CapsNets)是一种可能会对深度学习产生深远影响的热门新型神经网络结构,特别是在计算机视觉领域。那么问题来了:计算机视觉相关问题不是已经解决了吗?我们不是都已经见过卷积神经网络(CNNs)在各种计算机视觉任务(如分类、定位、目标检测、语义分割或实例分割)中达到超人水平的例子吗?(如图1)


图1:为一些主要的计算机视觉任务。如今,这些任务都需要一个非常不同的卷积神经网络(CNN)架构,例如用于分类的残差网络(ResNet)、用于目标检测的目标检测系统(YOLO)、用于实例分割的Mask R-CNN等等。


我们已经了解了卷积神经网络,但是:卷积神经网络要在大量的图像上进行训练(或者它们重复使用了神经网络的一部分),而胶囊网络可以很好地推广使用更少的训练数据。


卷积神经网络不能很好地处理模糊性,胶囊网络却可以,甚至可以在拥挤的场景中处理的很好。


卷积神经网络在池化层中丢失了大量信息,降低了空间分辨率(参见图2),因此当输入发生微小的变化,输出基本不变,这是一个在整个网络中必须保留详细信息的问题,例如在语义分割中。如今,这个问题通过围绕CNNs构建复杂的体系结构来解决,来恢复一些丢失的信息。通过胶囊网络,详细的姿态信息(如精确的目标位置、旋转、厚度、倾斜、大小等)将在整个网络中被保存,而不是丢失了之后再恢复,输入的小变化导致输出的小变化——信息被保存,这就是所谓的“等变化(equivariance)”。因此,胶囊网络可以在不同的视觉任务中使用相同简单一致的架构。


最后,卷积神经网络需要额外的组件来自动识别部件属于哪个目标(例如,这条腿属于这只羊),而胶囊网络为你免费提供部件层次。

图2:Liang-Chieh Chen等人提出的关于图像分割的DeepLab2管道,CNN(右上角)的输出非常粗糙,需要添加额外的步骤来恢复一些丢失的细节。


2011年,Geoffrey Hinton等人在一篇名为《变换自动编码器》的论文中首次引入胶囊网络。在几个月前,2017年11月,Sara Sabour、Nicholas Frosst和Geoffrey Hinton发表了一篇名为《胶囊间的动态路由》的论文,该论文介绍了一个在MNIST(著名的手写数字图像数据集)上达到最先进性能的胶囊网络架构,并且在MultiMNIST(一种不同数字重叠对的变体)上得到了比卷积神经网络更好的结果,如参见图3。


图3:MultiMNIST图像集(白色)和由胶囊网络的重建(红色+绿色)。“R”为重建;“L”为标签。例如,第一个示例(左上角)的预测是正确的,重构也是正确的,但在第五个例子中,预测是错误的:是(5,7)而不是(5,0),因此,5是正确的重构,0不是。


虽然胶囊网络有这些优点,但离完美还有很大的距离。首先,就目前而言,它们在大型图像(如CIFAR10或ImageNet)上的性能不如卷积神经网络。此外,它们的计算量非常大,而且当两个检测目标离得很近的时候,胶囊网络无法检测到同一类型的两个物体(这被称为“拥挤问题”,而且已经证明人类也存在这种问题)。但是关键的想法是非常好的,胶囊网络只需要做一些调整就能充分发挥它们的潜力。毕竟,现在的卷积神经网络是在1998年被发明出来的,但它们经过几次调整之后才在2012年的ImageNet上,超越了目前的技术水平。


那么,胶囊网络到底是什么?


简而言之,胶囊网络是由胶囊组成的,而不是神经元。胶囊是一组神经元,它会学习检测给定区域(例如一个矩形)图像的特定目标,它输出一个向量(例如一个八维向量),向量的长度代表目标存在的概率估计[1],而且它对姿态参数(例如精确的位置,旋转,等等)定向编码(例如8D空间)。如果对象有轻微的变化(例如移位、旋转、改变大小等),那么胶囊将输出相同长度但方向略有不同的向量,因此,胶囊是等变化的。


就像常规的神经网络,胶囊网络在多个层中构建(见图4)。胶囊在最低层被称为基本胶囊:每个胶囊把接收的一个小区域的图像作为输入(称为感受野),它试图检测一个特定部分的姿势和存在,例如一个矩形。更高层的胶囊被称为路由胶囊,能检测到更大更复杂的物体,如船只。


图4:一个两层的胶囊网络。在这个例子中,基本胶囊层有两个5×5胶囊的映射,而第二胶囊层有两个3×3胶囊的映射。每个胶囊输出一个向量。每个箭头表示不同胶囊的输出。蓝色箭头表示胶囊检测三角形的输出,黑色箭头表示检测矩形的输出,以此类推。


基本胶囊层使用一些常规的卷积层实现。例如,在本文中,它们使用两个输出256个包含标量的6x6特征映射的卷积层。它们重塑这个输出,得到32个包含8维向量的6x6映射。最后,使用一个新的压缩函数来确保这些向量的长度在0到1之间(表示概率),得到基本胶囊的输出。


下一层的胶囊工作原理非常不同,它们使用了一种名为“路由协议”(routing by agreement)的算法来试图检测物体及其姿态,这就是胶囊网络的神奇所在,举个例子。


假设有两种基本胶囊:一种是长方形胶囊,一种是三角形胶囊,假设它们都发现了要检索的东西,矩形和三角形都可以是房子或船的一部分(见图5)。给定矩形的姿态,它会稍微向右旋转,房子和船也会稍微向右旋转。考虑到三角形的位置,房子几乎是上下颠倒的,而船会稍微向右旋转。注意,形状和整个/部分关系都是在训练中学习的。矩形和三角形在船的姿势上是一致的,而在房子的姿势上是完全不同的。所以很可能矩形和三角形是同一条船的一部分,而不是房子。


图5:根据路由协议,步骤1根据目标部件的存在和位置预测目标的存在和位置,然后查找预测之间的一致。


因为我们确信矩形和三角形是船的一部分,所以将输出的矩形和三角形胶囊发送给更多的船胶囊,船胶囊将获得更多有用的输入信号,房子胶囊将接收到很少的信号。对于每次连接,路由协议算法维护一个路由权值(参见图6),当结果一致时协议时路由权值增加,不一致时路由权值减少。



图6:路由协议,步骤2更新路由权值。


路由协议算法涉及到协议检测+路由更新的几个迭代(注意,这种情况发生在每个预测中,而不仅仅是一次,也不仅仅是在训练时),在拥挤的场面特别适用:例如,在图7中,现场是模糊的,因为你可以看到一个倒立的房子在中间,但如果这样,底部矩形和三角形就无法解释了,所以路由协议算法将最有可能收敛到一个更好的解释:一只船在底部,顶部是一栋房子。这种模糊性被称为“被解释掉”,较低的矩形最好的解释是船,这也解释了较低的三角形,一旦这两个部分被解释掉,剩下的部分很容易被解释为房子。


图7:路由协议可以解析拥挤的场景,比如这张模糊的图片,它可能被误解为倒立的房子加上一些无法解释的部分。相反,较低的矩形将被解释为船的一部分,这也将把较低的三角形和船联系上。一旦船被“解释走了”,就很容易将顶部理解为房子。


这就是胶囊网络的关键原理!

本文作者:【方向】







*推荐阅读*

卷积神经网络为什么能称霸计算机视觉领域?

深度概览卷积神经网络全景图,没有比这更全的了


PS.8月29日(本周三)晚20:00~21:30,图普科技深度学习算法工程师小美,及格灵深瞳算法工程师张德兵,将为大家分享基于分布式人脸训练谜题思路及背后的工业级应用点击文末阅读原文申请加入谜题活动交流群,~


登录查看更多
20

相关内容

【CVPR2020】图神经网络中的几何原理连接
专知会员服务
56+阅读 · 2020年4月8日
卷积神经网络的概述论文:分析、应用和展望,21页pdf
专知会员服务
89+阅读 · 2020年4月7日
Capsule Networks,胶囊网络,57页ppt,布法罗大学
专知会员服务
65+阅读 · 2020年2月29日
麻省理工学院MIT-ICLR2020《神经网络能推断出什么?》
专知会员服务
50+阅读 · 2020年2月19日
专知会员服务
25+阅读 · 2020年2月15日
胶囊网络,是什么?
人工智能头条
32+阅读 · 2019年1月2日
卷及网络的弱点,有人想用胶囊网络给解决掉
人工智能头条
6+阅读 · 2018年11月21日
【教程】可视化CapsNet,详解Hinton等人提出的胶囊概念与原理
GAN生成式对抗网络
8+阅读 · 2018年4月11日
看完这篇,别说你还不懂Hinton大神的胶囊网络
人工智能头条
8+阅读 · 2018年3月28日
CapsNet入门系列之一:胶囊网络背后的直觉
论智
8+阅读 · 2017年11月20日
徒手实现CNN:综述论文详解卷积网络的数学本质
机器之心
25+阅读 · 2017年11月19日
Neural Image Captioning
Arxiv
5+阅读 · 2019年7月2日
Self-Attention Graph Pooling
Arxiv
13+阅读 · 2019年6月13日
Attend More Times for Image Captioning
Arxiv
6+阅读 · 2018年12月8日
Text classification using capsules
Arxiv
5+阅读 · 2018年8月12日
Recurrent Fusion Network for Image Captioning
Arxiv
3+阅读 · 2018年7月31日
Arxiv
10+阅读 · 2018年2月17日
VIP会员
相关资讯
胶囊网络,是什么?
人工智能头条
32+阅读 · 2019年1月2日
卷及网络的弱点,有人想用胶囊网络给解决掉
人工智能头条
6+阅读 · 2018年11月21日
【教程】可视化CapsNet,详解Hinton等人提出的胶囊概念与原理
GAN生成式对抗网络
8+阅读 · 2018年4月11日
看完这篇,别说你还不懂Hinton大神的胶囊网络
人工智能头条
8+阅读 · 2018年3月28日
CapsNet入门系列之一:胶囊网络背后的直觉
论智
8+阅读 · 2017年11月20日
徒手实现CNN:综述论文详解卷积网络的数学本质
机器之心
25+阅读 · 2017年11月19日
相关论文
Neural Image Captioning
Arxiv
5+阅读 · 2019年7月2日
Self-Attention Graph Pooling
Arxiv
13+阅读 · 2019年6月13日
Attend More Times for Image Captioning
Arxiv
6+阅读 · 2018年12月8日
Text classification using capsules
Arxiv
5+阅读 · 2018年8月12日
Recurrent Fusion Network for Image Captioning
Arxiv
3+阅读 · 2018年7月31日
Arxiv
10+阅读 · 2018年2月17日
Top
微信扫码咨询专知VIP会员