Hinton一作新论文:如何在神经网络中表示“部分-整体层次结构”?

来源 | AI科技评论

作者 |  Geoffrey Hinton

编译 | 陈彩娴

AI科技评论在 Twitter 上发现了一篇Hinton的新论文,作者只有Hinton本人,这篇论文没有介绍具体的算法,而是描绘了一个关于表示的宏观构想:如何在神经网络中表示部分-整体层次结构。 

值得一提的是,分享论文的Kosta Derpanis也在推特里介绍了Hinton的第一篇论文:“Using Relaxation To Find A Puppy”。Kosta Derpanis在论文里标记了一句话:“局部的模糊性必须必须通过寻找最佳的全局解释来解决。”并表示,Hinton现在又回到了最初的起点。

Hinton第一篇论文:

https://www.cs.toronto.edu/~hinton/absps/puppet.pdf

局部和整体的一致性表示似乎一直是Hinton的研究重点。比如,胶囊网络通过局部到整体的动态路径选择一致性来学习识别,近期Hinton还将其扩展到了无监督学习,并应用了Transformer架构;对比学习则学习一种表示,使得同一幅图像的的各个局部具有相似的表示;认知神经科学出身的Hinton还一直坚持探索着大脑的学习机制,比如back relaxation试图在自顶向下表示和自底向上表示之间产生一致性,而这又和对比学习有联系。

在这篇新论文中,Hinton又将为我们描绘出怎样一幅图景呢?

论文链接:https://arxiv.org/pdf/2102.12627.pdf

这篇论文没有描述工作系统,而是单单提出了一个关于表示的想法。这个想法能够把Transformer、神经场(neural fields)、对比表示学习、蒸馏和胶囊等先进观点整合到一个名为“GLOM 1”的设想系统中。

一个具有固定架构的神经网络如何将一张图像解析成一个整体的分级体系(其中,每张图像都有不同的结构)?针对这个问题,GLOM 给出了一个简单的答案,即使用相同向量的孤岛来表示解析树中的节点。如果 GLOM 真的能够正常运转,那么,当它在视觉或语言上应用时,它能够极大地提高类似Transformer的系统所生成的表示的可解释性。

“GLOM”一词源自一句俗语“ glom together”(“抓”到一起),可能是来源于“凝聚”(agglomerate)一词。

1

观点总览

心理学提供了一个有力证据,表明:人们会将视觉场景解析为整个分层体系,并将部分与整体之间视角不变的空间关系,建模为他们分配给该部分和整体的内在坐标系之间的坐标转换。 

如果我们想要建立像人类一样理解图像的神经网络,那么我们需要想明白:神经网络是如何表示部分-整体的分层体系?这很困难,因为一个真实的神经网络无法将一组神经元进行动态分配,以表示解析树中的一个节点。 

神经网络无法动态分配神经元,也是一系列用到“胶囊”观点的模型所出现的原因。这些模型会作出如下假设:被称为“胶囊”的一组神经元会永远成为图像特定区域中的某一特定类型的一部分。通过激活这些预先存在的、类型特定的胶囊子集,以及胶囊之间的适合连接,可以构建一个解析树。

这篇论文介绍了一种非常不同的方式,可以使用胶囊来表示神经网络中的部分-整体分层体系。

虽然这篇论文主要讨论了单个静态图像的感知,但我们可以简单地将 GLOM 理解为用于处理一系列帧的管道,因此静态图像可以被视为一系列相同的帧。

GLOM 架构由许多列(column)组成,所有列均使用完全相同的权重。每一列都是一堆空间局部自动编码器,这些编码器会学习小图像块(image patch)中的多个不同级别的表示。每个自动编码器都会使用多层自下而上的编码器和多层自上而下的解码器,将同一个级别的嵌入转换为相邻级别的嵌入。这些级别与部分-整体分层体系中的级别一一对应。比如,显示一张人脸图像时,一个单列可能会收敛到表示一个鼻孔、一个鼻子、一张脸和一个人的嵌入向量上。图 1 显示了不同级别的嵌入如何在单列中进行交互。 

