炼数成金 门户 商业智能 深度学习 查看内容

卷积网络虽动人,胶囊网络更传“神”

2018-5-24 14:56| 发布者: 炼数成金_小数| 查看: 15970| 评论: 0|原作者: 张玉宏|来自: 前沿技墅

摘要: 在大计算和大数据的背景下,深度学习大行其道、大受欢迎,究其原因,卷积神经网络的出色表现,可谓居功至伟。尽管如此,卷积神经网络也有其局限性,如训练数据需求大、环境适应能力、可解释性差、数据分享难等不足。 ...

网络 基础 计算机 神经网络 框架

本文作者 张玉宏
2012年于电子科技大学获计算机专业博士学位,2009~2011年美国西北大学联合培养博士,现执教于河南工业大学,电子科技大学博士后。中国计算机协会(CCF)会员,YOCSEF郑州2018~2019年度副主席,ACM/IEEE会员。《品味大数据》一书作者。

江山代有才人出,各领风骚数百年。但在计算机科学领域,风骚数十年都非常难。卷积神经网络在短短三十多年里,几起几落。别看它现在依然如日冲天,要知道,浪潮之巅的下一步,就是衰落。而加快推动这一趋势的,正是卷积神经网络得以雄起的大功臣——Geoffrey Hinton。他提出了全新的“神经胶囊”理论,这“胶囊”里到底装的是什么“药”呢? 

从神经元到神经胶囊
在大计算和大数据的背景下,深度学习大行其道、大受欢迎,究其原因,卷积神经网络的出色表现,可谓居功至伟。尽管如此,卷积神经网络也有其局限性,如训练数据需求大、环境适应能力、可解释性差、数据分享难等不足。

2017年10月,Hinton教授和他的团队在机器学习的较高级会议“神经信息处理系统大会(NIPS)”上发表论文,超越了自己前期的理论研究——反向传播算法(BP),提出了一种全新的神经网络——胶囊网络(CapsNet)。

2017年9月(论文发表的前一个月),在多伦多举行的人工智能会议上,Hinton对他参与构建的反向传播(BP)理论表示深深的怀疑。Hinton还引用了著名物理学家马克斯·普朗克的名言:“科学之道,不破不立”,来为自己的新理论站台。

在这次会议上,Hinton最后总结:
科学是踩着葬礼前行的,未来由极其质疑我所说的一切的那批学生所决定。

卷积神经网络面临的挑战
Hinton对CNN的“深深的质疑”是有原因的。CNN的内在缺陷主要体现在3个方面。

CNN生物学基础不足,难以“熟能生巧”。

CNN全连接模式过于冗余而低效。

CNN胜在特征检测,但穷于特征理解。

Hinton评价说:“CNN分类正确率很高,看似一个大好局面,实则是一场灾难。”据此,Hinton也断言:“卷积神经网络注定是没有前途的!”

神经胶囊的提出
Hinton在批判CNN不足的同时,已然备好了解决方案,这就是我们即将讨论的“胶囊神经网络(Capsule Network,简称CapsNet)。”

Hinton认为CNN的不变性并不理想,“同变性”才是我们想要的。不变性指的是对象的表征,不随对象X的“变换”而变化。从计算机视觉的角度来看,这里的变换包括平移、旋转、放缩等。

由于CNN具有不变特性,它对物体的平移、旋转和缩放等并不敏感。以北京故宫紫禁城门前的那尊狮子为例,这类变化并不影响CNN对方框内狮子的识别。这自然大大提高了分类的鲁棒性。

然而,任何性能的提升,通常都以牺牲某项性能为代价。CNN对分类性能的提升,同样要付出成本。Hinton认为,平移、旋转及缩放等变换之所以可以做到局部不变性,其实是以丢弃“坐标框架”为代价的。没有了坐标的约束,自然也就用判断图像是否发生平移、旋转或缩放。

