《SQuINTing at VQA Models: Interrogating VQA Models with Sub-Questions》论文笔记

99封情书 提交于 2020-02-15 05:36:25

1. Sub-VQA

本篇论文的出发点是现阶段模型存在一致性的问题:对于正确回答的问题也可能存在错误的推理过程(参照图例),在此之前的简单地以回答的正确性来评价模型存在着一定的局限性。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xw2hdMo0-1581650301947)(..\img\SQUINT_1.png)]

Perception Question & Reasoning Question

对于 VQA 问题,作者将其归类为:(1) Perception Question:可以仅仅依靠视觉信息回答,即可仅凭借识别图像中的对象 (2) Reasoning Question:需要综合多种感知信息,先验知识,逻辑推理。所以可以理解前者是后者的基础

Dataset

在 VQA 数据集上,通过自定义的 regex-based 规则划分 Perception Question 和 Reasoning Question,结果表明有 18% 的问题归类为 Reasoning Question,在每个 Reasoning Question,提供数个 Sub-Question,在 Sub-Question 中有 87.8% 的 Perception Question
在这里插入图片描述

构建 Sub-VQA 存在两个方面的挑战:(1) 子问题是否对主问题的回答起到一定的作用,(2) 主问题和子问题要表达的意思是否存在过多的重叠,前者可以通过招募工作者验证,后者采用 noun chunks surrogates ,这里具体的细节不再赘述,如需要了解可以参考原论文

Evaluation

模型的评估结果总共有四类:

主问题 子问题 推理结果
没毛病
可能存在推理问题
肯定存在推理问题
不知道

2. SQuINT

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GX3dHidZ-1581650301956)(../img/SQUINT_3.png)]

Model

整体来说模型架构较为简单,在 Attention Loss 部分中,为了能让主问题和子问题关注尽可能的关注同一区域,增加模型的一致性,因此使用了 MSE Loss 函数,后面使用 Cross Entropy loss 用于提高模型的输出准确性。

模型模型的训练的目的:(1) 在回答主问题时,能更好的联合子问题,将注意力集中于相关区域,(2) 尽可能提高回答主问题和子问题的正确性,因此定义了如下的 Loss 函数:
LSQuINT=MSE(Areas,Asub)+BCE(oreasAsub,gtreas)+BCE(osub,gtsub) L_{SQuINT}=MSE(A_{reas},A_{sub}) + BCE(o_{reas}|A_{sub},gt_{reas})+BCE(o_{sub},gt_{sub})
其中 AA 表示模型 Attention,oo 表示模型输出,gtgt 表示 ground-truth answer

Experiment

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YpqMYwzn-1581650301957)(../img/SQuINT_5.png)]

3. Conclusion

总的来说,本篇在 VQA 数据集的基础上,划分出了 Perception Question & Reasoning Question,在 Reasoning Question 问题的基础上,提出多个 Sub-Question,以此测试模型的一致性,即模型的推理能力。

4. Reference

Selvaraju, R. R., Tendulkar, P., Parikh, D., Horvitz, E., Ribeiro, M., Nushi, B., & Kamar, E. (2020). SQuINTing at VQA Models: Interrogating VQA Models with Sub-Questions. http://arxiv.org/abs/2001.06927

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!