一种深度自动回归的多模态数据主题建模方法
摘要
基于潜在 Dirichlet 分配(LDA)的主题建模已成为处理多模态数据(如图像注释任务)的首选框架。建模多峰数据的另一种流行方法是通过深层神经网络,例如深层 Boltzmann 机器(DBM)。最近,提出了一种新型的主题模型,称为文档神经自回归分布估计器(DocNADE),并展示了文本文档建模的最新性能。在这项工作中,作者展示了如何成功地将此模型应用和扩展到多峰数据,例如同步图像分类和注释。首先,作者提出 SupDocNADE,这是 DocNADE 的有监督的扩展,它提高了学习的隐藏主题特征的判别能力,并展示了如何使用它来从图像视觉单词,注释单词和类别标签信息中学习联合表示形式。LabelMe 和 UIUC-Sports 数据集并显示与其他主题模型相比具有优势。其次,作者建议对模型进行深度扩展,并提供训练深度模型的有效方法。实验结果表明,在多媒体信息检索(MIR)Flickr 数据集上,作者的深度模型优于其浅层模型,并达到了最新的性能。
研究简介
主题模型可以通过从文档中包含的单词推断文档在主题上的潜在分布,从而从文档中提取有意义的语义表示。在计算机视觉的背景下,可以通过首先从图像中提取所谓的“视觉单词”,将图像转换为视觉单词文档并在视觉单词袋上训练 LDA 主题模型来使用 LDA。另一种方法是通过使用人工神经元模拟的分布式表示。在文档建模领域 Salakhutdinov 和 Hinton 提出了一个用于单词袋的所谓“复制 Softmax”(RS)模型。RS 模型后来用于多峰数据建模,其中在深的 Boltzmann 机器(DBM)中共同对图像和文本注释对进行建模。这种用于多模态数据生成建模的深度学习方法在 MIR Flickr 数据集上实现了最先进的性能。另一方面,它还与 LDA 及其不同的扩展共享对数据的随机潜在表示的依赖,在训练和测试时需要变化近似和 MCMC 采样。另一种基于神经网络的最新多模态数据建模方法是多模态深度递归神经网络(MDRNN),其目的是通过最小化信息变化而不是最大程度地预测其余数据模态中的缺失数据模态。
最近,在 Larochelle 和 Lauly 中提出了另一种用于文档的生成建模方法。这项工作提出了一种文档神经自回归分布估计器(DocNADE),该模型通过将其分解为条件分布的乘积(通过概率链规则)并对每个条件进行建模,从而直接对文档中单词的联合分布进行建模。
图 1 SupDocNADE 的深度扩展
在本文中,作者考虑了 DocNADE 在计算机视觉中处理多峰数据的应用。更具体地说,他们首先提出 DocNADE(SupDocNADE)的监督变体,该变体可用于对图像的视觉单词,注释单词和类标签上的联合分布进行建模。作者研究了如何成功地合并有关视觉单词的空间信息,并强调了校准训练目标的生成和区分成分的重要性。结果证实,这种方法可以胜过其他主题模型,例如 LDA 的监督变体。此外,文章还提出了 SupDocNADE 的深度扩展,该扩展学习了成对的图像和注释词的深度和区分性表示。如图 1 所示,SupDocNADE 的较深版本胜过其较浅的版本,并在具有挑战性的 MIR Flickr 数据集上实现了最新的性能。
DocNADE
在 Larochelle 和 Lauly 中,DocNADE 用于对真实单词的文档进行建模,这些单词属于一些预定义的词汇表。为了对图像数据建模,作者假设图像首先已被转换为视觉单词袋。一种标准方法是通过对从所有训练图像中密集提取的 SIFT 描述符执行 K-均值聚类来学习视觉单词的词汇。图像都可以表示为视觉词袋 v = [v1,v2,...。。。,vDv],其中每个 vi 是最接近的 K 均值聚类到从图像中提取的第 i 个 SIFT 描述符的索引,Dv 是为图像 v 提取的描述符数。DocNADE 通过将视觉单词 p(v)重写为
有关原始 DocNADE 的进一步原理参见论文。
多模态数据的 SupDocNADE
使用无监督主题模型(例如 LDA)学习图像特征表示的效果要比直接在视觉单词本身上训练分类器的效果差。原因之一是,无监督的主题特征经过训练可以尽可能多地解释图像的整个统计结构,并且可能无法很好地模拟作者在计算机视觉任务中所追求的特定区分结构。
SupDocNADE 中,给定图像 v = [v1,v2,...。。。,vDv]及其类别标签 y∈{1,。。。,C},SupDocNADE 将完整的联合分布建模为
详细优化过程见论文,这里给出详细的算法伪代码,见算法 1 和算法 2。
算法 1 计算
算法 2 计算参数梯度
为了处理图像不同区域特征,作者对视觉单词的存在及其出现的区域的身份进行建模。具体来说,假设图像被分为几个不同的区域 R = {R1,R2,。。。,RM},其中 M 是区域数。该图像现在可以表示为
要将注释单词嵌入到 SupDocNADE 框架中,作者对待每个注释单词的方式与处理视觉单词的方式相同。具体来说,作者使用所有视觉和注释词的联合索引,并使用较大的二叉词树,以便为注释词添加叶子来扩充它。通过在此联合图像/注释表示上训练 SupDocNADE,它可以了解标签,空间嵌入的视觉单词和注释单词之间的关系。
SupDocNADE 的深度扩展
尽管 SupDocNADE 的性能比其他主题模型要好,但是缺乏有效的 SupDocNADE 的深层次表述会降低其建模多模态数据的能力,作者进一步提出 SupDeep-DocNADE,即用于多模数据建模的受监督的深度自回归神经主题模型。之前 SupDocNADE 会在每次随机梯度更新之前对单词进行随机排列,以使 DocNADE 成为对单词进行任何排序的良好推理模型。可以将许多排序的使用看作是许多不同 DocNADE 模型的实例化,每种不同的排序都有一个。从这个角度来看,通过对所有这些顺序训练一组参数(连接矩阵和偏差),能有效地在这些模型中采用了参数共享策略,并且训练过程可以解释为同时训练了数量众多的 DocNADE 模型。
在扩展优化之后,可以通过随机梯度下降进行 DocNADE 的训练。对于给定的训练示例,新的流程如下:
因此,与 DocNADE 的原始训练过程不同,训练更新现在需要计算单个隐藏层,而不是 Dv 隐藏层。这样,添加更多的隐藏层只会对每个训练更新的复杂性产生累加而不是乘法的影响。如常规深前馈神经网络中一样,添加了隐藏层,如下所示:
进一步的,原先的混合损失函数可以改写为:
原文链接:https://arxiv.org/pdf/1409.3970
部分实验数据集、实验验证结果和 SupDocNADE 模型可在官网查询下载:https://sites.google.com/site/zhengyin1126/home/supdeepdocnade
致谢
本文由南京大学软件学院 2019 级硕士夏志龙翻译转述
本论文转述项目受到国家自然科学基金重点项目(项目号:61932012,61832009)支持。