而“同变性”则不会丢失这些信息,它只是对内容做了一种变换。这就好比,画纸相当于坐标框架,当画家画了一个人合适大小的嘴巴时,具有格局观的画家(抽象派除外),就能知道脸的大致位置和大小该怎么画。当嘴巴画斜了,脸自然也得倾斜才算是一张正常的脸。

类似地,在下图中,当数字“7”的位置发生变化时,人的视觉系统会自动建立“坐标框架”,在此处,“坐标框架”属于先验知识。坐标框架会参与到识别过程中,识别过程受到了空间概念的支配,因此,它并不是一个独立的过程。


不变性与同变性对比示意图
在(a)子图中,平移前的7和平移后的7的表征是一样的(可以通过CNN的池化操作实现),这样位置变了我们依然识别出7,但代价是我们根本无法判断出7在图像所处的位置。

在(b)子图头部所示的公式描述的是,对象x的表征,在经过转换(平移)之后,其结果等同于转换之后对象的表征,这就是所谓的“同变性”。具体说到数字“7”的平移,平移前的7和平移后的7的表征里,包含有位置这个信息(这个可以通过后文即将讲到神经胶囊做到),这样一来,我们不但能识别出7,还能判断出7在图像所处的位置。

于是,Hinton教授提出了一个设想:观察者和物体之间的关系,应该由一整套激活的神经元来表征,而不是由单个神经元或一组粗编码的神经元表征。只有这样,有关“坐标框架”之类的先验知识才能有机会被表达出来。而这一整套神经元,Hinton将其取名为“神经胶囊”。

那么在神经胶囊框架下,又是如何体现同变性呢?Hinton认为,同变性大致包括两种类型:
位置编码:当内容的位置发生较大变化时,则由不同的“胶囊”表示其内容。

速率编码:当内容的位置发生较小变化时,则由相同的“胶囊”表示其内容,但是内容有所改变。

二者的关联是,高层的“胶囊”有更广的域,低层的“位置编码”信息通过汇总,抵达高层变成“速率编码”。对这两种编码的理解,可以想象成两种不同比例尺的地图。“位置编码”相当于小比例尺的地图(比如说街道级别),而“速率编码”相当于大比例尺的地图(比如说地区级别)。

相比CNN,使用胶囊网络的一大优势在于,它需要的训练数据量远小于CNN,而效果却毫不逊色于CNN。从这个意义上来讲,神经胶囊实际上更接近人脑的行为。我们知道,为了学会区分阿猫阿狗,小孩子也不过就学习了几十个例子就可以做到。而当前的CNN,动辄需要几万甚至几十万的案例才能取得很好的效果。这看起来,CNN的工作更像是在暴力破解,其工作机理显然要比大脑低级,行为更是一点也不优雅。

此外,和其他模型相比,胶囊网络在不同角度的图片分类上,有着更好的辨识度。例如,在下图中,对应的,上一列和下一列的图片属于同一类,它们仅仅是呈现的视角不同。的研究论文表明,相比于其他同类算法,使用胶囊网络,错误识别率显著降低。

胶囊网络的多角度图片识别

神经胶囊网络t既然这么好用,势必有强大的理论为之支撑。那么,它的理论基础又是什么呢?

神经胶囊理论基础
神经胶囊的生物学基础
我们知道,人工神经网络在很大程度上是模仿生物神经网络而来的。作为“仿生派”的代表人物Hinton,他提出的“神经胶囊”,同样受益于脑科学的研究进展。

目前,大多数神经解剖学研究都支持这样一个结论——大部分哺乳类,特别是灵长类大脑皮层中存在大量称为皮层微柱的柱状结构,其内部包含上百个神经元,并存在内部分层。

这些小模块,非常擅长处理不同类型的可视化刺激。生物学家推测,大脑一定有某种机制,以某些权重“穿针引线”般组合低层次的可视化特征,从而构建出我们“看到”的五彩缤纷的大千世界。

