【Hinton大神新作】Dynamic Routing Between Capsules阅读笔记

Dynamic Routing Between Capsules
卷积
核心概念
  • Vector,instantiation parameters,个人理解类似于结构性的先验知识,Prior
  • Length of Vector, probability of entity exists
  • Orientation of Vector, instantiation parameters
  • Better at recognizing highly overlapping digits

  • 信号处理中,正弦信号,频率,相位,幅值

  • 假设有先验的结构信息

  • 训练过程:Iterative Routing Process

网络结构
  • Overall length of the vector of instantiation parameters to represent the existence
  • Orientation of the vector to represent the properties of the entity
与CNN的区别
  • Scalar Output feature detectors , Vector-output capsules
  • Max-pooling, Routing-by-agreement
总结
  • 过去的例子:Speech Recognition,hidden Markov models with Gaussian mixtures as output distributions.
  • CNN is the dominant approach to object recoginiton,如何改变?
  • Converting pixel intensities into vectors of instantiation parameters of recognized fragments.
  • Capsules make a very strong representational assumption.
  • And Capsules are also very god of dealing with segmentation.
知乎上的链接

https://www.zhihu.com/question/67287444

技术升级

【MATRIX CAPSULES WITH EM ROUTING】
https://openreview.net/pdf?id=HJWLfGWRb

原文翻译

作者:AI研习社
链接:https://www.zhihu.com/question/67287444/answer/252315722
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

