Visual Reasoning(2): Inferring and Executing Programs for Visual Reasoning

Inferring and Executing Programs for Visual Reasoning

这里有一些介绍:
https://zhuanlan.zhihu.com/p/28654835
这个工作最后还搞了一部分新数据集
The CLEVR-Humans Dataset,就是用CLEVR的合成图片,让人重新写了一些question & answer,语法逻辑更natural
在这里插入图片描述

Introduction

Motivation
原先的VQA model都是input-output mappings,不具备推理能力
所以提出
a new model for visual question answering that consists of two parts: a program generator and an execution engine.
打破了以前做VQA就用CNN叠LSTM的简单粗暴套路

我们知道,CLEVR生成的时候是先有其专门的functional programs,填入参数可以得到answer
在这里插入图片描述
所以这篇工作,第一步是先去预测这些program,第二步是通过这些program预测最终的answer。
(感觉完全是针对CLEVR的生成方式而设计的模型啊。感觉本质是人依据程序逻辑创造出一个虚拟的数据,再让算法观察数据去模拟这种程序思维。而实际真实世界场景,并不一定可以这样用清晰地用逻辑解析出来)

有两种训练方式:
they can be trained separately when ground-truth programs are
available, or jointly in an end-to-end fashion.
把CLEVR生成时中间过程的programs也可拿来训练,怎么有种作弊的感觉。。。挺tricky的,这和之前的VQA比有点不太公平了

Methods

program generator是左边的seq2seq,预测出program
右边的execution也全都是neural network组成,输入是program和image,输出是所有可能答案的概率分布,相当于一个分类器:
在这里插入图片描述
关于Execution Engine,是由若干个模块组装而成的
而且会依据不同的program z选择不同的module组装,然后执行得出answer

参看下知乎:
https://zhuanlan.zhihu.com/p/28654835
在这里插入图片描述
在这里插入图片描述

Training

利用ground-truth programs分别训练 both the program generator and execution engine,效果自然非常好。然鹅,
Annotating ground-truth programs for free-form natural language questions is expensive, so in practice we may have few or no ground-truth programs.

没有ground-truth programs只得使用REINFORCE,jointly training
实际效果很差,不好训练优化,所以又提出 semi-supervised learning approach

First, use a small set of ground-truth programs to train the program generator
Then, fix the program generator and train the execution engine using predicted programs on a large dataset of (x,q,a) triples.
Finally, we use REINFORCE to jointly finetune the program generator and execution engine.

Experiments

少量ground-truth programs,配合强化学习end-to-end,也取得了很好的效果,说明如果能标注出少量中间推理过程,也可以让模型具备推理能力
在这里插入图片描述

Conclusion

在这里插入图片描述

<think>好的,用户想了解计算机视觉和人工智能中的视觉推理相关概念或实现方法。我需要先回顾一下视觉推理的基本定义,然后整理相关的技术方法,再结合提供的引用资料来支持回答。 首先,视觉推理在计算机视觉中是指系统能够理解图像或视频中的内容,并基于此进行逻辑推断。比如,不仅要检测物体,还要理解它们之间的关系或预测后续动作。根据引用[3],Embodied AI强调具身代理在环境中的操作,这可能涉及动态的视觉推理,比如机器人通过视觉感知做出行动决策。这说明视觉推理不仅需要静态图像分析,还需要结合环境交互。 接下来,实现方法方面,传统方法可能依赖符号逻辑和规则系统,而深度学习方法则可能使用图神经网络(GNN)或Transformer结构。引用[1]提到的Visual Transformers使用基于token的图像表示,可能用于捕捉图像中不同区域的关系,这对视觉推理中的关系建模有帮助。此外,引用[4]提到增强图结构和分类器的交互,这可能指的是图结构在表示物体关系时的应用,比如场景图生成和推理。 另外,引用[2]讨论了深度学习在计算机视觉中的应用,可能涉及使用CNN提取特征,再结合循环神经网络(RNN)或注意力机制进行推理。例如,VQA任务通常采用多模态模型,结合图像特征和文本问题进行处理。 需要区分不同层次的视觉推理任务,如物体识别、关系推理、因果推断等。结合Embodied AI的挑战,视觉推理还需处理动态和以自我为中心的数据,这可能涉及时间序列分析和强化学习,如引用[3]提到的动态环境中的决策。 最后,要确保回答结构清晰,分点说明概念、方法、技术,并引用相关资料。同时生成相关问题,引导用户深入探讨。</think>### 视觉推理(Visual Reasoning)的概念与实现方法 #### 1. **概念定义** 视觉推理是计算机视觉与人工智能交叉领域的核心任务,旨在通过图像或视频的语义理解,结合逻辑推断能力,回答与场景相关的复杂问题。例如: - **物体关系推理**:识别图像中“A在B左侧”或“C被D支撑”等空间或功能关系。 - **因果推理**:预测“若推倒积木塔,哪些积木会掉落”。 - **多模态推理**:结合文本问题(如“桌上杯子是什么颜色?”)从图像中提取答案(视觉问答,VQA)。 与传统计算机视觉任务(如分类、检测)不同,视觉推理需要模型理解**上下文**和**抽象逻辑**[^3]。 --- #### 2. **实现方法** ##### (1) **符号逻辑与规则系统** - **传统方法**:基于预定义规则(如空间关系谓词逻辑)解析场景图(Scene Graph)。例如,通过目标检测生成物体节点,再通过关系分类构建边。 - **局限性**:依赖人工规则,难以泛化到复杂场景[^2]。 ##### (2) **深度学习与图神经网络(GNN)** - **图结构建模**:将图像表示为图结构(节点=物体,边=关系),利用GNN进行关系推理。例如: ```python # 伪代码:基于GNN的关系推理 class GNNLayer(nn.Module): def forward(self, node_features, adjacency_matrix): aggregated = torch.matmul(adjacency_matrix, node_features) return torch.relu(aggregated) ``` - **结合任务分类器**:通过增强图结构与分类器的交互提升推理性能[^4]。 ##### (3) **Transformer与视觉语言模型** - **Visual Transformers**:将图像分割为token序列,利用自注意力机制建模全局关系。例如,ViT(Vision Transformer)将图像分块编码为token,再通过Transformer层推理[^1]。 - **多模态模型**:如CLIP、ViLBERT,联合训练视觉和文本编码器,支持VQA等任务。 ##### (4) **具身人工智能(Embodied AI)中的动态推理** - **以自我为中心的感知**:通过机器人等代理的视角获取动态视频流,结合强化学习进行实时决策(如导航、抓取)[^3]。 --- #### 3. **关键技术挑战** - **长尾关系建模**:物体关系组合多样,训练数据难以覆盖所有情况。 - **可解释性**:如何可视化模型的推理路径(如注意力权重或子图激活)。 - **跨模态对齐**:视觉与语言信息的细粒度对齐(如“红色杯子”指向特定区域)。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值