Attribute Propagation Network for Graph Zero-shot Learning翻译

Attribute Propagation Network for Graph Zero-shot Learning

摘要

零样本学习(ZSL)的目标是训练一个模型来分类在训练期间没有看到的样本。为了解决这个具有挑战性的任务,大多数ZSL方法通过一组预定义的属性将不可见的测试类与可见的(训练)类关联起来,这些属性可以在相同的语义空间中描述所有类,因此在训练类中学习的知识可以适用于不可见的类。在本文中,我们的目标是优化ZSL的属性空间,通过训练一种传播机制,在类图上基于类的邻居和相关类精炼每个类的语义属性。我们证明了传播的属性可以为零样本类产生分类器,并且在不同的ZSL设置下性能有显著提高。类的图通常是免费或非常便宜地获得的,例如WordNet或ImageNet类。当没有提供图时,给定类的预定义语义嵌入,我们可以学习一种以端到端方式生成图的机制以及传播机制。然而,这种图解技术在文献中还没有得到很好的探索。本文引入了属性传播网络(APNet),该网络由1)为每个类生成属性向量的图传播模型和2)参数化最近邻(NN)分类器组成,将图像分类为与图像嵌入的属性向量最接近的类。
为了更好地泛化看不见的类,与以前的方法不同,我们采用了一个元学习策略来训练传播机制和多个子图上的神经网络分类器的相似度度量,每个子图与一个训练类子集上的分类任务相关联。在两个零样本学习设置和五个基准数据集的实验中,APNet获得了令人瞩目的性能或最新的最先进的结果。

介绍

想象力是一种综合新事物和从现有事物中推理新模式的能力,它在人类在监督信息不足的情况下探索和学习未知世界中发挥着重要作用。给定描述不同类的属性列表,人类可以准确地对图像进行分类,即使他们以前从未见过这个类的样本。例如,如图1所示,将每个图像与一组给定的属性进行匹配并不困难。然而,在这个看似简单的任务之下,我们正在想象——想象图像中的颜色、形状和概念如何与描述它们的词(例如类名)相关联。这就提出了一个问题:机器也能“想象”吗?可以训练机器匹配基于文本的属性表示和视觉特征表示吗?

在这里插入图片描述

零样本学习(ZSL)是一项具有挑战性的任务,旨在学习一个模型来对任何只给定类的语义属性的不可见类的图像进行分类。通过建立一个场景,并要求模型根据不可见类的语义属性“想象”不可见类的视觉特征(Lampert, Nickisch, and Harmeling 2014),可以准确测试用于训练可见类学习到的知识是否能够归纳为不可见类。广义零样本学习(GZSL)假设了一个更实用的场景。它仍然仅基于没有训练样本的测试类的语义属性,但测试集由可见类和不可见类的数据组成,预测也不限于不可见类的范围。新的挑战来自可见类和不可见类之间的不平衡,以及模型将不可见类图像错误地分类为可见类或反之的可能性。它要求模型易于适应不可见类,同时保持其在可见/训练类上的性能不下降,而潜在的问题可能是:1)输出预测倾向于可见/训练类;2)适应性模型忘了训练的类别。

由于缺乏不可见类的训练样本,传统的监督学习方法不能有效地应用于ZSL。然而,即使在这种极端的情况下,也可以通过探索不可见类和可见类之间的关系来获得不可见类的图像的视觉模式(如果给定它们的语义嵌入在相同的属性空间中),因为不可见类可能与许多可见类共享属性。因此,学习不可见类的分类器可以简化为学习属性空间和视觉特征空间之间的转换(Frome et al. 2013;Xie等人2019年),并且可以为属性空间中不可见的类生成一个简单的基于距离的分类器。在过去几年中,学习语义-图像转换的方法一直是零样本学习最流行的方法,包括线性(Frome et al. 2013)和非线性(Socher et al. 2013;Xian等人2016年)转换。

