CN114970457A - 一种基于提示及环境自动探索的视觉语言导航预训练方法 - Google Patents
一种基于提示及环境自动探索的视觉语言导航预训练方法 Download PDFInfo
- Publication number
- CN114970457A CN114970457A CN202210603150.6A CN202210603150A CN114970457A CN 114970457 A CN114970457 A CN 114970457A CN 202210603150 A CN202210603150 A CN 202210603150A CN 114970457 A CN114970457 A CN 114970457A
- Authority
- CN
- China
- Prior art keywords
- mask
- visual
- navigation
- template
- prompt
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/258—Heading extraction; Automatic titling; Numbering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供一种基于提示及环境自动探索的视觉语言导航预训练方法,该方法首先通过屏蔽标记指令中的视觉和动作词来生成指令模板,然后,在训练环境中对轨迹进行采样。预训练的CLIP模型用于识别采样轨迹中的房间和物体,并将描述的短语与它们匹配,通过将匹配的短语填充到样本模板中来构建指令;通过利用CLIP学习的先验知识,能够自动构建具有丰富语义信息的数据集;使用生成的指令路径样本对进行预训练。将连续的任务特定向量(Prompt)添加到输入指令的嵌入中,并直接调整这些向量的嵌入;经过提示调优后,模型可适配VLN和REVERIE任务。
Description
技术领域
本发明涉及视觉语言导航的预训练领域,更具体地,涉及一种基于提示及环境自动探索的视觉语言导航预训练方法。
背景技术
视觉语言导航(Vision-Language Navigation,VLN)是人机交互领域中的一个新兴任务。它的目的是让智能体能够在模拟的真实3D环境中根据自然语言指令导航至正确的目标位置。其中一个关键的研究课题是如何提高智能体在所有已知或未知环境中的导航能力,即提高智能体在不同环境中的泛化能力,学习这种能力需要大规模的数据。然而,用自然语言注释轨迹的过程比注释图像要花费大量的劳动时间,因此收集大规模的VLN数据集是比较困难和耗时的。现有的导航数据集规模相对较小,在此类数据集上的学习影响了智能体的泛化能力。
现有技术:针对这一问题,现有方法主要采取了两种方式:
数据增强:基于现有数据集训练一个Speaker模型以在现有场景中构建新的路径和指令(Speaker-Follower,EnvDrop);混合多个场景进行场景间数据增强(REM);
引入视觉语言预训练模型(VLN-BERT)或从网络上收集大规模室内场景图像文本对进行预训练数据集的构建,进一步减小预训练与下游任务之间的数据鸿沟(Airbert)。VLN-BERT在图像-字幕对数据集上预训练得到视觉语言模型,以从丰富的域外图像文本数据中迁移知识,但这种数据与来自VLN的轨迹-指令对完全不同。为了解决这个问题,Air-bert构建了一个大规模的域内预训练数据集,其中包含从Airbnb等在线市场收集的图像-字幕对来微调ViLBERT。然而,Airbert在网站上收集图像-字幕数据,这与视觉语言导航的场景还相差甚远。综上,从网站上收集的数据集与视觉语言导航场景依旧相差较远。
现有技术中公开了一种视觉语言室内导航方法、系统、终端及应用的专利,该专利利用序列到序列的方法,将自然语言命令和视觉信息相结合,分别对自然语言命令信息和视觉图像信息进行特征提取,在完成特征提取后,分别对提取的特征进行注意力特征的筛选,筛选出与任务相关的关键信息。本发明采用结合机器人的视觉信息和自然语言的信息来进行机器人的室内导航,采用注意力机制使得机器人能够更有效的理解人的语言指令并结合视觉信息,使机器人能按照人类的指令到达目的地,完成任务。然而,该专利对于根据场景自动生成具有先验知识的导航数据,减少预训练数据集和VLN任务之间的域差距,无需人工标记,生成的数据可以用作增强数据,从而提高模型的泛化能力这些技术内容没有任何的提及。
发明内容
本发明提供一种基于提示及环境自动探索的视觉语言导航预训练方法,该方法减少预训练数据集和VLN任务之间的域差距。
为了达到上述技术效果,本发明的技术方案如下:
一种基于提示及环境自动探索的视觉语言导航预训练方法,包括以下步骤:
S1:通过屏蔽标记指令中的视觉和语言导航任务来生成指令模板;
S2:利用CLIP模型识别采样轨迹中的房间和物体,并将描述的短语与它们匹配,通过将匹配的短语填充到指令模板中来构建指令;
S3:将连续的任务特定向量添加到输入指令的嵌入中,并直接调整这些向量的嵌入来完成对视觉、语言导航数据集的预训练。
进一步地,所述步骤S1中,视觉和语言导航任务VLN给出一个句子I={w0,…,wl}作为指令,其中wi是单词标记,l是句子的长度,该指令包括逐步到达目标的指导,观察全景视图作为视觉输入,它由36个RGB图像视图组成,这些视图中的每一个都由图像特征vi和方向描述(sinθt,i,cosθt,i,sinφt,i,cosφt,i)组成,全景动作空间中的候选者由导航图中当前节点的k个邻居和一个停止动作组成。
进一步地,步骤S1中,从R2R数据集中的指令生成模板,然后在训练环境中对轨迹进行采样,为采样轨迹生成候选名词短语和可操作动词,并用单词填充模板。
进一步地,步骤S1中,通过识别R2R数据集指令中的名词短语和动作短语并用特定掩码来替换这些词组,得到指令模板,不仅提取了名词短语,还提取了‘left’,‘right’,‘forward’和‘around’。
进一步地,步骤S2中,在Matterport环境中对轨迹进行采样:随机采样开始和结束位置,并收集长度小于8步的轨迹,然后通过视角移动得到每一步的对应动作,根据航向角heading和仰角elevation的偏差来得到相应动作;如果选择前面的可导航位置移动,会生成一个“forward”动作;如果选择向后导航位置移动,会生成一个“around”动作;如果选择右前方导航位置进行下一步移动,会生成一个动作序列,如{‘right’,‘forward’},用于在指令生成期间填充动词Amask。
进一步地,所述步骤S2中,用描述采样轨迹和动作的短语来填充模板:轨迹表示为{v0,...,vn},其中vi表示观察视点,引入CLIP模型来选择候选短语c并将它们与每个视图vi匹配,首先通过CLIP嵌入句子“a photo of[cnoun]”,其中cnoun表示候选名词短语,即在Matterport数据集中标记的房间或对象类,然后通过将视图图像输入到CLIP中得到视觉特征,并计算视觉特征和文本特征的相似度;为视图vi选择匹配分数最高的候选者,每个视图都有两个匹配的候选对象,一个用于检测到的房间,另一个用于对象;然后这个视图的描述cnoun被随机写成3种格式:‘[room]’、‘[object]’或‘[room]with[object]’,由于轨迹是在环境中采样的,通过比较航向和高度来获得两个视点之间的可操作动词ai。
进一步地,随机选择一个模板,其Omask的数量与采样轨迹中的视点数量相同或接近,该模板具有一系列物体掩码{Omask,1,Omask,2,...Omask,l}和一系列动作掩码{Amask,1,Amask,2,...Amask,n},对象掩码和动作掩码的长度分别表示为l和n,对象掩码和动作掩码的数量大致平衡,令nv为采样轨迹中的视点数,然后这个轨迹的生成标题写成{c0,...,cnv},通过以下规则填充模板:1)如果nv≥l,随机抽取l个字幕,并按顺序填充模板中的Omask;2)如果nv<l,随机采样Omask并使用所有的标题短语来填充它们;填充短语后,可以识别出哪个视点Amask,i可能出现,因为它附近的Amask,j的视点是已知的;如果模板类似于′Omask,1,Amask,1,Omask,2′,并且v1和v2的标题分别用于填充Omask,1和Omask,2,则Amask,1是v1和v2之间的采样动作,通过这种方式,使用生成的可操作动词来填充模板并获得最终指令,在没有人工标记的情况下生成多样化的指令。
进一步地,步骤S3中,给定一个指令-轨迹对,视觉和语言导航任务特征分别由ViLBERT中的视觉编码器Ev,和文本编码器Ex提取,语言导航任务输入有两部分:提示序列{p0,...,pn}和词序列{x0,...,xm},其中p和x分别表示一个伪提示标记和一个生成的指令的单词标记,n和m分别表示提示序列和单词序列的长度;通过提示编码器Ep嵌入提示序列,并通过文本编码器Ex嵌入单词序列,如下所示:
ep,1,...,ep,n=Ep(p1,...,pn)
ex,1,…,ex,n=Ex(x1),…,Ex(xm)
其中Ep由一个LSTM头和一个MLP头组成,其中Ep由一个LSTM头和一个MLP头组成;然后将文本嵌入映射到et={ep,1,...,ep,n,ex,1,...,ex,m},其中ep,1,…,ep,n是可训练的嵌入向量,用来训练得到更好的连续提示。ev表示由视觉编码器Ev产生的视觉嵌入,然后将ev和et传递给类似于ViLBERT的协同注意力transformer。
进一步地,对于语言流,固定Ex的参数只训练Ep的参数,即只训练prompt相关的参数;对于视觉流,由于轨迹表示为一系列全景图像区域,路径编码与图像编码存在较大的差异,会训练路径编码器的相关参数,视觉嵌入包含图像嵌入和位置嵌入,根据环境中的距离对指令-轨迹对进行采样路径,并训练模型以在其中选择最佳路径。
进一步地,在生成的数据集上进行预训练过程之后,得到了一个快速迁移到视觉语言导航任务的预训练模型,该模型适应多种下游导航任务,包括VLN-一个逐步的导航任务,和REVERIE-一个面向对象的导航任务,在逐步导航任务中,模型接收指令语句并按照指令中的命令顺序导航,在对象导航任务中,模型接收对象描述并探索房屋以找到对象。
与现有技术相比,本发明技术方案的有益效果是:
本发明首先通过屏蔽标记指令中的视觉和动作词来生成指令模板,然后,在训练环境中对轨迹进行采样。预训练的CLIP模型用于识别采样轨迹中的房间和物体,并将描述的短语与它们匹配,通过将匹配的短语填充到样本模板中来构建指令;通过利用CLIP学习的先验知识,能够自动构建具有丰富语义信息的数据集;使用生成的指令路径样本对进行预训练。将连续的任务特定向量(Prompt)添加到输入指令的嵌入中,并直接调整这些向量的嵌入;经过提示调优后,模型可适配VLN和REVERIE任务;本发明通过探索现有环境来自动构建领域内的视觉语言导航预训练数据集,根据场景自动生成具有先验知识的导航数据,减少预训练数据集和VLN任务之间的域差距,无需人工标记;生成的数据可以用作增强数据,从而提高模型的泛化能力,不仅有助于模型获得更好的泛化能力,并使预训练模型快速迁移到视觉语言导航任务。还可以实现对下游任务的快速适应。
附图说明
图1为本发明方法流程图;
图2为具体模板例子示意图;
图3为本发明方法预训练的模型框图;
图4为指令生成过程示意图;
图5为采样的轨迹和基于模板生成的指令示意图;
图6为本方法在R2R上取得了优于基准模型的效果;
图7为本方法在REVERIE上取得了优于基准模型的效果。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
如图1所示,一种基于提示及环境自动探索的视觉语言导航预训练方法,包括以下步骤:
S1:通过屏蔽标记指令中的视觉和语言导航任务来生成指令模板;
S2:利用CLIP模型识别采样轨迹中的房间和物体,并将描述的短语与它们匹配,通过将匹配的短语填充到指令模板中来构建指令;
S3:将连续的任务特定向量添加到输入指令的嵌入中,并直接调整这些向量的嵌入来完成对视觉、语言导航数据集的预训练。
步骤S1中,视觉和语言导航任务VLN给出一个句子I={w0,…,wl}作为指令,其中wi是单词标记,l是句子的长度,该指令包括逐步到达目标的指导,观察全景视图作为视觉输入,它由36个RGB图像视图组成,这些视图中的每一个都由图像特征vi和方向描述(sinθt,i,cosθt,i,sinφt,i,cosφt,i)组成,全景动作空间中的候选者由导航图中当前节点的k个邻居和一个停止动作组成。
从R2R数据集中的指令生成模板,然后在训练环境中对轨迹进行采样,为采样轨迹生成候选名词短语和可操作动词,并用单词填充模板;通过识别R2R数据集指令中的名词短语和动作短语并用特定掩码来替换这些词组,得到指令模板,不仅提取了名词短语,还提取了‘left’,‘right’,‘forward'和‘around’。
步骤S2中,在Matterport环境中对轨迹进行采样:随机采样开始和结束位置,并收集长度小于8步的轨迹,然后通过视角移动得到每一步的对应动作,根据航向角heading和仰角elevation的偏差来得到相应动作;如果选择前面的可导航位置移动,会生成一个“forward”动作;如果选择向后导航位置移动,会生成一个“around”动作;如果选择右前方导航位置进行下一步移动,会生成一个动作序列,如{‘right’,‘forward’},用于在指令生成期间填充动词Amask。
用描述采样轨迹和动作的短语来填充模板:轨迹表示为子{v0,...,vn},其中vi表示观察视点,引入CLIP模型来选择候选短语c并将它们与每个视图vi匹配,首先通过CLIP嵌入句子“a photo of[cnoun]”,其中cnoun表示候选名词短语,即在Matterport数据集中标记的房间或对象类,然后通过将视图图像输入到CLIP中得到视觉特征,并计算视觉特征和文本特征的相似度;为视图vi选择匹配分数最高的候选者,每个视图都有两个匹配的候选对象,一个用于检测到的房间,另一个用于对象;然后这个视图的描述cnoun被随机写成3种格式:‘[room]’、‘[object]’或‘[room]with[object]’,由于轨迹是在环境中采样的,通过比较航向和高度来获得两个视点之间的可操作动词ai。
随机选择一个模板,其Omask的数量与采样轨迹中的视点数量相同或接近,该模板具有一系列物体掩码{Omask,1,Omask,2,…Omask,l}和一系列动作掩码{Amask,1,Amask,2,…Amask,n},对象掩码和动作掩码的长度分别表示为l和n,对象掩码和动作掩码的数量大致平衡,令nv为采样轨迹中的视点数,然后这个轨迹的生成标题写成{c0,...,cnv},通过以下规则填充模板:1)如果nv≥l,随机抽取l个字幕,并按顺序填充模板中的Omask;2)如果nv<l,随机采样Omask并使用所有的标题短语来填充它们;填充短语后,可以识别出哪个视点Amask,i可能出现,因为它附近的Amask,j的视点是已知的;如果模板类似于′Omask,1,Amask,1,Omask,2′,并且v1和v2的标题分别用于填充Omask,1和Omask,2,则Amask,1是v1和v2之间的采样动作,通过这种方式,使用生成的可操作动词来填充模板并获得最终指令,在没有人工标记的情况下生成多样化的指令。
步骤S3中,给定一个指令-轨迹对,视觉和语言导航任务特征分别由ViLBERT中的视觉编码器Ev和文本编码器Ex提取,语言导航任务输入有两部分:提示序列{p0,...,pn}和词序列{x0,...,xm},其中p和x分别表示一个伪提示标记和一个生成的指令的单词标记,n和m分别表示提示序列和单词序列的长度;通过提示编码器Ep嵌入提示序列,并通过文本编码器Ex嵌入单词序列,如下所示:
ep,1,...,ep,n=Ep(p1,...,pn)
ex,1,...,ex,n=Ex(x1),...,Ex(xm)
其中Ep由一个LSTM头和一个MLP头组成,其中Ep由一个LSTM头和一个MLP头组成;然后将文本嵌入映射到et={ep,1,...,ep,n,ex,1,...,ex,m},其中ep,1,...,ep,n是可训练的嵌入向量,用来训练得到更好的连续提示,ev为由视觉编码器Ev产生的视觉嵌入,然后将ev和et传递给类似于ViLBERT的协同注意力transformer。
对于语言流,固定Ex的参数只训练Ep的参数,即只训练prompt相关的参数;对于视觉流,由于轨迹表示为一系列全景图像区域,路径编码与图像编码存在较大的差异,会训练路径编码器的相关参数,视觉嵌入包含图像嵌入和位置嵌入,根据环境中的距离对指令-轨迹对进行采样路径,并训练模型以在其中选择最佳路径。
在生成的数据集上进行预训练过程之后,得到了一个快速迁移到视觉语言导航任务的预训练模型,该模型适应多种下游导航任务,包括VLN-一个逐步的导航任务,和REVERIE-一个面向对象的导航任务,在逐步导航任务中,模型接收指令语句并按照指令中的命令顺序导航,在对象导航任务中,模型接收对象描述并探索房屋以找到对象。
实施例2
一种基于提示及环境自动探索的视觉语言导航预训练方法,基于提示的环境自我探索(ProbES),自动生成具有先验知识的导航数据,并快速使预训练模型适应VLN任务,该模型框架的概述如图3所示:在图的左部,是指令-轨迹对的生成过程:我们首先通过屏蔽标记指令中的视觉和动作词来生成指令模板。然后,我们在训练环境中对轨迹进行采样。预训练的CLIP模型用于识别采样轨迹中的房间和物体,并将描述的短语与它们匹配。我们通过将匹配的短语填充到样本模板中来构建指令。通过利用CLIP学习的先验知识,我们能够自动构建具有丰富语义信息的数据集。在图的右部,我们使用生成的指令路径样本对进行预训练。我们将连续的任务特定向量(Prompt)添加到输入指令的嵌入中,并直接调整这些向量的嵌入。经过提示调优后,模型可适配VLN和REVERIE任务。
字符说明:
视觉和语言导航(VLN)任务给出一个句子I={w0,...,wl}作为指令,其中wi是单词标记,l是句子的长度。该指令包括逐步到达目标的指导。在步骤t,智能体观察全景视图作为视觉输入,它由36个RGB图像视图组成。这些视图中的每一个都由图像特征vi和方向描述组成。全景动作空间中的候选者由导航图中当前节点的k个邻居和一个停止动作组成。
本方法主要包括两个技术步骤:
·基于模板生成指令
·基于提示的预训练方法
1.基于模板生成指令
首先从R2R数据集中的指令生成模板。然后在训练环境中对轨迹进行采样。为采样轨迹生成候选名词短语和可操作动词,并用上述单词填充模板,指令生成模块的详细演示如图4所示。
1.1生成模板:
通过识别R2R数据集指令中的名词短语和动作短语并用特定掩码来替换这些词组,得到指令模板。与Airbert不同的是,不仅提取了名词短语,还提取了‘left’,‘right’,‘forward’和‘around’。其中Omask表示物体掩码,Amask表示动作掩码。具体模板例子如下图2所示。
1.2采样轨迹和动作
首先在Matterport环境中对轨迹进行采样。随机采样开始和结束位置,并收集长度小于8步的轨迹。然后通过视角移动得到每一步的对应动作。根据航向角(heading)和仰角(elevation)的偏差来得到相应动作,如forward,around,right等。如果智能体选择前面的可导航位置移动,会生成一个“forward”动作。如果代理选择向后导航位置移动,会生成一个“around”动作。如果智能体选择右前方导航位置进行下一步移动,会生成一个动作序列,如{‘right’,‘forward’},用于在指令生成期间填充动词Amask。
1.3使用先验知识填充模板
先验知识是在没有人工标记的情况下生成高质量数据的关键。为了生成结构化的增强数据,用描述采样轨迹和动作的短语来填充模板。轨迹表示为子{v0,...,vn},其中vi表示观察视点。引入CLIP模型来选择候选短语c并将它们与每个视图vi匹配。首先通过CLIP嵌入句子“a photo of[cnoun]”,其中cnoun表示候选名词短语(在Matterport数据集中标记的房间或对象类)。然后通过将视图图像输入到CLIP中得到视觉特征,并计算视觉特征和文本特征的相似度。为视图vi选择匹配分数最高的候选者。每个视图都有两个匹配的候选对象,一个用于检测到的房间,另一个用于对象。然后这个视图的描述cnoun被随机写成3种格式:‘[room]’、‘[object]’或‘[room]with[object]’。由于轨迹是在环境中采样的,可以通过比较航向和高度来获得两个视点之间的可操作动词ai。
随机选择一个模板,其Omask的数量与采样轨迹中的视点数量相同或接近。该模板具有一系列物体掩码{Omask,1,Omask,2,…Omask,l}和一系列动作掩码{Amask,1,Amask,2,...Amask,n}。对象掩码和动作掩码的长度分别表示为l和n。对象掩码和动作掩码的数量大致平衡。令nv为采样轨迹中的视点数。然后这个轨迹的生成标题写成{c0,...,cnv}。通过以下规则填充模板:1)如果nv≥l,随机抽取l个字幕,并按顺序填充模板中的Omask;2)如果nv<l,随机采样Omask并使用所有的标题短语来填充它们。填充短语后,可以识别出哪个视点Amask,i可能出现,因为它附近的Amask,j的视点是已知的。例如,如果模板类似于′Omask,1,Amask,1,Omask,2′,并且v1和v2的标题分别用于填充Omask,1和Omask,2,则Amask,1是v1和v2之间的采样动作.通过这种方式,使用生成的可操作动词来填充模板并获得最终指令。通过上述方法,可以在没有人工标记的情况下生成多样化的指令。
2.基于提示的预训练方法
自然语言提示prompt会冻结预训练模型并使用示例提示重新格式化自然语言输入,使下游任务适应预训练模型。Prompt tuning引入了可学习的连续提示,在自然语言理解中取得了显著的效果。受此启发,引入了一种基于提示的架构,以实现对生成的数据集和下游任务的快速适应。该架构类似于ViLBERT,并配备了用于快速调整的提示编码器。
给定一个指令-轨迹对,视觉和文本特征可以分别由ViLBERT中的视觉编码器Ev和文本编码器Ex提取。特别是文本输入有两部分:提示序列{p0,...,pn}和词序列{x0,...,xm},其中p和x分别表示一个伪提示标记和一个生成的指令的单词标记。n和m分别表示提示序列和单词序列的长度。
通过提示编码器Ep嵌入提示序列,并通过文本编码器Ex嵌入单词序列,如下所示:
ep,1,...,ep,n=Ep(p1,...,pn)
ex,1,...,ex,n=Ex(x1),...,Ex(xm)
其中Ep由一个LSTM头和一个MLP头组成,其中Ep由一个LSTM头和一个MLP头组成。然后将文本嵌入映射到et={ep,1,...,ep,n,ex,1,...,ex,m},其中ep,1,...,ep,n是可训练的嵌入向量,用来训练得到更好的连续提示。ev为由视觉编码器Ev产生的视觉嵌入。然后将ev和et传递给类似于ViLBERT的协同注意力transformer。
然后在提示调优过程中,对于语言流,固定Ex的参数只训练Ep的参数,即只训练prompt相关的参数。对于视觉流,由于轨迹表示为一系列全景图像区域,路径编码与图像编码存在较大的差异,会训练路径编码器的相关参数,视觉嵌入包含图像嵌入和位置嵌入。根据环境中的距离对指令-轨迹对进行采样路径,并训练模型以在其中选择最佳路径。
在生成的数据集上进行上述预训练过程之后,得到了一个快速迁移到视觉语言导航任务的预训练模型。按照基于提示的调优方法,的预训练模型已经可以适应多种下游导航任务,包括VLN——一个逐步的导航任务,和REVERIE——一个面向对象的导航任务。在逐步导航任务中,的模型接收指令语句并按照指令中的命令顺序导航。在对象导航任务中,的模型接收对象描述并探索房屋以找到对象。
实施例3
如图1所示,一种基于提示及环境自动探索的视觉语言导航预训练方法,包括以下步骤:
S1:通过屏蔽标记指令中的视觉和语言导航任务来生成指令模板;
S2:利用CLIP模型识别采样轨迹中的房间和物体,并将描述的短语与它们匹配,通过将匹配的短语填充到指令模板中来构建指令;
S3:将连续的任务特定向量添加到输入指令的嵌入中,并直接调整这些向量的嵌入来完成对视觉、语言导航数据集的预训练。
步骤S1中,视觉和语言导航任务VLN给出一个句子I={w0,…,wl}作为指令,其中wi是单词标记,l是句子的长度,该指令包括逐步到达目标的指导,观察全景视图作为视觉输入,它由36个RGB图像视图组成,这些视图中的每一个都由图像特征vi和方向描述(sinθt,i,cosθt,i,sinφt,i,cosφt,i)组成,全景动作空间中的候选者由导航图中当前节点的k个邻居和一个停止动作组成。
从R2R数据集中的指令生成模板,然后在训练环境中对轨迹进行采样,为采样轨迹生成候选名词短语和可操作动词,并用单词填充模板;通过识别R2R数据集指令中的名词短语和动作短语并用特定掩码来替换这些词组,得到指令模板,不仅提取了名词短语,还提取了‘left’,‘right’,‘forward'和‘around’。
步骤S2中,在Matterport环境中对轨迹进行采样:随机采样开始和结束位置,并收集长度小于8步的轨迹,然后通过视角移动得到每一步的对应动作,根据航向角heading和仰角elevation的偏差来得到相应动作;如果选择前面的可导航位置移动,会生成一个“forward”动作;如果选择向后导航位置移动,会生成一个“around”动作;如果选择右前方导航位置进行下一步移动,会生成一个动作序列用于在指令生成期间填充动词Amask。
用描述采样轨迹和动作的短语来填充模板:轨迹表示为子{v0,...,vn},其中vi表示观察视点,引入CLIP模型来选择候选短语c并将它们与每个视图vi匹配,首先通过CLIP嵌入句子“a photo of[cnoun]”,其中cnoun表示候选名词短语,即在Matterport数据集中标记的房间或对象类,然后通过将视图图像输入到CLIP中得到视觉特征,并计算视觉特征和文本特征的相似度;为视图vi选择匹配分数最高的候选者,每个视图都有两个匹配的候选对象,一个用于检测到的房间,另一个用于对象;然后这个视图的描述cnoun被随机写成3种格式:‘[room]’、‘[object]’或‘[room]with[object]’,由于轨迹是在环境中采样的,通过比较航向和高度来获得两个视点之间的可操作动词ai。
随机选择一个模板,其Omask的数量与采样轨迹中的视点数量相同或接近,该模板具有一系列物体掩码{Omask,1,Omask,2,...Omask,l}和一系列动作掩码{Amask,1,Amask,2,...Amask,n},对象掩码和动作掩码的长度分别表示为l和n,对象掩码和动作掩码的数量大致平衡,令nv为采样轨迹中的视点数,然后这个轨迹的生成标题写成{c0,...,cnv},通过以下规则填充模板:1)如果nv≥l,随机抽取l个字幕,并按顺序填充模板中的Omask;2)如果nv<l,随机采样Omask并使用所有的标题短语来填充它们;填充短语后,可以识别出哪个视点Amask,i可能出现,因为它附近的Amask,j的视点是已知的;如果模板类似于′Omask,1,Amask,1,Omask,2′,并且v1和v2的标题分别用于填充Omask,1和Omask,2,则Amask,1是v1和v2之间的采样动作,通过这种方式,使用生成的可操作动词来填充模板并获得最终指令,在没有人工标记的情况下生成多样化的指令。
步骤S3中,给定一个指令-轨迹对,视觉和语言导航任务特征分别由ViLBERT中的视觉编码器Ev和文本编码器Ex提取,语言导航任务输入有两部分:提示序列{p0,...,pn}和词序列{x0,...,xm},其中p和x分别表示一个伪提示标记和一个生成的指令的单词标记,n和m分别表示提示序列和单词序列的长度;通过提示编码器Ep嵌入提示序列,并通过文本编码器Ex嵌入单词序列,如下所示:
ep,1,...,ep,n=Ep(p1,...,pn)
ex,1,...,ex,n=Ex(x1),...,Ex(xm)
其中Ep由一个LSTM头和一个MLP头组成,其中Ep由一个LSTM头和一个MLP头组成;然后将文本嵌入映射到et={ep,1,...,ep,n,ex,1,...,ex,m},其中ep,1,...,ep,n是可训练的嵌入向量,用来训练得到更好的连续提示。ev表示由视觉编码器Ev产生的视觉嵌入,然后将ev和et传递给类似于ViLBERT的协同注意力transformer。
对于语言流,固定Ex的参数只训练Ep的参数,即只训练prompt相关的参数;对于视觉流,由于轨迹表示为一系列全景图像区域,路径编码与图像编码存在较大的差异,会训练路径编码器的相关参数,视觉嵌入包含图像嵌入和位置嵌入,根据环境中的距离对指令-轨迹对进行采样路径,并训练模型以在其中选择最佳路径。
在生成的数据集上进行预训练过程之后,得到了一个快速迁移到视觉语言导航任务的预训练模型,该模型适应多种下游导航任务,包括VLN-一个逐步的导航任务,和REVERIE-一个面向对象的导航任务,在逐步导航任务中,模型接收指令语句并按照指令中的命令顺序导航,在对象导航任务中,模型接收对象描述并探索房屋以找到对象。
方法通过探索现有环境来自动构建领域内的视觉语言导航预训练数据集,根据场景自动生成具有先验知识的导航数据,这种方法生成的数据集减少了预训练数据集和VLN任务之间的域差距,无需人工标记,更高效地构建了一个领域鸿沟更小的预训练数据集。如图5所示,左上角代表了真实的采样轨迹,图中的点代表了场景中可以到达的点,连接的线代表两点可到达,加粗的点和线表示了采样的一个轨迹;右上角表示基于模板生成的一个指令;下部分从上而下按顺序表示采样的轨迹涉及的观察视点图。生成的指令是“穿过在你左边的房间,走到带有镜子的餐厅,并在餐厅等待。”结合下部分的图片,是完全符合的。
方法在R2R(如图6)和REVERIE(如图7)上取得了优于基准模型的效果。我们通过判别和生成设置在R2R和REVERIE数据集上评估我们的方法。结果表明,ProbeES可以匹配或超过微调的性能,而所需的时间要少得多训练时间。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,包括以下步骤:
S1:通过屏蔽标记指令中的视觉和语言导航任务来生成指令模板;
S2:利用CLIP模型识别采样轨迹中的房间和物体,并将描述的短语与它们匹配,通过将匹配的短语填充到指令模板中来构建指令;
S3:将连续的任务特定向量添加到输入指令的嵌入中,并直接调整这些向量的嵌入来完成对视觉、语言导航数据集的预训练。
3.根据权利要求2所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,步骤S1中,从R2R数据集中的指令生成模板,然后在训练环境中对轨迹进行采样,为采样轨迹生成候选名词短语和可操作动词,并用单词填充模板。
4.根据权利要求3所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,步骤S1中,通过识别R2R数据集指令中的名词短语和动作短语并用特定掩码来替换这些词组,得到指令模板,不仅提取了名词短语,还提取了‘left',‘right',‘forward'和‘around’。
5.根据权利要求4所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,步骤S2中,在Matterport环境中对轨迹进行采样:随机采样开始和结束位置,并收集长度小于8步的轨迹,然后通过视角移动得到每一步的对应动作,根据航向角heading和仰角elevation的偏差来得到相应动作;如果选择前面的可导航位置移动,会生成一个“forward”动作;如果选择向后导航位置移动,会生成一个“around”动作;如果选择右前方导航位置进行下一步移动,会生成一个动作序列包括{‘right’,‘forward’},用于在指令生成期间填充动词Amask。
6.根据权利要求5所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,所述步骤S2中,用描述采样轨迹和动作的短语来填充模板:轨迹表示为{v0,...,vn},其中vi表示观察视点,引入CLIP模型来选择候选短语c并将它们与每个视图vi匹配,首先通过CLIP嵌入句子“a photo of[cnoun]”,其中cnoun表示候选名词短语,即在Matterport数据集中标记的房间或对象类,然后通过将视图图像输入到CLIP中得到视觉特征,并计算视觉特征和文本特征的相似度;为视图vi选择匹配分数最高的候选者,每个视图都有两个匹配的候选对象,一个用于检测到的房间,另一个用于对象;然后这个视图的描述cnoun被随机写成3种格式:‘[room]′、‘[object]’或‘[room]with[object]’,由于轨迹是在环境中采样的,通过比较航向和高度来获得两个视点之间的可操作动词ai。
7.根据权利要求6所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,随机选择一个模板,其Omask的数量与采样轨迹中的视点数量相同或接近,该模板具有一系列物体掩码{Omask,1,Omask,2,...Omask,l}和一系列动作掩码{Amask,1,Amask,2,...Amask,n},对象掩码和动作掩码的长度分别表示为l和n,对象掩码和动作掩码的数量大致平衡,令nv为采样轨迹中的视点数,然后这个轨迹的生成标题写成{c0,...,cnv},通过以下规则填充模板:1)如果nv≥l,随机抽取l个字幕,并按顺序填充模板中的Omask;2)如果nv<l,随机采样Omask并使用所有的标题短语来填充它们;填充短语后,可以识别出哪个视点Amask,i可能出现,因为它附近的Amask,j的视点是已知的;如果模板类似于′Omask,1,Amask,1,Omask,2′,并且v1和v2的标题分别用于填充Omask,1和Omask,2,则Amask,1是v1和v2之间的采样动作,通过这种方式,使用生成的可操作动词来填充模板并获得最终指令,在没有人工标记的情况下生成多样化的指令。
8.根据权利要求7所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,步骤S3中,给定一个指令-轨迹对,视觉和语言导航任务特征分别由ViLBERT中的视觉编码器Ev和文本编码器Ex提取,语言导航任务输入有两部分:提示序列{p0,...,pn}和词序列{x0,...,xm},其中p和x分别表示一个伪提示标记和一个生成的指令的单词标记,n和m分别表示提示序列和单词序列的长度;通过提示编码器Ep嵌入提示序列,并通过文本编码器Ex嵌入单词序列,如下所示:
ep,1,...,ep,n=Ep(p1,...,pn)
ex,1,...,ex,n=Ex(x1),...,Ex(xm)
其中Ep由一个LSTM头和一个MLP头组成,其中Ep由一个LSTM头和一个MLP头组成;然后将文本嵌入映射到et={ep,1,...,ep,n,ex,1,...,ex,m},其中ep,1,...,ep,n是可训练的嵌入向量,用来训练得到更好的连续提示。ev表示由视觉编码器Ev产生的视觉嵌入,然后将ev和et传递给类似于ViLBERT的协同注意力transformer。
9.根据权利要求8所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,对于语言流,固定Ex的参数只训练Ep的参数,即只训练prompt相关的参数;对于视觉流,由于轨迹表示为一系列全景图像区域,路径编码与图像编码存在较大的差异,会训练路径编码器的相关参数,视觉嵌入包含图像嵌入和位置嵌入,根据环境中的距离对指令-轨迹对进行采样路径,并训练模型以在其中选择最佳路径。
10.根据权利要求9所述的基于提示及环境自动探索的视觉语言导航预训练方法,其特征在于,在生成的数据集上进行预训练过程之后,得到了一个快速迁移到视觉语言导航任务的预训练模型,该模型适应多种下游导航任务,包括VLN-一个逐步的导航任务,和REVERIE-一个面向对象的导航任务,在逐步导航任务中,模型接收指令语句并按照指令中的命令顺序导航,在对象导航任务中,模型接收对象描述并探索房屋以找到对象。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210603150.6A CN114970457A (zh) | 2022-05-30 | 2022-05-30 | 一种基于提示及环境自动探索的视觉语言导航预训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210603150.6A CN114970457A (zh) | 2022-05-30 | 2022-05-30 | 一种基于提示及环境自动探索的视觉语言导航预训练方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114970457A true CN114970457A (zh) | 2022-08-30 |
Family
ID=82957314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210603150.6A Pending CN114970457A (zh) | 2022-05-30 | 2022-05-30 | 一种基于提示及环境自动探索的视觉语言导航预训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114970457A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116168333A (zh) * | 2023-04-20 | 2023-05-26 | 华南理工大学 | 一种自监督视觉语言导航预训练方法、装置及存储介质 |
CN117506940A (zh) * | 2024-01-04 | 2024-02-06 | 中国科学院自动化研究所 | 机器人轨迹语言描述生成方法、装置和可读存储介质 |
-
2022
- 2022-05-30 CN CN202210603150.6A patent/CN114970457A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116168333A (zh) * | 2023-04-20 | 2023-05-26 | 华南理工大学 | 一种自监督视觉语言导航预训练方法、装置及存储介质 |
CN116168333B (zh) * | 2023-04-20 | 2023-08-22 | 华南理工大学 | 一种自监督视觉语言导航预训练方法、装置及存储介质 |
CN117506940A (zh) * | 2024-01-04 | 2024-02-06 | 中国科学院自动化研究所 | 机器人轨迹语言描述生成方法、装置和可读存储介质 |
CN117506940B (zh) * | 2024-01-04 | 2024-04-09 | 中国科学院自动化研究所 | 机器人轨迹语言描述生成方法、装置和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Camgoz et al. | Neural sign language translation | |
Wang et al. | All in one: Exploring unified video-language pre-training | |
Zhang et al. | Open-book video captioning with retrieve-copy-generate network | |
Shi et al. | American sign language fingerspelling recognition in the wild | |
Chen et al. | Syntax-directed attention for neural machine translation | |
Wu et al. | Grit: A generative region-to-text transformer for object understanding | |
Forster et al. | Extensions of the Sign Language Recognition and Translation Corpus RWTH-PHOENIX-Weather. | |
Li et al. | Envedit: Environment editing for vision-and-language navigation | |
CN114970457A (zh) | 一种基于提示及环境自动探索的视觉语言导航预训练方法 | |
CN111967272B (zh) | 基于语义对齐的视觉对话生成系统 | |
Nair et al. | Conversion of Malayalam text to Indian sign language using synthetic animation | |
Shao et al. | Textual context-aware dense captioning with diverse words | |
CN113784199B (zh) | 一种用于生成视频描述文本的系统、方法、存储介质与电子设备 | |
Dreuw et al. | Signspeak–understanding, recognition, and translation of sign languages | |
Hu et al. | Signbert+: Hand-model-aware self-supervised pre-training for sign language understanding | |
Zheng et al. | Enhancing neural sign language translation by highlighting the facial expression information | |
CN113344036A (zh) | 一种基于动态词嵌入的多模态Transformer的图像描述方法 | |
Ham et al. | Ksl-guide: A large-scale korean sign language dataset including interrogative sentences for guiding the deaf and hard-of-hearing | |
CN111741236A (zh) | 基于共识图表征推理的定位自然图像字幕生成方法和装置 | |
Wang et al. | Res-sts: Referring expression speaker via self-training with scorer for goal-oriented vision-language navigation | |
Qi et al. | Cogcom: Train large vision-language models diving into details through chain of manipulations | |
Raj et al. | Deep learning based video captioning in bengali | |
Kim et al. | Keypoint based sign language translation without glosses | |
Toshevska et al. | Exploration into deep learning text generation architectures for dense image captioning | |
CN113670310B (zh) | 视觉语音导航方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |