多模态数据的主题建模:自回归方法
引用
Zheng Y, Zhang Y J, Larochelle H. Topic modeling of multimodal data: an autoregressive approach[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2014: 1370-1377.
摘要
基于 LDA 的主题建模一直是处理多模态数据的首选框架,在图像标注任务中已有了大量实例。最近,一种名为 "文档神经自回归分布估计器"(DocNADE)的新型主题模型被提出,并为文本文档建模展示了最先进的性能。在这项工作中,我们展示了如何成功地将该模型应用和扩展到多模态数据中,例如同时进行图像分类和注释。具体来说,我们提出了 DocNADE 的监督扩展 SupDocNADE,通过将标签信息纳入模型的训练目标来提高隐藏主题特征的分辨力,并展示了如何运用 SupDocNADE 从图像视觉词、注释词和类标签信息中学习联合表示。我们还描述了如何利用视觉词的空间位置信息来进行 SupDocNADE,以简单而有效的方式实现更好的性能。我们在 LabelMe 和 UIUC-Sports 数据集上测试了我们的模型,并表明它与其他主题模型,如 LDA 的监督变体和空间匹配金字塔(SPM)方法相比,具有良好的性能。
1 介绍
多模态数据建模结合了不同来源的信息,在计算机视觉领域越来越受到关注。其中一种领先的方法是基于主题建模,最流行的模型是 LDA。LDA 是一种文档的生成模型,它起源于自然语言处理界,但在计算机视觉领域取得了巨大的成功。LDA 将文档建模为话题上的多义分布,其中话题本身就是词的多义分布。虽然主题的分布对每个文档来说是特定的,但与主题相关的词的分布是所有文档共享的。因此,主题模型可以通过从文档所包含的单词中推断其在主题上的潜在分布,从文档中提取有意义的语义表示。在计算机视觉的背景下,LDA 可以通过首先从图像中提取所谓的 "视觉词",将图像转换为视觉词文档,并在视觉词袋上训练 LDA 主题模型。
为了处理多模态数据,最近有人提出了一些 LDA 的变体。例如,Corr-LDA 通过假设每个图像主题必须有一个对应的文本主题,来发现图像和标注方式之间的关系。多模态 LDA 通过学习不同模态的主题相关的回归模块,对 Corr-LDA 进行了概括。多模态文档随机场模型(MDRF)也是为了处理多模态数据而提出的,它从包含多模态数据的文档语料库中学习跨模态相似性。除了标注词,类标签模态也可以嵌入到 LDA 中,如在 sLDA 中。通过对图像视觉词、标注词及其类标签进行建模,可以提高学习图像表征的分辨能力。
大多数主题模型的核心是生成式的,其中首先生成图像的潜伏表征,随后由这个表征生成视觉词。这种方法的吸引力在于,从观察结果中提取表征的任务很容易被框定为一个概率推理问题,对此存在许多通用的解决方案。然而缺点是,随着模型变得越来越复杂,推理变得越来越琐碎,计算成本越来越高。例如在 LDA 中,推理题目上的分布并没有一个闭式解,必须用变异近似推理或 MCMC 抽样来近似。然而,该模型其实比较简单,做了某些简化的独立性假设,比如视觉词给定图像在话题上的潜伏分布的条件独立性。
Larochelle 和 Lauly 提出了一种针对文档的另一种生成式建模方法。他们的神经自回归分布估计器(DocNADE),通过将文档分解为条件分布的乘积(通过概率链规则),并使用神经网络对每个条件进行建模,直接对文档中单词的联合分布进行建模。因此,DocNADE 不包含任何潜在的随机变量,而这些变量必须在其上进行昂贵的推理。相反,可以使用神经网络的隐藏层的值,以简单的前馈方式有效地计算文档表示。Larochelle 和 Lauly 还表明,DocNADE 是一个较好的文本文档生成模型,可以提取有用的表征用于文本信息检索。
在本文中,我们考虑了 DocNADE 在计算机视觉中处理多模态数据的应用。更具体地说,我们提出了 DocNADE 的一个监督变体(SupDocNADE),它可以用来模拟图像的视觉词、注释词和类标签上的联合分布。该模型如图 1 所示。我们研究了如何成功地纳入视觉词的空间信息,并强调了校准训练目标的生成性和判别性部分的重要性。我们的结果证实,这种方法可以优于其他主题模型,如 LDA 的监督变体。
图 1. 多模态图像数据的 SupDocNADE 图解
2 文本数据的 DocNADE
在以往的工作中,DocNADE 被用来对实词的文档进行建模,属于一些预定义的词汇。为了对图像数据进行建模,我们假设图像首先被转换为一袋视觉词。一个标准的方法是通过对从所有训练图像中密集抽取的 SIFT 描述符进行 K-means 聚类来学习视觉词的词汇。从这一点来看,任何图像都可以被表示为一袋视觉词 v= [v1,v2,...,vD],其中每个 vi 是最接近从图像中提取的第 i 个 SIFT 描述符的 K-means 聚类的索引,D 是提取的描述符的数量。
3 多模态数据的 SupDocNADE
在本节中,我们描述了受 DocNADE 启发,从多模态数据中联合学习的方法。首先,我们描述了 DocNADE 的监督扩展(SupDocNADE),它将类标签模态纳入训练,以学习更多的辨别性隐藏特征用于分类。然后,我们描述了我们如何利用视觉词的空间位置信息。最后,我们描述了如何与 SupDocNADE 联合对文本标注模态进行建模。
3.1 有监督的 DocNADE
据观察,使用无监督主题模型(如 LDA)学习图像特征表示,可能比使用适当的内核(如金字塔内核)直接在视觉词本身上训练分类器的表现更差。其中一个原因是,无监督主题特征被训练成尽可能多地解释图像的整个统计结构,可能不能很好地模拟我们在计算机视觉任务中所追求的特定的判别结构。这个问题已经在文献中通过设计 LDA 的监督变体来解决,如监督 LDA 或 sLDA。DocNADE 也是一个无监督的主题模型,我们在这里提出了 DocNADE 的监督变体 SupDocNADE,试图使学习到的图像表征在图像分类中更具判别力。
3.2 多区域处理
空间信息对理解图像起着重要的作用,例如,天空常常出现在图像的上部,而汽车常常出现在底部。例如,天空经常会出现在图像的上部,而汽车最常出现在底部。以前的很多工作都成功地利用了这一直觉。例如,在关于空间金字塔的开创性工作中,表明在不同的区域上提取不同的视觉词直方图,而不是单一的图像范围直方图,可以在性能上获得大幅提升。
我们采用类似的方法,即我们同时模拟视觉词的存在和它们出现的区域的身份。具体来说,我们假设图像被划分为几个不同的区域 R = {R1,R2,...,RM},其中 M 是区域的数量。现在图像可以表示为
3.3 注释处理
到目前为止,我们已经介绍了如何对视觉词和类标签模态进行建模。在本节中,我们现在介绍一下我们如何用 SupDocNADE 也对注释词模态进行建模。
具体来说,让 A 成为所有注释词的预定义词汇,我们将给定图像的注释记为 a=[a1,a2,...,aL],其中 ai∈A,L 为注释词的数量。因此,图像及其注释可以表示为视觉词和注释词的混合包:
为了将注释词嵌入到 SupDocNADE 框架中,我们用处理视觉词的方式来处理每个注释词。具体来说,我们使用所有视觉词和注释词的联合索引,并使用一个更大的二进制词树,以便为注释词增加叶子。通过在这个图像/注释联合表示 vA 上训练 SupDocNADE,它可以学习标签、空间嵌入的视觉词和注释词之间的关系。
4 实验与分析
为了测试 SupDocNADE 从多模态数据中学习的能力,我们评估了它在同步图像分类和注释任务下的性能。我们在 2 个真实世界的数据集上测试了我们的模型:LabelMe 数据集的一个子集和 UIUC-Sports 数据集。LabelMe 和 UIUC-Sports 带有注释,是流行的分类和注释基准。我们对 SupDocNADE 与原始 DocNADE 模型和监督 LDA(sLDA)进行了广泛的定量比较。我们还提供了一些与 MMLDA 和空间金字塔匹配(SPM)方法的比较。下载数据集和 SupDocNADE 的代码可在https://sites.google.com/site/zhengyin1126/。
4.1 数据集
我们使用在线工具构建了我们的 LabelMe 数据集,从以下 8 个类中获取大小为 256×256 像素的图像:高速公路、城市内部、海岸、森林、高楼、街道、开阔地和山地。对于每个类别,随机选取 200 张图像,平均分配到训练集和测试集中,共得到 1600 张图像。
UIUC-Sports 数据集包含 1792 张图像,分为 8 个类别:羽毛球(313 张图像)、滚球(137 张图像)、槌球(330 张图像)、马球(183 张图像)、攀岩(194 张图像)、划船(255 张图像)、帆船(190 张图像)、单板滑雪(190 张图像)。按照之前的工作,在保持长宽比的前提下,将每张图像的最大面调整为 400 像素。我们将每一类的图像随机平均分成训练集和测试集。对于 LabelMe 和 UIUC-Sports 数据集,我们删除了出现少于 3 次的标注词。
4.2 实验环境
采用 128 维、密集提取的 SIFT 特征来提取视觉词。密集 SIFT 提取的步长和补丁大小分别设置为 8 和 16。将训练集的密集 SIFT 特征量化为 240 个簇,利用 K-means 构建我们的视觉词词汇。我们将每幅图像划分为 2×2 的网格来提取空间位置信息。这产生了 2×2×240=960 个不同的视觉词/区域对。
我们使用分类准确率来评估图像分类的性能,并使用前 5 个预测注释的平均 F-度量值来评估注释性能。
SupDocNADE 的图像分类是通过将学习到的文档表示输入到 RBF 内核 SVM 中进行的。在我们的实验中,所有的超参数(SupDocNADE 中的学习率、无监督学习权重 λ,RBF 内核 SVM 中的 C 和 γ),都是通过交叉验证选择的。注释词在测试时不可用,所有的方法都仅仅基于图像的视觉词袋来预测图像的类别。
4.3 对比分析
在本节中,我们描述了我们在 SupDocNADE、DocNADE 和 sLDA 之间的定量比较。我们在比较中使用了 sLDA 的实现,详见http://www. cs.cmu.edu/ ̃chongw/slda/,我们向其输入了与 DocNADE 和 SupDocNADE 相同的视觉(带空间区域)和注释词。
分类结果如图 3 所示。同样,我们观察到 SupDocNADE 的表现优于 DocNADE 和 sLDA。调整生成性学习和判别性学习之间的权衡,利用位置信息通常是有益的。只有一个例外,在 LabelMe 上,有 200 个隐藏的主题单元,使用 1×1 网格略微优于 2×2 网格。
至于图像标注,我们计算了 200 个主题的模型的性能。如表 1 所示,SupDocNADE 在 LabelMe 和 UIUC-Sports 数据集上获得的 F-measure 分别为 43.87%和 46.95%。这略优于普通 DocNADE。由于使用 sLDA 执行图像标注的代码没有公开,我们直接与相应论文中的结果进行比较。Wang 等人报告 sLDA 的 F-measures 为 38.7%和 35.0%,大大低于 SupDocNADE。
图 2. LabelMe(左)和 UIUCSports(右)数据集的混淆矩阵。
图 3. LabelMe(偶数)和 UIUC-Sports(奇数)上的分类性能比较。在左边,我们比较了 SupDocNADE、DocNADE 和 sLDA 的分类性能。在右边,我们比较了 SupDocNADE 的不同变体之间的性能。
我们还与分别应用于图像分类和标注的 MMLDA 进行了比较。如表 1 所示,MMLDA 报道的分类精度低于 SupDocNADE。在 LabelMe 上,报告的注释性能优于 SupDocNADE,但在 UIUC-Sports 上表现较差。我们强调,MMLDA 并没有联合处理类标签和注释词模态,不同模态被分开处理。
表 1.不同模型的对比
空间金字塔的方法也可以调整为同时进行图像分类和标注。我们使用 from 的代码生成 2 层-SPM 表示,词汇量为 240,这与其他模型使用的配置相同。对于图像分类,我们采用了与 Lazebnik 等人一样的带有直方图交集核(HIK)的 SVM 作为分类器。对于标注,我们采用 k 个最近邻(KNN)预测测试图像的标注词。具体来说,在训练集中的 k 个最近的图像中选择前 5 个最频繁的标注词(基于具有 HIK 相似性的 SPM 表示)作为测试图像的标注词的预测。通过交叉验证,对 5 个随机分割的图像分别选取数字 k。如表 1 所示,SPM 对 LabelMe 和 UIUC-Sports 的分类准确率达到 80.88%和 72.33%,低于 SupDocNADE。在标注方面,SPM 的 F-measure 也低于 SupDocNADE,LabelMe 和 UIUC-Sports 的 F-measure 分别为 43.68%和 41.78%。
图 4. 由 SupDocNADE 对 LabelMe 数据集进行预测类和注释。我们列出了一些正确的(上行)和不正确的(下行)分类图像。预测的(蓝色)和正确的(黑色)类标签和注释词在每个图像下呈现。
图 4 展示了 SupDocNADE 在 LabelMe 数据集上做出的正确和错误预测的例子。图 2 还提供了 LabelMe 和 UIUC-Sports 两个基准上的分类混淆矩阵。
5 总结
在本文中,我们提出了 SupDocNADE,这是 DocNADE 的一个监督扩展,它可以从视觉词、注释和类标签中联合学习。和所有的主题模型一样,我们的模型也是经过训练的,可以对图像的词袋表示的分布进行建模,并能从中提取有意义的表示。但与大多数话题模型不同的是,图像表征在模型中并不是作为一个潜伏的随机变量来建模,而是作为神经自回归网络的隐藏层。SupDocNADE 的一个显著优势是,它不需要任何迭代、近似推理过程来计算图像的表示。我们的实验证实,SupDocNADE 是一种具有竞争力的多模态数据建模方法。
致谢
本文由南京大学软件学院 2019 级硕士刘佳玮转述