视觉问答方法、装置、电子设备及计算机可读存储介质
未命名
07-14
阅读:77
评论:0
1.本技术涉及视觉问答技术领域,尤其是涉及一种视觉问答方法、装置、电子设备及计算机可读存储介质。
背景技术:
2.视觉问答任务是给定一张图像和一个与图像相关的问题,视觉问答模型来预测该问题的答案。视觉问答有很广泛的应用场景,例如早期教育、人机交互、帮助盲人获取外部信息等。
3.目前的视觉问答方法仅提取了图像特征和问题特征,并对图像特征和问题特征进行特征融合,从而根据融合后的特征预测问题的答案。其中,由于仅使用图像特征和问题特征进行答案预测,使得信息丰富度不够,进而导致视觉问答结果准确性不够高。
技术实现要素:
4.有鉴于此,本技术的目的在于提供一种视觉问答方法、装置、电子设备及计算机可读存储介质,以提高视觉问答结果的准确性。
5.第一方面,本技术实施例提供了一种视觉问答方法,包括:
6.从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,所述目标问题是与所述目标图像相关的问题;
7.从目标知识库中提取出所述目标标签对应的知识文本;
8.通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;
9.通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵;
10.根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案。
11.结合第一方面,本技术实施例提供了第一方面的第一种可能的实施方式,其中,所述从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签,包括:
12.针对视觉问答任务给定的所述目标图像,提取所述目标图像中包含的各个实体,以确定各个所述实体各自对应的标签;所述标签包括实体类别标签和/或实体属性标签;
13.根据所述视觉问答任务给定的与所述目标图像相关的所述目标问题,从各个所述标签中筛选出与所述目标问题相关的所述目标标签。
14.结合第一方面,本技术实施例提供了第一方面的第二种可能的实施方式,其中,所述方法还包括:
15.对所述目标图像包含的实体进行图像识别,以使用特征提取框框选出所述目标图
像中的各个实体;
16.通过所述目标图像中的各个实体各自对应的所述特征提取框,对所述目标图像进行分割,得到每个实体对应的实体分割图像;
17.针对每个所述实体分割图像,将该实体分割图像转换成实体特征向量;
18.根据所述目标图像中所有实体对应的所述实体特征向量,生成所述目标图像的所述视觉特征向量。
19.结合第一方面,本技术实施例提供了第一方面的第三种可能的实施方式,其中,所述方法还包括:
20.提取所述目标问题中的第一关键词,以确定每个所述第一关键词对应的第一关键词向量;
21.将所述目标问题对应的所有所述第一关键词向量输入至长短期记忆人工神经网络中,得到所述目标问题的所述问题特征向量。
22.结合第一方面的第二种可能的实施方式,本技术实施例提供了第一方面的第四种可能的实施方式,其中,所述图卷积网络层包括第一数量个顺序连接的隐藏层;所述通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵,包括:
23.针对所述目标图像对应的每个所述实体特征向量,将该实体特征向量与所述问题特征向量进行拼接,得到该实体特征向量对应的第一拼接特征向量;
24.针对每个所述第一拼接特征向量,将该第一拼接特征向量输入至第一非线性激活函数中,得到该第一拼接特征向量对应的联合特征向量;
25.对所有所述联合特征向量进行拼接,得到拼接矩阵,以根据所述拼接矩阵,生成无向图邻接矩阵;
26.对所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度进行对齐修正,以使所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度相同;
27.对维度相同的知识特征向量、问题特征向量和视觉特征向量进行向量拼接,得到第二拼接特征矩阵;
28.针对所述图卷积网络层中的第一个隐藏层,将所述无向图邻接矩阵和所述第二拼接特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;
29.针对除第一个隐藏层之外的其他隐藏层,将所述无向图邻接矩阵和与该隐藏层相邻的上一个隐藏层输出的输出融合特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;
30.将最后一个隐藏层输出的输出融合特征矩阵确定为所述第一融合特征矩阵。
31.结合第一方面,本技术实施例提供了第一方面的第五种可能的实施方式,其中,所述注意力模块包括第二数量个注意力单元;所述通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵,包括:
32.在每个所述注意力单元中,通过缩放点积注意力的计算公式对所述第一融合特征矩阵和所述知识特征向量进行计算,得到该注意力单元对应的头向量:
33.对所有注意力单元对应的所述头向量进行向量叠加,得到第一叠加向量;
34.对所述第一叠加向量进行归一化处理,得到归一化后的归一化向量;
35.基于所述知识特征向量的维度,对所述归一化向量的维度进行对齐修正,以使所述归一化向量的维度与所述知识特征向量的维度相同;
36.对维度相同的归一化向量与所述知识特征向量进行向量叠加,得到第二叠加向量;
37.对所述第二叠加向量进行归一化处理,得到第二融合特征矩阵。
38.结合第一方面,本技术实施例提供了第一方面的第六种可能的实施方式,其中,所述视觉问答模型中预先设置有所述目标问题对应的多个候选答案;所述根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案,包括:
39.将所述第一融合特征矩阵和所述第二融合特征矩阵输入至所述视觉问答模型中的分类层,得到每个所述候选答案对应的概率;
40.将概率最大的所述候选答案确定为所述目标问题的所述目标答案。
41.第二方面,本技术实施例还提供一种视觉问答装置,包括:
42.筛选模块,用于从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,所述目标问题是与所述目标图像相关的问题;
43.第一提取模块,用于从目标知识库中提取出所述目标标签对应的知识文本;
44.第一融合模块,用于通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;
45.第二融合模块,用于通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵;
46.预测模块,用于根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案。
47.结合第二方面,本技术实施例提供了第二方面的第一种可能的实施方式,其中,所述筛选模块在用于从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签时,具体用于:
48.针对视觉问答任务给定的所述目标图像,提取所述目标图像中包含的各个实体,以确定各个所述实体各自对应的标签;所述标签包括实体类别标签和/或实体属性标签;
49.根据所述视觉问答任务给定的与所述目标图像相关的所述目标问题,从各个所述标签中筛选出与所述目标问题相关的所述目标标签。
50.结合第二方面,本技术实施例提供了第二方面的第二种可能的实施方式,其中,还包括:
51.识别模块,用于对所述目标图像包含的实体进行图像识别,以使用特征提取框框选出所述目标图像中的各个实体;
52.分割模块,用于通过所述目标图像中的各个实体各自对应的所述特征提取框,对所述目标图像进行分割,得到每个实体对应的实体分割图像;
53.转换模块,用于针对每个所述实体分割图像,将该实体分割图像转换成实体特征向量;
54.生成模块,用于根据所述目标图像中所有实体对应的所述实体特征向量,生成所
述目标图像的所述视觉特征向量。
55.结合第二方面,本技术实施例提供了第二方面的第三种可能的实施方式,其中,还包括:
56.第二提取模块,用于提取所述目标问题中的第一关键词,以确定每个所述第一关键词对应的第一关键词向量;
57.输入模块,用于将所述目标问题对应的所有所述第一关键词向量输入至长短期记忆人工神经网络中,得到所述目标问题的所述问题特征向量。
58.结合第二方面的第二种可能的实施方式,本技术实施例提供了第二方面的第四种可能的实施方式,其中,所述图卷积网络层包括第一数量个顺序连接的隐藏层;第一融合模块在用于通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵时,具体用于:
59.针对所述目标图像对应的每个所述实体特征向量,将该实体特征向量与所述问题特征向量进行拼接,得到该实体特征向量对应的第一拼接特征向量;
60.针对每个所述第一拼接特征向量,将该第一拼接特征向量输入至第一非线性激活函数中,得到该第一拼接特征向量对应的联合特征向量;
61.对所有所述联合特征向量进行拼接,得到拼接矩阵,以根据所述拼接矩阵,生成无向图邻接矩阵;
62.对所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度进行对齐修正,以使所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度相同;
63.对维度相同的知识特征向量、问题特征向量和视觉特征向量进行向量拼接,得到第二拼接特征矩阵;
64.针对所述图卷积网络层中的第一个隐藏层,将所述无向图邻接矩阵和所述第二拼接特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;
65.针对除第一个隐藏层之外的其他隐藏层,将所述无向图邻接矩阵和与该隐藏层相邻的上一个隐藏层输出的输出融合特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;
66.将最后一个隐藏层输出的输出融合特征矩阵确定为所述第一融合特征矩阵。
67.结合第二方面,本技术实施例提供了第二方面的第五种可能的实施方式,其中,所述注意力模块包括第二数量个注意力单元;所述第二融合模块在用于通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵时,具体用于:
68.在每个所述注意力单元中,通过缩放点积注意力的计算公式对所述第一融合特征矩阵和所述知识特征向量进行计算,得到该注意力单元对应的头向量:
69.对所有注意力单元对应的所述头向量进行向量叠加,得到第一叠加向量;
70.对所述第一叠加向量进行归一化处理,得到归一化后的归一化向量;
71.基于所述知识特征向量的维度,对所述归一化向量的维度进行对齐修正,以使所述归一化向量的维度与所述知识特征向量的维度相同;
72.对维度相同的归一化向量与所述知识特征向量进行向量叠加,得到第二叠加向量;
73.对所述第二叠加向量进行归一化处理,得到第二融合特征矩阵。
74.结合第二方面,本技术实施例提供了第二方面的第六种可能的实施方式,其中,所述视觉问答模型中预先设置有所述目标问题对应的多个候选答案;所述预测模块在用于根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案时,具体用于:
75.将所述第一融合特征矩阵和所述第二融合特征矩阵输入至所述视觉问答模型中的分类层,得到每个所述候选答案对应的概率;
76.将概率最大的所述候选答案确定为所述目标问题的所述目标答案。
77.第三方面,本技术实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面中任一种可能的实施方式中的步骤。
78.第四方面,本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面中任一种可能的实施方式中的步骤。
79.本技术实施例提供的一种视觉问答方法、装置、电子设备及计算机可读存储介质,其中,从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,目标问题是与目标图像相关的问题;从目标知识库中提取出目标标签对应的知识文本;通过视觉问答模型中的图卷积网络层对目标图像的视觉特征向量、目标问题的问题特征向量、知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;通过视觉问答模型中的注意力模块对第一融合特征矩阵和知识特征向量进行特征融合,得到第二融合特征矩阵;根据第一融合特征矩阵和第二融合特征矩阵,预测目标问题的目标答案。与现有技术中仅对图像特征向量和问题特征向量进行融合,并使用融合后的特征向量进行答案预测的方式相比,本实施例不仅融合了图像特征向量和问题特征向量,还融合了目标图像中包含的与目标问题相关的实体对应的知识特征向量,使得进行答案预测时,融合了更丰富的信息,从而有利于提高视觉问答结果的准确性。
80.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
81.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
82.图1示出了本技术实施例所提供的一种视觉问答方法的流程图;
83.图2示出了本技术实施例所提供的另一种视觉问答方法的流程图;
84.图3示出了本技术实施例所提供的一种视觉问答装置的结构示意图;
85.图4示出了本技术实施例所提供的一种电子设备的结构示意图。
具体实施方式
86.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
87.考虑到现有技术中,视觉问答结果预测的准确性不够高的问题。基于此,本技术实施例提供了一种视觉问答方法、装置、电子设备及计算机可读存储介质,以提高视觉问答结果预测的准确性,下面通过实施例进行描述。
88.实施例一:
89.为便于对本实施例进行理解,首先对本技术实施例所公开的一种视觉问答方法进行详细介绍。图1示出了本技术实施例所提供的一种视觉问答方法的流程图,如图1所示,包括以下步骤s101-s106:
90.s101:从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,目标问题是与目标图像相关的问题。
91.在本实施例中,视觉问答任务会给定一个目标图像以及与该目标图像相关的目标问题。例如,目标图像中包含的内容是拿着飞盘的女人,目标问题可以为飞盘是什么颜色的。
92.实体指的是目标图像中包含的实体对象,具体可以为目标图像中包含的人、物体等,例如:车辆、人、道路、树木、水果等等实物。标签为实体的标签,用于描述该实体,每个实体对应至少一个标签。
93.示例性的,当目标图像中包含的实体a为铁制的白色自行车时,该实体a的标签可以为“自行车”、“铁制品”、“白色”等等。当目标问题为“自行车是什么材质”时,从目标图像对应的标签(自行车、铁制品、白色)中筛选出与目标问题相关的目标标签可以为“自行车”和“铁制品”。
94.在一种可能的实施例中,在执行步骤s101时,具体可以按照以下步骤执行:
95.s1011:针对视觉问答任务给定的目标图像,提取目标图像中包含的各个实体,以确定各个实体各自对应的标签;标签包括实体类别标签和/或实体属性标签。
96.s1012:根据视觉问答任务给定的与目标图像相关的目标问题,从各个标签中筛选出与目标问题相关的目标标签。
97.该实施例中,实体类别标签表示该实体所属的类别,具体可以表示该实体的名称。实体属性标签标识该实体的属性,具体可以为实体的颜色属性、材质属性、尺寸属性等等。承接上述实施例,实体a的实体类别标签为“自行车”,实体a的实体属性标签标为“铁制品”和“白色”。
98.示例性的,若该目标图像中除了包含实体a外,还包含实体b“一个红色的苹果”时,
那么,从该目标图像中提取出的实体分别为“自行车”和“苹果”。其中,“自行车”对应的标签包括“自行车、铁制品、白色”;“苹果”对应的标签包括“苹果、红色、一个”。当目标问题为目标图像中包含几个苹果时,目标标签可以为“苹果、一个”。
99.s102:从目标知识库中提取出目标标签对应的知识文本。
100.目标知识库中包含有所有实体各自对应的知识文本,知识文本用于表示实体的属性、常识、能力。示例性的,当目标标签为帽子时,那么该目标标签对应的知识文本可以包括帽子的属性、用途、功能等等。
101.具体地,根据目标标签,从目标知识库中包含的各个实体各自对应的知识文本中,提取出目标标签对应的实体所对应的知识文本。
102.s103:通过视觉问答模型中的图卷积网络层对目标图像的视觉特征向量、目标问题的问题特征向量、知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵。
103.视觉特征向量用于表征目标图像包含的内容特征,问题特征向量用于表征目标问题的含义特征,知识特征向量用于表征知识文本的含义特征。
104.在一种可能的实施方式中,在执行步骤s103之前,具体可以通过以下方式确定出目标图像的视觉特征向量:
105.s1061:对目标图像包含的实体进行图像识别,以使用特征提取框框选出目标图像中的各个实体。
106.该实施例中,特征提取框可以为矩形框,通过特征提取框将目标图像中的各个实体框选出来。每个实体对应一个特征提取框。当目标图像中的实体较多时,特征提取框之间可能发生重叠。
107.s1062:通过目标图像中的各个实体各自对应的特征提取框,对目标图像进行分割,得到每个实体对应的实体分割图像。
108.按照特征提取框的边框,对目标图像进行分割,以将特征提取框内部的图像作为实体对应的实体分割图像。该实施例中,实体分割图像是目标图像的一部分图像,每个实体对应各自的实体分割图像。
109.s1063:针对每个实体分割图像,将该实体分割图像转换成实体特征向量。
110.每个实体分割图像对各自的实体特征向量,实体特征向量用于表征其对应的实体分割图像中包含的图像内容。
111.s1064:根据目标图像中所有实体对应的实体特征向量,生成目标图像的视觉特征向量。
112.该实施例中,可以对目标图像中所有实体所对应的实体特征向量进行向量拼接,以得到视觉特征向量。
113.在一种可能的实施方式中,在执行步骤s103之前,具体可以通过以下方式确定出目标问题的问题特征向量:
114.s1071:提取目标问题中的第一关键词,以确定每个第一关键词对应的第一关键词向量。
115.目标问题作为一个文本,其中包含有至少一个第一关键词,将目标问题中的各个第一关键词均提取出来,并针对每个第一关键词,确定出该第一关键词对应的第一关键词向量,以得到目标问题对应的所有第一关键词向量。其中,第一关键词向量用于表征与其对
应的第一关键词的词语含义。
116.s1072:将目标问题对应的所有第一关键词向量输入至长短期记忆人工神经网络(lstm)中,得到目标问题的问题特征向量。
117.在一种可能的实施方式中,在执行步骤s103之前,具体可以通过以下方式确定出知识文本的知识特征向量:
118.s1081:提取知识文本中的第二关键词,以确定每个第二关键词对应的第二关键词向量。
119.该实施例中,知识文本中包含有至少一个第二关键词,将知识文本中的各个第二关键词均提取出来,并针对每个第二关键词,确定出该第二关键词对应的第二关键词向量,以得到知识文本对应的所有第二关键词向量。其中,第二关键词向量用于表征与其对应的第二关键词的词语含义。
120.s1082:将知识文本对应的所有第二关键词向量输入至长短期记忆人工神经网络中,得到知识文本对应的知识特征向量。
121.在一种可能的实施方式中,图卷积网络层包括第一数量个顺序连接的隐藏层,其中,第一数量为大于1的正整数;在执行步骤s103时,具体可以通过以下步骤s1031-s1038实现:
122.s1031:针对目标图像对应的每个实体特征向量,将该实体特征向量与问题特征向量进行拼接,得到该实体特征向量对应的第一拼接特征向量。
123.该实施例中,当实体特征向量与问题特征向量的向量维度相同时,直接对实体特征向量与问题特征向量进行拼接。当实体特征向量与问题特征向量的向量维度不同时,通过补0的方式对实体特征向量和/或问题特征向量的向量维度进行对齐修正,使得实体特征向量与问题特征向量的向量维度相同,然后对向量维度相同的实体特征向量与问题特征向量进行拼接。本实施例中,第一拼接特征向量的数量与实体特征向量的数量相同。
124.s1032:针对每个第一拼接特征向量,将该第一拼接特征向量输入至第一非线性激活函数(relu)中,得到该第一拼接特征向量对应的联合特征向量。
125.第一拼接特征向量的数量与联合特征向量的数量相同。
126.s1033:对所有联合特征向量进行拼接,得到拼接矩阵,以根据拼接矩阵,生成无向图邻接矩阵。
127.该实施例中,可以通过以下公式生成无向图邻接矩阵:
128.a=ee
t
129.其中,a表示无向图邻接矩阵,e表示拼接矩阵,e
t
表示拼接矩阵的转置。
130.s1034:对知识特征向量、问题特征向量和视觉特征向量的维度进行对齐修正,以使知识特征向量、问题特征向量和视觉特征向量的维度相同。
131.该实施例中,若知识特征向量的维度(即向量维度)为5
×
6,问题特征向量的维度为4
×
3,视觉特征向量的维度为4
×
9,本技术中,可以通过补0的方式,对知识特征向量、问题特征向量和视觉特征向量的维度进行对齐修正,对齐修正后的知识特征向量、问题特征向量和视觉特征向量的维度可以为5
×
9。
132.s1035:对维度相同的知识特征向量、问题特征向量和视觉特征向量进行向量拼接,得到第二拼接特征矩阵。
133.示例性的,若对齐修正后的知识特征向量、问题特征向量和视觉特征向量的维度可以为5
×
9,那么,第二拼接特征矩阵的维度可以为15
×
9,也可以为5
×
27。
134.s1036:针对图卷积网络层中的第一个隐藏层,将无向图邻接矩阵和第二拼接特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵。
135.s1037:针对除第一个隐藏层之外的其他隐藏层,将无向图邻接矩阵和与该隐藏层相邻的上一个隐藏层输出的输出融合特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵。
136.该实施例中,第二非线性激活函数的公式为:
[0137][0138]
其中,α(
·
)表示第二非线性激活函数(gelu),n表示第n个隐藏层,n为大于等于1小于等于第一数量的正整数,hn为第n个隐藏层输出的输出融合特征矩阵。当n为1时,h
n-1
(即h0)为第二拼接特征矩阵。当n大于1时,h
n-1
为第n-1个隐藏层输出的输出融合特征矩阵。
[0139][0140]
a表示无向图邻接矩阵,i为单位矩阵,是的对角节点度矩阵,wn是第n个隐藏层中的可训练参数。
[0141]
s1038:将最后一个隐藏层输出的输出融合特征矩阵确定为第一融合特征矩阵。
[0142]
最后一个隐藏层指的是第n个隐藏层,其中,n为第一数量,第一融合特征矩阵为hn,即为第n个隐藏层输出的输出融合特征矩阵。
[0143]
s104:通过视觉问答模型中的注意力模块对第一融合特征矩阵和知识特征向量进行特征融合,得到第二融合特征矩阵。
[0144]
在一种可能的实施方式中,注意力模块包括第二数量个注意力单元,第二数量为大于1的正整数,在执行步骤s104时,具体可以通过以下步骤s1041-s1046实现:
[0145]
s1041:在每个注意力单元中,通过缩放点积注意力的计算公式对第一融合特征矩阵和知识特征向量进行计算,得到该注意力单元对应的头向量。
[0146]
该实施例中,针对每个注意力单元,通过该注意力单元中的缩放点积注意力的计算公式对第一融合特征矩阵和知识特征向量进行计算,其中缩放点积注意力的计算公式如下:
[0147]
headi=attention(qp
iq
,kp
ik
,vp
iv
)
[0148]
其中,将第一融合特征矩阵作为键矩阵k和值矩阵v,将知识特征矩阵作为查询矩阵q。i表示第i个注意力单元,headi表示第i个注意力单元输出的头向量;q为查询矩阵q的子矩阵,具体为查询矩阵q的第i列子矩阵;p
iq
为第i个注意力单元中为矩阵q分配的可学习参数;k为键矩阵k的子矩阵,具体为键矩阵k的第i列子矩阵;p
ik
为第i个注意力单元中为矩阵k分配的可学习参数;v为值矩阵v的子矩阵,具体为值矩阵v的第i列子矩阵;p
iv
为第i个注意力单元中为矩阵v分配的可学习参数。
[0149]
s1042:对所有注意力单元对应的头向量进行向量叠加,得到第一叠加向量。
[0150]
该实施例中,每个注意力单元对应各自的头向量。对所有注意力单元对应的头向量进行向量叠加,也就是对第二数量个头向量进行向量叠加。
[0151]
s1043:对第一叠加向量进行归一化处理,得到归一化后的归一化向量。
[0152]
s1044:基于知识特征向量的维度,对归一化向量的维度进行对齐修正,以使归一化向量的维度与知识特征向量的维度相同。
[0153]
该实施例中,将归一化向量的维度对齐修正为知识特征向量的维度。具体地,当归一化向量的维度小于知识特征向量的维度时,可以通过补0的方式对归一化向量的维度进行对齐修正,以使归一化向量的维度与知识特征向量的维度相同。
[0154]
s1045:对维度相同的归一化向量与知识特征向量进行向量叠加,得到第二叠加向量。
[0155]
s1046:对第二叠加向量进行归一化处理,得到第二融合特征矩阵。
[0156]
s105:根据第一融合特征矩阵和第二融合特征矩阵,预测目标问题的目标答案。
[0157]
在一种可能的实施方式中,视觉问答模型中预先设置有目标问题对应的多个候选答案;图2示出了本技术实施例所提供的另一种视觉问答方法的流程图,如图2所示,在执行步骤s105时,可以通过以下步骤s1051-s1052实现:
[0158]
s1051:将第一融合特征矩阵和第二融合特征矩阵输入至视觉问答模型中的分类层,得到每个候选答案对应的概率。
[0159]
s1052:将概率最大的候选答案确定为目标问题的目标答案。
[0160]
该实施例中,候选答案对应的概率表示该候选答案为正确答案的可能性大小;概率越大,该候选答案为正确答案的可能性越大;概率越小,该候选答案为正确答案的可能性越小。
[0161]
实施例二:
[0162]
基于相同的技术构思,本技术实施例还提供了一种视觉问答装置,图3示出了本技术实施例所提供的一种视觉问答装置的结构示意图,如图3所示,该装置包括:
[0163]
筛选模块301,用于从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,所述目标问题是与所述目标图像相关的问题;
[0164]
第一提取模块302,用于从目标知识库中提取出所述目标标签对应的知识文本;
[0165]
第一融合模块303,用于通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;
[0166]
第二融合模块304,用于通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵;
[0167]
预测模块305,用于根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案。
[0168]
可选的,所述筛选模块301在用于从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签时,具体用于:
[0169]
针对视觉问答任务给定的所述目标图像,提取所述目标图像中包含的各个实体,以确定各个所述实体各自对应的标签;所述标签包括实体类别标签和/或实体属性标签;
[0170]
根据所述视觉问答任务给定的与所述目标图像相关的所述目标问题,从各个所述标签中筛选出与所述目标问题相关的所述目标标签。
[0171]
可选的,还包括:
[0172]
识别模块,用于对所述目标图像包含的实体进行图像识别,以使用特征提取框框选出所述目标图像中的各个实体;
[0173]
分割模块,用于通过所述目标图像中的各个实体各自对应的所述特征提取框,对所述目标图像进行分割,得到每个实体对应的实体分割图像;
[0174]
转换模块,用于针对每个所述实体分割图像,将该实体分割图像转换成实体特征向量;
[0175]
生成模块,用于根据所述目标图像中所有实体对应的所述实体特征向量,生成所述目标图像的所述视觉特征向量。
[0176]
可选的,还包括:
[0177]
第二提取模块,用于提取所述目标问题中的第一关键词,以确定每个所述第一关键词对应的第一关键词向量;
[0178]
输入模块,用于将所述目标问题对应的所有所述第一关键词向量输入至长短期记忆人工神经网络中,得到所述目标问题的所述问题特征向量。
[0179]
可选的,所述图卷积网络层包括第一数量个顺序连接的隐藏层;第一融合模块303在用于通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵时,具体用于:
[0180]
针对所述目标图像对应的每个所述实体特征向量,将该实体特征向量与所述问题特征向量进行拼接,得到该实体特征向量对应的第一拼接特征向量;
[0181]
针对每个所述第一拼接特征向量,将该第一拼接特征向量输入至第一非线性激活函数中,得到该第一拼接特征向量对应的联合特征向量;
[0182]
对所有所述联合特征向量进行拼接,得到拼接矩阵,以根据所述拼接矩阵,生成无向图邻接矩阵;
[0183]
对所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度进行对齐修正,以使所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度相同;
[0184]
对维度相同的知识特征向量、问题特征向量和视觉特征向量进行向量拼接,得到第二拼接特征矩阵;
[0185]
针对所述图卷积网络层中的第一个隐藏层,将所述无向图邻接矩阵和所述第二拼接特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;
[0186]
针对除第一个隐藏层之外的其他隐藏层,将所述无向图邻接矩阵和与该隐藏层相邻的上一个隐藏层输出的输出融合特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;
[0187]
将最后一个隐藏层输出的输出融合特征矩阵确定为所述第一融合特征矩阵。
[0188]
可选的,所述注意力模块包括第二数量个注意力单元;所述第二融合模块304在用于通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵时,具体用于:
[0189]
在每个所述注意力单元中,通过缩放点积注意力的计算公式对所述第一融合特征矩阵和所述知识特征向量进行计算,得到该注意力单元对应的头向量:
[0190]
对所有注意力单元对应的所述头向量进行向量叠加,得到第一叠加向量;
[0191]
对所述第一叠加向量进行归一化处理,得到归一化后的归一化向量;
[0192]
基于所述知识特征向量的维度,对所述归一化向量的维度进行对齐修正,以使所述归一化向量的维度与所述知识特征向量的维度相同;
[0193]
对维度相同的归一化向量与所述知识特征向量进行向量叠加,得到第二叠加向量;
[0194]
对所述第二叠加向量进行归一化处理,得到第二融合特征矩阵。
[0195]
可选的,所述视觉问答模型中预先设置有所述目标问题对应的多个候选答案;所述预测模块305在用于根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案时,具体用于:
[0196]
将所述第一融合特征矩阵和所述第二融合特征矩阵输入至所述视觉问答模型中的分类层,得到每个所述候选答案对应的概率;
[0197]
将概率最大的所述候选答案确定为所述目标问题的所述目标答案。
[0198]
实施例三:
[0199]
基于相同的技术构思,本技术实施例还提供一种电子设备,图4示出了本技术实施例所提供的一种电子设备的结构示意图,如图4所示,该电子设备400包括:处理器401、存储器402和总线403,存储器存储有处理器可执行的机器可读指令,当电子设备运行时,处理器401与存储器402之间通过总线403通信,处理器401执行机器可读指令,以执行实施例一中所述的方法步骤。
[0200]
实施例四:
[0201]
基于相同的技术构思,本技术实施例四还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行实施例一中所述的方法步骤。
[0202]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置、电子设备及计算机可读存储介质的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0203]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0204]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0205]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0206]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以
存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0207]
最后应说明的是:以上所述实施例,仅为本技术的具体实施方式,用以说明本技术的技术方案,而非对其限制,本技术的保护范围并不局限于此,尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本技术实施例技术方案的精神和范围,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
技术特征:
1.一种视觉问答方法,其特征在于,包括:从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,所述目标问题是与所述目标图像相关的问题;从目标知识库中提取出所述目标标签对应的知识文本;通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵;根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案。2.根据权利要求1所述方法,其特征在于,所述从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签,包括:针对视觉问答任务给定的所述目标图像,提取所述目标图像中包含的各个实体,以确定各个所述实体各自对应的标签;所述标签包括实体类别标签和/或实体属性标签;根据所述视觉问答任务给定的与所述目标图像相关的所述目标问题,从各个所述标签中筛选出与所述目标问题相关的所述目标标签。3.根据权利要求1所述方法,其特征在于,所述方法还包括:对所述目标图像包含的实体进行图像识别,以使用特征提取框框选出所述目标图像中的各个实体;通过所述目标图像中的各个实体各自对应的所述特征提取框,对所述目标图像进行分割,得到每个实体对应的实体分割图像;针对每个所述实体分割图像,将该实体分割图像转换成实体特征向量;根据所述目标图像中所有实体对应的所述实体特征向量,生成所述目标图像的所述视觉特征向量。4.根据权利要求1所述方法,其特征在于,所述方法还包括:提取所述目标问题中的第一关键词,以确定每个所述第一关键词对应的第一关键词向量;将所述目标问题对应的所有所述第一关键词向量输入至长短期记忆人工神经网络中,得到所述目标问题的所述问题特征向量。5.根据权利要求3所述方法,其特征在于,所述图卷积网络层包括第一数量个顺序连接的隐藏层;所述通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵,包括:针对所述目标图像对应的每个所述实体特征向量,将该实体特征向量与所述问题特征向量进行拼接,得到该实体特征向量对应的第一拼接特征向量;针对每个所述第一拼接特征向量,将该第一拼接特征向量输入至第一非线性激活函数中,得到该第一拼接特征向量对应的联合特征向量;对所有所述联合特征向量进行拼接,得到拼接矩阵,以根据所述拼接矩阵,生成无向图邻接矩阵;
对所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度进行对齐修正,以使所述知识特征向量、所述问题特征向量和所述视觉特征向量的维度相同;对维度相同的知识特征向量、问题特征向量和视觉特征向量进行向量拼接,得到第二拼接特征矩阵;针对所述图卷积网络层中的第一个隐藏层,将所述无向图邻接矩阵和所述第二拼接特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;针对除第一个隐藏层之外的其他隐藏层,将所述无向图邻接矩阵和与该隐藏层相邻的上一个隐藏层输出的输出融合特征矩阵输入至该隐藏层中的第二非线性激活函数中,输出该隐藏层对应的输出融合特征矩阵;将最后一个隐藏层输出的输出融合特征矩阵确定为所述第一融合特征矩阵。6.根据权利要求1所述方法,其特征在于,所述注意力模块包括第二数量个注意力单元;所述通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵,包括:在每个所述注意力单元中,通过缩放点积注意力的计算公式对所述第一融合特征矩阵和所述知识特征向量进行计算,得到该注意力单元对应的头向量:对所有注意力单元对应的所述头向量进行向量叠加,得到第一叠加向量;对所述第一叠加向量进行归一化处理,得到归一化后的归一化向量;基于所述知识特征向量的维度,对所述归一化向量的维度进行对齐修正,以使所述归一化向量的维度与所述知识特征向量的维度相同;对维度相同的归一化向量与所述知识特征向量进行向量叠加,得到第二叠加向量;对所述第二叠加向量进行归一化处理,得到第二融合特征矩阵。7.根据权利要求1所述方法,其特征在于,所述视觉问答模型中预先设置有所述目标问题对应的多个候选答案;所述根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案,包括:将所述第一融合特征矩阵和所述第二融合特征矩阵输入至所述视觉问答模型中的分类层,得到每个所述候选答案对应的概率;将概率最大的所述候选答案确定为所述目标问题的所述目标答案。8.一种视觉问答装置,其特征在于,包括:筛选模块,用于从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,所述目标问题是与所述目标图像相关的问题;第一提取模块,用于从目标知识库中提取出所述目标标签对应的知识文本;第一融合模块,用于通过视觉问答模型中的图卷积网络层对所述目标图像的视觉特征向量、所述目标问题的问题特征向量、所述知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;第二融合模块,用于通过所述视觉问答模型中的注意力模块对所述第一融合特征矩阵和所述知识特征向量进行特征融合,得到第二融合特征矩阵;预测模块,用于根据所述第一融合特征矩阵和所述第二融合特征矩阵,预测所述目标问题的目标答案。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述方法的步骤。10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述方法的步骤。
技术总结
本申请提供了一种视觉问答方法、装置、电子设备及计算机可读存储介质,其中,该方法包括:从目标图像包含的各个实体各自对应的标签中,筛选出与目标问题相关的目标标签;其中,目标问题是与目标图像相关的问题;从目标知识库中提取出目标标签对应的知识文本;通过视觉问答模型中的图卷积网络层对目标图像的视觉特征向量、目标问题的问题特征向量、知识文本的知识特征向量进行特征融合,得到第一融合特征矩阵;通过视觉问答模型中的注意力模块对第一融合特征矩阵和知识特征向量进行特征融合,得到第二融合特征矩阵;根据第一融合特征矩阵和第二融合特征矩阵,预测目标问题的目标答案。通过该方法,有利于提高视觉问答结果的准确性。性。性。
技术研发人员:张德 樊昊铭 张昊雨
受保护的技术使用者:北京建筑大学
技术研发日:2023.02.18
技术公布日:2023/7/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
