CN114996425A - 视觉问答的方法、装置、设备及介质 - Google Patents
视觉问答的方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114996425A CN114996425A CN202210688112.5A CN202210688112A CN114996425A CN 114996425 A CN114996425 A CN 114996425A CN 202210688112 A CN202210688112 A CN 202210688112A CN 114996425 A CN114996425 A CN 114996425A
- Authority
- CN
- China
- Prior art keywords
- question
- image
- vector
- visual
- target
- 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
- 230000000007 visual effect Effects 0.000 title claims abstract description 157
- 238000000034 method Methods 0.000 title claims abstract description 53
- 239000013598 vector Substances 0.000 claims abstract description 233
- 238000000605 extraction Methods 0.000 claims abstract description 61
- 230000002452 interceptive effect Effects 0.000 claims abstract description 60
- 230000003993 interaction Effects 0.000 claims abstract description 52
- 230000007246 mechanism Effects 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 16
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000012549 training Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000003058 natural language processing Methods 0.000 description 5
- 241000282414 Homo sapiens Species 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000009901 attention process Effects 0.000 description 1
- 235000013351 cheese Nutrition 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 235000013550 pizza Nutrition 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5846—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Library & Information Science (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及人工智能技术领域,公开了一种视觉问答的方法、装置、设备及介质,包括:获取视觉问答任务对应的目标问句和目标图像;对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量;将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;和,将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量;通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。提升视觉问答任务的答案的准确率。
Description
技术领域
本发明涉及人工智能技术、自然语言处理技术领域,尤其涉及一种视觉问答的方法、装置、设备及介质。
背景技术
随着计算机视觉技术以及自然语言处理技术的不断发展,使得研究领域变得越来越深入,视觉问答(VisualQuestionAnswering,VQA)是最近几年出现的一个新任务,视觉问答任务为向视觉问答系统的输入为一张图像和一个关于这张图像形式自由、开放式的自然语言问题,经过系统处理后提供一个准确的自然语言答案作为输出,也即是基于一张图像的问答处理。因此视觉问答系统不仅要理解文字形式提出的问题,还需要进行图像处理并结合图像的内容进行解答。
总结来说,虽然目前的视觉问答研究取得了一些成就,但是就目前发展形势来看,还是面临有一定的发展局限性,主要有以下两个问题:
(1)推理能力不强。由于大多数VQA方法会将视觉图像数据、文本问题数据,做特征提取后再在最后阶段拼接起来,结合答案标签建立模型进行训练。不能够将问题语义具有的特征和图片像特征较完美的融合起来,导致高层次的逻辑推理出现时,模型往往不能给出正确的预测。
(2)深度学习的不可解释性。这是深度学习共同的问题,尽管深度学习目前被广泛应用,但是其不可解释性也是深度学习继续发展的局限,没法较好地对视觉信号、问题的文本信号进行有效的交互理解和建模。
发明内容
本发明提供一种视觉问答的方法、装置、计算机设备及介质,以解决将文本特征和图像特征进行交互学习,继而实现对答案的更有效准确的预测。
第一方面,提供了一种视觉问答的方法,包括:
获取视觉问答任务对应的目标问句和目标图像;
通过预训练好的视觉问答模型的特征提取部分,对所述目标问句进行特征提取得到所述目标问句对应的句向量和词向量,和,对所述目标图像进行特征提取得到所述目标图像对应的图像向量和图像块向量;
将所述句向量和所述图像块向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标问句对应的问句交互向量;
将图像向量和所述词向量同时输入所述视觉问答模型的多模态交互学习部分,根据所述词向量分配所述图像向量特征提取的注意力权重,得到所述目标图像对应的图像交互向量;
通过所述视觉问答模型的分类单元,根据所述图像交互向量和所述问句交互向量,得到所述视觉问答任务的答案。
第二方面,提供了一种视觉问答的装置,包括:
获取单元,用于获取视觉问答任务对应的目标问句和目标图像;
特征提取模块,用于通过预训练好的视觉问答模型的特征提取部分,对所述目标问句进行特征提取得到所述目标问句对应的句向量和词向量,和,对所述目标图像进行特征提取得到所述目标图像对应的图像向量和图像块向量;
句向量编码单元,用于将所述句向量和所述图像块向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标问句对应的问句交互向量;
图向量编码单元,用于将图像向量和所述词向量同时输入所述视觉问答模型的多模态交互学习部分,根据所述词向量分配所述图像向量特征提取的注意力权重,得到所述目标图像对应的图像交互向量;
结果输出单元,用于通过所述视觉问答模型的分类单元,根据所述图像交互向量和所述问句交互向量,得到所述视觉问答任务的答案。
第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述视觉问答的方法的步骤。
第四方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述视觉问答的方法的步骤。
上述视觉问答的方法、装置、计算机设备及存储介质所实现的方案中,可以获取视觉问答任务对应的目标问句和目标图像;通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量;将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量;通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。在本发明中,对目标问句和目标图像分别进行第一次特征提取,得到全句特征向量、句子中的词向量以及图片的全图向量和图像块向量,将视觉图像和文本问题信息更好地交互式理解和学习,从而提升了得到的所述视觉问答任务的答案的准确率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中视觉问答的方法的一应用环境示意图;
图2是本发明一实施例中视觉问答的方法的一流程示意图;
图3是图2中步骤S20的一具体实施方式流程示意图;
图4是图2中步骤S20的一具体实施方式流程示意图;
图5是本发明一实施例中视觉问答的方法的另一流程示意图;
图6是seq2seq模型一结构示意图;
图7是Transformer模型整体架构结构示意图;
图8是本发明一实施例中视觉问答的装置的一结构示意图;
图9是本发明一实施例中计算机设备的一结构示意图;
图10是本发明一实施例中计算机设备的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的视觉问答的方法,可应用在如图1的应用环境中,其中,客户端通过网络与服务端进行通信。服务端可以通过客户端接收用户问句和图像;通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量;将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量;通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。在本发明中,对视觉图像和文本两个模态分支的信息交互学习,通过显式的喜利多位置注意力机制实现,即对于图像和文本两个模态分支,均分别编码整体以及局部,例如文本分支包含全句的编码,以及按顺序的词的细粒度编码,同理图像分支包含全图的编码,以及切分后的图像块的细粒度编码。之后,对于各自分支的全编码部分,均使用对方分支的细粒度编码信息来计算注意力机制(比如句子中的dome单词对图像的dome所在的编码嵌入位置有不一样的激活程度),通过对模型的整体训练,注意力attention权重也随之更新调整,可以构建更好的视觉问答模型,将视觉图像和文本问题信息更好地交互式理解和学习。其中,客户端可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是服务器组成的服务器集群来实现。下面通过具体的实施例对本发明进行详细的描述。
请参阅图2至7所示,图2为本发明实施例提供的视觉问答的方法的一个流程示意图,包括如下步骤:
S10:获取视觉问答任务对应的目标问句和目标图像。
本发明提供的视觉问答的方法,可应用于以CV和NLP结合的VQA是一张图片和有关图片的自然语言问题作为输入,赋予机器理解和融合图像,语言模态所包含的信息将其输出答案。其应用范围广泛,在医疗诊断、自动驾驶、人机交互等领域均有应用,可以赋予机器理解和融合图像、语言模态所包含信息的能力,具有较大的商业价值与应用前景。
VQA任务中,计算机以图像和问为输入,通过对视觉(即图像)和自然语言(即问题)两个模态进行理解与推理,输出自然语言作为对应的答案。这一目标驱动的任务,是视觉语言领域中基础的研究任务之一,是实现面向用户的人机交互式视觉系统的重要途径。开放式问题需要较高的AI能力才能回答,比如,细粒度的识别(例如,“披萨上有什么样的奶酪?”),物体检测(例如,“有多少辆自行车?”),活动识别(例如,“这个男人在哭吗?”),知识库推理(例如,“这是一个素食比萨饼吗?”)等。
可以理解的是,目标文字包括目标问题与答案,其目标文字的内容与目标图像的内容具有一定的关联性,目标文字的格式可以是文字格式,也可以是音频格式,其目标文字的问题可以是英文、中文或者其他语言,也可以是字母、数字以及文字组合形成的有关目标图像信息的内容,其答案和问题的语言、组合形式在本发明中不做限制。
目标图像是与目标文字有相关联的图像,具有一定特征信息,其图像格式可以为jpg或者png等格式,本发明不做限制。对于目标图像所占内存大小、图像灰度值以及图像分辨率不做具体要求,通常情况下图像分辨率可设置为224*224,也可以为384*384等,可根据实际视觉问答任务进行限定。
对于获取视觉问答任务对应的目标文字,可以通过输入问题与答案的形式,也可以通过语音信息进行输入,并将语音信息通过计算机设备的语音处理模块转化为数据的形式进行后续的提取相关特征。对于获取视觉问答任务对应的目标图像,可以通过扫描、摄像或者软件捕捉等方式进行获取,本发明不做具体的要求。对于获取后的目标文字和目标图像的存储针对视觉问答任务可以建立存放目标文字和目标图像的相关数据库。
S20:通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量。
该步骤中,对目标问句和目标图像分别进行全句的特征提取和局部的特征提取,具体而言,针对目标问句进行特征提取,其一是对目标问句整句进行特征提取;其二,对目标问句中的词进行特征提取。针对目标图片进行特征提取,其一是,对整个目标图片进行特征提取;其二是分别针对整个目标图像的局部图像进行特征提取。
在一实施例中,特征提取部分包括Transformer模块;上述S20中通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,如图3所示,可以包括:
S2011:将目标问句输入Transformer模块,得到句向量;
S2012:对目标问句划分为多个分词,将分词输入Transformer模块,得到词向量。
需要理解的是,Transformer模型其初始目标是为传统的seq2seq结构设计的。如图6所示,Seq2seq模型将一个输入序列转化为另外一种序列的模型架构,包含两个部件:encoder和decoder。其中encoder将输入序列转换为一个总体的特征,decoder根据这个特征并结合已经生成的内容生成之后的序列,模型在之前的seq2seq模型中,序列的处理依赖于RNN网络,之后发现利用Attention机制能够极大提升RNN网络在seq2seq的性能。而Transformer其实就是将RNN放弃,只用attention来完成seq2seq的工作。整体Transformer的结构如图7所示。
在一实施例中,特征提取部分包括视觉Transformer模块;上述S20中通过预训练好的视觉问答模型的特征提取部分,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量,如图4所示,可以包括:
S2021:将目标图像输入视觉Transformer模块,得到图像向量;
S2022:将目标图像划分为多个图像块,将多个图像块输入视觉Transformer模块,得到图像块向量。
可以理解的是,处理视觉和文本数据的基本构架均使用Transformer,Transformer的基本思想是通过学习序列补全的方法来学习隐藏在序列中的结构信息。具体地,掩盖序列中的部分序列,并要求模型根据其他序列信息来预测这些被掩盖的序列。
该实施例中使用的Transformer编码比较常见,图像的编码会有所特殊,采用预训练好的视觉Transformer作为编码器,例如,将输入图片分解成196个14×14的图片块(patch),依次对其做线性编码,从而得到一个输入序列(inputsequence),使Transformer可以像处理文本字符序列一样处理图片,将图片进行编码。同时,为了保留各个图片块之间的位置信息,加入了和输入序列编码维度等长的位置编码,为每个样本图输出768维的向量。
当然,目标问句的特征提取和图像的特征提取,还可以是其他算法模型,例如从图像中提取特征甚至可以匹配整个CV的基础网络。从VGGNet到ResNet,GoogLeNet甚至到目前最新的网络,比如EfficientNet,也都可以用来提取特征。从问题提取特征,NLP中的基准模型也都可以使用,如Bag-Of-Words、LSTM、GatedRecurrentUnits(GRU)、Transformer等。
需要理解的是,目前业界视觉问答VQA的方法大多采用简单朴素的方式,直接把图像特征和文本特征做一个整合。这些方法可以是拼接、张量和、内积、外积等一系列方法。然后整合特征之后,再接一个简单的分类器。比如线性分类器或者多层感知机(MLP),方法简明,然而在许多情况下,直接从图像和文本问题学习得到的特征表示很可能存在不足,因为没有较好地对两个分支的特征进行交互挖掘,通常精度表现有限。需要引入额外的机制来增强特征表示,从而得到更好的模型性能。上述步骤S2011、S2012和S2021、S2022,本发明对视觉图像和文本两个模态分支的信息交互学习,通过显式的喜利多位置注意力机制实现,即对于图像和文本两个模态分支,均分别编码整体以及局部,例如文本分支包含全句的编码,以及按顺序的词的细粒度编码,同理图像分支包含全图的编码,以及切分后的图像块的细粒度编码。之后,对于各自分支的全编码部分,均使用对方分支的细粒度编码信息来计算注意力机制(比如句子中的dome单词对图像的dome所在的编码嵌入位置有不一样的激活程度),通过对模型的整体训练,注意力attention权重也随之更新调整,可以构建更好的视觉问答模型,将视觉图像和文本问题信息更好地交互式理解和学习。
S30:将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;和,将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量。
可以理解的是,采用Attention注意力机制,该机制认为不同的词语在整段文本中,对文本主题的影响是不同的。简单的来说就是从关注文本的主题转移到关注文本的重点,这主要是模仿了人类的视觉注意力机制。人们在看东西的时候有时不会从到头看到尾全部都看,而是只会根据需求观察特定的一部分,当人们阅读一篇文章或观看一幅图像时,最终记住的都是文章或图像的主要部分,细节部分可能关注的更少。Attention机制的基本原理与人类视觉注意力机制相同,它就是一种权重参数的分配机制,目标是协助模型捕捉重要信息。
Transformer模型能够实现端对端的训练,即输入端到输出端只用一个步骤,和其他端对端模型一样,Transformer模型的编码器
(encoder)主要包含多头注意力(Multi-HeadAttention)、前馈(Feedforward)和归一化层(Layernorm)三个子模块,其中,注意力(Attention)机制可以计算一句话中的每个词对于该句话中所有词的相互关系,词与词之间的相互关系在一定程度上反应了不同词之间的关联性以及重要程度,并利用相互关系调整每个词的重要性得到新的表达。Attention层可以捕捉到输入文字数据或者图像数据的联系,进而并行计算操作,直接对数据的序列信息进行两两比较,而RNN则需要一步步递推捕捉,无法充分利用图像处理器(GraphicsProcessingUnit,GPU)的并行化能力,增加了训练时间。CNN则关注于二维局部数据之间的关联性,随着层的加深,感知域更广,计算量也随之扩大。
在一些实施例中,上述S30中将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量,具体包括:
将句向量和图像块向量同时输入基于多头注意力机制的句子特征提取模块,根据图像块向量分配问句特征提取的注意力权重,得到目标图像对应的图像交互向量。
在一些实施例中,上述S30中将图像向量和词向量同时输入预训练好的多模态交互模块,得到目标图像对应的图像交互向量,具体包括:
将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,根据词向量分配图像向量特征提取的注意力权重,得到目标图像对应的图像交互向量。
其中,采用Attention注意力机制,该机制认为不同的词语在整段文本中,对文本主题的影响是不同的。简单的来说就是从关注文本的主题转移到关注文本的重点,这主要是模仿了人类的视觉注意力机制。人们在看东西的时候有时不会从到头看到尾全部都看,而是只会根据需求观察特定的一部分,当人们阅读一篇文章或观看一幅图像时,最终记住的都是文章或图像的主要部分,细节部分可能关注的更少。Attention机制的基本原理与人类视觉注意力机制相同,它就是一种权重参数的分配机制,目标是协助模型捕捉重要信息。
注意力计算方式如下:为了量化t时刻轮模型输入中的第k个细粒度特征(如词特征编码),与被预测的对方分支全特征(全图特征编码)的相关性大小,首先为第k个特征定义上下文向量contextt k:
contextt k=tanh(Wl[ht-1;st-1]+Ulxk+bl)
式中,Wl、Ul和bl是模型需要学习的参数,bl是偏置项,Wl∈R(T-1)×2m,Ul∈R(T-1)×(T-1),bl∈R(T-1)×1,m表示编码器隐藏层的大小。[ht-1;st-1]表示Attention处理xt时编码器的状态。由于[ht-1;st-1]和xk以线性相加的方式进行关联,因此contextt k表示的是模型输入中第k个特征在编码器当前状态下的上下文表示。
为了将contextt k与被预测特征组成的时间序列Y之间建立关联,引入注意力机制中的点积评分函数:
ut k=YT·contextt k
式中,ut k表示在编码器当前状态下,模型输入中第k个特征与被预测特征之间的相关性度量。最后引入Softmax函数将ut k转化为权重αt k:
除了使用参数为dmodel行dk=dv=dmodel/h=64列的Q,K,V向量外,还增加了一个多头注意力(multi-headed)机制,可以提升注意力层的性能。它使得模型可以关注不同位置。其中h=8为多头的头数。经过multi-headed,会得到和heads数目一样多的Query/Key/Value权重矩阵组此处采用8个注意力头head,那么每个encoder/decoder都会得到8个集合。这些集合都是随机初始化的,经过训练之后,每个集合会将inputembeddings投影到不同的表示子空间中。
MultiHead(Q,K,V)=Concat(head1,...,headh)WO
使用h=8可以降低每个头的权重矩阵维度,这样在类似于单头注意力计算代价(dmodel=512)的前提下得以使用多头注意力。
简单来说,就是随机初始化定义h=8组权重矩阵,每个单词会做8次上面的self-attention的计算,这样每个单词会得到8个不同的加权求和zi,i=0,1,...,7。
在一些实施例中,将图像交互向量和问句交互向量进行拼接,包括:
将图像交互向量和问句交互向量按元素一个一个相乘,得到拼接向量。
为了和后续前馈层对接(它需要一个矩阵,每个行向量代表一个词,而不是八个矩阵),将得到的8个矩阵进行拼接,然后乘以一个附加权重矩阵WO,从而将其压缩到一个Z矩阵。
S40:通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。
在一些实施中,分类单元包括全连接层和入全连接层和softmax层;
上述S40,具体包括:
将图像交互向量和问句交互向量进行拼接得到拼接向量;
将拼接向量输入全连接层和softmax层,得到视觉问答任务的答案。
在一些应用场景中,上述视觉问答模型需要提前训练,在一般的任务中,使用传统的分类损失函数就能够满足需求,但是在样本不平衡的情况下,这样的损失函数设计是不合理的。若某类目标的样本相比其他类在数量上占据极大优势,则可以将该数据集视为不平衡的数据集。因此采用传统的交叉熵作为训练loss就显然不合理。负样本数量太大,占总的loss函数输入参数的大部分,而且多是容易分类的,因此使得模型的优化方向(即loss函数的梯度下降方向)并不是所希望的。普通的交叉熵定义为(这里以二分类为例,多分类类似)
CE(p,y)=CE(pt)=-log(pt)
其中pt为样本属于真实标签y=1的概率。而本方案采用FocalLoss形式如下,
FL(pt)=-αt(1-pt)λlog(pt)
相对于普通的交叉熵而言,多了两个调整系数αt以及(1-pt)λ,前者用来调整正负样本平衡的比例,而后者用来调整易分类样本与难分类样本的权重。当样本被错误分类,那么pt是非常小,那么系数接近于1,那么该损失函数不受影响;当被正确分类,pt趋近于1,系数趋近于0,那么对整体的loss贡献很小,从而降低易分类样本的损失权重。
总结来说,准确视觉问答对人机交互研发至关重要,由于传统的方法对特征交互处理的限制,因此,发展有效的多模态表示交互融合学习,对计算机视觉和自然语言处理的交叉学习具有重要的意义。本发明提出了创新地多模态交互学习,具有潜力应用在人机交互的流程中,并有效提升人工智能的应用效果。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种视觉问答的装置,该视觉问答的装置与上述实施例中视觉问答的方法一一对应。如图8所示,该视觉问答的装置包括获取单元101、特征提取单元102、特征相互学习单元103和结果输出单元104。各功能模块详细说明如下:
获取单元101,用于获取视觉问答任务对应的目标问句和目标图像;
特征提取模块102,用于通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量;
特征相互学习单元103,用于将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;和,将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量;
结果输出单元104,用于通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。
在一实施例中,特征提取单元102,包括Transformer模块,具体用于:
将目标问句输入Transformer模块,得到句向量;
对目标问句划分为多个分词,将分词输入Transformer模块,得到词向量。
在一实施例中,特征提取单元102,包括视觉Transformer模块,具体用于:
将目标图像输入视觉Transformer模块,得到图像向量;
将目标图像划分为多个图像块,将多个图像块输入视觉Transformer模块,得到图像块向量。
在一实施例中,特征相互学习单元103,具体用于:
将句向量和图像块向量同时输入基于多头注意力机制的句子特征提取模块,根据图像块向量分配问句特征提取的注意力权重,得到目标图像对应的图像交互向量。
在一实施例中,特征相互学习单元103,具体用于:
将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,根据词向量分配图像向量特征提取的注意力权重,得到目标图像对应的图像交互向量。
在一实施例中,结果输出单元104包括全连接层和入全连接层和softmax层,具体用于:
将图像交互向量和问句交互向量进行拼接得到拼接向量;
将拼接向量输入全连接层和softmax层,得到视觉问答任务的答案。
在一实施例中,结果输出单元104还具体用于:
将图像交互向量和问句交互向量按元素一个一个相乘,得到拼接向量。
本发明提供了一种视觉问答的装置,对视觉图像和文本两个模态分支的信息交互学习,通过显式的喜利多位置注意力机制实现,即对于图像和文本两个模态分支,均分别编码整体以及局部,例如文本分支包含全句的编码,以及按顺序的词的细粒度编码,同理图像分支包含全图的编码,以及切分后的图像块的细粒度编码。之后,对于各自分支的全编码部分,均使用对方分支的细粒度编码信息来计算注意力机制(比如句子中的dome单词对图像的dome所在的编码嵌入位置有不一样的激活程度),通过对模型的整体训练,注意力attention权重也随之更新调整,可以构建更好的视觉问答模型,将视觉图像和文本问题信息更好地交互式理解和学习。
关于视觉问答的装置的具体限定可以参见上文中对于智能问答处方法的限定,在此不再赘述。上述视觉问答的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务端,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性和/或易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的客户端通过网络连接通信。该计算机程序被处理器执行时以实现一种视觉问答的方法服务端侧的功能或步骤。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是客户端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部服务器通过网络连接通信。该计算机程序被处理器执行时以实现一种视觉问答的方法客户端侧的功能或步骤
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
获取视觉问答任务对应的目标问句和目标图像;
通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量;
将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;
将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量;
通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取视觉问答任务对应的目标问句和目标图像;
通过预训练好的视觉问答模型的特征提取部分,对目标问句进行特征提取得到目标问句对应的句向量和词向量,和,对目标图像进行特征提取得到目标图像对应的图像向量和图像块向量;
将句向量和图像块向量同时输入视觉问答模型的多模态交互学习部分,得到目标问句对应的问句交互向量;
将图像向量和词向量同时输入视觉问答模型的多模态交互学习部分,得到目标图像对应的图像交互向量;
通过视觉问答模型的分类单元,根据图像交互向量和问句交互向量,得到视觉问答任务的答案。
需要说明的是,上述关于计算机可读存储介质或计算机设备所能实现的功能或步骤,可对应参阅前述方法实施例中,服务端侧以及客户端侧的相关描述,为避免重复,这里不再一一描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种视觉问答的方法,其特征在于,包括:
获取视觉问答任务对应的目标问句和目标图像;
通过预训练好的视觉问答模型的特征提取部分,对所述目标问句进行特征提取得到所述目标问句对应的句向量和词向量,和,对所述目标图像进行特征提取得到所述目标图像对应的图像向量和图像块向量;
将所述句向量和所述图像块向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标问句对应的问句交互向量;和,将所述图像向量和所述词向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标图像对应的图像交互向量;
通过所述视觉问答模型的分类单元,根据所述图像交互向量和所述问句交互向量,得到所述视觉问答任务的答案。
2.如权利要求1所述的视觉问答的方法,其特征在于,所述特征提取部分包括Transformer模块;
所述通过预训练好的视觉问答模型的特征提取部分,对所述目标问句进行特征提取得到所述目标问句对应的句向量和词向量,包括:
将所述目标问句输入所述Transformer模块,得到所述句向量;
对所述目标问句划分为多个分词,将所述分词输入所述Transformer模块,得到所述词向量。
3.如权利要求1所述的视觉问答的方法,其特征在于,所述特征提取部分包括视觉Transformer模块;
所述通过预训练好的视觉问答模型的特征提取部分,对所述目标图像进行特征提取得到所述目标图像对应的图像向量和图像块向量,包括:
将所述目标图像输入所述视觉Transformer模块,得到所述图像向量;
将所述目标图像划分为多个图像块,将所述多个图像块输入所述视觉Transformer模块,得到所述图像块向量。
4.如权利要求1所述的视觉问答的方法,其特征在于,所述将所述句向量和所述图像块向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标问句对应的问句交互向量,包括:
将所述句向量和所述图像块向量同时输入所述基于多头注意力机制的句子特征提取模块,根据所述图像块向量分配所述问句特征提取的注意力权重,得到所述目标图像对应的图像交互向量。
5.如权利要求1所述的视觉问答的方法,其特征在于,所述多模态交互学习部分包括基于多头注意力机制的图像特征提取模块;
将所述图像向量和所述词向量同时输入所述预训练好的多模态交互模块,得到所述目标图像对应的图像交互向量,包括:
将图像向量和所述词向量同时输入所述视觉问答模型的多模态交互学习部分,根据所述词向量分配所述图像向量特征提取的注意力权重,得到所述目标图像对应的图像交互向量。
6.如权利要求1所述的视觉问答的方法,其特征在于,所述分类单元包括全连接层和入全连接层和softmax层;
所述通过所述视觉问答模型的分类单元,根据所述图像交互向量和所述问句交互向量,得到所述视觉问答任务的答案,包括:
将所述图像交互向量和所述问句交互向量进行拼接得到拼接向量;
将所述拼接向量输入所述全连接层和所述softmax层,得到所述视觉问答任务的答案。
7.如权利要求1所述的视觉问答的方法,其特征在于,所述将所述图像交互向量和所述问句交互向量进行拼接,包括:
将所述图像交互向量和所述问句交互向量按元素一个一个相乘,得到所述拼接向量。
8.一种视觉问答的装置,其特征在于,包括:
获取单元,用于获取视觉问答任务对应的目标问句和目标图像;
特征提取单元,用于通过预训练好的视觉问答模型的特征提取部分,对所述目标问句进行特征提取得到所述目标问句对应的句向量和词向量,和,对所述目标图像进行特征提取得到所述目标图像对应的图像向量和图像块向量;
特征相互学习单元,用于将所述句向量和所述图像块向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标问句对应的问句交互向量;和,将所述图像向量和所述词向量同时输入所述视觉问答模型的多模态交互学习部分,得到所述目标图像对应的图像交互向量;
结果输出单元,用于通过所述视觉问答模型的分类单元,根据所述图像交互向量和所述问句交互向量,得到所述视觉问答任务的答案。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述视觉问答的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述视觉问答的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210688112.5A CN114996425A (zh) | 2022-06-17 | 2022-06-17 | 视觉问答的方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210688112.5A CN114996425A (zh) | 2022-06-17 | 2022-06-17 | 视觉问答的方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114996425A true CN114996425A (zh) | 2022-09-02 |
Family
ID=83035067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210688112.5A Pending CN114996425A (zh) | 2022-06-17 | 2022-06-17 | 视觉问答的方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114996425A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112905827A (zh) * | 2021-02-08 | 2021-06-04 | 中国科学技术大学 | 跨模态图文匹配的方法、装置及计算机可读存储介质 |
CN114117159A (zh) * | 2021-12-08 | 2022-03-01 | 东北大学 | 一种多阶图像特征与问题交互的图像问答方法 |
CN114398961A (zh) * | 2021-12-28 | 2022-04-26 | 西南交通大学 | 一种基于多模态深度特征融合的视觉问答方法及其模型 |
-
2022
- 2022-06-17 CN CN202210688112.5A patent/CN114996425A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112905827A (zh) * | 2021-02-08 | 2021-06-04 | 中国科学技术大学 | 跨模态图文匹配的方法、装置及计算机可读存储介质 |
CN114117159A (zh) * | 2021-12-08 | 2022-03-01 | 东北大学 | 一种多阶图像特征与问题交互的图像问答方法 |
CN114398961A (zh) * | 2021-12-28 | 2022-04-26 | 西南交通大学 | 一种基于多模态深度特征融合的视觉问答方法及其模型 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110377710B (zh) | 一种基于多模态融合的视觉问答融合增强方法 | |
CN112487182B (zh) | 文本处理模型的训练方法、文本处理方法及装置 | |
CN110609891B (zh) | 一种基于上下文感知图神经网络的视觉对话生成方法 | |
CN108733792B (zh) | 一种实体关系抽取方法 | |
WO2021159714A1 (zh) | 一种数据处理方法及相关设备 | |
CN110647612A (zh) | 一种基于双视觉注意力网络的视觉对话生成方法 | |
CN113344206A (zh) | 融合通道与关系特征学习的知识蒸馏方法、装置及设备 | |
CN117218498B (zh) | 基于多模态编码器的多模态大语言模型训练方法及系统 | |
CN110705490B (zh) | 视觉情感识别方法 | |
Kembuan et al. | Convolutional neural network (CNN) for image classification of indonesia sign language using tensorflow | |
CN113505193A (zh) | 一种数据处理方法及相关设备 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN114091466A (zh) | 一种基于Transformer和多任务学习的多模态情感分析方法及系统 | |
CN116432019A (zh) | 一种数据处理方法及相关设备 | |
CN116150620A (zh) | 多模态训练模型的训练方法、装置、计算机设备和介质 | |
Srinivas et al. | A comprehensive survey of techniques, applications, and challenges in deep learning: A revolution in machine learning | |
CN113887836B (zh) | 一种融合事件环境信息的叙述性事件预测方法 | |
CN114266905A (zh) | 基于Transformer结构的图像描述生成模型方法、装置和计算机设备 | |
CN112132075B (zh) | 图文内容处理方法及介质 | |
CN111445545B (zh) | 一种文本转贴图方法、装置、存储介质及电子设备 | |
CN115292439A (zh) | 一种数据处理方法及相关设备 | |
CN116484885A (zh) | 基于对比学习和词粒度权重的视觉语言翻译方法和系统 | |
CN115759262A (zh) | 基于知识感知注意力网络的视觉常识推理方法及系统 | |
CN113779244B (zh) | 文档情感分类方法、装置、存储介质以及电子设备 | |
CN116662924A (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 |