Generating Visual Explanations
摘要
提出了一种新型损失函数(Novel Loss Function),该函数基于采样和可以基于全局语句特点产生语句的强化学习。在文中生成一个图片分类的具体信息,Explanation。
1 Introduction
相比于黑盒模型,可解释的AI可以让人更加信服。例如医疗方面,如果可以知道模型是如何做出预测的而不是单单给你一个预测结果,就可以对模型产生的结果产生自己的判断。
结合图片描述和类定义产生视觉解释:
基本的框架如下图所示,使用联合分类和语言生成模型生成解释性文本,在语言生成之前用细粒度分类器提取视觉特征,同时在预测类标签上设置语句生成条件:
条件语言从图像和预测中生成,这些模型的条件是来自于ImageNet上预先训练过的视觉特征,同时包含一个细粒度的识别管道产生强的图像信息。使用LSTM生成单词序列,但是设计了一个新的损失函数,在生成的句子里面包含类别信息。
2 Related Work
2.1 Explanation
很多模型是基于规则或者依赖于事先确定的模板,这种方法需要专家级的解释和决策过程。本模型是直接从数据中学习,通过优化解释来满足我们的视觉解释标准。
2.2 Visual Description
早期的模型首先检测场景中的视觉概念(主语,谓语,宾语),使用简单的语言模型生成句子。最近的深度模型能够生成流畅的,准确的图像描述。
用于训练LSTM的句子生成模型最常见的损失函数是预测和词概率分布之间的交叉熵损失。本文中提出的损失函数允许对生成的句子指定一个全局约束。
2.3 Fine-grained Classification
解释模型必须特定与类和图像中描述的方面。使用属性(attributes)进行辅助,但是这类信息需要专家进行注释,对于每个额外的类,需要修改属性列表。
2.3 Reinforcement Learning in computer vision
视觉模型包含了强化学习的算法,比如如何通过抽样机制进行反向传播。
3 Visual Explanation Model
该模型将对象类别作为附加输入,包含基于强化学习的Discriminative Loss(判别损失)。该模型旨在生成一个描述特定实例中可视化内容的解释,包含适当的信息解释为什么图像实例属于特定类别。该文的主要贡献是在训练过程中包含了一个用于sampled word sequence的损失。该损失可以对句子实施全局约束。
3.1 Relevance Loss
图像相关性可以通过训练视觉描述模型来实现。LRCN模型,由一个卷积神经网络和两个叠加的循环网络(LSTMs)。在推理过程中,第一个LSTM接受先前生成的单词作为输入生成,第二个LSTM接受输出图像特征,并在下一个单词上生成概率分布,直到生成句尾标志。
对LRCN模型进行改进来增加生成序列的图像相关性:
- 使用类别预测作为第二个LSTM的附加输入。训练类标签:先训练一个语言模型,生成以图像为条件的单词序列,计算LSTM在所有序列中的平均隐藏状态。
- 使用丰富的类别特定特征生成相关的解释。
每一个训练实例由一个图像,类别标签和一个基本事实语句组成,相关性损失如上。 是一个基本事实单词, 是图像, 是类别, 是分支大小。
3.2 Discriminative Loss
识别性损失基于一个强化学习范式,对于需要对网络进行中间激活的分层学习。首先,对一个句子进行抽样然后输入到一个判别损失函数中。By sampling the sentence before computing the loss, we ensure that sentences sampled from our model are more likely to be class discriminative.首先讲述了如何通过采样进行反向传播,然后讨论了如何计算识别损耗。
最小化的总体函数如下:
是Relevance Loss,加上判别奖励的期望,其中 是模型的估计条件分布。这种期望是非常难处理的,所以在训练时使用Monte Carlo抽样在每个时间步中对描述 进行估计。作为离散分布,抽样是不平滑的,我们使用以下等价方法:
是采样的对数概率,最后的形式如下:
最后使得权重推向最高奖励的描述,后面的项是进行加权。当句子具有判别性时奖励分数更高,简单的简化。为了使模型具有最大价值的输出,生成的语句必须包含足够的信息。在训练解释模型时,不会更新句子分类器权重。
4 Experimental Setup
数据集: Caltech UCSD Birds 200-2011 (CUB) dataset
Implementation:
Baseline and Ablation Models:
Metrics:常见的句子评估度量:Meteor 和CIDEr
5 Results
6 Conclusion
解释是智能系统部署的一项重要功能。视觉解释是一个丰富的研究方向,特别是在计算机视觉领域继续采用和改进难以解释的深层模型时。我们的工作是向解释深层视觉模型迈出的重要一步。我们预计未来的模型将“深入”网络以产生解释,并可能开始解释深层模型的内部机制。
为了建立我们的解释模型,我们提出了一种新的基于强化学习的损失模型,它允许我们影响句子水平损失函数生成的句子类型。虽然我们关注的是这项工作中的歧视性损失,但我们认为,包括对抽样句子进行操作并针对全局句子属性进行优化的损失的一般原则在其他应用程序中可能是有益的。例如,提议将新词汇引入字幕系统。尽管这两个模型都旨在优化全局句子属性(无论标题是否提到某个概念),但都不能直接优化此属性。
总之,我们提出了一个新的框架来解释视觉分类器。我们的定量和定性评估证明了我们提出的模型的潜力和新型损失函数的有效性。我们的解释模型超越了当前字幕系统的能力,有效地整合了分类信息以产生令人信服的解释,这是采用许多复杂人工智能系统的潜在关键进展。
Reference
Hendricks L A, Akata Z, Rohrbach M, et al. Generating Visual Explanations[C]// European Conference on Computer Vision. 2016.