0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在神经网络中表示部分-整体层次结构

深度学习自然语言处理 来源:AI科技评论 作者:AI科技评论 2021-03-05 15:53 次阅读

Twitter 上发现了一篇Hinton的新论文,作者只有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 显示了不同级别的嵌入如何在单列中进行交互。

71b90fda-7c22-11eb-8b86-12bb97331649.png

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

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

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

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

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

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

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

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

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

71fcc09a-7c22-11eb-8b86-12bb97331649.png

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

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

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

722ee048-7c22-11eb-8b86-12bb97331649.png

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

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

7273be70-7c22-11eb-8b86-12bb97331649.png

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

2

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4572

    浏览量

    98745
  • 算法
    +关注

    关注

    23

    文章

    4455

    浏览量

    90751
  • 函数
    +关注

    关注

    3

    文章

    3868

    浏览量

    61308

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

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    《 AI加速器架构设计与实现》+第一章卷积神经网络观后感

    《 AI加速器架构设计与实现》+第一章卷积神经网络观感    在本书的引言中也提到“一图胜千言”,读完第一章节后,对其进行了一些归纳(如图1),第一章对常见的神经网络结构进行了介绍,举例了一些结构
    发表于 09-11 20:34

    人工神经网络和bp神经网络的区别

    人工神经网络和bp神经网络的区别  人工神经网络(Artificial Neural Network, ANN)是一种模仿人脑神经元网络结构和功能的计算模型,也被称为
    的头像 发表于 08-22 16:45 3433次阅读

    cnn卷积神经网络简介 cnn卷积神经网络代码

    以解决图像识别问题为主要目标,但它的应用已经渗透到了各种领域,从自然语言处理、语音识别、到物体标记以及医疗影像分析等。在此,本文将对CNN的原理、结构以及基础代码进行讲解。 1. CNN的原理 CNN是一种能够自动提取特征的神经网络结构,它的每个
    的头像 发表于 08-21 17:16 2026次阅读

    卷积神经网络主要包括哪些 卷积神经网络组成部分

    卷积神经网络主要包括哪些 卷积神经网络组成部分 卷积神经网络(CNN)是一类广泛应用于计算机视觉、自然语言处理等领域的人工神经网络。它具有良
    的头像 发表于 08-21 17:15 1095次阅读

    卷积神经网络一共有几层 卷积神经网络模型三层

    卷积神经网络一共有几层 卷积神经网络模型三层  卷积神经网络 (Convolutional Neural Networks,CNNs) 是一种在深度学习领域中发挥重要作用的模型。它是一种有层次
    的头像 发表于 08-21 17:11 4403次阅读

    图像识别卷积神经网络模型

    Network,CNN)是一种前向反馈神经网络,具有许多层次神经元,并且在其层次结构中存在着权重共享的机制。这种
    的头像 发表于 08-21 17:11 533次阅读

    卷积神经网络基本结构 卷积神经网络主要包括什么

    卷积神经网络基本结构 卷积神经网络主要包括什么 卷积神经网络(Convolutional Neural Network,简称CNN)是一种深度学习模型,广泛用于图像识别、自然语言处理、
    的头像 发表于 08-21 16:57 4785次阅读

    卷积神经网络的介绍 什么是卷积神经网络算法

    的深度学习算法。CNN模型最早被提出是为了处理图像,其模型结构中包含卷积层、池化层和全连接层等关键技术,经过多个卷积层和池化层的处理,CNN可以提取出图像中的特征信息,从而对图像进行分类。 一、卷积神经网络算法 卷积神经网络算法
    的头像 发表于 08-21 16:49 1425次阅读

    卷积神经网络层级结构 卷积神经网络的卷积层讲解

    卷积神经网络层级结构 卷积神经网络的卷积层讲解 卷积神经网络(Convolutional Neural Network,CNN)是一种基于深度学习的
    的头像 发表于 08-21 16:49 4424次阅读

    卷积神经网络的基本原理 卷积神经网络发展 卷积神经网络三大特点

    中最重要的神经网络之一。它是一种由多个卷积层和池化层(也可称为下采样层)组成的神经网络。CNN 的基本思想是以图像为输入,通过网络的卷积、下采样和全连接等多个层次的处理,将图像的高层抽
    的头像 发表于 08-21 16:49 1441次阅读

    卷积神经网络模型原理 卷积神经网络模型结构

    卷积神经网络模型原理 卷积神经网络模型结构  卷积神经网络是一种深度学习神经网络,是在图像、语音、文本和视频等方面的任务中最有效的
    的头像 发表于 08-21 16:41 660次阅读

    卷积神经网络模型有哪些?卷积神经网络包括哪几层内容?

    、视频等信号数据的处理和分析。卷积神经网络就是一种处理具有类似网格结构的数据的神经网络,其中每个单元只处理与之直接相连的神经元的信息。本文将对卷积
    的头像 发表于 08-21 16:41 1508次阅读

    卷积神经网络结构

    卷积神经网络结构 卷积神经网络(Convolutional Neural Network, CNN)是一种前馈神经网络,常用于图像处理、自然语言处理等领域中。它是一种深度学习(Deep
    的头像 发表于 08-17 16:30 881次阅读

    什么是神经网络?为什么说神经网络很重要?神经网络如何工作?

    神经网络是一个具有相连节点层的计算模型,其分层结构与大脑中的神经元网络结构相似。神经网络可通过数据进行学习,因此,可训练其识别模式、对数据分类和预测未来事件。
    的头像 发表于 07-26 18:28 1971次阅读
    什么是<b class='flag-5'>神经网络</b>?为什么说<b class='flag-5'>神经网络</b>很重要?<b class='flag-5'>神经网络</b>如何工作?

    浅析三种主流深度神经网络

    来源:青榴实验室 1、引子 深度神经网络(DNNs)最近在图像分类或语音识别等复杂机器学习任务中表现出的优异性能令人印象深刻。 在本文中,我们将了解深度神经网络的基础知识和三个最流行神经网络
    的头像 发表于 05-15 14:20 610次阅读
    浅析三种主流深度<b class='flag-5'>神经网络</b>