Counterfactual Vision-and-Language Navigation: Unravelling the Unseen
研究背景
深度学习在计算机视觉和自然语言处理领域取得显著进展,但存在依赖数据集偏差和虚假相关性的问题,限制了模型泛化能力,在多模态、高级任务中尤为突出。视觉语言导航(VLN)任务要求智能体根据自然语言指令在模拟家庭环境中导航至目标位置,现有训练方法使智能体难以在未见环境中泛化。为解决该问题,论文提出一种新的学习策略,从观察和生成的反事实环境中学习,受反事实推理框架启发,通过生成反事实观察来改进智能体在未见环境中的泛化能力。
本文的贡献总结如下:
- 为视觉语言导航(VLN)提出了一种全新的训练策略,该策略可即时生成反事实数据,以应对未见场景。通过同时利用训练数据及其反事实数据,我们提升了智能体在测试时对新环境的泛化能力。
- 从数据的因果生成视角将新过程形式化,在其中引入一个外生变量,该变量代表原始训练示例之间的插值系数。我们推导出一种高效算法,用于生成反事实实例,这些实例对原始示例进行最小干预就能使模型改变输出。
- 在用于强化学习和模仿学习的VLN智能体上应用了该技术。在房间到房间(R2R)导航和具身问答的基准测试实验中,取得了显著的改进。我们将R2R中可见环境和未见环境之间的成功率差距从约8%缩小到了小于2.5% 。
具体方法
问题定义:将视觉语言导航任务视为部分可观测马尔可夫决策过程(POMDP)。智能体根据自然语言指令$c=[w_{1}, w_{2}, …, w_{L}]$在环境$\epsilon$中执行动作,轨迹$\tau$由观察$o_{t}$、状态$s_{t}$和动作$a_{t}$组成。智能体策略为:
$$
\pi_{\theta}(\tau | c)=\prod_{t=1}^{T} p\left(a_{t} | s_{t}\right) p\left(s_{t} | s_{t-1}, z_{t}, c\right) p\left(z_{t} | o_{t}\right)
$$表示在给定指令$c$的情况下,智能体遵循策略$\pi_{\theta}$生成轨迹$\tau$的概率。其中:
$p\left(a_{t} | s_{t}\right)$表示在状态$s_{t}$下采取行动$a_{t}$的概率,它反映了智能体在当前状态下选择特定行动的倾向。
$p\left(s_{t} | s_{t - 1}, z_{t}, c\right)$表示在之前状态$s_{t - 1}$、当前视觉场景潜在表示$z_{t}$和指令$c$的条件下,转移到当前状态$s_{t}$的概率,体现了状态转移与多种因素之间的关系。这里$z_{t}$通常由视觉观察$o_{t}$通过某种函数(如预训练的 CNN)得到,用于描述场景的潜在特征。
$p\left(z_{t} | o_{t}\right)$表示在观察到$o_{t}$的情况下,得到潜在表示$z_{t}$的概率,在文中假设它满足$p(z_{t} | o_{t})=\delta(z - f_{o}(o))$,即基于观察$o_{t}$确定唯一的$z_{t}$ 。
整个公式通过累乘每个时间步的这些概率,得到在给定指令$c$时生成完整轨迹$\tau$的概率。这一概率公式为训练智能体提供了数学基础,通过优化策略$\pi_{\theta}$(即优化参数$\theta$ ),使得智能体在面对各种指令和环境时,能够生成更有可能到达目标位置的轨迹。
训练采用模仿学习和强化学习结合的方式,优化目标为
$$
max {\theta} \underbrace{\mathbb{E}{(\tau, c) \sim \mathcal{D}}\left[log \pi_{\theta}(\tau | c)\right]}{\mathcal{G}{LL}(\theta)}+\lambda \underbrace{\mathbb{E}{c \sim \mathcal{C}}\left[\mathbb{E}{\tau \sim \pi_{\theta}(\tau | c)}[R(\tau)]\right]}{\mathcal{G}{RL}(\theta)}
$$上述公式中,$\max_{\theta}$表示对参数$\theta$进行优化,以最大化后面的式子。$\mathbb{E}{(\tau, c) \sim \mathcal{D}}\left[log \pi{\theta}(\tau | c)\right]$是基于训练集$\mathcal{D}$计算的对数似然期望,被定义为$\mathcal{G}{LL}(\theta)$ ,它对应模仿学习部分,通过让智能体学习训练集中指令与轨迹对之间的关系,来模仿人类的行为;$\lambda$是一个超参数,用于平衡模仿学习和强化学习的重要性;$\mathbb{E}{c \sim \mathcal{C}}\left[\mathbb{E}{\tau \sim \pi{\theta}(\tau | c)}[R(\tau)]\right]$表示在指令分布$\mathcal{C}$和基于策略$\pi_{\theta}$生成的轨迹分布下,对奖励$R(\tau)$的期望,记为$\mathcal{G}_{RL}(\theta)$,它代表强化学习部分,让智能体根据环境给予的奖励反馈来调整自己的策略 ,从而更好地在环境中导航。
反事实公式化:引入外生变量$u$干预观察,考虑反事实轨迹分布$\overline{\pi}{\theta}(\overline{\tau} | c, u)=\prod{t=1}^{T} p\left(a_{t} | \overline{s}{t}\right) p\left(\overline{s}{t} | \overline{s}{t-1}, \overline{z}{t}^{u}, c\right)$。通过对比反事实轨迹和实际轨迹的奖励和对数似然差异,定义条件平均处理效应(CATE),如$\Delta_{d}=\mathcal{G}{IL}(\theta)-\tilde{\mathcal{G}}{IL}(\theta)$和$\Delta_{\tau}=\mathcal{G}{RL}(\theta)-\tilde{\mathcal{G}}{RL}(\theta)$。为减少干预影响,避免智能体对虚假特征产生偏差,在原优化目标中加入对$\Delta_{d}$和$\Delta_{\tau}$的约束,最终得到优化目标:
$$
max {\theta} \underbrace{\left(\mathcal{G}{IL}(\theta)+\lambda \mathcal{G}{RL}(\theta)\right)}{Original navigation }+\frac{\alpha}{(1-\alpha)} \underbrace{\left(\overline{\mathcal{G}}{IL}(\theta)+\lambda \overline{\mathcal{G}}{RL}(\theta)\right)}_{Counterfactual navigation }
$$反事实分布学习与生成
采样反事实轨迹:从观测中采样一对真实轨迹,选择反事实视觉特征为线性插值,即$\overline{z}{t}^{u}=u \odot z{t}+(1-u) \odot z_{t}’$。
外生变量分布:给定先验$p(u)$,后验$p(u | \tau, c) \propto p(u) \tilde{\pi}_{\theta}(\tau | c, u)$,论文中考虑使用 Beta 分布作为先验。
寻找最小干预:通过优化$max {u \in[0,1]^{d}} p(u | \tau, c)+log p(c | \tilde{\tau}, \phi)$,并满足一定约束找到改变智能体决策的最小干预。为提高效率,采用松弛版本$max {u \in[0,1]^{d}}| u| +log p(c | \overline{\tau}, \phi)-\gamma \sum{t=1}^{T}\left(log p\left(a{t} | \overline{s}{t}\right)+log p\left(\overline{s}{t} | \overline{s}{t-1}, \overline{z}{t}^{u}, c\right)\right)$。
实验结果
房间到房间导航(Room-to-Room Navigation)
数据集:使用 Room-to-Room (R2R) 数据集,训练集包含 14,025 对指令 - 视觉路径,验证集分为 seen 和 unseen 两种设置。
实现细节:遵循已有实验设置,使用预训练的 ResNet - 152 提取视觉特征,采用注意力编码器 - 解码器网络作为策略,序列到序列模型评估指令可能性。通过网格搜索确定超参数,如$\alpha ≈0.83$。
评估指标:采用导航误差(NE)、成功率(SR)和路径长度加权成功率(SPL)评估导航性能。
结果:引入反事实学习后,智能体在未见环境中的导航性能显著提升,SR 和 SPL 相比基线提高约 4%,缩小了 seen 和 unseen 环境下 SR 差距,从约 8% 降至 2.5%。加入强化学习信号后,性能进一步提升,使用数据增强后,模型在 SR 和 SPL 上又有 4% 的提升。在测试集上,该模型优于其他基线,如比最相似的 EnvDrop 模型在 SR 上高 3.4%,在 SPL 上高 3 点。
具身问答(Embodied Question Answering)
数据集:Embodied Question Answering (EQA) 数据集,包含训练集 6,912 个和测试集 898 个路线 - 问题 - 答案元组。
实现细节:导航策略使用 2 层门控循环单元(GRU),视觉特征由预训练的 4 层 CNN 从 House3D 图像中获取,在行为克隆设置下训练 30 个 epoch。
评估指标:使用$d_{T}$(智能体停止位置与目标的距离)和$d_{\Delta}=d_{T}-d_{0}$(智能体从初始位置到目标的整体进展)评估性能。
结果:通过让智能体考虑未见情况,在未见环境中的泛化能力提高近 10%,不仅提升了到达短期目标的性能,还增强了寻找远处物体的准确性。通过网格搜索发现,最佳$\alpha ≈0.29$,小于 R2R 任务中的值,表明在长轨迹任务中,智能体需更关注最大化收益。