在以往的工作中,属性空间通常是由人类专家手工制作或预先训练的,如类名的词嵌入,并且与零样本学习模型无关。它是连接不可见类和为可见类学习的视觉模式的唯一桥梁,因此ZSL的质量和鲁棒性在很大程度上依赖于属性空间。此外,预定义的属性空间不能完全捕获对ZSL来说最重要的不同类之间的关系。本文以端到端的方式,通过训练属性在类图上的传播机制和零样本分类器模型来优化属性空间和向量。因此,我们可以通过充分探索类间关系来细化类的属性向量,使其在ZSL任务中具有更丰富的信息,这在以往的研究中并不少见。上述策略需要预先绘制类的图表。幸运的是,在很多情况下,类别的层次结构和图表通常都是免费或廉价获得的,例如,生物分类中的物种,诊断和公共卫生系统中的疾病,以及电子商务网站上的商品。

在本文中,我们的目标是优化ZSL环境下的属性空间,并利用类间关系来生成每个类更强大的属性向量。我们提出“属性传播网络(APNet)”作为神经网络模型,该模型传播类图中每一个类的属性到它的邻居类,从而生成属性向量,紧随其后的是一个最近邻分类器,最近邻分类器有一个可学习的矩阵,该矩阵用于生成对图片的预测(基于这张图片在可学习的属性空间中的最近邻类)。传播过程通过图上邻近类的属性向量的加权和来更新每个类的属性向量。
当类别图不可用或不可访问时,我们进一步在传播中使用注意力模块,给定类的预定义语义嵌入,生成类的图。
它计算语义空间中类之间的相似度,并对相似度值进行阈值化,以确定是否在图上添加两个类之间的边。以上所有组件都可以在训练类及其示例上以端到端的方式一起训练。为了更好地泛化不可见类和计算效率,我们采用一种元学习策略在多个随机抽样的子图上训练APNet,每个子图定义一个分类任务。

在五个广泛使用的基准数据集上进行实验, APNet在实用的通用零样本学习设置中获得了新的最先进的结果,并匹配了零样本学习设置中的当前最先进的结果。我们进一步对APNet的几种可能变种进行了消融研究,结果表明元学习训练策略对APNet的传播机制具有显著的促进作用。

在这里插入图片描述

图2.APNet使用t-SNE (Maaten and Hinton 2008)生成的每个类的细化属性向量的可视化,以及基于每个类的给定语义嵌入生成的类图。红色节点和蓝色节点分别是训练类和测试类的传播属性向量。在散点图中,强相关类的属性向量相互接近,这些类之间由生成的美食图上的边连接(用彩色更好看)。

相关工作

在这里插入图片描述

图3. 属性传播过程:1. 初始化节点特征:不同类的属性向量由不同颜色的点表示。每个属性向量都与来自相应类的一些图像相关联。节点的特征向量通过专家系统来转换属性从而实现初始化。2. 确定图边:如果传播图上的两个节点的特征向量之间的相似度超过预先确定的阈值,则它们之间由一条边连接。3.图上传播:节点特征通过注意机制进行传播。4. 零样本预测:传播后,一个相似性矩阵(对环境敏感和对结构敏感的属性表示 and 查询图像特征表示之间的相似性矩阵)被学习出来。将传播后的属性向量与嵌入属性空间的查询图像之间相似性最大的类作为预测类。

零样本学习(ZSL) (Larochelle, Erhan, and Bengio 2008;Lampert, Nickisch和Harmeling 2014;Xian et al. 2019)是一个长期研究的开放性问题。传统的方法学习语义属性空间和视觉特征空间之间的转换(例如,深层神经网络的隐藏空间)。在这些工作中,给定一个学习到的相似度度量,将ZSL投入到一个检索任务中,通过基于学习到的转换从一组候选向量中检索相关属性来确定标签(Frome et al. 2013;Akata等人2015a;2015 b;Romera-Paredes和Torr 2015;Kodirov, iang, Gong 2017;Xian等人2016;Socher等人2013年)。可见类和不可见类之间的隐含关系是,不可见类的属性可以看作是可见类的属性的混合。例如,混合了seen类的语义特征(Norouzi et al. 2013)或混合了一些在seen类上训练的幻影类的权重(Chang-pinyo et al. 2016)。

