基于chatgpt反馈的视觉对话方法、装置及设备
技术领域
1.本发明涉及人工智能神经网络领域,尤其是一种基于chatgpt反馈的视觉对话方法、装置及设备。
背景技术:
2.现有的视觉对话方法存在着以下缺点:第一,视觉对话模型的预训练过程成本很高,而且受到语料库规模的极大限制。第二,现有的视觉对话模型只关注图像-文本对的学习,而不是关注图像-对话轮次对的学习,这对于理解对话历史中固有的时间依赖性是不利的。由于对话中固有的时间依赖性对于对话代理的准确、连贯和逻辑反应是不可或缺的关键,因此直接用现有的图像-文本预训练模型实现视觉对话仍然存在不足。
技术实现要素:
3.有鉴于此,本发明实施例提供一种基于chatgpt反馈的视觉对话方法、装置及设备,以提高视觉对话的时间依赖性。
4.本发明实施例的一方面提供了一种基于chatgpt反馈的视觉对话方法,包括:
5.获取目标图像、对话历史以及后续问题;
6.提取所述目标图像的图像特征,提取所述对话历史中每轮对话回合对应的对话轮次特征;
7.将所述图像特征和所述对话轮次特征进行特征统一;
8.将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征;
9.将所述目标图像、所述后续问题以及所述时序特征输入至经过预先训练的视觉对话模型,得到所述后续问题对应的第一预测答案;所述视觉对话模型根据chatgpt对标题生成的第二预测答案训练得到,所述标题由所述目标图像和所述对话历史确定。
10.可选地,所述经过预先训练的视觉对话模型的训练步骤,包括:
11.根据所述目标图像和所述后续问题确定所述标题;
12.根据所述标题确定多个问题,并将多个所述问题与所述标题输入chatgpt,得到所述第二预测答案;
13.获取由chatgpt引导的损失函数,并根据所述损失函数和所述第二预测答案训练所述视觉对话模型;
14.所述损失函数的表达式为:
[0015][0016]
其中,表示样本i中第t轮对话问答的标签,所述样本i包括训练用的视觉对话的地面真实问答对和随机采样的负类问答对,表示所述样本i中第t轮对话问答预测为正确答案的概率,n表示所述样本i总的数量。
[0017]
可选地,所述方法还包括判断所述第二预测答案是否真实的步骤,所述判断所述第二预测答案是否真实,包括:
[0018]
计算所述第二预测答案与地面真实答案之间的相似度分数;
[0019]
若所述相似度分数达到设定阈值,则将所述第二预测答案确定为真实的答案,并将所述标签的值确定为1;
[0020]
若所述相似度分数未达到所述设定阈值,则将所述第二预测答案确定为非真实的答案,并将所述标签的值确定为0。
[0021]
可选地,所述提取所述目标图像的图像特征,包括:
[0022]
根据第一表达式提取所述目标图像的图像特征;
[0023]
所述第一表达式为:
[0024][0025]
其中,s为比例因子,xi表示所述图像特征,σ表示非线性激活函数,表示所述目标图像的向上投影层;表示属于d
×
r维的实数;w
down
表示所述向下投影层;表示w
down
属于d
×
r维的实数。
[0026]
可选地,所述提取所述对话历史中每轮对话回合对应的对话轮次特征,包括:
[0027]
根据第二表达式提取所述对话历史中每轮对话回合对应的对话轮次特征;
[0028]
所述第二表达式为:
[0029][0030]
其中,s为比例因子,表示所述第一对话轮次特征,σ表示非线性激活函数,表示所述第一对话轮次特征的向上投影层;表示属于d
×
r维的实数;w
down
表示向下投影层;表示w
down
属于d
×
r维的实数。
[0031]
可选地,所述将所述图像特征和所述对话轮次特征进行特征统一,包括:
[0032]
根据第三表达式将所述图像特征和所述对话轮次特征进行特征统一;
[0033]
所述第三表达式为:
[0034][0035]
其中,xc表示特征统一后的跨模态特征,表示所述跨模态特征的向上投影层;
[0036]
根据第四表达式查询所述第三表达式的特征信息,第四表达式为:
[0037]ol
=a
cross
(q) a
cross
(h) ffn(ln(h)),
[0038]
其中,o
l
是输出特征,q是自我注意的输出特征,h是隐藏状态,包括查询特征和跨模式融合特征,ffn是前馈网络,ln是层规范化。
[0039]
可选地,所述将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征,包括:
[0040]
根据第五表达式将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征;
[0041]
所述第五表达式为:
[0042][0043]
所述第五表达式变换可得:
[0044][0045]
其中,当前对话回合h
t
的潜在表征表示为[
·
]表示连接操作,表示将所述图像特征与每个所述对话轮次特征进行连接;wq、wk和wv分别是查询、键以及值的投影矩阵。
[0046]
本发明实施例的另一方面还提供了一种基于chatgpt反馈的视觉对话装置,包括:
[0047]
第一单元,用于获取目标图像、对话历史以及后续问题;
[0048]
第二单元,用于提取所述目标图像的图像特征,提取所述对话历史中每轮对话回合对应的对话轮次特征;
[0049]
第三单元,用于将所述图像特征和所述对话轮次特征进行特征统一;
[0050]
第四单元,用于将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征;
[0051]
第五单元,用于将所述目标图像、所述后续问题以及所述时序特征输入至经过预先训练的视觉对话模型,得到所述后续问题对应的第一预测答案;所述视觉对话模型根据chatgpt对标题生成的第二预测答案训练得到,所述标题由所述目标图像和所述对话历史确定。
[0052]
本发明实施例的另一方面还提供了一种电子设备,包括处理器以及存储器;
[0053]
所述存储器用于存储程序;
[0054]
所述处理器执行所述程序实现所述的一种基于chatgpt反馈的视觉对话方法。
[0055]
本发明实施例的另一方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现所述的一种基于chatgpt反馈的视觉对话方法。
[0056]
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行前面的方法。
[0057]
本发明可以分别提取图像特征和对话轮次特征,进而对上述两种特征进行特征统一,再进行特征拼接,基于此,本发明可以低成本保持大模型固有的跨模态能力,以更高效地适应视觉对话,同时更好地捕捉对话的时间依赖性,而且,本发明还引入了chatgpt训练视觉对话模型,可以根据利用chatgpt强大的对话能力改善本发明视觉对话模型的性能,并提高视觉对话的准确性。
附图说明
[0058]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0059]
图1为本发明实施例提供的一种基于chatgpt反馈的视觉对话方法的流程示意图;
[0060]
图2为本发明实施例提供的一种视觉对话模型的架构示例图;
[0061]
图3为本发明实施例提供的一种视觉对话的示例图;
[0062]
图4为本发明实施例提供的一种基于chatgpt反馈的视觉对话装置的结构框图。
具体实施方式
[0063]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0064]
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。
[0065]
说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。而且,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0066]
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
[0067]
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释:
[0068]
视觉对话:现有技术提出的视觉对话任务要求对话代理正确回答问题,给定一个图像,一个由可选的标题和一些问答对组成的对话历史,以及一个问题。现有技术的视觉对话工作还引入了大规模的多模态视觉语言模型,并进行了自我监督的图像-文本预训练。这些模型(比如:blip、utc、vd-bert等)通过简单地将对话历史中的所有话语串联在一起作为一个上下文来处理视觉对话,通过交叉注意直接与视觉信息进行一次交互。然而,上述现有技术存在着以下两个缺点:首先,预训练的成本很高,而且受到语料库规模的极大限制。其次,它们只关注图像-文本对的学习,而不是关注图像-对话轮次对的学习,这对于理解对话历史中固有的时间依赖性是不利的。由于对话中固有的时间依赖性对于对话代理的准确、连贯和逻辑反应是不可或缺的关键,因此直接用这些图像-文本预训练模型实现视觉对话仍然是次优的。虽然本发明实施例也是建立在预训练的视觉语言模型上,但与现有技术不同的是,本发明实施例引入了单模态、跨模态和时序适配器来更高效地适应视觉对话,同时更好地捕捉对话的时间依赖性。此外,为了利用chatgpt强大的对话能力,本发明实施例引入了chatgpt作为反馈,以利用其能力来改善视觉对话。
[0069]
大型语言模型:在自然语言处理领域,大型语言模型(如gpt-3、chatgpt和lama),由于参数巨大和大规模训练数据,在文本对话任务中通过提供详细而多样的回答而具备高性能的对话和推理能力。其中,chatgpt因其显著的对话和推理能力而最为突出。受益于从
人类反馈中强化学习(rlhf,reinforcement learning from human feedback),chatgpt可以回答各种不同的问题,比其它大型语言模型更符合人类思维。但是由于缺乏视觉理解模块,这些模型很难理解视觉信息并正确回答问题。此外,即使本发明实施例在大型语言模型中加入视觉模块,由于对计算资源的要求过高,对模型进行视觉对话的微调也太昂贵了(比如blip-2、visual chatgpt和minigpt-4等)。因此,将这些大型语言模型惊人的对话和推理能力转移到视觉对话模型中以提高视觉对话的性能是很有希望的,同时也是相当有挑战性的。与这些现有的工作不同,本发明实施例试图探索一种新的方法,以低成本的j9九游会真人的解决方案来弥补模式之间的差距,同时利用大型语言模型的强大能力。
[0070]
视觉语言建模和参数高效的适配器:受预训练语言模型的成功启发,许多预训练的视觉语言模型也被提出,如clip、albef和blip。尽管这些模型在经过完整的模型微调后,在视觉对话上表现出不错的结果,但这些模型是在一般的大规模图像-文本对上预先训练的,而这些图像-文本对并不是专门为视觉对话设计的,因此它们很难捕捉到对话的时间依赖性。此外,其完整的模型微调策略的成本也很高。参数高效迁移学习技术,如uniadapter、lora和tune-a-video,可以通过在冻结的大型模型中引入最小的额外参数更新来缓解昂贵的训练成本,以便于下游的任务适应。受参数高效迁移学习的启发,本发明实施例提出了不同类型的适配器,包括单模态适配器、跨模态适配器和时序适配器,以保持大模型固有的跨模态能力,同时捕捉视觉对话中固有的时间特征。
[0071]
参照图1,本发明实施例提供了一种基于chatgpt反馈的视觉对话方法,包括步骤s100至步骤s140,具体以下:
[0072]
s100:获取目标图像、对话历史以及后续问题。
[0073]
具体的,目标图像是指用于视觉对话的图像;对话历史是预先根据目标图像进行过程多轮次对话得到的对话内容,每个轮次提出一个问题,每个问题和该问题对应的回答作为一个对话回合;本发明实施例针对目标图像提出后续问题,以获得后续问题对应的答案。
[0074]
可选地,为了描述方便,下面将目标图像简称为图像。
[0075]
接下来,具体介绍本发明实施例提出的视觉对话方法,本发明实施例的视觉对话模型称为videcho,其是一个具有高效视觉对话适配器并使用chatgpt作为反馈的视觉对话模型。
[0076]
首先,对预先训练的视觉对话模型的训练步骤进行说明,具体如下:
[0077]
s1、根据所述目标图像和所述后续问题确定所述标题;
[0078]
s2、根据所述标题确定多个问题,并将多个所述问题与所述标题输入chatgpt,得到所述第二预测答案;
[0079]
s3、获取由chatgpt引导的损失函数,并根据所述损失函数和所述第二预测答案训练所述视觉对话模型;
[0080]
所述损失函数的表达式为:
[0081][0082]
其中,表示样本i中第t轮对话问答的标签,所述样本i包括训练用的视觉对话
的地面真实问答对和随机采样的负类问答对,表示所述样本i中第t轮对话问答预测为正确答案的概率,n表示所述样本i总的数量。
[0083]
为了去除第二预测答案中的噪声,本发明实施例进一步还可以包括判断所述第二预测答案是否真实的步骤,具体如下:
[0084]
s4、计算所述第二预测答案与地面真实答案之间的相似度分数;根据相似度分数与预先配置的设定阈值的比较结果执行s5或s6。
[0085]
s5、若所述相似度分数达到设定阈值,则将所述第二预测答案确定为真实的答案,并将所述标签的值确定为1;
[0086]
s6、若所述相似度分数未达到所述设定阈值,则将所述第二预测答案确定为非真实的答案,并将所述标签的值确定为0。
[0087]
s110:提取所述目标图像的图像特征,提取所述对话历史中每轮对话回合对应的对话轮次特征。
[0088]
进一步地,所述提取所述目标图像的图像特征,包括:
[0089]
根据第一表达式提取所述目标图像的图像特征;
[0090]
所述第一表达式为:
[0091][0092]
其中,s为比例因子,xi表示所述图像特征,σ表示非线性激活函数,表示所述目标图像的向上投影层;表示属于d
×
r维的实数;w
down
表示所述向下投影层;表示w
down
属于d
×
r维的实数。
[0093]
进一步地,所述提取所述对话历史中每轮对话回合对应的对话轮次特征,包括:
[0094]
根据第二表达式提取所述对话历史中每轮对话回合对应的对话轮次特征;
[0095]
所述第二表达式为:
[0096][0097]
其中,s为比例因子,表示所述第一对话轮次特征,σ表示非线性激活函数,表示所述第一对话轮次特征的向上投影层;表示属于d
×
r维的实数;w
down
表示向下投影层;表示w
down
属于d
×
r维的实数。
[0098]
s120:将所述图像特征和所述对话轮次特征进行特征统一。
[0099]
进一步地,所述将所述图像特征和所述对话轮次特征进行特征统一,包括:
[0100]
根据第三表达式将所述图像特征和所述对话轮次特征进行特征统一;
[0101]
所述第三表达式为:
[0102][0103]
其中,xc表示特征统一后的跨模态特征,表示所述跨模态特征的向上投影层;
[0104]
根据第四表达式查询所述第三表达式的特征信息,第四表达式为:
[0105]ol
=a
cross
(q) a
cross
(h) ffn(ln(h)),
[0106]
其中,o
l
是输出特征,q是自我注意的输出特征,h是隐藏状态,包括查询特征和跨
模式融合特征,ffn是前馈网络,ln是层规范化。
[0107]
s130:将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征。
[0108]
进一步地,所述将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征,包括:
[0109]
根据第五表达式将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征;
[0110]
所述第五表达式为:
[0111][0112]
所述第五表达式变换可得:
[0113][0114]
其中,当前对话回合h
t
的潜在表征表示为[
·
]表示连接操作,表示将所述图像特征与每个所述对话轮次特征进行连接;wq、wk和wv分别是查询、键以及值的投影矩阵。
[0115]
s140:将所述目标图像、所述后续问题以及所述时序特征输入至经过预先训练的视觉对话模型,得到所述后续问题对应的第一预测答案;所述视觉对话模型根据chatgpt对标题生成的第二预测答案训练得到,所述标题由所述目标图像和所述对话历史确定。
[0116]
具体的,根据经过训练的视觉对话模型得到的预测答案作为第一预测答案,根据chatgpt对标题生成的预测答案作为第二预测答案,基于chatgpt训练的视觉对话模型,其预测得到的第一预测答案可以包括与对话历史保持较高的时间依赖性,同时也更准确。
[0117]
接下来将以具体实例说明本发明的应用过程。
[0118]
本发明实施例接下来首先介绍视觉对话的初步情况。然后描述本发明实施例的videcho的架构,其中包括单模态适配器、跨模态适配器和时序适配器。最后,本发明实施例定义了本发明实施例的videcho的训练目标,它被定义为chatgpt引导的损失函数,具体说明如下:
[0119]
给定一个图像i,一个标题c,一个对话历史h和一个后续问题q,视觉对话任务要求对话代理用自然语言对问题q给出一个答案a。为了实现这一目标,在本发明实施例通过对候选答案的排序来学习一个神经视觉对话模型,具体如下:给定一个图像i和一个对话历史h=(c,(q1,a1),(q2,a2),
…
,(q
t-1
,a
t-1
)),后续问题q
t
,以及100个候选答案的列表神经视觉对话模型被要求返回a
t
的排序。
[0120]
本发明的videcho的整体架构如图2所示。其中,单模态适配器包括一个视觉适配器和一个文本适配器,它们被用来提取单模态特征。为了提取一轮又一轮的《问题-答案》对特征,本发明实施例还组装了一个时序适配器。此外,每一轮的图像和问题被送入标题机,以生成与不同的《图像-问题》对相对应的标题。然后,这些标题和问题被送入一个大型语言模型chatgpt,以对视觉对话进行反馈。可以计算出这个反馈和地面真实答案之间的相似度分数,以区分反馈是否可以作为一个正或负样本添加到视觉对话数据中。最后,一个chatgpt引导的损失函数被用来指导视觉对话模型的训练。
[0121]
为了对视觉对话进行参数有效的适配,除了冻结的预训练骨干,它还包括两个单模态适配器(一个视觉适配器和一个文本适配器),一个跨模态适配器,以及一个时序适配器。videcho以一轮接一轮的方式对对话历史进行编码。视觉适配器负责适应视觉对话任务的模内视觉特征,以提取准确的视觉特征,而文本适配器负责适应对话回合的模内文本特征,为对话回合建立有效的特定领域文本特征。为了捕捉视觉对话中固有的时间依赖性,本发明实施例提出了时序适配器,以保持相邻对话回合之间的时序特征。为了弥补视觉模式和文本模式之间的差距,跨模式适配器被用来调整来自不同模式的特征。最终的多模态对话特征将被传递给一个简单的线性层来区分当前问题的答案是否正确。为了将chatgpt高效的对话和推理能力迁移到videcho中,以实现更好的视觉对话,本发明实施例进一步提出了一种新颖的chatgpt引导的损失,通过计算相似度分数来区分不同质量的视觉对话反馈,从而与原始视觉对话数据集相比,补充了更丰富和更多样的反应。
[0122]
在本发明的videcho中,图像编码器(图2中包括自注意层和前馈层的方框处)是一个12层的视觉变换器vit-b/16,对话编码器(图2中包括自注意层、交叉注意层和前馈层的方框处)是一个基于bert的不区分大小写(uncased)模型。这两个编码器都是由视觉对话上的blip的微调权重初始化的。为了对视觉对话进行编码,图像i首先被缩放为384
×
384的大小,然后被分割成n个16
×
16的斑块作为标记。这些标记被送入图像编码器以提取视觉特征其中表示[cls]令牌(cls是一个标记代号,英文是classification,表示分类)。同时,由图像标题和每轮问答对组成的对话历史中的所有词都被词块标记器(word piece tokenizer)令牌化,以获得令牌序列。然后,在输入序列的开头添加一个特定任务的[encode](一个标记代号,表示特定编码任务)标记,并将[sep](一个标记代号,英文是separation,表示分隔)附加到输入序列上,以标记输入序列的结束。为了更具体地提取每一轮的特征,本发明实施例的对话历史被送入对话编码器,以逐轮提取对话历史特征其中t是对话的轮次。
[0123]
接下来对各个适配器提取特征的过程进行说明。
[0124]
1.单模态适配器。
[0125]
为了继承预训练的图像编码器和对话编码器在视觉对话方面的能力,本发明的videcho采用了适配器,以便在特定的数据集上进一步微调。本发明实施例在图像编码器和对话编码器中插入了具有特定模态向上投影层(和分别对应于图像和对话)的单模态编码器,以学习特定模态的表示。按照uniadapter,本发明实施例在自注意模块和前馈层之间注入单模态适配器。每个适配器包括一个向下投影层一个非线性激活函数σ,和一个向上投影层其中d或r是输入维度(表示实数,这里表示w
up
属于d
×
r维的实数,其它同理)。给定一个输入特征视觉适配器和文本适配器可以被建模如下:
[0126][0127][0128]
其中s为比例因子,xi和分别表示视觉特征和单轮次对话特征。
[0129]
2.跨模态适配器。
[0130]
对于视觉对话任务来说,将来自不同模态的特征统一起来是至关重要的。因此,本发明实施例采用了一个跨模态适配器来弥补视觉模态和文本模态之间的语义差距。为此,本发明实施例在对话编码器的交叉注意层和前馈层之间插入了一个跨模态适配器,并将文本上投层重用到适配器中以捕捉文本信息。跨模式适配器可以表示如下:
[0131][0132]
其中xc表示跨模态特征。对于跨模态适配器,网络的每一层都通过一个残差结构来捕获查询信息:
[0133]ol
=a
cross
(q) a
cross
(h) ffn(ln(h)),
[0134]
其中o
l
是第l层的输出特征。q是自我注意的输出特征,被视为查询。而h是隐藏状态,其中包含查询特征和跨模式融合特征。ffn是前馈网络,ln是层规范化。
[0135]
3.时序适配器。
[0136]
为了加强视觉对话模型的时序一致性,本发明实施例进一步提出了一个时序适配器,以捕捉和加强当前对话回合、先前对话历史和图像之间的互动。形式上,给定当前对话回合h
t
的潜在表征时间适配器可以由自我注意机制实现为即:
[0137][0138]
其中[
·
]表示连接操作,表示将图像特征与每个对话历史的特征连接起来。这意味着,注意力矩阵是在当前的对话回合和之前的对话历史(包括图像)之间计算的。此外,wq、wk和wv分别是查询、键和值的投影矩阵,它们是共享的。本发明实施例在做适应的过程中只更新参数wq。
[0139]
4.chatgpt引导的损失。
[0140]
为了利用chatgpt强大的对话能力,本发明实施例引入了chatgpt作为反馈,利用其能力来改善视觉对话。特别是,本发明实施例提出了一个chatgpt引导的损失,这是一个交叉熵损失,通过给出整个对话历史、图像和标题来区分训练数据集或chatgpt的问题答案是否真实。为了从chatgpt中选择正确的答案,本发明实施例部署了sentence-bert来衡量chatgpt中的答案与地面真实回答之间的相似度。当相似性分数大于或等于设定阈值时,来自chatgpt的生成的答案被认为是真的,否则就是假的。
[0141]
本发明实施例引入chatgpt的模型结构如图2所示。具体来说,对于一个图像和关于它的对话问答,本发明实施例把其中的图像和对话问题输入标题机,由标题机生成关于这个《图像和问题》对的标题,作为后续输入chatgpt的上下文。(因为chatgpt没有识图能力,单凭问题无法给出关于图像内容的答案。)接着,本发明实施例利用这个(带有图像信息的)标题作为上下文,给chatgpt轮流提出每一轮的问题。在具有上下文标题的帮助下,chatgpt可以尽可能地给出问题的答案,作为独立于原来数据集答案以外的参考答案的补充。利用chatgpt生成的答案,本发明实施例可以引入chatgpt引导的损失函数来指导模型对于chatgpt新产生的答案进行学习。
[0142]
其中,chatgpt引导的损失函数l
ce
表示为:
[0143][0144]
其中,对于一个视觉对话例子,表示样本i(包括该视觉对话例子的地面真实问答对以及随机采样的负类问答对)中第t轮对话问答的标签,表示为正类则为1,也就是这个答案为正确的,否则答案错误为0。表示样本i(包括该视觉对话例子的地面真实问答对以及随机采样的负类问答对)中第t轮对话问答预测为正确答案的概率,它由
②
中得到的样本i的对话特征通过一层线性层得到。n表示样本总的数量。
[0145]
需要说明的是,因为chatgpt生成的答案也同样有很多噪声,不一定是真实有效的,所以本发明实施例需要另外区分chatgpt生成的答案是否真实,也就是标签为0还是1。所以本发明实施例部署了sentence-bert来衡量chatgpt中的答案与地面真相之间的相似度。当相似性分数高于给定阈值时,来自chatgpt的生成的答案被认为是真的,否则就是假的。对比表达式如下:
[0146][0147]
其中,i表示chatgpt答案的下标,表示第t轮问答的地面真实答案,表示第t轮问答的chatgpt生成答案,sentencebert会给出关于这两个答案的相似度分数,当该分数大于或等于给定阈值s
threshold
时,标签为1,否则为0。可选地,本发明实施例的给定阈值可以是s
threshold
=0.5。
[0148]
这样,利用标题机指导chatgpt生成的答案就可以利用进模型的训练中,作为现有数据集的补充,可以改善生成答案的相关性、多样性、创造性。
[0149]
本发明在视觉对话任务中引入了低成本的单模态、跨模态和时序适配器来保持大模型固有的跨模态能力以更高效地适应视觉对话,同时更好地捕捉对话的时间依赖性。另外,本发明还引入了chatgpt作为反馈,以利用其能力来改善视觉对话。
[0150]
接下来,对本发明实施例的验证过程进行说明。
[0151]
本发明实施例在两个数据集上评估videcho:visdial v1.0(visual dialog,视觉对话)和avsd(audio visual scene-aware dialog,音频视觉场景感知对话)。visdial v1.0数据集将visdial v0.9训练集和验证集合并为一个新的训练集。visdial v0.9数据集是根据coco数据集的图像和标题收集的,其中包含大概83k张图像的训练集和40k张图像的验证集。visdial数据集中的每个图像都持续了10轮问答对话,除了visdial v1.0测试集中的对话,它的长度在10轮之内是随机的。对于每个问题,它都与100个候选答案的列表配对,其中一个被认为是正确答案。对于v1.0的验证部分和v1.0的部分训练部分(2k张图片),为答案候选人提供额外的密集注释(即相关性分数),根据ndcg(normalized discounted cumulative gain,归一化贴现累积收益)指标进行评估。
[0152]
avsd(音频视觉场景感知对话)数据集是关于短视频的注释对话,包含11,816个取自charades数据集的视频,分为7,985个训练对话、1,863个验证对话和1,968个测试对话。本发明实施例遵循只将中间帧作为图像输入而不是视频输入。
[0153]
本发明实施例使用排名指标来评估本发明在visdial v1.0和avsd数据集上的性
能。这些指标包括:
[0154]
1.mrr(mean reciprocal rank,平均倒序排名),评估地面真实答案选项的倒序排名;
[0155]
2.recall@k(k∈{1,5,10},召回率),评估前k个答案中真实答案的百分比;
[0156]
3.mr(mean rank,平均排名),评估真实答案选项的平均排名;
[0157]
4.ndcg(normalized discounted cumulative gain,归一化贴现累积收益),考虑到多个正确答案,并对排名较低但正确的答案选项进行惩罚。
[0158]
本发明实施例的方法和基线在visdial v1.0数据集的标准测试(test-std)集上的性能。
↑
表示越高越好,而
↓
表示越低越好。具体见下述表1:
[0159][0160][0161]
本发明实施例的方法和基线在visdial v1.0数据集的验证集上的性能。
↑
表示越高越好,而
↓
表示越低越好。具体见下述表2:
[0162]
[0163]
本发明实施例的方法和基线在avsd数据集的验证集上的性能。
↑
表示越高越好,而
↓
表示越低越好。具体见下述表3:
[0164][0165][0166]
其中,alignvd预先训练了很多额外的伪标签数据,包括边界框,这些数据对性能的提高至关重要,与其他模型相比不太公平。除此之外,可以看到本发明实施例的方法,以及在去掉chatgpt的时候都能表现出很好的性能。
[0167]
在visdial v1.0验证集上对videcho(本发明实施例的方法)不同组件的消融研究。
↑
表示越高越好而
↓
表示越低越好。具体见下述表4:
[0168][0169]
为了验证本发明实施例的方法videcho的不同组件的效果,本发明实施例在visdial v1.0上进行了实验,并在0中显示了visdial v1.0的验证集结果。从表4中可以观察到,从不同的指标来看,单模态适配器、跨模态适配器、时序适配器和chatgpt引导的损失函数的引入对改善视觉对话是有效的。
[0170]
参照图3,本发明实施例提供了一种视觉对话的示例图。
[0171]
本发明实施例的videcho中,经济与chatgpt、单模态和跨模态适配器,videcho准确地识别了对话中出现的图像对象,如“小姑娘”、“裙子”和“风筝”。基于时序适配器,videcho可以很容易地理解"她"是指对话历史和图像中的“小女孩”。本发明实施例还展示了videcho(有和没有chatgpt)对最后一个问题“风筝是什么颜色?”的前5个答案。可以看到,尽管两个模型都正确地回答了这个问题的前1个答案"这是一个彩虹风筝",但有chatgpt的videcho可以回答更多与颜色有关的答案,如“红色”、“蓝色”和“一个从红到白的渐变”,因为前5个地面真相答案也与颜色有关。如果没有chatgpt的帮助,videcho可能会回答更多不相关的答案,如“一半”。失败的情况也显示在这里,videcho在前2名的答案中给出了高频词“是”,这往往是在训练阶段学到的,尽管它不应该排名这么高。
[0172]
参照图4,本发明实施例提供了一种基于chatgpt反馈的视觉对话装置,包括:
[0173]
第一单元,用于获取目标图像、对话历史以及后续问题;
[0174]
第二单元,用于提取所述目标图像的图像特征,提取所述对话历史中每轮对话回合对应的对话轮次特征;
[0175]
第三单元,用于将所述图像特征和所述对话轮次特征进行特征统一;
[0176]
第四单元,用于将经过特征统一后的所述图像特征分别与每个经过特征统一后的所述对话轮次特征进行拼接,得到时序特征;
[0177]
第五单元,用于将所述目标图像、所述后续问题以及所述时序特征输入至经过预先训练的视觉对话模型,得到所述后续问题对应的第一预测答案;所述视觉对话模型根据chatgpt对标题生成的第二预测答案训练得到,所述标题由所述目标图像和所述对话历史确定。
[0178]
该视觉对话装置的具体实施方式与上述视觉对话方法的具体实施例基本相同,在此不再赘述。
[0179]
本发明实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述视觉对话方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
[0180]
具体地,电子设备可以是用户终端,也可以是服务器。
[0181]
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述视觉对话方法。
[0182]
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其它非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0183]
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行图1所示的方法。
[0184]
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
[0185]
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
[0186]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0187]
在流程图中表示或在此以其它方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其它可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
[0188]
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置)、便携式计算机盘盒(磁装置)、随机存取存储器(ram)、只读存储器(rom)、可擦除可编辑只读存储器(eprom或闪速存储器)、光纤装置以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其它合适的介质,因为可以例如通过对纸或其它介质进行光学扫描,接着进行编辑、解译或必要时以其它合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0189]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路
的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0190]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0191]
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
[0192]
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。