大脑皮层中普遍存在的皮层微柱这一研究发现,极大启发了Hinton。于是,Hinton提出了一个假想,物体和观察者之间的关系,应该由一整套而非一个激活的神经元表征。

于是,在人工神经网络中,Hinton提出了一个对应的结构,它就是我们前面提到的神经胶囊。简单来说,神经胶囊是一组被打包的神经元,它们在内部做了大量运算,而后仅输出一个被压缩的结果——一个高维向量。

神经胶囊网络的哲学基础
其实,人工智能领域也是哲学家们最爱光顾的地方之一。因为说到“智能”,就离不开“意识”“存在性”等基本问题。而这类问题,本来就是哲学的传统地盘。

古话说,“形而下者为器,形而上者为道”。如果我们总是低头看路,看到的都是具体的“器”,那我们肯定难以看到哲学的影子。但如果我们仰望星空,不再关注具体有形的事物,将研究视角提升到“道”的层面,Hinton提出的神经胶囊,在哲学层面的意义,已然若隐若现。Hinton提出的理论,实际上践行了哲学中的“本体论(Ontology)”。

简单来说,本体论研究的问题,就是“什么是‘存在’”。拿香蕉来举例,“香蕉”就是本体,而香蕉的图片,香蕉的视频,中文“香蕉”二字,英文单词“banana”等,都是描述“本体”的外在符号。于是,这个世界上的所有图像、音频、视频、语言等,都成为某种符号到实体的映射,这就是哲学意义上的“本体”。

事实上,哲学上的“本体论”,对信息科学是有启发意义的。

回到神经胶囊的讨论上来。我们知道,一个活动的胶囊内的神经元活动,表示了特定实体的各种属性。这些属性包括但不限于不同类型的实例化参数,例如前面提到的位姿(pose,包括位置、大小、方向等),形变,速度,反照率,色相,纹理等。某些特殊属性的存在,就能表明某个类别实例的存在。

在机器学习领域,判断存在性的一个简易方法是,使用一个独立的逻辑回归单元,其输出值是连续的,输出范围在[0,1]之间,其大小是实体存在的概率。比如,0表示肯定没出现,1表示确定出现,中间值就是一个出现的概率。

有意思的是,Hinton等人提出了一个更加巧妙的替代方法。他们提出的神经胶囊,其输出值是一个高维向量,通过归一化处理,可以用向量模长(length)表示实体存在的概率,同时用向量的各种“位姿”表示实体的各类属性。如果一个向量在各个方向表现得都很显著,那么它的模长自然也就越大,判定这个本体存在性概率就越高。

在这里面就蕴含了使用实体的属性来定义实体存在性的本体论精髓。如果发现一个实体的各种属性都有难以忽略的存在,那么该实体也必然存在。据此做分类依据,自然也就非常靠谱。

在传统的深度学习模型(如CNN、RNN及DBN等)中,是没有这样的性质的。

这是因为,在传统深度学习网络中,一个神经元的激活只能表示某个实体(可理解为标量神经元),其维度的单一性决定了神经元本身不能同时表示多个属性。于是,不得不退而求其次事物的性质只能隐含到茫茫的网络参数之中。这样一来,网络的参数调整,动机就难以单纯,它必须需要顾及到各类样本的输入,故此调参异常繁琐而耗时,就在所难免了。

而现在就不同了,利用神经胶囊,我们可以判定实体存在的各种性质统统封装在一个胶囊之内,于是,调参的约束条件就会大大减少,自然而然的结果,调参变得优雅了,较佳的参数容易获取了。 

今天我们为大家带来了AI领域非常前沿的“神经胶囊”理论的分享,相信各位也意犹未尽,想要继续探索“神经胶囊”更深层的奥秘。关注“前沿技墅”,下一次将为大家全面揭秘“神经胶囊”理论的工作流程、参数设计,并带来较佳实践,敬请期待。

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-6-22 09:14 , Processed in 0.146729 second(s), 26 queries .