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

    文章

    4830

    浏览量

    106915
  • 算法
    +关注

    关注

    23

    文章

    4763

    浏览量

    97269
  • 函数
    +关注

    关注

    3

    文章

    4408

    浏览量

    66923

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    神经网络的初步认识

    日常生活中的智能应用都离不开深度学习,而深度学习则依赖于神经网络的实现。什么是神经网络神经网络的核心思想是模仿生物神经系统的结构,特别是大
    的头像 发表于 12-17 15:05 35次阅读
    <b class='flag-5'>神经网络</b>的初步认识

    NMSIS神经网络库使用介绍

    NMSIS NN 软件库是一组高效的神经网络内核,旨在最大限度地提高 Nuclei N 处理器内核上的神经网络的性能并最​​大限度地减少其内存占用。 该库分为多个功能,每个功能涵盖特定类别
    发表于 10-29 06:08

    在Ubuntu20.04系统中训练神经网络模型的一些经验

    , batch_size=512, epochs=20)总结 这个核心算法中的卷积神经网络结构和训练过程,是用来对MNIST手写数字图像进行分类的。模型将图像作为输入,通过卷积和池化层提取图像的特征,然后通过全连接层进行分类预测。训练过程中,模型通过最小化损失函数来优化模型参数,从而提高分类准确性。
    发表于 10-22 07:03

    液态神经网络(LNN):时间连续性与动态适应性的神经网络

    1.算法简介液态神经网络(LiquidNeuralNetworks,LNN)是一种新型的神经网络架构,其设计理念借鉴自生物神经系统,特别是秀丽隐杆线虫的神经
    的头像 发表于 09-28 10:03 737次阅读
    液态<b class='flag-5'>神经网络</b>(LNN):时间连续性与动态适应性的<b class='flag-5'>神经网络</b>

    无刷电机小波神经网络转子位置检测方法的研究

    摘要:论文通过对无刷电机数学模型的推导,得出转角:与三相相电压之间存在映射关系,因此构建了一个以三相相电压为输人,转角为输出的小波神经网络来实现转角预测,并采用改进遗传算法来训练网络结构与参数,借助
    发表于 06-25 13:06

    BP神经网络网络结构设计原则

    BP(back propagation)神经网络是一种按照误差逆向传播算法训练的多层前馈神经网络,其网络结构设计原则主要基于以下几个方面: 一、层次
    的头像 发表于 02-12 16:41 1282次阅读

    BP神经网络与卷积神经网络的比较

    BP神经网络与卷积神经网络在多个方面存在显著差异,以下是对两者的比较: 一、结构特点 BP神经网络 : BP神经网络是一种多层的前馈
    的头像 发表于 02-12 15:53 1386次阅读

    BP神经网络的优缺点分析

    自学习能力 : BP神经网络能够通过训练数据自动调整网络参数,实现对输入数据的分类、回归等任务,无需人工进行复杂的特征工程。 泛化能力强 : BP神经网络通过训练数据学习到的特征表示
    的头像 发表于 02-12 15:36 1636次阅读

    什么是BP神经网络的反向传播算法

    BP神经网络的反向传播算法(Backpropagation Algorithm)是一种用于训练神经网络的有效方法。以下是关于BP神经网络的反向传播算法的介绍: 一、基本概念 反向传播算法是BP
    的头像 发表于 02-12 15:18 1330次阅读

    BP神经网络与深度学习的关系

    BP神经网络与深度学习之间存在着密切的关系,以下是对它们之间关系的介绍: 一、BP神经网络的基本概念 BP神经网络,即反向传播神经网络(Backpropagation Neural N
    的头像 发表于 02-12 15:15 1385次阅读

    BP神经网络的基本原理

    BP神经网络(Back Propagation Neural Network)的基本原理涉及前向传播和反向传播两个核心过程。以下是关于BP神经网络基本原理的介绍: 一、网络结构 BP神经网络
    的头像 发表于 02-12 15:13 1560次阅读

    BP神经网络在图像识别中的应用

    BP神经网络在图像识别中发挥着重要作用,其多层结构使得网络能够学习到复杂的特征表达,适用于处理非线性问题。以下是对BP神经网络在图像识别中应用的分析: 一、BP
    的头像 发表于 02-12 15:12 1216次阅读

    如何训练BP神经网络模型

    BP(Back Propagation)神经网络是一种经典的人工神经网络模型,其训练过程主要分为两个阶段:前向传播和反向传播。以下是训练BP神经网络模型的步骤: 一、前向传播 前向传播是信号在
    的头像 发表于 02-12 15:10 1492次阅读

    深度学习入门:简单神经网络的构建与实现

    / (1 + np.exp(-x))   定义神经网络结构和参数初始化: 收起 python   # 输入层节点数input_size = 2# 隐藏层节点数hidden_size = 3# 输出层节点数output
    的头像 发表于 01-23 13:52 863次阅读

    人工神经网络的原理和多种神经网络架构方法

    在上一篇文章中,我们介绍了传统机器学习的基础知识和多种算法。在本文中,我们会介绍人工神经网络的原理和多种神经网络架构方法,供各位老师选择。 01 人工神经网络   人工神经网络模型之所
    的头像 发表于 01-09 10:24 2301次阅读
    人工<b class='flag-5'>神经网络</b>的原理和多种<b class='flag-5'>神经网络</b>架构方法