DialMAT:跨模态特征提取与对抗训练的结合

ops/2024/10/22 11:09:46/

目录

  • 一、背景介绍
  • 二、技术路线
  • 2.1 DialMAT的总体架构
  • 2.2 基于矩的对抗训练(MAT)
  • 2.3 跨模态并行特征提取
  • 参考文献

一、背景介绍

  在智能体研究领域,一个重要的挑战是如何让智能体有效理解人类的语言指令并在实际环境中完成任务。尤其是在复杂环境中,智能体经常面临信息不足的情况,比如不知道目标物体的位置、外观或如何行动。为此,DialFRED任务被提出,旨在让智能体能够通过对话向人类提问,以获取更多的上下文信息,并基于这些信息完成任务。

  DialFRED任务建立在ALFRED任务的基础上,要求智能体不仅要理解语言和视觉信息,还需要执行对象操作。在任务中,智能体可以主动询问物体的位置、外观和运动方向等信息。这一能力使得智能体在复杂环境中具备更强的灵活性,但同时也提出了新的挑战:如何设计一个能够主动提问并根据反馈调整行动的智能体?DialMAT模型正是为了解决这一问题而提出的。

  DialMAT的设计目标是通过引入对抗训练和多模态特征提取机制,增强智能体在不确定环境中的任务执行能力,并使其在任务执行过程中能够更好地与人类协作。

在这里插入图片描述

图 1 DialMAT 由 Questioner 和 MAPer 两个模块组成,通过 MAT 将对抗性扰动引入语言、图像和动作的潜在空间

二、技术路线

  为了应对DialFRED任务中的挑战,作者提出了DialMAT,这是一种专为对话驱动任务设计的Transformer模型。该模型结合了基于矩的对抗训练(MAT)跨模态并行特征提取机制,在处理复杂的视觉和语言任务时表现出色。

2.1 DialMAT的总体架构

  DialMAT模型的架构由两个核心模块组成:提问模块(Questioner)和基于矩的对抗执行器(MAPer)。

  • 提问模块(Questioner):这个模块的任务是决定在每个任务执行时间点,智能体需要向人类提问什么问题。问题类型包括:物体的位置、物体的外观以及智能体的运动方向。提问模块通过一个带有注意力机制的LSTM(长短期记忆网络)进行多层分类。每当智能体在任务中遇到不确定信息时,提问模块会选择最佳问题类型,并根据回答更新任务的执行策略。这种设计使得智能体不仅被动地接受指令,还能够主动获取更多信息,从而提高任务的成功率。

  • 基于矩的对抗执行器(MAPer):该模块负责根据智能体当前的状态(包括提问的答案、视觉信息和先前的动作),决定下一步的行动。MAPer通过整合来自CLIP和DeBERTa v3的特征,将语言和视觉信息进行嵌入。此外,它还结合了基于矩的对抗训练(MAT),在这些嵌入特征上加入对抗性扰动。这种扰动帮助模型增强了对抗鲁棒性,使得智能体在应对未知或噪声数据时仍能高效执行任务。

2.2 基于矩的对抗训练(MAT)

  MAT是DialMAT的核心创新点之一。它通过在语言、图像和动作的潜在空间中引入扰动,使模型能够更好地处理不确定性。具体来说,MAT通过优化损失函数的梯度来更新这些扰动,使得模型能够在对抗性输入下依然表现出色。这一机制的工作流程如下:

  • 首先,对输入数据(如语言指令或视觉图像)进行特征嵌入,并在这些特征上加入学习到的扰动。

  • 然后,通过计算损失函数相对于这些扰动的梯度,来指导扰动的更新。

  • 最终,智能体能够利用更新后的扰动来提升其鲁棒性,从而在复杂和动态环境下更有效地完成任务。

2.3 跨模态并行特征提取

  除了对抗性训练,DialMAT的另一创新是跨模态并行特征提取机制。模型使用基础模型CLIP和DeBERTa v3分别对图像和语言信息进行特征提取。通过对视觉和语言的并行处理,模型能够在任务执行中充分结合来自不同模态的信息。例如,CLIP用于提取图像的视觉特征,而DeBERTa v3则用于提取语言指令的特征。这些特征再通过对抗性训练进行扰动后,结合输入到Transformer中,从而使智能体能够更好地理解任务环境并做出相应行动。

在这里插入图片描述

图 2 成功的子目标预测示例,结构为“移动到落地灯前并打开其电源”

参考文献

[1] Kaneda K, Korekata R, Wada Y, et al. DialMAT: Dialogue-Enabled Transformer with Moment-Based Adversarial Training[J]. arXiv preprint arXiv:2311.06855, 2023.


http://www.ppmy.cn/ops/118961.html

相关文章

leetcode刷题day27|贪心算法Part01(455.分发饼干、376. 摆动序列、53. 最大子序和)

前言: 贪心的本质选择每一阶段的局部最优,从而达到全局最优。 455.分发饼干 思路:局部最优-大饼干喂给胃口大的,充分利用饼干尺寸喂饱一个;全局最优:喂饱尽可能多的小孩。可以尝试使用贪心策略&#xff0…

图解C#高级教程(一):委托

什么是委托 可以认为委托是持有一个或多个方法的对象。但它与对象不同,因为委托可以被执行。当执行委托时,委托会执行它所“持有”的方法。先看一个完整的使用示例。 // See https://aka.ms/new-console-template for more informationdelegate void M…

Python与SQL Server数据库结合导出Excel并做部分修改

Python与SQL Server数据库结合导出Excel并做部分修改 需求:在数据库中提取需要的字段内容;并根据字段内容来提取与拆分数据做为新的列最后导出到Excel文件 # -*- coding: utf-8 -*- import pandas as pd import re import pymssql import timestart_ti…

GAMES101(作业8)

作业8 题目: 模拟绳子动画,包括基于物理的,和非物理的,应该修改的函数是:rope.cpp 中的void Rope::simulateEuler(... Rope::rope(...),,void Rope::simulateVerlet(...) 代码框架: main:负…

UnityHub下载任意版本的Unity包

1)先打开 // 也可以采用2直接打开 2)也可以直接打开 下载存档 (unity.com) 3)关联起来UnityHub即可

雷池 WAF 如何配置才能正确获取到源 IP

经常有大哥反馈说雷池攻击日志里显示的 IP 有问题。 这里我来讲一下为什么一些情况下雷池显示的攻击 IP 会有问题。 问题说明 默认情况下,雷池会通过 HTTP 连接的 Socket 套接字读取客户端 IP。在雷池作为最外层网管设备的时候这没有问题,雷池获取到的…

Android常用C++特性之std::make_unique

声明:本文内容生成自ChatGPT,目的是为方便大家了解学习作为引用到作者的其他文章中。 std::make_unique 是 C14 引入的一个函数模板,用于创建类型为 std::unique_ptr 的智能指针。智能指针用于管理动态分配的对象,在其生命周期结束…

PHP程序如何实现限制一台电脑登录?

PHP程序如何实现限制一台电脑登录? 可以使用以下几种方法: 1. IP地址限制:在PHP中,可以通过获取客户端的IP地址,然后与允许登录的IP地址列表进行比对。如果客户端的IP地址不在列表中,就禁止登录。 “php $…