最近,研究人员开始将知识图与零样本识别相结合(Wang, Ye, and Gupta 2018; Kampffmeyer等人2019年)。他们使用图卷积网络(graph convolutional network, GCN),它依赖于给定的知识图来提供邻接矩阵和边。相比之下,我们使用一种改进的图形注意力网络(GAN) (Shen等人,2018;2019),它能够学习相似性度量和边,即使没有任何预定义的图或度量。因此,在APNet中学习到的传播方案在建模任务内关系方面具有更强的能力,可以应用到更实际的场景中。由于这个原因,它们不能应用于大多数不提供图形的ZSL基准数据集。他们的GCN输出是每类一个全连接层,作为一个单类分类器,其目的是近似预训练好的CNN最后一层对应的部分,而我们的APNet输出是每类一个原型,从中我们为每个任务构建一个KNN分类器。因此,他们需要CNN能够预测所有少样本任务的所有可能的类。相比之下,我们的每类分类器/原型不需要任何ground truth,所以任何预先训练好的CNN都可以用来为APNet提供特征。

我们的属性传播思想是受信念传播、消息传递和标签传播的启发而产生的。它也与图神经网络(GNN)有关(Henaff, Bruna, and LeCun 2015;Wu et al. 2019),在图上迭代地应用卷积和注意来构建节点嵌入。与我们的工作不同,他们的任务定义在图结构数据上,即节点分类(Hamilton, Ying, and Leskovec 2017)、图嵌入(Pan等人2018)和图生成(Dai等人2018)。我们只使用类别/类之间的关系,并构建沿着图层次结构传递消息的计算图。我们的训练策略的灵感来自于(Santoro et al. 2016)提出的元学习训练策略,该策略被广泛应用于元学习和少样本学习文献(Finn, Abbeel, and Levine 2017;斯内尔、斯沃斯基和泽梅尔2017;Dong and Yang 2019),特别是图元学习(Liu et al. 2019a;2019 b)。然而,本文通过训练一个新的模型,即AP-Net来解决零样本学习问题。

问题定义

零样本学习的目标是学习一种模型,它可以泛化到新的类或任务,这些类或任务的语义属性是给定的,但不提供训练数据。例如,该模型被应用于一些可见和不可见类的分类任务,语义属性可以具有属性向量的形式,例如类的主颜色,或类名的嵌入词。

假设训练集 X t r X^{tr} Xtr和测试集 X t e X^{te} Xte以及数据空间X的样本。每个训练数据 x ∈ X t r x \in X^{tr} xXtr都有一个标签 y ∈ y s e e n y \in y^{seen} yyseen.模型测试 X t e X^{te} Xte,这个测试集不仅仅包括可见类还包括不可见类。挑战在于可见类和不可见类没有重叠。因此,每个类的语义属性就扮演一个训练类别和测试类别之间的桥梁。特别的,每个类 y ∈ y s e e n ∪ y u n s e e n y \in y^{seen} \cup y^{unseen} yyseenyunseen也和语义嵌入向量 s y ∈ S s_y \in S syS联系起来。

一个映射: F : X → y F:X→y F:Xy从数据映射到标签很难去学习因为训练集和测试集没有交集。另一种方法是学习一个数据到语义属性的映射: F : X → S F:X→S F:XS. 在APNet中,我们学习到一个KNN分类器:模型学习一个矩阵来测量类别的语义属性和图片的表示之间的相似性。语义属性向量是类标签的描述。相似性越高,图片属于这个类的概率就越高。类之间的层次关系通过遍历图的属性传播机制合并到语义表示中。在下面几节中,我们将讨论如何构建传播图,如何沿着传播图传播,以及如何根据传播的属性表示做出预测。

属性传播网络

我们提出了一种用于零样本学习的属性传播网络(APNet)。APNet基于语义距离或类层次结构传播每个类的属性表示彼此之间,共享可见类和不可见类,所以可以利用传播属性表示类之间的关系并且产生环境敏感/层次敏感的属性表示。
我们学习了一个参数KNN分类器,因为KNN分类器在数据有限时具有更好的通用性。KNN中的预测依赖于一个学习到的相似性度量,该度量用于衡量查询图像和每个候选类的传播语义表示之间的差异。根据图结构编码的属性表示,学习到的相似性更容易推广到看不见的类。然而,挑战依然存在。在本节的其余部分中,我们将说明对其中四个挑战的解决方案。

  1. 如何为传播图选择节点?