图1:单列中,GLOM架构的三个相邻级别的自下而上、自上而下、同列的交互。

代表自下而上和自上而下交互的蓝色和红色箭头是由两个具有多个隐藏层的不同神经网络来实现。这些网络在成对的级别中有所差异,但它们可以跨列、跨时间步分享。自上而下的网络也许应该使用正弦单位。对于静态图,绿色箭头可以简单看作按比例缩放的残差连接,以实现每个级别的嵌入的时间平滑。对于视频,绿色连接可以是基于多个先前状态的胶囊来学习时间动态的神经网络。不同列中,相同级别的的嵌入向量之间的交互可以通过非自适应的、注意力加权的局部平滑器(图中没有显示)来实现。

图 1 没有显示不同列中同一级别的嵌入之间的交互。这比同一列内的交互要简单得多,因为它们不需要执行部分-整体坐标转换。它们就像代表一个多头 transformer 中不同单词片段的列之间的注意力加权交互,但更简单,因为查询、键和值向量都与嵌入向量相同。列与列之间的交互作用是,通过使一个级别的每个嵌入向量向附近位置的其他类似向量回归,从而在该级别上产生具有相同嵌入的岛。这将创建多个局部“回音室”,其中一个级别的嵌入主要听从其他想法相似的嵌入。

在每一段离散时间和每一列中,一个级别的嵌入将被更新为拥有四个贡献(如下)的加权平均值:

  • 自下而上的神经网络在前一个时间作用于下层级别的嵌入而产生的预测;

  • 自上而下的神经网络在前一个时间作用于上层级别的嵌入而产生的预测;

  • 上一个时间步的嵌入向量;

  • 前一个时间在附近列相同级别的嵌入的注意力加权平均值。

对于静态图,一个级别的嵌入应随着时间的流逝而沉淀,以生成拥有几乎相同向量的不同岛。如图 2 所示, 这些岛在更高的级别上应该更大。使用相似的岛来表示图像的解析,避免了需要分配神经元组来动态表示正在运行的解析树的节点,或预先为所有可能的节点设置神经元的情况。GLOM 系统不是分配神经硬件来表示解析树中的节点,或为节点提供指向其祖先和后代的指针,而是分配了一个合适的活动向量来表示该节点,并在属于该节点的所有位置上使用了相同的活动向量。访问节点的祖先和后代的能力是通过自下而上和自上而下的神经网络实现的,而不是通过使用 RAM 检查表格来实现的。

图 2:在特定时间里,6 个相邻列的嵌入。 

图 2 所显示的所有位置都属于同一对象,且场景级别尚未在共享矢量上定居。通过将向量划分为部分-整体分层体系中每个级别的单独部分,然后将一个级别的的高维嵌入向量显示为二维向量,那么每个位置的完整嵌入向量就可以显示出来。这可以很好地解释不同位置的嵌入向量的对齐。图 2 所示的不同级别上向量相同的岛,实则表示一棵解析树。但是,相同的岛比短语结构语法要强大得多。比如,在“这是否会减慢短语结构语法的速度”的问题上,它们可以毫不费力地表示断开连接的对象。

就像BERT一样,整个 GLOM 系统可以进行端到端的训练,以在最后的时间步从缺少某一区域的输入图像中重建图像。但是,目标函数还包含两个倡导在每个级别上向量几乎相同的岛的正则化器(regularizer)。正则化器只是一个级别的新嵌入与自下而上、自上而下的预测之间的一致性。提高这个一致性能够促进局部岛的形成。

图 4:这是将图 1 所示架构进行可视化的另一种方式,可以使该架构与 transformer 之间的关系更加明显。图 1 中表示时间的水平尺寸变成了图 4 中表示层的垂直尺寸。此时,在每一个位置,每一层都有部分-整体分层体系中所有级别的嵌入。这与垂直压缩图 1 中单个时间片内的级别描述一致。

静态图的解释仅需要使用该架构进行一次前向传递。这里将所有级别特定的自下而上和自上而下的神经网络都显示为单个神经网络。图 5 显示了另一种查看 GLOM 架构的自下而上和自上而下的神经网络。

