论文笔记:Learning Social Image Embedding with Deep Multimodal Attention Networks
感想
1 介绍
把社交媒体数据用于embedding是一项巨大的挑战。首先,社交图片包含有不同形式的表示,例如图片和文本描述。这些数据形式在特征空间上是异构的;第二,这些数据中存在连接关系,这表明一个高效的embedding应该均衡非线性网络信息和数据内容,用来学习一个合一的表示;第三,社交网络的社交图片的数量已经是爆炸性的增长。因此,它需要一个高效的方法来从大量的数据中学习嵌入。图1给出了一个社交图片的样例。
大多数现有的社交媒体数据嵌入方法可以被分类为两类,例如基于网络和基于内容。基于网络嵌入方法学习几点的一个表示,用来捕获网络结构,这包含着基于浅层模型的方法,例如GraRep,Line和PPNE,以及基于深度模型的方法,例如SDNE。这些方法主要使用网络中近似的信息来学习嵌入,忽略了结点包含的内容。基于内容的方法主要使用一个监督方法或者半监督方法来学习图片和文本的联合表示,这忽略了数据之间的联系,以及不同数据形式之间的细粒度的关系。即使HNE结合了网络和内容用于embedding learning,它对不同数据形式的独立建模,学习过程很费时。
与此同时,社交媒体数据的多模态,异构和相互连接的特点可以为社交数据embedding提供线索。首先,社交图片没有孤立的存在,而是显式的或隐式的连接。即使相互连接违背了在大多数统计机器学习算法中的独立同分布的假设,内容和连接信息可以同时被利用来弥补彼此,一次得到更好的解决方案;第二,即使不同形式的内容是异构的,但是它们之间存在细粒度的联系。例如,如上面图1,一些单词,例如“dog”,”baby”,”flowers”和对应图片区域相联系。如果关系被精确的解析,这些单词和视觉区域可以以一种亲密的方式建模,根据需要,突出的特征是可以排在最前面。
为了解决上述的挑战,我们提出利用链接信息和社交图片的多模态的内容过来做embedding。特别地,(1)怎样在学习的表示中捕获不同数据形式的细粒度的关系;(2)怎样把链接关系融入到社交图片的embedding。我们对这些疑问的解决方案叫做用于社交图片embedding的Deep Multimodal Attention Networks。它旨在学习社交图片embedding,可以同时对基于多模态内容和网络结构进行编码为一个联合的深度模型。框架如图2所示。
视觉文本注意力模型利用不同数据形式的细粒度的关系,以此作为社交图片嵌入,文本区域和图片单词的对齐以此来阻止模型被单个模态占据主导。为了把链接信息结合用于embedding。建立在CNN基础上的Siamese-Triplet神经网络结构用于对网络结构进行建模。接着,用一个联合模型来集成这两个组件,把多模态内容和链接信息嵌入到一个合一的向量空间。为了改进模型推断的效率,我们在Triplet网络中应用了正负采样的方法,这大大减少了优化方法的时间复杂度。
2 贡献
这篇文章的主要贡献总结如下:
1. 和传统的数据embedding方法不一样,我们研究了学习linkage-embedded社交图片嵌入的问题,这种方法学习的嵌入可以很好的捕获多模态内容和网络结构。我们的方法是非监督且任务独立的,因此这种方法适合很多面向网络和基于多模态数据挖掘的应用。
2. 我们提出了一个联合深度模型(DMAN),解决了结合内容和链接用于embedding学习的挑战,这两个模型能分别捕获多模态内容和网络结构,然后用一个深度网络来把它们集成起来。
3. 我们在真实世界数据集上比较了一些最好的baseline算法,实验结果证明了我们提出模型的优越性。
3 学习社交图片嵌入
3.1 问题陈述
其中,V={V1,…,VN},V是一个节点的集合,ε是边的集合。一个边,属于集合ε,当且仅当Vi和Vj的无向连接存在。为了进一步简化的理解,我们假定在网络中有两种类型的对象:image(V)和text(T),每个结点包含一对两种类型的对象。然后
其中,一张图片表示为一个矩形张量形式,V_i∈R^L,L表示tag词汇量的大小。
图2阐明了我们方法的框架。详细地,为了对社交图片的联系进行编码,Siamese-Triplet神经网络是对图片的三元关系进行建模,例如,对于一个给定的图片,正图片是随机抽样的图片链接它的,负图片是随机图片没有链接它的。Siamese-Triplet神经网络有三个相同的基网络组成,它们共享相同的参数,有一个hinge rank损失来学习正负图片的排序。为了捕获图片区域和文本单词的细粒度的关系,我们提出了一个多模态注意力网络(multimodal attention networks)模型,为给定社交图片的输入单词和视觉区域给定一个合理的注意力权重(reasonable attention weights),随后我们用一个联合深度模型来融合这两个组件,挺且同时优化他们。网络中的链接数量随着结点的增加呈现爆炸性的增长,直接通过在每次迭代中更新整个网络来优化目标函数会导致复杂度爆炸。因此,我们提出一个正负图片采样的方法来减少训练的复杂度,在推导过过程中对每张照片随机采样一个正图片和K个负图片,这只有线性的复杂度。
3.2 Siamese-Triplet Neural Network Model
其中,M表示两个相似度的间隙参数(gap parameter),我们在实验中经验的设置M=0.3.因此我们用于训练的目标函数定义为:
其中,N表示结点的总数,L2规范化用dropout层来替代。
选择负样例来用语学习排序是比较重要的,我们使用mini-batch SGD的方法来训练模型,对于每对和,我们在相应的batch B上来随机采样K个负样例。对于样例的每个三元组之一,三个样例的梯度是分别计算的,参数通过反向传播方法更新。为了确保片段和每次查找不同的负匹配,所有的图片在训练的每次迭代中随机打乱。对于我们的实验,我们设置K为3.
3.3 视觉文本注意力模型
给定一个image-text对,我们的目标是自动发现单词和文本区域的关系。令T_i={t_i^0,t_i^1,…,t_i^k,…,t_i^L },T_i∈R^L表示第i对的文本特征,它是一个one-hot单词向量,长度为L,其中k表示单词的索引。令V^i表示对应T_i的原图片。我们用CNN来获取图片区域映射Ri,对于Vi的R_i={r_(i,0),r_(i,1),…,r_(i,j),…r_(i,D)}∈R^(D×M)定义如下:
其中θ_c是CNN层的参数,j表示区域的索引,D表示图片区域的维度,M是map的维度。
其中,z_(i,j)^k代表在图片i中区域i对应单词k的未归范注意力的值,a_(i,j)^k代表图片i中区域j对应的单词k的规范化注意力的值。如果把单词k指派到输入图片,我们应该给予相关的图片区域一个更高的值。注意力估计值f_a (.)可以用很多方式来计算,例如CNN。在这篇文章中,它被定义为一个序列化分布的全连接层,用如下的方式计算:
其中w∈R^(L×M)和b∈R^L组成了注意力模型的参数集合θ_a.(公式5),在反向传播的时候来更新。Tanh激励用于使得模型变得非线性。
令r_(i,j)∈R^(L×M)表示Ri中区域j的视觉特征向量,规范化的注意力的值作为每个单词的代权特征和,来获取输出特征如下:
注意力模型的结构解释如图4,上面的公式有点像每个单词的代权均方池化层,和原来所有单词共享的独立视觉特征相比,带权视觉特征映射u_i^k在把图片区域映射到相关的的单词k上更有效。U_i的维度是R^(L×M),而T_i∈R^L。为了比较视觉输出特征和文本特征,我们堆叠了一些LFC(Locally Fully Connected)层来获取视觉特征的L维度输出,LFC层局部全连接每个单词,对应不同单词的参数集合是独立的。即u_i^k仅仅和对应每个单词k的ti有关。注意,最后的LFC层仅仅对词汇表中每个单词有1个神经元,LFC设置了最后的输出的维度是L,最后的LFC层的激励sigmoid,该激励用来规范化估计单词置信度的特征表示,这是通过比较ground
truth text向量来估计的。令Y_i∈R^L为LFC层的最后输出:
其中,f_w是f_c的pipeline,f_c,f_a和θ_w是θ_c, θ_a和θ_l的集合。
参数θ_w是学习到的,通过最小化Yi和Ti之间的带权二分交叉熵损失,
其中N是这些对的数量,λ是一个平衡参数。Ti中的零参数比非零参数多,很合理的惩罚更多的错误负样例。
3.4联合的嵌入模型
4 实验
4.1 实验设置
1) NUS Web Image Database(NUS-WIDE)数据集是一个web图片数据集,包含269 648张图片,其中226 912张可以在Flickr源中获得。
2) MIR Flickr Retrieval Evaluation(MIR)数据集包含一百万张图片,只有25000张图片被标注了,其中13 368张标注的图片可以在Flickr源中获得。
3) PASCAL Visual Object Classes Challenge(PASCAL)数据集包含9963张图片,其中9474张标注的图片可以在Flickr源中获得。
我们预处理了这些数据集。首先,这里面有很多噪声图片,这些图片不属于任何他们的ground truth标签,我们移除了这些样本。随后,我们使用了最频繁的1 000个标签作为文本词汇表,构造了一个1000-D 的0-1向量用于文本内容。我们进一步移除了不包含词汇表任何单词的image-text对。最后,我们随机的采样image-text对用作训练和测试,比率为4:1。我们构造了一个网络,把每个image-text对当做一个节点,如果他们有至少一个共同的标签,他们之间建立一条边。对于每个结点,最多采样50个链接来构造稀疏的邻接矩阵。我们用out-of-sample策略来评估我们的框架。数据集的最终统计在下表1,注意到NUS-WIDE的90000个结点是随机采样的,其中53844个结点用于训练,36352用于测试。
4.2 Baselines
1) CCA: Canonical Correlation Analysis把两种类型的输入数据嵌入到一个共同的隐式空间,就他们的关系来优化一个目标函数。
2) DT:一个迁移学习的方法,它使用隐式的嵌入来建立图片和文本语义距离的桥梁。
3) LHNE:HNE(Heterogeneous Network Embedding)的线性版本。
4) KCCA: Canonical Correlation Analysis的核版本。
5) DCCA: 基于image-text匹配方法的深度canonical correlation analysis。
6) DMAN triplet:仅仅使用图片来构造triplet 神经网络,网络直接学习表示。它用于评估嵌入的triplet网络的有效性。
7) DMAN Triplet+text:文本内容通过DMAN triplet,其中文本内容通过使用一个全连接网络来结合,而不是一个注意力网络。