我们假设传播过程基于图 G = ( y , ε ) G=(y,\varepsilon ) G=(y,ε),其中每个节点表示一个类,每条边连接两个类,作为传播途径。之前的工作通过预训练的类层级作为传播图,比如Wordnet,在他们的方法中,每一个有向边连接父节点和子节点。然而,这种类型的图结构有几个限制:1、他需要额外的层级信息,而这并不总是可得的。2、图结构需要保持完整,并且需要有一个子图,覆盖所有目标分类类/节点以及它们的邻居。一个包含有许多缺失特征的邻居节点的稀疏图在通过连接节点传递信息时将引入噪声,这可能导致计算开销,从而阻止在几个步骤内完成传播。为了灵活地将图传播应用于类,而不管类在实际的类层次结构中是如何分布的,在传播阶段将缺少信息的节点排除在外。这样,传播过程就不会受到训练集所揭示的那些“空白”节点的干扰。

  1. 如何表示传播图中的节点特征?

我们假设每个节点都有一个特征表示。每个节点的编码属性被用来初始化节点特征 X y 0 X_y^{0} Xy0,遵循下面的公式:
X y 0 = ∑ i = 1 k R e L U [ Θ i ( s y − C i ) ] X_y^{0} = \sum_{i=1}^{k}ReLU[\Theta _i\left ( s_y - C_i \right )] Xy0=i=1kReLU[Θi(syCi)]
其中 s y ∈ S s_y \in S syS 提供边缘信息,比如每个类的类名。C为类属性空间质心矩阵,由k-means聚类生成,覆盖所有训练类属性向量S。矩阵中的每一行 C i C_i Ci存储一个质心, Θ i \Theta _i Θi是一个线性变换,我们选择这个模型是因为其有效性,因为,多个属性可以共享编码参数 g i g_i gi.因此,参数的数量是线性增长的,更少的可学习参数能够减轻过拟合为题,而且,在编码之后,将具有不同维度的语义信息统一起来,以便后续模块可以使用相同维度的参数。

  1. 如何在传播图中找到边?

如前所述,图节点被选择为当前任务中可用的一批节点/类,用编码的类属性作为节点特征表示。现在我们需要通过导出图的邻接矩阵来连接节点。一种直观的方法是根据整个图类层次结构中预定义的距离,在节点i和节点j之间的邻接矩阵中定义一个值。比如,对于ImageNet中的类,邻接矩阵中每一项是 A i j = 1 / d i j A_{ij}=1/d_{ij} Aij=1/dij,其中 d i j d_{ij} dij表示距离,是在wordnet上节点i和节点j的hop.(注意,我们尝试了这种邻接矩阵,它产生了与APNet类似的结果)。不幸的是,这种策略需要关于类层次结构的额外信息,因此,在我们的方法中,我们建议使用注意机制根据节点特征表示来生成图边。更具体地说,注意力在节点特征表示对之间学习一个相似度度量a(·,·),并在相似度高的对之间生成一条边。图G的边集为:

在这里插入图片描述

其中, f ( ⋅ ) f(\cdot) f()是一个可学习的转换,$epsilon $为相似度阈值的边缘连接。为了简单起见,假设这些边是无向的。

  1. 最好的传播机制是什么?

属性传播基于前面小节中构造的图。传播是双向的,通过边使用学习的注意机制。节点特征表示是其相邻节点 N y N_y Ny的特征表示的加权和,其权重由注意机制Eq.(3)得到。在第t步,传播过程如下:

在这里插入图片描述

其中, a ′ ( ⋅ , ⋅ ) a'(\cdot,\cdot) a(,)是基于邻居 N y N_y Ny的正则化注意力分数,使用带有超参数$\gamma $的softmax来 控制softmax的平滑度:

在这里插入图片描述