图 5:GLOM 在同一个位置(即单列的一部分)的两个相邻层。在前向传递的过程中,L 级的嵌入向量通过多层自下而上的神经网络从上一层 L-1 级的嵌入向量中接收输入。L 级还通过多层自上而下的神经网络从上一层 L+1 级的嵌入中接收输入。在前向传递的过程中,对上一层 L+1 级的依赖取得了自上而下的效果。嵌入在 t+1 层中的 L 级还取决于嵌入在 t 层中的 L 级嵌入和 t 层中其他附近位置的 L 级嵌入的注意力加权总和。图中没有显示级内的交互。

2

论文目录

论文的目录如下,感兴趣的朋友可以点击上面的链接去拜读Hinton的新大作:

2、引言

2.1 生物学类比

2.2 数学类比

2.3 神经场

2.4 部分-整体分层体系的显式表示和紧急表示

3、一些设计决策

3.1 有多少个级别?

3.2 位置的细粒度如何?

3.3 自下而上的网络是否会查看附近的位置?

3.4 注意力如何工作?

3.5 视觉输入 

4、颜色和纹理

5、集群发现与集群形成

6、在位置上复制嵌入向量 

7、学习岛

8、表示坐标变换 

9、表示不确定性

9.1 在更新嵌入时组合不同的信息源 

10、与其他神经网络模型进行比较

10.1 与胶囊模型对比

10.2 与 transformer 模型对比

10.3 与卷积神经网络对比

10.4 表示 ISA 分层体系

10.5 与 2D Ising 模型的关系

10.6 与其他消除冗余的方法对比

11、视频

12、GLOM 在生物学上是否合理?

12.1 新皮质是一个大型“蒸馏”厂吗?

12.2 睡眠在对比学习中的作用?

12.3 传播大脑中的误差导数

13、讨论

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485200.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

概率校准与Brier分数

1.再提逻辑回归 前面已经讲过了逻辑回归,这里不再细讲,只是简单的说一个函数,主要是方便大家更好的理解概率校准。 在逻辑回归中,用的最多的就是sigmod函数,这个函数的作用就是把无限大或者无限小的数据压缩到[0,1]之间…

【剑指offer】面试题66:构建乘积数组(Java)

给定一个数组 A[0,1,…,n-1],请构建一个数组 B[0,1,…,n-1],其中 B 中的元素 B[i]A[0]A[1]…A[i-1]A[i1]…A[n-1]。不能使用除法。 示例: 输入: [1,2,3,4,5] 输出: [120,60,40,30,24] 提示: 所有元素乘积之和不会溢出 32 位整数 a.lengt…

费曼:所有科学知识都是不确定的

来源 : 网络作为科学家,我们知道伟大的进展都源于承认无知,源于思想的自由。那么这是我们的责任——宣扬思想自由的价值,教育人们不要惧怕质疑而应该欢迎它、讨论它,而且毫不妥协地坚持拥有这种自由——这是我们对未来…

遍历性能

iOS开发中数组常用的五种遍历方式 随着iOS的不断发展,apple也不断推出性能更高的数组遍历方式,下面将对熟悉的五种遍历方式进行列举。 首先定义一个数组,并获取数组长度 一、for循环 二、forin 快速枚举 三、NSEnumerator 四、快速遍历 五、快…

【剑指offer】面试题68 - I:二叉树的最近公共祖先(Java)

给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自…

工业传感器:工业互联网的第一道门

来源:北京物联网智能技术应用协会作者:刘沁沈阳仪表科学研究院副总工程师、传感器国家工程研究中心常务副主任工业的发展离不开众多感知技术的加持,其中最为关键的技术之一便是传感器。可以说,工业传感器让自动化智能设备有了感知…

数学:二项式定理

先贴一张网图来弥补一下知识点,回顾NOIP2011计算系数 既然我们要求的是展开式中某一项的系数,那么就直接求出其对应的组合数就好了,但是要注意x和y都是有系数a和b的 x,y换成ax,by,得到x^ny^m的系数是a^n*b^m*C(k,n) 这样就可以了 …

