
摘要
我们将两种强大的理念结合在一起:用于视觉识别和语言理解的深度表示学习,以及用于推理的符号程序执行。我们的神经-符号视觉问答(NS-VQA)系统首先从图像中恢复出结构化的场景表示,并从问题中提取出程序轨迹。然后,该系统在场景表示上执行程序以获得答案。将符号结构作为先验知识纳入模型提供了三个独特的优势。首先,在符号空间上执行程序对长程序轨迹更加稳健;我们的模型能够更好地解决复杂的推理任务,在CLEVR数据集上的准确率达到99.8%。其次,该模型在数据和内存效率方面表现更佳:仅需少量训练数据即可实现良好性能;同时,它可以将图像编码为紧凑的表示形式,所需存储空间比现有离线问答方法更少。最后,符号程序执行为推理过程提供了完全透明度;因此,我们能够解释和诊断每个执行步骤。
代码仓库
kexinyi/ns-vqa
pytorch
GitHub 中提及
nerdimite/neuro-symbolic-ai-soc
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| visual-question-answering-on-clevr | NS-VQA (1K programs) | Accuracy: 99.8 |
| visual-question-answering-on-clevr-humans | NS-VQA (1K programs) | Accuracy: 67.8 |