可以多次应用该传播来从间接连接的邻居收集消息,并通过这样做积累对图结构的更全面的理解。图4显示了一步传播的示例。

在这里插入图片描述

图4.一阶属性传播过程。在传播之前,节点表示不同的类,节点特征表示类的属性特征。边基于每个节点特征对的相似性生成。在传播过程中,传播计算节点的邻居节点特征的加权和,权重由注意力模块给出,注意力衡量的是节点特征和其邻居。在传播之后,属性表示由来自邻居的属性表示混合而成。

  1. 预测的KNN

在这种方法中,我们学习属性表示和查询图像表示之间的相似性度量作为参数KNN。学习度量计算第t步传播的属性矩阵 X t + 1 X^{t+1} Xt+1与查询图像特征向量之间的相似度。受附加注意概念的启发(Vaswani et al. 2017),具有x特征的图像与y类图像之间的相似性为:

在这里插入图片描述

其中, W ( 1 ) 和 W ( 2 ) , b , w W^{(1)}和W^{(2)},b,w W(1)W(2),b,w是可学习的参数, σ \sigma σ是一个非线性激活函数,以传播的属性向量与图像向量相似度最高的类作为最终预测。预测x为y类别并进行正则化的公式为:

在这里插入图片描述

我们假设属性传播不影响关联属性标签,因此传播属性的标签与传播前的原始关联标签相同,比如,在传播之前 X y t X_y^t Xyt是y类的属性,在传播之后, X y ( t + 1 ) X_y^{(t+1)} Xy(t+1)是y类的属性。

  1. 训练策略和可扩展性

    在一个数据集中的所有节点/类上训练APNet的计算成本太高,因为注意力得分矩阵的大小随着节点/类的数量增长呈指数增长。此外,在损失计算上应用成本约束可能会使优化不稳定。因此,为了提高训练效率,我们只对一个子图进行抽样,以在每次迭代中应用传播。此外,为了提高模型对不可见节点/类的通用性,我们在每次迭代中对APNet进行不同的分类任务训练,使其能够快速适应不同的新任务。这项技术的灵感来自于元学习的训练策略,该策略最初是为Few-shot学习而开发的(Vinyals et al. 2016)。Few-shot学习的目的是建立一个模型,可以快速适应任何新的任务,只有少量的训练样本。相比之下,零机会学习的目标是学习一种模型,只需要提供语义信息就可以推广到新任务。然而,我们发现为快速适应性而设计的元学习训练策略也可以提高模型的通用性。有趣的是,这种训练策略也可能对零样本学习文献中的其他模型有益。

    在每次迭代中,从任务分布T中采样一个任务T,目的是在我们的APNet模型的基础上最小化分类任务的损失。训练目标是将经验风险降到最低:

在这里插入图片描述

其中,每个任务T都定义在类 y T ∈ y s e e n y^T \in y^{seen} yTyseen的子集, D T D^T DT是数据标签对 ( x , y ) (x,y) (x,y)的分布, X T X^T XT是任务T中类的相应传播属性矩阵; Θ \Theta Θ是可学习的参数。

实验

采用零样本学习广泛使用的数据集AWA1, AWA2, SUN, CUB, aPY. 为了避免测试集和用于预训练骨干的ImageNet-1K之间的重叠,我们遵循了前人的数据集划分,AWA1, AWA2, CUB都是Imagenet的子集。

在这里插入图片描述

在这里插入图片描述

经典的零样本学习方法,如CMT、CONSE等,往往存在训练和测试阶段不平衡的问题。他们的模型在看到的类上表现得很好,但在看不见的类上,每个类的精度很低,有些模型甚至达到了接近0%的每个类的精度。由于可见类样本的模型过拟合导致可见类和不可见类的精度不平衡,在每个数据集上获得具有竞争力的广义零拍学习结果具有挑战性。我们的APNet在所有五个数据集上都取得了最先进的结果。我们的模型取得了更好的结果,特别是在从ImageNet提取的数据集上,即CUB, AWA1, AWA2,并且在整体标准(H)的可见和不可见精度上都取得了超过3个点的改进,不可见精度的持续改进达到了3%。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值