【剑指offer】面试题03:数组中重复的数字(java)

在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 示例 1: 输入: [2, 3, 1, 0, 2, …

城市大脑全球标准研究2:如何理解和定义城市大脑?

作者:刘锋城市大脑作为一个新生事物,如何理解和定义反映了人们对这个新事物的理解程度,同时由于城市大脑是一个复杂的智能巨系统,如何理解和定义它对于后续的建设和发展也将产生重大和深远的影响。目前对城市大脑的定义有如下几种…

1036 跟奥巴马一起编程(15 分)

美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在…

【剑指offer】面试题04:二维数组中的查找(java)

在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: 现有矩阵 matrix 如下: …

Bengio、Hinton的不懈追求——深度学习算法揭示大脑如何学习

来源:AI科技评论编译:Don校对:青暮“如果我们能够揭示大脑的某些学习机制或学习方法,那么人工智能将能迎来进一步的发展,”Bengio如是说。深度学习依赖于精妙设计的算法,一行行精妙绝伦的公式让冰冷的计算机…

linux下的idea的界面问题,错位以及各种...

问题 ’ 方法 主题设置为GTK,多余的点会消失,而且字体也会好很多 转载于:https://www.cnblogs.com/ydymz/p/9595229.html

【剑指offer】面试题05:替换空格(java)

请实现一个函数&#xff0c;把字符串 s 中的每个空格替换成"%20"。 示例 1&#xff1a; 输入&#xff1a;s "We are happy." 输出&#xff1a;"We%20are%20happy." 限制&#xff1a; 0 < s 的长度 < 10000 思路&#xff1a;Java中S…

我们死去后,宇宙还能记住我们吗?

图片来源&#xff1a;Pixabay撰文&#xff1a;约翰霍根&#xff08;John Horgan&#xff09;翻译&#xff1a;常灏杰审校&#xff1a;曾小欢 吴非一些物理学家坚信信息不会消失&#xff0c;甚至在黑洞中也不会消失&#xff0c;但是这一“规律”也许只是一厢情愿而已。我是个强迫…

DataPipeline | PayPal庞姬桦:大数据在小微企业贷款上的运用

庞姬桦女士毕业于北京大学和美国哥伦比亚大学&#xff0c;目前担任PayPal公司消费者风险管理总监&#xff0c;负责通过大数据实现对互联网金融风险的侦测、跟踪、管控和防范。在加入PayPal之前&#xff0c;曾任职于渣打银行&#xff08;中国&#xff09;和美国运通公司&#xf…

【剑指offer】面试题6:从尾到头打印链表(Java)

输入一个链表的头节点&#xff0c;从尾到头反过来返回每个节点的值&#xff08;用数组返回&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,3,2] 输出&#xff1a;[2,3,1] 限制&#xff1a; 0 < 链表长度 < 10000 思路&#xff1a;利用栈 /** * Defi…

H5 与 IOS的爱恨情仇(兼容问题)

1 input 框在ios上存在阴影的问题 input{resize: none;-webkit-appearance: none;box-sizing: border-box;} 2 H5 在ios端滚动的时候卡顿问题&#xff08;在另一人的博客写的&#xff0c;我直接用了方法1&#xff0c;挺好&#xff09; -webkit-overflow-scrolling : touch 但这…

贝尔实验室发布6G通信白皮书

来源&#xff1a;5G重要信息随着5G的广泛部署和落地无线通信网络演进的风向标转向6G合理地预测和构建下一代无线网络的全景是准确把握和引导6G研究方向的前提2021 MWCS期间贝尔实验室发布了《6G通信白皮书》分析生活和工作中&#xff0c;未来的通信演进方向探讨移动通信的变革大…

【剑指offer】面试题09:用两个栈实现队列(Java)

用两个栈实现一个队列。队列的声明如下&#xff0c;请实现它的两个函数 appendTail 和 deleteHead &#xff0c;分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素&#xff0c;deleteHead 操作返回 -1 ) 示例 1&#xff1a; 输入&#xff1a; ["…