卷积符号
文章发表在32nd Conference on Neural Information Processing Systems (NIPS 2018), Montréal, Canada
摘要
我们探索了如何利用局部卷积神经网络之外的各种人类知识来赋予网络一个全局的语义推理能力。我们提出了一个新的符号图推理层(SGR),而不是使用单独的图模型(如CRF)或对于广泛依赖关系建模的约束。它对一组符号节点进行推理,这些符号节点的输出明确地表示先验知识图中每个语义的不同属性。为了与本地卷积配合使用,每个SGR层由三个模块构成:a)原始的本地到语义投票模块,其中所有符号节点的特征是通过从本地表示投票生成的; b)图形推理模块:通过知识图传播信息以实现全局语义一致性; c)双语义到本地映射模块:学习演进的符号节点与局部表示的新关联,并因此增强局部特征。 SGR层可以在任何卷积层之间注入,并将不同的先验图形实例化。广泛的实验表明,在简单的ConvNets中结合SGR显著改善了三个语义分割和一个图像分类任务。更多分析表明,SGR层学习了具有不同标签集的域/数据集的共享符号表示,给出了通用知识图,展示了其优越的泛化能力。
1 介绍
尽管标准识别任务,例如图像分类[12]和通过卷积网络实现的分割[6],取得了显着进步,但是它主要在于更深层次和更复杂的局部卷积,而我们希望它能够捕捉到关于输入和目标之间关系的一切。但是这样的网络损害了特征的可解释性,并且缺乏对复杂的现实世界任务至关重要的全局推理能力。因此一些工作[51,41,5]制定了图模型和结构约束(例如CRF [22,19])作为影响最终卷积预测的重复工作。但是,它们无法明确增强特征表示,从而导致有限的泛化能力。最近的胶囊网络[39,14]扩展到了解跨位置的知识共享以找到特征群集,但它只能利用隐式和不可控制的特征层次结构。 正如[3]中所强调的,利用外部知识进行视觉推理对于人类决策至关重要。 缺乏对上下文和高级语义的明确推理会阻碍卷积网络在大概念词汇表中识别对象的进步,其中探索语义相关性和约束起着重要作用。 另一方面,结构化知识来记录人类观察和常识用语词汇(例如,nouns or predicates)提供了丰富的线索。 为了更好的图形推理,需要将学习的局部特征表示与桥梁语义联系起来。
在本文中,我们探讨如何将丰富的人类常识[33,53]纳入到超出局部卷积的中间特征表示学习,并进一步实现全局语义一致性。 人类常识可以形成为由概念之间的丰富关系组成的各种无向图(例如,语义层级,空间/动作交互,属性,一致性)。例如,由于一些共同的特征,“设得兰牧羊犬”和“赫斯基”共享一个超类“狗”;人们戴帽子和弹吉他,反过来却不能这样说;橙色是黄色。将结构化知识与视觉领域相关联后,所有 这些符号实体(例如狗)可以与来自图像的视觉证据相关联,因此人类可以整合视觉外观和常识知识以帮助识别。
我们试图模仿这个推理过程并将其整合到卷积网络中,即首先从本地特征通过投票表征不同符号节点的表示; 然后通过图形传播进行图形推理,增强这些符号节点的视觉证据,实现语义一致性; 最终将符号节点的演化特征映射回网络中促进每个局部表示。 我们的工作超越了先前的方法,主要在于,它直接将外部知识图的推理结合到局部特征学习中,称为符号图推理(SGR)层。 请注意,这里我们使用“符号”来表示具有明确语言意义的节点,而不是图形模型或图形神经网络中使用的传统/隐藏图节点[40,18]。
我们的SGR层的核心由三个模块组成,如图1所示。首先,每个符号节点的个性化视觉证据可以通过所有本地表示投票产生,称为本地到语义投票模块。 投票权重代表每个本地特征对某个节点的语义协议信任。 然后,给定先验知识图,图形推理模块被实例化以在该图上传播信息以用于演变所有符号节点的视觉特征。 最后,双语义到本地模块学习进化的符号节点和局部特征之间的适当关联,以结合局部和全局推理的力量。 因此,它使得特定符号节点的进化知识能够在全局推理的帮助下驱动对语义兼容的局部特征的识别。
图一:提出的SGR层概述。 每个符号节点通过本地到语义投票模块(长灰色箭头)接收所有来自本地特征的投票,并且在图形调整后将其演化后的特征映射到从语义到局部映射模块(长紫色箭头)的每个位置。 为简单起见,我们在知识图中省略了更多的边和符号节点。
我们的SGR层的主要优点在于三个方面:a)通过常识知识促进的局部卷积和全局推理可以通过学习图像特定观察与先验知识图之间的关联来协作; b)每个局部特征通过其相关的输入局部特征得到增强,而在标准局部卷积中,它仅基于其自身的输入特征和学习的权重向量之间的比较; c)从通用符号节点的学习表示中获益,学习的SGR层可以容易地转移到具有差异概念集的其他数据域。 并且SGR层可以在任何卷积层之间插入,并根据不同的知识图进行个性化。
广泛的实验表明,通过结合我们的SGR层,可以优于普通的ConvNets,特别是在三个语义分段数据集(COCO-Stuff,ADE20K,pascal-context)和图像分类数据集(CIFAR100)中识别大概念词汇表。 当将SGR层训练一个域转移到其他域时,我们进一步证明了其有希望的泛化能力。
2 相关工作
最近关于卷积网络的上下文建模的研究可以分为两个流派。一种是通过网络利用基于图形的CNN和RNN来获得图形结构数据,或者是利用高级卷积滤波器以发现更复杂的特征依赖性。在卷积网络的背景下,诸如条件随机场(CRF)之类的图形模型可以通过对基本卷积的最终预测起作用而形成复现网络。 相比之下,所提出的SGRlayer可以被视为简单的前馈层,可以在任何卷积层之间注入,并且通用于任何网络,用于大规模和语义相关的识别。 我们的工作不同之处在于局部特征被映射到有意义的符号节点。 对位置的全局推理与外部知识直接对齐,而不是隐式特征聚类,这是引入结构约束的更有效和可解释的方式。
另一种方法探索在基础网络上利用外部知识,如邓等人[9]采用标签关系图来指导网络学习,而Ordonez等人[37]学习了共同概念级别概念的映射。一些工作通过在最终预测分数上采用复杂的图形推理[9],分层损失[38]或单词嵌入先验[49]来使网络输出正规化。然而,它们的损失约束只能在最终预测层上起作用,并间接引导视觉特征为层次感知,这很难保证。最近,Marino等人。 [32]使用结构先验知识来增强多标签分类的预测,而我们的SGR提出了一个通用的神经层,可以注入任何卷积层,并允许神经网络利用从各种人类知识中获得的语义约束。陈等人 [7]利用基于区域的局部推理和全局推理来促进对象检测。相比之下,我们的SGR层直接对符号节点进行推理,并与本地卷积层无缝交互,以获得更好的灵活性。值得注意的是,人工智能中关于推理最早的研究可以追溯到象征性方法[35],通过用数学和逻辑语言对抽象符号进行推理。在将这些方法实施后,统计学习算法[23]用于提取有用的模式以在知识库上执行关系推理。 对于高级任务而言,一个足够实用的有效推理过程应该加入局部视觉表示学习和全局语义图推理的力量。 我们的推理层涉及这一系列的研究,通过当地表征投票对语言实体的视觉证据进行明确推断。
3 符号图推理
3.1通用图形构造
常识知识图用于描述一般的实体(例如,类,属性和关系)之间的不同相关性,其可以是任何形式。为了支持通用图推理,知识图可以表示为G =(N,E),其中N和E分别表示符号集和边集。这里我们给出三个例子:
a)类层次结构图由一系列实体类(例如人,摩托车手)构成,其图形边缘承担概念所有物的责任(例如“是某种”或“是…的一部分”)。具有这种层次结构知识的网络可以通过将父类的共享表示传递到其子节点来增强特征层次结构的学习。
b)类发生图将边缘定义为图像中两个类的出现,表征预测的合理性;
c)语义关系图作为更高级别的语义抽象,可以扩展符号节点以包括更多动作(例如“骑”,“播放”),布局(例如“在…之上”)和属性(例如颜色或形状) 而图形边缘是从语言描述中统计收集的。结合这种高级常识知识可以促进网络在知道每个实体对的关系后对虚假解释进行修剪,从而产生良好的语义一致性。
基于该通用公式,要求图形推理对于软图形边缘(例如,出现概率)和硬边缘(例如,所有物)以及不同的符号节点是兼容的和通用的。 因此,各种结构约束可以被建模为符号节点上的边缘连接,就像人类使用的语言工具一样。 我们的SGR层旨在实现适用于编码各种知识图形式的一般图形推理。 如图1所示,它由本地到语义的投票模块,图形推理模块和语义到本地映射模块组成,如以下部分所示。
图2:通过将Hl×Wl×D1的卷积特征张量作为输入来实现一个SGR层的细节。 ⊗表示矩阵乘法,并且表示逐元素求和,而带C的圆表示串联。 注意到,执行softmax操作,张量扩展,ReLU操作。 绿色框表示1×1卷积或线性层。
3.2本地语义投票模块
考虑到来自卷积层的局部特征向量,我们的目标是利用具有外部结构化知识的全局推理图来增强局部特征。因此,我们首先将在局部特征中编码的全局信息概括为符号节点的表示,即,与特定语义(例如cat)相关的局部特征被聚合以描绘其对应的符号节点的特征。形式上,我们使用第l个卷积层之后的特征张量Xl∈RH1×W1×Dl作为模块输入,其中H1和W1是特征图的高度和权重,D1是信道编号。 该模块旨在使用X1生成所有M = | N |符号节点的视觉表示Hps∈RM×Dc,其中Dc是每个节点n的期望特征维度,其被表达为函数φ:
Hps = φ(Aps,Xl,Wps)
其中Wps∈RD1×Dc是用于将每个局部特征xi∈X1转换为维度Dc的可训练变换矩阵,并且Aps∈RH1×W1×M表示对每个符号节点的所有局部特征的投票权重。 具体地,通过投票权重axi→n∈Aps对所有加权变换的局部特征求和来计算每个节点n的视觉特征Hpsn∈Hps,其表示将局部特征xi分配给节点n的置信度。 更具体地说,函数φ计算如下:
这里Wa = {Wa n}∈RD1×M是用于计算投票权重的可训练权重矩阵。 通过在每个位置使用softmax来标准化Aps。 以这种方式,不同的局部特征可以自适应地投票到不同的符号节点的表示。
3.3图形推理模块
基于符号节点的视觉证据,采用结构化知识引导的推理来利用人类常识的语义约束来演化符号节点的全局表示。 在这里,我们将每个符号节点的语言嵌入和知识连接(即节点编织)结合起来,用于执行图形推理。 形式上,对于每个符号节点n∈N,我们使用现成的单词向量[17]作为其语言嵌入,表示为S = {sn},sn∈RK。 图推理模块通过矩阵乘法形式对所有符号节点的表示Hps执行图传播,从而产生演化特征Hg:Hg = σ(AgBWg)
其中B = [σ(Hps),S]∈RM×(Dc + K)通过激活函数σ(·)和语言嵌入S连接变换后的Hps的特征。 Wg∈R(Dc + K)×(Dc)是可训练的权重矩阵。 根据(n,n0)∈E中的边连接定义节点邻接权重a→n0∈Ag。 如3.1节所述,根据不同的知识图资源,边缘连接可以是软权重(例如0.8)或硬权重(即{0,1})。 与Ag的简单乘法将完全改变特征向量的规模。 受图卷积网络的启发[18],我们可以归一化Ag,使得所有行总和为1以消除这个问题,即Q-1 2 AgQ-1 2,其中Q是Ag的对角节点度矩阵。 该对称归一化对应于取相邻节点特征的平均值。 该公式达到了新的传播规则:
其中Ag = Ag + I是图G的邻接矩阵,其中添加了自连接以考虑其自身的每个节点的表示,并且I是单位矩阵。 Qii = Pj Ag ij。
3.4语义到本地映射模块
最后,符号节点的演化全局表示Hg∈RM×Dc可用于进一步提高每个局部特征表示的能力。 由于每个符号节点的特征分布在图推理后已经改变,因此关键问题是如何从每个符号节点的表示hg∈Hg到所有xi找到最合适的映射。 这对于学习局部特征和符号节点之间的兼容性矩阵是不可知的。 受消息传递算法[11]的启发,我们通过评估每个符号节点hg与每个局部特征xi的兼容性来计算映射权重ahg→xi∈Asp:
其中Ws∈RD1+ Dc是可训练的权重矩阵。 兼容性矩阵Asp∈RH×W×M再次进行行标准化。 通过图形推理得到的演化特征Xl + 1,作为l + 1卷积层中的输入,可以更新为:Xl+1 = σ(AspHgWsp) + Xl,
其中Wsp∈RDc×D1是用于将符号节点表示的维度变换回D1的可训练矩阵,并且我们使用残差连接[12]来进一步增强具有原始局部特征张量X1的局部表示。 每个局部特征由来自每个符号节点的加权映射更新,这些映射表示语义的不同特征。
3.5符号图推理层
每个符号图推理层由本地到语义投票模块,图形推理模块和语义到本地映射模块的堆栈构成。 SGR层由具有不同数量的符号节点和不同节点连接的特定知识图实例化。 将多个SGR层与不同的知识图组合成卷积网络可以导致混合图推理行为。 我们通过1×1卷积运算和非线性函数的组合实现每个SGR的模块,如图2所示。我们的SGR灵活且通用,足以在任何本地卷积之间进行注入。 尽管如此,由于SGR被指定为包含高级语义推理,因此在后面的卷积层中使用SGR是更优选的,如我们的实验所示。
4 实验
由于我们提出了提出的可靠的卷积网络,我们因此将它与CocoStuff [4],Pascal-Context [34]和ADE20K [52]上的像素级预测任务(即语义分割)和CIFAR-100上的图像分类任务进行了比较[21]。 对Coco-Stuff数据集进行了广泛的消融研究[4]。
4.1 语义分割
数据集。 我们评估了三个公共基准,用于对大规模类别进行细分,这比其他小型细分数据集(例如PASCAL-VOC)带来更现实的挑战,并且可以更好地验证全局符号推理的必要性。 具体而言,Coco-Stuff [4]包含10,000个图像,其中注释为91个(例如书籍,时钟)和91个类别(例如,flower,wood),其中9,000个用于训练,1,000个用于测试。 ADE20k [52]由20,210个用于训练的图像和2,000个用于验证的图像组成,注释有150个语义概念(例如绘画,灯)。 PASCAL-Context [34]包括4,998个用于训练的图像和5105个用于测试的图像,注释有59个对象类别和一个背景。 我们使用像素精度(pixAcc)的标准评估指标和平均联盟(mIoU)。
实现。我们在一台服务器上使用Pytorch,2个gtx titan x 12GB卡进行所有实验。我们按照[6]的程序使用Imagenet预训练的ResNet-101 [12]作为基本的ConvNet,使用输出stride = 8并将SGR层合并到其中。一个SGRlayer的详细实现如图2所示。我们的最终模型模块使用{6,12,18,24}的金字塔来创建空间金字塔池(ASSP)[6]模块,以将ResNet-101的最终ResBlock中的2,048-d特征减少为256-d特征。在此之后,我们堆叠一个SGR层以增强本地特征,然后是最终的1×1卷积产生最终的像素预测。因此,本地到语义投票模块和图推理模块中的特征维度的D1和Dc被设置为256,并且我们对σ(·)使用ReLU激活函数。来自fastText [17]的字嵌入用于表示每个类,其提取子字信息并很好地概括为词汇外单词,从而为每个节点产生K = 100-d向量。
我们对所有数据集使用通用概念层次结构。在[27]之后,从包含182个概念和27个超类的COCO-Stuff [4]的层次结构开始,我们使用wordTree手动将其余两个数据集中的概念合并为[27]。它在最终概念图中产生了340个概念。因此,该概念图使得符号图推理层在所有三个数据集中可以是相同的,并且其权重可以容易地与彼此的数据集共享。我们在精确调整期间确定了ResNet-101批量标准化的移动方式和变化。我们采用标准的SGD优化。受[6]的启发,我们使用“poly”学习率策略,为新初始化的层设置基本学习率为2.5e-3,为预训练层设置2.5e-4。我们为Coco-Stuff和PASCAL训练64个时期 - 上下文和ADE20K数据集的120个时期。对于数据增加,我们采用随机浮点,随机裁剪和0.5到2之间的随机调整所有数据集。由于GPU内存限制,批量大小用作6.输入裁剪大小设置为513×513。
4.1.1与最先进的技术进行比较
表1,2,3分别报告了与Coco-Stuff,PascalContext和ADE20K数据集上最新的最新方法的比较。结合我们的SGR层显着优于所有三个数据集上的现有方法,证明了在大规模像素级识别之外执行超出局部卷积的显式图推理的有效性。图3显示了与基线“Deeplabv2 [6]”的定性比较。我们的SGR获得了更好的分割性能,特别是对于一些罕见的类别(例如伞,泰迪熊),从关于概念层次图的频繁概念的联合推理中获益。特别是,将用于分类任务的高级语义约束结合到像素识别中的技术并不是微不足道的,因为将先验知识与密集像素本身相关联是很困难的。先前的工作[38,10,49]也试图隐含地促进最近的DSSPN [27]直接为每个父概念设计了一个网络层,然而,这种方法难以扩展到大规模的概念集,导致对不太可能属于的像素进行冗余预测。与先前的方法不同,通过仅添加一个reaso,所提出的SGR层可以实现更好的结果ning layer,同时保留良好的计算和内存效率。
4.1.2消融研究
哪个ConvBlock添加SGR层?表1和表4比较了将单个SGR层添加到ResNet-101的不同阶段的变体。 “SGR ConvBlock4”表示SGR层被添加到res4的最后一个残余块之前,而所有其他变量在res5的最后一个残余块之前添加SGR层(最终残余块)。“SGR ConvBlock4”的性能比“我们的SGR(ResNet-101)“同时使用SGR层用于res4和res5(”我们的SGR(ResNet-101 2层)“)可以略微改善结果。请注意,为了使用来自ResNet-101的预训练权重,“我们的SGR(ResNet-101 2层)”直接融合来自两个SGRlayers之后的预测结果,并且最终确定最终预测。这一观察的一个可能的解释是最终res5可以编码更多语义抽象的特征,这更适合于进行符号图推理。此外,通过比较“SGR(无余残差)”与我们的完整SGR,我们发现去除方程6中的残差连接会降低最终性能,但仍然优于其他基线。原因在于SGR层通过全局推理引起更加平滑的局部特征,因此可能降低边界中的一些判别能力。
语义到本地映射的效果。 请注意,我们的SGR分别在本地到语义模块和语义到本地模块中学习不同的投票权重和映射权重。 通过在表1和表4中的“测试性能和训练收敛”中比较“我们的SGR(ResNet-101)”和“SGR(w / o映射)”,可以看出重新评估映射权重的优势。 这种对于新的语义到局部映射权重进行预测的过程可以更好地适应图形推理后的演化特征分布,否则演化的符号节点将与局部特征不对齐。
不同的先验知识图。如3.1节所述,我们的SGR层适用于任何形式的具有软边或硬边权重的知识图。因此,我们评估了利用表1中的不同知识图的结果。首先,类并发图通常用于表示出现在一个图像中的任何两个概念的频率,其描绘了统计视图中的类间合理性。我们计算了Coco-Stuff上所有训练图像的类并发图,并将其作为SGR层的输入,作为“SGR(并发图)”。我们可以看到,并入一个并发驱动的SGR层也可以提高分割性能但是,它略逊于概念层次结构。其次,我们还依次将一个SGR层与层次结构图堆叠在一起,并将一个层与并发图堆叠在一起,从而形成混合版本“Our SGR(ResNet-101 Hybrid)”。该变体在所有模型中实现了最佳性能,验证了利用知识约束的混合来提高语义推理能力的好处。最后,我们进一步探索了一个丰富的场景图,其中包含用于编码高级语义的概念,属性和关系,如“SGR(场景图)”变体。在[24]之后,场景图是从Visual Genome构建的[20]为简单起见,我们只选择对象类别,属性和谓词,这些对象类别,属性和谓词至少出现30次并且与我们在Coco-Stuff中的目标182个概念相关联。它导致一个带有312个对象节点,160个属性节点的无向图, 68个谓词节点。“SGR(场景图)”比“我们的SGR(ResNet-101)”略差,但优于“SGR(并发图)”。从所有这些研究中观察,我们因此通过平衡效率和有效性,将概念层次图用于所有其余实验。
将SGR从一个域转移到其他域。 在从局部特征投票之后,我们的SGR层自然地学习编码一般符号节点的显式语义含义,只有当这些域共享一个先行图时,其权重才能容易地从一个域转移到其他域。 如图2所示,我们可以使用在Coco-Stuff上预训练的SGR模型来初始化PASCAL-Context数据集上的训练。“我们的SGR(传输轮换)”仅表示使用预训练的残差块权重 而“我们的SGR(转移SGR)”是进一步使用SGR层参数的变体。 我们可以看到,传递SGR层的参数可以比单独传输卷积块提供更多的改进。
4.2图像分类结果
我们进一步研究了图像分类信息,其中包括50个训练图像和10个标记的100个类的CIFAR-100 [21]。我们首先了解一下基线网络的性能,即DenseNet-100 [16]。我们在最终密集块上附加SGR层,生成342个8×8大小的特征映射。我们首先使用1×1卷积层将342-d特征减少到128-d,然后依次使用一个SGR层,全局平均池和线性层来产生最终分类。具有148个符号节点的概念层次图是通过将100个类映射到WordTree生成的,类似于分段实验中使用的策略,包括在补充材料中。我们将D1和Dc设置为128.在训练期间,我们在两个GPU上使用64的小批量大小,使用600个历元的余弦学习速率调度[16]。表5中的更多比较表明,我们的SGR可以改善基线网络的性能,通过全局推理从增强功能中获益。它采用最先进的方法获得了可比较的结果,并且模型复杂性相当低。
5 结论
针对全球图解的能力,我们引入了一个符号图形理论(SGR)层,它可以帮助人们了解人类特征表征。 所提出的SGR层是通用的,轻量级的并且与现有的卷积网络兼容,包括本地到语义投票模块,图形推理模块和语义到本地映射模块。 对语义分割和一个图像分类数据集的三个公共基准的广泛实验证明了其卓越的性能。 我们的研究设计可以帮助研究卷积网络的全局合理性,并为社区中的各种应用提供有益的帮助。
相关阅读
总结的非常好,故转来,如果侵权,请告知,会及时删掉。大家还是去看原文好,作者的文章都不错:https://zhuanlan.zhihu.com/p/28749411https
通信原理相关博文目录:目录我们常在移动通信中遇到的卷积码就是一种非分组码,卷积码和信号处理中的卷积运算有关系吗?是不是就是信号
卷积神经网络的基本概念受Hubel和Wiesel对猫视觉皮层电生理研究启发,有人提出卷积神经网络(CNN),Yann Lecun 最早将CNN用于手写数字识
基于空间金字塔池化的卷积神经网络物体检测原文地址:http://blog.csdn.net/hjimce/article/details/50187655作者:hjimce一、相关理