胶囊间的动态路由摘要本论文所研究的胶囊意为一组神经元,其激活向量反映了某类特定实体(可能是整体也可能是部分)的表征。本论文使用激活向量的模长来描述实体存在的概率,用激活向量的方向表征对应实例的参数。某一层级的活跃胶囊通过矩阵变换做出预测,预测结果会用来给更高层级的胶囊提供实例参数。当多个预测值达成一致时,一个高层级的胶囊就会被激活。论文中展示了差异化训练的多层胶囊系统可以在MNIST上达到当前最高水平的表现,在识别高度重叠的数字上也要比卷积网络要好得多。网络的实现中运用迭代的一致性路由机制:当低层级的胶囊的预测向量和高层级胶囊的激活向量有较大的标量积时,这个低层级胶囊就会倾向于向高层级胶囊输出。一、简介人类视觉通过使用仔细确定的固定点序列来忽略不相关的细节,以确保只有极小部分的光学阵列以最高的分辨率被处理。要理解我们对场景的多少知识来自固定序列,以及我们从单个固定点中能收集到多少知识,内省不是一个好的指导,但是在本文中,我们假设单个固定点给我们提供的不仅仅是一个单一的识别对象及其属性。我们假设多层视觉系统在每个固定点上都会创建一个类似解析树这样的东西,并且单一固定解析树在多个固定点中如何协调的问题会被我们忽略掉。解析树通常通过动态分配内存来快速构建,但根据Hinton等人的论文「Learning to parse images,2000」,我们假设,对于单个固定点,从固定的多层神经网络中构建出一个解析树,就像从一块岩石雕刻出一个雕塑一样(雷锋网 AI 科技评论注: 意为只保留了部分树枝)。每个层被分成许多神经元组,这些组被称为“胶囊”(Hinton等人「Transforming auto-encoders,2011」),解析树中的每个节点就对应着一个活动的胶囊。通过一个迭代路由过程,每个活动胶囊将在更高的层中选择一个胶囊作为其在树中的父结点。对于更高层次的视觉系统,这样的迭代过程就很有潜力解决一个物体的部分如何层层组合成整体的问题。一个活动的胶囊内的神经元活动表示了图像中出现的特定实体的各种属性。这些属性可以包括许多不同类型的实例化参数,例如姿态(位置,大小,方向),变形,速度,反照率,色相,纹理等。一个非常特殊的属性是图像中某个类别的实例的存在。表示存在的一个简明的方法是使用一个单独的逻辑回归单元,它的输出数值大小就是实体存在的概率(雷锋网 AI 科技评论注: 输出范围在0到1之间,0就是没出现,1就是出现了)。在本文中,作者们探索了一个有趣的替代方法,用实例的参数向量的模长来表示实体存在的概率,同时要求网络用向量的方向表示实体的属性。为了确保胶囊的向量输出的模长不超过1,通过应用一个非线性的方式使矢量的方向保持不变,同时缩小其模长。胶囊的输出是一个向量,这一设定使得用强大的动态路由机制来确保胶囊的输出被发送到上述层中的适当的父节点成为可能。最初,输出经过耦合总和为1的系数缩小后,路由到所有可能的父节点。对于每个可能的父结点,胶囊通过将其自身的输出乘以权重矩阵来计算“预测向量”。如果这一预测向量和一个可能的父节点的输出的标量积很大,则存在自上而下的反馈,其具有加大该父节点的耦合系数并减小其他父结点耦合系数的效果。这就加大了胶囊对那一个父节点的贡献,并进一步增加了胶囊预测向量和该父节点输出的标量积。这种类型的“按协议路由”应该比通过最大池化实现的非常原始的路由形式更有效,其中除了保留本地池中最活跃的特征检测器外,忽略了下一层中所有的特征检测器。作者们论证了,对于实现分割高度重叠对象所需的“解释”,动态路由机制是一个有效的方式。卷积神经网络(CNN)使用学习得到的特征检测器的转移副本,这使得他们能够将图片中一个位置获得的有关好的权重值的知识,迁移到其他位置。这对图像解释的极大帮助已经得到证明。尽管作者们此次用矢量输出胶囊和按协议路由的最大池化替代CNN的标量输出特征检测器,他们仍然希望能够在整个空间中复制已习得的知识,所以文中构建的模型除了最后一层胶囊之外,其余的胶囊层都是卷积。与CNN一样,更高级别的胶囊得以覆盖较大的图像区域,但与最大池化不同,胶囊中不会丢弃该区域内实体精确位置的信息。对于低层级的胶囊,位置信息通过活跃的胶囊来进行“地点编码”。当来到越高的层级,越多的位置信息在胶囊输出向量的实值分量中被“速率编码”。这种从位置编码到速率编码的转变,加上高级别胶囊能够用更多自由度、表征更复杂实体的特性,表明更高层级的胶囊也相应地需要更高的维度。二、如何计算一个胶囊的向量输入和输出已经有很多方法可以实现胶囊的大致思路。这篇文章的目的,不是去探究所有可能的方法,而只是表明非常简单直接的方式就可以取得很好的效果,而且动态路由也可以起到帮助。作者们用胶囊输出向量的模长来表示一个胶囊所表征的实体在输入中出现的概率。因此作者们采用一个非线性函数对向量进行“压缩”,短向量被压缩到几乎为零,长向量也被压缩到1以下长度。判别学习中充分利用这个非线性函数。式1其中vj是胶囊j的输出向量,sj是它的全部输入。除了第一层胶囊,胶囊sj的全部输入是对预测向量uj|i的加权求和。这些预测向量都是由低一层的胶囊产生,通过胶囊的输出ui 和一个权重矩阵Wij相乘得来。式2其中cij是由迭代的动态路径过程决定的耦合系数。胶囊i和其上一层中所有胶囊的耦合系数的和为1,并由“routing softmax”决定。这个“routing softmax”的初始逻辑值bij 是胶囊i耦合于胶囊j的对数先验概率。式3这个对数先验可以和其他权重一起被判别学习。他们由两个胶囊的位置和类型决定,而不是当前的输入图像决定。耦合系数会从初始值开始迭代,通过测量每个高一层胶囊j的当前输出vi和低一层胶囊i的预测值ui|j之间的一致性。所述一致性是简单的点积aij=vj . ui|j。这个一致性可被看做最大似然值,并在计算出所有将胶囊i连接到更高层胶囊得到的新耦合值前,加到初始逻辑值bi,j上。在卷积胶囊层中,胶囊内每一个单元都是一个卷积单元。因此每一个胶囊都会输出一个向量网格而不是一个简单的向量。路由计算的伪码如下图三、某类数字是否存在的边缘损失作者们用实例化向量的模长来表

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值