CN115100482A - 基于层特征注意力的图像描述方法及装置 - Google Patents
基于层特征注意力的图像描述方法及装置 Download PDFInfo
- Publication number
- CN115100482A CN115100482A CN202210787551.1A CN202210787551A CN115100482A CN 115100482 A CN115100482 A CN 115100482A CN 202210787551 A CN202210787551 A CN 202210787551A CN 115100482 A CN115100482 A CN 115100482A
- Authority
- CN
- China
- Prior art keywords
- layer
- features
- image
- feature
- decoder
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 38
- 230000008569 process Effects 0.000 claims abstract description 27
- 230000004913 activation Effects 0.000 claims abstract description 9
- 238000010606 normalization Methods 0.000 claims abstract description 9
- 238000006243 chemical reaction Methods 0.000 claims description 35
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000011176 pooling Methods 0.000 claims description 6
- 238000013144 data compression Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 239000010410 layer Substances 0.000 description 173
- 230000009466 transformation Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000012549 training Methods 0.000 description 9
- 238000012360 testing method Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 235000019987 cider Nutrition 0.000 description 4
- 239000002356 single layer Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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/7715—Feature extraction, e.g. by transforming the feature space, e.g. multi-dimensional scaling [MDS]; Mappings, e.g. subspace 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/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
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted 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/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)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开实施例是关于一种基于层特征注意力的图像描述方法及装置。该方法包括:将维度相同的每一层的特征输入卷积层;将卷积层输出的特征的维度进行变形;对全连接层输出的特征进行批归一化处理;使用激活函数对批归一化后的特征进行映射。本公开实施例将低层特征和中层特征同高层特征一起进行处理,使每个解码器堆叠层都可以处理低中高等多层图像特征,防止图像描述时小目标信息的丢失,提高图像描述语义的准确性以及有效性。
Description
技术领域
本公开实施例涉及计算机视觉技术领域,尤其涉及一种基于层特征注意力的图像描述方法及装置。
背景技术
图像描述(image caption)是计算机视觉和自然语言处理的交叉领域中关于场景理解任务的一个重要研究方向。简单来说,图像描述就是“看图说话”,即输入一张图片,输出一个或者若干个描述图像内容的语句。
随着深度学习发展,人们在此基础上提出了大量的图像描述方法。相关技术中,使用高层语义特征的最终的分类层具有全局信息,这对语句的生成也有重大影响。因此,当前国内外所公开的图像描述算法,基本上都是选择基础网络的最高层作为场景特征的表示。但是,高层特征在卷积层不断加深的过程中会过滤掉很多有用的小目标信息,降低图像描述语义的准确性以及有效性。
因此,有必要改善上述相关技术方案中存在的一个或者多个问题。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种基于层特征注意力的图像描述方法及装置,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开实施例的第一方面,提供一种基于层特征注意力的图像描述方法,包括以下步骤:
采集待描述图像;
对所述待描述图像进行编码处理,得到多层特征;
对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度;
将维度转换处理后的多层特征输入解码器,所述解码器对所述多层特征进行解码处理,得到相应的图像描述。
本公开的一种示例性实施例中,所述将维度转换处理后的多层特征输入解码器,所述解码器对所述多层特征进行解码处理,得到相应的图像描述,包括:
将维度转换处理后的多层特征输入解码器;
所述解码器对所述多层特征分配权重后进行解码处理,得到相应的图像描述。
本公开的一种示例性实施例中,将维度转换处理后的多层特征输入解码器的过程为:
将中层特征、低层特征和高层特征均输入解码器的每个堆叠层中。
本公开的一种示例性实施例中,所述对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度,之后还包括:
将维度相同的每一层的特征输入卷积层;
将卷积层输出的特征的维度进行变形;
对全连接层输出的特征进行批归一化处理;
使用激活函数对批归一化后的特征进行映射。
本公开的一种示例性实施例中,所述使用激活函数对批归一化后的特征进行映射,之后还包括:
利用全局平均池化对映射后的特征进行数据压缩;
对压缩数据进行减小过拟合处理。
本公开的一种示例性实施例中,所述解码器通过将多层特征与标准语句进行对比,然后对所述多层特征分配权重后进行解码处理。
本公开的一种示例性实施例中,第i层图像特征对应的交叉注意力所对应的权重为:
αi=Sigmoid(Wi([X;cross_atti]))
其中,i为图像特征的层数,Wi表示第i层图像特征对应的可训练权重矩阵;X表示序列信息矩阵;[;]表示将两个矩阵连接起来,cross_atti表示第i层图像特征对应的交叉注意力模块(Seq-to-image Attention)的输出。
本公开的一种示例性实施例中,采用以下公式进行分配权重:
lay_att=∑iαicross_atti;
其中,lay_att表示层特征注意力模块的输出结构。
本公开的一种示例性实施例中,所述解码器为Transformer解码器。
根据本公开实施例的第二方面,提供一种基于层特征注意力的图像描述装置,包括:
图像采集模块,用于采集待描述图像;
编码模块,用于对所述待描述图像进行编码处理,得到多层特征;
特征转换模块,用于对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度;
解码模块,用于对所述多层特征进行解码处理,得到相应的图像描述;
其中,所述解码模块包括层特征注意力模块,用于利用层特征注意力对层特征分配权重。
根据本公开实施例的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任意一个实施例中所述基于层特征注意力的图像描述方法的步骤。
根据本公开实施例的第四方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施例中所述基于层特征注意力的图像描述方法的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
本公开的实施例中,将低层特征和中层特征同高层特征一起进行处理,使每个解码器堆叠层都可以处理低中高等多层图像特征,防止图像描述时小目标信息的丢失,提高图像描述语义的准确性以及有效性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开示例性实施例中基于层特征注意力的图像描述方法的流程图;
图2示出本公开示例性实施例中将维度转换处理后的多层特征输入解码器,所述解码器对所述多层特征进行解码处理,得到相应的图像描述的流程图;
图3示出本公开示例性实施例中,将维度转换处理后的多层特征输入解码器的过程的流程图;
图4示出本公开示例性实施例中对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度之后的流程图;
图5示出本公开示例性实施例中对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度之后的流程图;
图6示出本公开示例性实施例中编码器-解码器结构的整体模型图;
图7示出本公开示例性实施例中基于层特征注意力的Transformer解码器的结构示意图;
图8示出本公开示例性实施例中单个解码器层的结构示意图;
图9示出本公开示例性实施例中特征转换模块的示意图;
图10示出本公开示例性实施例中层特征注意力模块的结构示意图;
图11示出本公开示例性实施例在中MSCOCO上测试的结果,其中,a-f是测试中的多个待采集图像;
图12示出本公开示例性实施例中基于层特征注意力的图像描述方法的程序产品示意图;
图13示出本公开示例性实施例中基于层特征注意力的图像描述方法的电子设备的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种基于层特征注意力的图像描述方法,参考图1中所示,包括以下步骤:
步骤S101,采集待描述图像;
步骤S102,对所述待描述图像进行编码处理,得到多层特征;
步骤S103,对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度;
步骤S104,将维度转换处理后的多层特征输入解码器,所述解码器对所述多层特征进行解码处理,得到相应的图像描述。
本实施方式中,将低层特征和中层特征同高层特征一起进行处理,使每个解码器堆叠层都可以处理低中高等多层图像特征,防止图像描述时小目标信息的丢失,提高图像描述语义的准确性以及有效性。
可以理解的是,在一些实施例中,参考图2中所示,所述步骤S104可以包括步骤S201以及S202:
步骤S201,将维度转换处理后的多层特征输入解码器;
步骤S202,所述解码器对所述多层特征分配权重后进行解码处理,得到相应的图像描述。
本实施方式中,通过对中高低层特征与标准语句进行对比,为中高低各层进行权重分配,使得中低层特征对应的小目标信息描述更准确,提高语义描述的准确性和有效性。
具体地,在一些实施例中,参考图3中所示,将维度转换处理后的多层特征输入解码器的过程可以包括步骤S301:
步骤S301,将中层特征、低层特征和高层特征均输入解码器的每个堆叠层中。
在本实施例中,解码器的每个堆叠层均对应着中高低层特征,通过训练动态建立本层解码器中标准语句的语义特征和各层特征的相似关系。
具体地,在一些实施例中,参考图4中所示,所述步骤S103之后还包括步骤S401-S404:
步骤S401,将维度相同的每一层的特征输入卷积层;
步骤S402,将卷积层输出的特征的维度进行变形;
步骤S403,对全连接层输出的特征进行批归一化处理;
步骤S404,使用激活函数对批归一化后的特征进行映射。
具体地,在一些实施例中,参考图5中所示,所述步骤S404之后还可以包括步骤S501-S502:
步骤S501,利用全局平均池化对映射后的特征进行数据压缩;
步骤S502,对压缩数据进行减小过拟合处理。
在本实施例中,在将编码器输出的多层特征输入解码器之前,需要将多层特征进行维度变换。在对特征进行维度处理时,首先把特征进行池化,达到降低维度、去除冗余信息、对特征进行压缩、简化网络复杂度、减少计算量、减少内存消耗等目的。然后对池化后的特征的维度进行变形后输进全连接层进行维度变换,例如可以把高维度转换为低维度,同时把有用的信息保留下来。之后可以进行批归一化处理,然后使用激活函数对特征进行映射。其中的批归一化是为了克服神经网络加深导致的难以训练。
具体地,请参考图6,图6是本申请的编码器-解码器结构的整体模型。图像编码器使用EfficientNet卷积神经网络系列模型,语句解码器使用的是基于层特征注意力的Transformer解码器,该解码器结合Transformer解码器现有结构中的交叉注意力设计了一种层特征注意力模块,动态学习各层特征与序列语义特征的相似关系。
本申请设计了一种基于层特征注意力的Transformer解码器,请参考图7,其中P3、P5、P7分别表示第3层、第5层、第7层特征,通过图7中的方式可以将多层特征同时输入解码器每一层堆叠层中。第一层解码器输入标准语句和多个特征层,通过训练动态建立本层解码器中标准语句的语义特征和各层特征的相似关系,然后将输出结果作为语义特征输入到下一层解码器中,不断递推,本层输入是上一层输出,不断加强多层特征与语义特征的相似关系。单个解码器层的结构如图8所示,可知整体结构与最基本的Transformer相同。图像特征的处理集中在第3子层的交叉注意力上,且输入的图像特征是三层,为了给三层特征动态分配权重,本发明将重新设计原本的交叉注意力模块并命名为层特征注意力,即图中的“Feature Layer Attention”。
层特征注意力模块旨在给多层特征分配权重,动态学习各层特征与序列语义特征的相似关系。首先,在输入各层特征进入层特征注意力模块之前先对不同维度的多层特征进行维度转换处理,本申请摒弃了简单粗暴使用全连接层、池化层以及一些采样操作将多层特征转换为可以输入解码器的维度,而是利用融合网络,设计了特征转换模块。然后,结合加权注意力思想与Transformer解码器中的交叉注意力模块设计了一种专门关注不同特征层的层特征注意力。
如图9所示是本申请设计的特征转换模块,图中标出了各个子模块所表示的含义。此处使用的EfficientNet-b0提取的第3层、第5层、第7层特征作为输入,即图中的F3、F5、F7。图中对应的F7维度为320×7×7,F5维度为112×14×14,F3维度为40×28×28。首先通过下采样以及卷积将F3和F5的通道数转换为和F7一样的维度。然后,使用与EfficientNet-b0相同的1280核卷积将通道数再转换为1280,由于参数更新时数据变化很大易导致协变量偏移的现象,用批归一化处理该层输出即可降低数据分布的变化幅度。此外,归一化后使用激活函数可以有效避免数据在激活前被转化成相似的模式,从而使非线性特征分布趋于同化。然后,用全局平均池化将数据压缩为一维序列特征,此时该数据维度仍为1280。最后,全连接层将输出维度转换为语句解码器中的词嵌入层维度,特征转换模块处理之后的特征为图中的P3、P5、P7。为了防止过拟合,在池化层之后可以再加入一个dropout层。
下面对层特征注意力模块的具体作用进行描述。
为了动态学习各层特征与序列语义特征之间的相似关系,提高最终生成语句的质量,本发明在解码器处理各层特征时,结合加权注意力思想与Transformer解码器中的交叉注意力模块设计了一种专门关注不同特征层的层特征注意力(Feature LayerAttention),具体结构如图10所示。
本申请首先使用了原始Transformer解码器中的交叉注意力模块,即图10中的“Seq-to-image Attention”,每个交叉注意力模块输入的是不同层的特征,即图中的P3、P5、P7。此外,每个交叉注意力模块中都使用了基本单元是点积注意力的多头注意力,点积注意力对某单层特征与序列语义特征求相似性分布,进而得到该单层特征的加权和,该点积注意力函数定义为:
由图10可知,各层图像特征与序列语义特征建立相似关系的过程是并行的,虽然每次输入不同层的特征,但是输入的序列语义特征相同。在得到各单层图像特征分别和序列语义信息的相似关系后给对应特征层的处理结果分别分配权重,即可得到此时的序列语义特征分别对应各层图像特征的关注度。分配权重的过程如图10中后半部分所示。公式定义为:
lay_att=∑iαicross_attiS
其中,lay_att表示层特征注意力模块的输出结构;cross_atti表示第i层图像特征对应的交叉注意力模块(Seq-to-image Attention)输出,αi表示cross_atti所对应的权重大小。其公式定义为:
αi=Sigmoid(Wi([X;cross_atti]))
本发明在图像描述中使用了最大的基准数据集COCO2017,其中包含118287张训练集、5000张验证集、5000张测试集的图片。COCO数据集的大多数图像包含复杂场景中的多个对象,每个图像对应五个人类标记的描述。原始训练集和验证集的图像被整合并重新划分,训练集、验证集和测试集中包含的图像数量为113287、5000、5000。我们将所有标题标准化,将所有字母转换为小写,并丢弃非字母字符,将所有出现次数少于五次的单词替换为<unk>,然后使用空格分隔所有标题,形成11561个词汇表。最后,我们使用不同的指标:Blue、Rouge-L、Cider、Meteor从不同的角度评估生成的句子。
本发明实验中图像编码器使用的是EfficientNet-b0,解码器使用的三层堆叠的基于层特征注意力的Transformer解码器,其中解码器每个子层的dropout设置为了0.2,前馈维度设置为3072。因为交叉熵损失函数能计算输出值和真实值差值的概率分布距离,可用于多分类任务,所以本发明使用交叉熵损失训练模型。除了损失函数之外,优化器的选择也至关重要,本发明使用快速收敛的Ranger优化器,Ranger优化器对轻微的调参不敏感,减小了调参带来的负担。在训练时,学习率和批量大小会直接影响模型的学习效果,如果学习率过高,会使模型振荡范围过大,直接导致不收敛;而如果学习率过小,会使模型收敛速度很慢,拉长训练时间,经过多次尝试,warmup次数为1万次,学习率初始值设置为2。此外,批量大小对应设置为64。
在MSCOCO数据集上对本发明的模型进行了评分。首先,对比简单的特征维度转换模块与本发明设计的特征转换模块,验证本发明特征转换模块的有效性。然后将本发明所提模型与使用单层特征或其他引入多层特征进行解码的方法评分进行对比,从而验证本发明的层特征注意力模块的有效性。
(1)分析特征转换模块对整体模型的影响
由于论文《A multi-layer feature parallel processing method for imagecaptioning》的并行模型设计中存在与本发明模型相似的图像特征维度转换过程。所以本发明设计的特征转换模块与该论文的特征维度转换来做对比实验。对比结果如表1所示,其中“SPC-FT”表示使用本发明设计的特征转换模块的顺序并行模型,“RPC-FT”表示使用本发明设计的特征转换模块的逆序并行模型。
由表1中数据可知,本发明提出的特征转换模块具有一定的优势,各项指标都有了提升,之前表现不理想的顺序并行(SPC)也得到了一定的改进,如CIDEr从67.5升至67.9,验证了特征处理对于模型性能的重要性。在需要某个维度的数据时,简单粗暴的进行维度变换并不可取,应该尽可能地使重要的特征信息能表达出来。这部分的工作灵感主要来源于卷积神经网络对于特征的处理,比如一般用两个3×3的卷积核代替一个5×5的卷积核,虽然它们都可以获得具有相同感受的特征结果,但是如果直接使用5×5的卷积核时,过多的参数会使网络层数变少,从而影响特征的表达能力。因此,虽然可以通过一个卷积直接得到期望的特征维度,但是本发明设计的特征转换模块能更好的捕获每层特征中重要信息的表达。
表1多种模型使用两种特征转换模块的评分结果
(2)分析层特征注意力模块的优势
为了动态学习各层特征与序列语义特征的相似关系,提高最终生成语句的质量,本发明设计了一种层注意力模块,使每一个解码器堆叠层都可以按需决定对每一层的特征的注意力大小。本发明评估了基于层特征注意力的图像描述模型,结果如表2所示。首先,我们将仅使用某高层特征作为解码器输入的结果作为基准和本发明所提模型进行对比。其次,为了在多层特征的基础上,探索更加高效的图像描述方法,我们将本发明模型和其他两个可以同时引入高层特征与低层特征的方法进行对比。表中“Caption-Lay-att”表示本发明所提的基于层特征注意力的图像描述模型。
表2显示了本发明所提模型的有效性,首先,“Caption-Lay-att”的各项指标均远高于基准模型,表明本发明所提模型在引入多层特征的基础上提升了整体模型的性能,BLEU-4得分从17.5提高到20.8,CIDEr得分从66.9提高到68.7。然后,我们对比使用了特征转换模块的两种并行模型(“SPC-FT”和“RPC-FT”)与“Caption-Lay-att”的评分结果,发现各项指标也有明显提高,比如BLEU-4得分从18.7提高到20.8,CIDEr得分从68.1提高到68.7。实验结果表明,对比以特定的方式直接将多层特征引入解码器,通过结合解码器现有结构设计的层特征注意力动态的学习了多层特征与序列语义特征之间的相似关系,进一步提升了图像描述模型的性能。
表2层特征注意与本发明所提其他模型的对比结果
图11是我们在MSCOCO上测试的结果。图中“NIC-T”表示最基础的神经网络图像描述模型结果;“Ours”表示本发明所提模型的测试结果。其中下划线标注的单词为图片中的各个目标信息。显而易见,与普通的“NIC-T”相比,本发明模型可以在描述图片关键信息的同时尽可能多地描述更多的小目标信息,比如:图11(b)中的“蛋糕”和“蜡烛”、图11(c)中的“狗”、图11(e)中的“飞盘”等。在句子质量上,本发明模型能生成语义更丰富、表达更准确且结构更流畅的句子,证明了本发明模型的有效性。
本申请结合Transformer解码器现有结构设计层特征注意力模块,在每一解码器堆叠层中都可以同时处理多层特征,使每一个解码器堆叠层都可以按需决定对每一层特征的注意力大小,动态学习各层特征与序列语义特征的相似关系。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
本示例实施方式中,还提供了一种基于层特征注意力的图像描述装置。该装置可以包括以下模块:
图像采集模块,用于采集待描述图像;
编码模块,用于对所述待描述图像进行编码处理,得到多层特征;
特征转换模块,用于对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度;
解码模块,用于对所述多层特征进行解码处理,得到相应的图像描述;
其中,所述解码模块包括层特征注意力模块,用于利用层特征注意力对层特征分配权重。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现木公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被例如处理器执行时可以实现上述任意一个实施例中所述基于层特征注意力的图像描述方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述基于层特征注意力的图像描述方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图12所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品600,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
在本公开的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施例中所述基于层特征注意力的图像描述方法的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图13来描述根据本发明的这种实施方式的电子设备600。图13显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图13所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述基于层特征注意力的图像描述方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图2中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述基于层特征注意力的图像描述方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (10)
1.一种基于层特征注意力的图像描述方法,其特征在于,包括以下步骤:
采集待描述图像;
对所述待描述图像进行编码处理,得到多层特征;
对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度;
将维度转换处理后的多层特征输入解码器,所述解码器对所述多层特征进行解码处理,得到相应的图像描述。
2.根据权利要求1所述基于层特征注意力的图像描述方法,其特征在于,所述将维度转换处理后的多层特征输入解码器,所述解码器对所述多层特征进行解码处理,得到相应的图像描述,包括:
将维度转换处理后的多层特征输入解码器;
所述解码器对所述多层特征分配权重后进行解码处理,得到相应的图像描述。
3.根据权利要求2所述基于层特征注意力的图像描述方法,其特征在于,将维度转换处理后的多层特征输入解码器的过程为:
将中层特征、低层特征和高层特征均输入解码器的每个堆叠层中。
4.根据权利要求1所述基于层特征注意力的图像描述方法,其特征在于,所述对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度,之后还包括:
将维度相同的每一层的特征输入卷积层;
将卷积层输出的特征的维度进行变形;
对全连接层输出的特征进行批归一化处理;
使用激活函数对批归一化后的特征进行映射。
5.根据权利要求4所述基于层特征注意力的图像描述方法,其特征在于,所述使用激活函数对批归一化后的特征进行映射,之后还包括:
利用全局平均池化对映射后的特征进行数据压缩;
对压缩数据进行减小过拟合处理。
6.根据权利要求2所述基于层特征注意力的图像描述方法,其特征在于,所述解码器通过将多层特征与标准语句进行对比,然后对所述多层特征分配权重后进行解码处理。
7.根据权利要求6所述基于层特征注意力的图像描述方法,其特征在于,第i层图像特征对应的交叉注意力所对应的权重为:
αi=Sigmoid(Wi([X;cross_atti]))
其中,i为图像特征的层数,Wi表示第i层图像特征对应的可训练权重矩阵;X表示序列信息矩阵;[;]表示将两个矩阵连接起来,cross_atti表示第i层图像特征对应的交叉注意力的输出。
8.根据权利要求6所述基于层特征注意力的图像描述方法,其特征在于,采用以下公式进行分配权重:
lay_att=∑iαicross_atti。
9.根据权利要求1所述基于层特征注意力的图像描述方法,其特征在于,所述解码器为Transformer解码器。
10.一种基于层特征注意力的图像描述装置,其特征在于,包括:
图像采集模块,用于采集待描述图像;
编码模块,用于对所述待描述图像进行编码处理,得到多层特征;
特征转换模块,用于对所述多层特征进行维度转换处理,以将中层特征和低层特征的维度转换为高层特征的维度;
解码模块,用于对所述多层特征进行解码处理,得到相应的图像描述;
其中,所述解码模块包括层特征注意力模块,用于利用层特征注意力对层特征分配权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210787551.1A CN115100482B (zh) | 2022-07-04 | 基于层特征注意力的图像描述方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210787551.1A CN115100482B (zh) | 2022-07-04 | 基于层特征注意力的图像描述方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115100482A true CN115100482A (zh) | 2022-09-23 |
CN115100482B CN115100482B (zh) | 2024-10-01 |
Family
ID=
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111260653A (zh) * | 2020-04-27 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 一种图像分割方法、装置、存储介质和电子设备 |
CN112418095A (zh) * | 2020-11-24 | 2021-02-26 | 华中师范大学 | 一种结合注意力机制的面部表情识别方法及系统 |
CN113902926A (zh) * | 2021-12-06 | 2022-01-07 | 之江实验室 | 一种基于自注意力机制的通用图像目标检测方法和装置 |
CN114022726A (zh) * | 2021-10-20 | 2022-02-08 | 金鹏电子信息机器有限公司 | 一种基于胶囊网络的人员车辆监控方法及系统 |
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111260653A (zh) * | 2020-04-27 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 一种图像分割方法、装置、存储介质和电子设备 |
CN112418095A (zh) * | 2020-11-24 | 2021-02-26 | 华中师范大学 | 一种结合注意力机制的面部表情识别方法及系统 |
CN114022726A (zh) * | 2021-10-20 | 2022-02-08 | 金鹏电子信息机器有限公司 | 一种基于胶囊网络的人员车辆监控方法及系统 |
CN113902926A (zh) * | 2021-12-06 | 2022-01-07 | 之江实验室 | 一种基于自注意力机制的通用图像目标检测方法和装置 |
Non-Patent Citations (3)
Title |
---|
QIUJUAN TONG: ""Image Captioning Method Based on Layer Feature Attention "", 《AIPR\'22: PROCEEDINGS OF THE 2022 5TH INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE AND PATTERN RECOGNITION》, 16 May 2023 (2023-05-16), pages 482 - 488 * |
ZHENG LIAN: ""Enhanced soft attention mechanism with an inception-like module for image captioning"", 《2020 IEEE 32ND INTERNATIONAL CONFERENCE ON TOOLS WITH ARTIFICIAL INTELLIGENCE (ICTAI)》, 24 December 2020 (2020-12-24), pages 748 - 752 * |
周振: ""基于自注意力机制与编解码网络的图像语义分割"", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 2022, 15 May 2022 (2022-05-15), pages 138 - 748 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112487182B (zh) | 文本处理模型的训练方法、文本处理方法及装置 | |
CN108959246B (zh) | 基于改进的注意力机制的答案选择方法、装置和电子设备 | |
WO2021233112A1 (zh) | 基于多模态机器学习的翻译方法、装置、设备及存储介质 | |
WO2023160472A1 (zh) | 一种模型训练方法及相关设备 | |
Li et al. | Residual attention-based LSTM for video captioning | |
CN110633359B (zh) | 语句等价性判断方法和装置 | |
CN115495568B (zh) | 一种对话模型的训练方法及装置、对话响应方法及装置 | |
CN115221846A (zh) | 一种数据处理方法及相关设备 | |
CN111464881A (zh) | 基于自优化机制的全卷积视频描述生成方法 | |
WO2023226239A1 (zh) | 对象情绪的分析方法、装置和电子设备 | |
CN113505193A (zh) | 一种数据处理方法及相关设备 | |
WO2021082518A1 (zh) | 机器翻译方法、机器翻译模型训练方法、装置及存储介质 | |
CN111767697B (zh) | 文本处理方法、装置、计算机设备以及存储介质 | |
CN117437317A (zh) | 图像生成方法、装置、电子设备、存储介质和程序产品 | |
CN116258147A (zh) | 一种基于异构图卷积的多模态评论情感分析方法及系统 | |
CN115169472A (zh) | 针对多媒体数据的音乐匹配方法、装置和计算机设备 | |
CN114328943A (zh) | 基于知识图谱的问题回答方法、装置、设备及存储介质 | |
Jiang et al. | Hadamard product perceptron attention for image captioning | |
CN117932066A (zh) | 一种基于预训练的“提取-生成”式答案生成模型及方法 | |
CN118051635A (zh) | 基于大语言模型的对话式图像检索方法和装置 | |
CN116186220A (zh) | 信息检索方法、问答处理方法、信息检索装置及系统 | |
CN115100482B (zh) | 基于层特征注意力的图像描述方法及装置 | |
CN115100482A (zh) | 基于层特征注意力的图像描述方法及装置 | |
CN113609863A (zh) | 一种训练、使用数据转换模型的方法、装置及计算机设备 | |
CN117521674B (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 |