CN111612024A - 特征提取方法、装置、电子设备及计算机可读存储介质 - Google Patents
特征提取方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111612024A CN111612024A CN201910138847.9A CN201910138847A CN111612024A CN 111612024 A CN111612024 A CN 111612024A CN 201910138847 A CN201910138847 A CN 201910138847A CN 111612024 A CN111612024 A CN 111612024A
- Authority
- CN
- China
- Prior art keywords
- image
- neural network
- self
- convolution
- attention layer
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 93
- 239000013598 vector Substances 0.000 claims abstract description 184
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 177
- 238000000034 method Methods 0.000 claims abstract description 62
- 238000012549 training Methods 0.000 claims description 141
- 238000013528 artificial neural network Methods 0.000 claims description 80
- 238000012545 processing Methods 0.000 claims description 22
- 230000008707 rearrangement Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 27
- 239000011159 matrix material Substances 0.000 description 25
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000012544 monitoring process Methods 0.000 description 6
- 241001465754 Metazoa Species 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 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
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供了一种特征提取方法、装置、电子设备及计算机可读存储介质,所述方法包括:获取待处理图像,将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量;其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;输出所述待处理图像对应的特征向量。本申请实施例可以提高特征向量提取的准确度。
Description
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种特征提取方法、装置、电子设备及计算机可读存储介质。
背景技术
卷积神经网络(Convolutional Neural Network,CNN)是目前计算机视觉中最常用、最有效的一种模型,它能有效地利用层级结构,提取图片中从底层到高层的不同特征,卷积层在输出的特征图上,每个输出点的值由局部信息计算而来,比如,采用3×3大小的卷积核,通过图片与卷积核重合区域内相对应的每一个像素值乘卷积核内相对应点的权重,计算权重的和值以及增加偏置后输出特征图中的一个像素值。但是,现有技术中的卷积神经网络只考虑局部的信息和结构,导致在通过上述卷积神经网络从图像中提取特征时,卷积神经网络输出的特征图中会出现与目标特征无关的噪声,降低提取的特征的准确度。
发明内容
有鉴于此,本申请的目的在于提供一种特征提取方法、装置、电子设备及计算机可读存储介质,用于解决现有技术在进行特征提取时提取的特征向量准确度低的问题。
第一方面,本申请实施例提供了一种特征提取方法,该方法包括:
获取待处理图像;
将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量,其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;
输出所述待处理图像对应的特征向量。
可选地,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
可选地,所述卷积神经网络中的特定卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的每个卷积模块均包括一个自注意力层。
可选地,所述卷积神经网络还包括分类器,在所述输出所述待处理图像对应的特征向量后,还包括:
将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
基于所述分类结果,确定所述待处理图像的分类。
可选地,在所述输出所述待处理图像对应的特征向量后,还包括:
获取目标图像的特征向量;
基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度;
根据所述相似度,输出针对所述待处理图像的提示信息。
可选地,根据以下步骤训练所述卷积神经网络:
获取训练图像;
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积模块中的自注意力层进行训练。
可选地,控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积神经网络中的自注意力层进行训练进一步包括:
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对当前卷积模块中的自注意力层进行训练;
在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
可选地,在训练完所述卷积神经网络中的所有卷积模块的自注意力层之后,还包括:
基于所述训练图像对所述卷积神经网络中的所有卷积模块和所有自注意力层进行训练。
可选地,所述将所述待处理图像输入到卷积神经网络进行特征提取,包括:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量;
S6:基于所述h个第四特征向量,输出第二特征图。
可选地,不同次执行S2时,三个所述全连接层的参数均不相同。
第二方面,本申请实施例提供了一种特征提取装置,该装置包括:
获取模块,用于获取待处理图像;
提取模块,用于将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量;其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;
输出模块,用于输出所述待处理图像对应的特征向量。
可选地,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
可选地,所述卷积神经网络中的特定卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的每个卷积模块均包括一个自注意力层。
可选地,所述卷积神经网络还包括分类器,
该装置还包括:分类模块,所述分类模块用于:
将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
基于所述分类结果,确定所述待处理图像的分类。
可选地,该装置还包括计算模块,所述计算模块用于:
获取目标图像的特征向量;
基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度;
根据所述相似度,输出针对所述待处理图像的提示信息。
可选地,该装置还包括:训练模块,所述训练模块根据以下步骤训练所述卷积神经网络:
获取训练图像;
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积模块中的自注意力层进行训练。
可选地,所述训练模块具体用于:
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述当前卷积模块中的自注意力层进行训练;
在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
可选地,所述训练模块还用于:
基于所述训练图像对所述卷积神经网络中的所有卷积模块和所有自注意力层进行训练。
可选地,所述提取模块具体用于:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量;
S6:基于所述h个第四特征向量,输出第二特征图。
可选地,不同次执行S2时,三个所述全连接层的参数均不相同。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如第一方面所述的特征提取方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如第一方面所述的特征提取方法的步骤。
本申请实施例提供的特征提取方法、装置、电子设备及计算机可读存储介质,通过获取待处理图像,将待处理图像输入到卷积神经网络进行特征提取,卷积神经网络中的至少一个卷积模块包括一个自注意力层,得到待处理图像对应的特征向量,这样,通过包含自注意力层的卷积神经网络提取的特征可以考虑全局信息,提高提取的特征向量的准确度。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所提供的一种特征提取方法的流程示意图;
图2示出了本申请实施例所提供的一种卷积神经网络的训练方法的第一种流程示意图;
图3示出了本申请实施例所提供的一种卷积神经网络的训练方法的第二种流程示意图;
图4示出了本申请实施例所提供的一种特征重排的示意图;
图5示出了本申请实施例所提供的一种分类方法的流程示意图;
图6示出了本申请实施例所提供的一种图像识别方法的流程示意图;
图7示出了本申请实施例所提供的一种特征提取装置的结构示意图;
图8示出了本申请实施例所提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,利用卷积神经网络对图像进行分类或者特征提取的技术已在各个领域被广泛使用。常见的如图像中的特征提取,就是利用现有的卷积神经网络实现的。一般情况下,在使用卷积神经网络进行特征提取时,卷积神经网络中仅包括多个卷积层,将待处理图像输入到卷积神经网络进行特征提取,得到待处理图像的特征向量,由于现有技术中的卷积神经网络在进行特征提取时一般采用3×3大小的卷积核,通过图片与卷积核重合区域内相对应的每一个像素值乘卷积核内相对应点的权重,求和加偏置后输出特征图中的像素值,这样,仅仅考虑了待处理图像中的局部信息,进而导致输出的特征图中可能包括与图像中目标无关的噪声,降低提取的特征向量的准确度。
本申请实施例中考虑到现有技术存在的上述问题,将自注意力机制迁移到现有的卷积神经网络中,从而使得本申请提供的卷积神经网络在提取特征的基础上,能够融合全局信息,从而提取出更具代表性的特征图,同时,还可以抑制提取的特征图中的噪声,提高提取的特征的准确度。
针对上述情况,本申请实施例提供了一种特征提取方法,如图1所示,应用于计算机设备中,该方法包括以下步骤:
S101,获取待处理图像;
这里,待处理图像是指通过摄像设备拍摄的包括人物、或动物、或物品的图像,在待处理图像中包括人物时,该待处理图像可以是通过交通系统的监控摄像头拍摄到的,也可以是由其他智能终端在获取到包括人物的图像后发送到计算机设备的,当然了,在获取待处理图像之后可以对待处理图像进行预处理,以使得使用卷积神经网络对待处理图像进行特征提取更具有针对性。
S102,将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量;其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层。
在将所述待处理图像输入到卷积神经网络进行特征提取时,包括以下步骤:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量,其中,不同次执行S2时,三个所述全连接层的参数均不相同;
S6:基于所述h个第四特征向量,输出第二特征图。
待处理图像输入到卷积神经网络进行特征提取的过程过程可参考训练过程中自注意力层的提取过程。
S103,输出所述待处理图像对应的特征向量。
这里,特征向量表征待处理图像中具有代表性的特征。
卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
卷积神经网络中包括的卷积模块的数目可以根据实际情况确定,优选地,卷积模块的数目为4个;特定卷积模块可以为卷积神经网络中至少一个卷积模块中的一个卷积模块,或者一个以上的卷积模块,或者任意选择的两个或两个以上卷积模块,如,卷积神经网络中包括4个卷积模块时,四个卷积模块顺次连接,特定卷积模块可以为第1个卷积模块,也可以为第1个、第3个卷积模块,可根据实际应用场景确定包括自注意力层的特定卷积模块;其中,每个卷积模块包括多个卷积层,卷积模块中的自注意力层在进行特征提取时能够融合全局信息,从而使得自注意力层提取的特征图更具代表性。
在卷积神经网络中的特定卷积模块仅为一个卷积模块或几个卷积模块的组合时,利用卷积神经网络对待处理图像进行特征提取时,提取的特征向量的准确度会比较差一些,因此,在对待处理图像的特征进行提取时,卷积神经网络中的特定卷积模块包括卷积神经网络中的所有卷积模块,也就是说,卷积神经网络中的每个卷积模块均包括一个自注意力层。这样,可以提高卷积神经网络提取的特征的准确度,进一步,也可以提高应用卷积神经网络提取的特征向量进行图像分类、图像分割或行人重识别时的应用准确度。
由于卷积神经网络中的每个卷积模块中均包括有多个卷积层,若将自注意力层增加到卷积模块中的每个卷积层之后,虽然可以提高提取的特征向量的准确度,但是,由于自注意力层的参数量为卷积层参数的一半,因此,在每个卷积层之后均增加一个自注意力层时,整个卷积神经网络中的参数量会增加大约50%,在训练卷积神经网络时会增加处理量,而仅在卷积模块之后增加自注意力层,整个卷积神经网络的参数量增加大约8%-10%,在提高提取的特征向量的准确度的前提下,也不会增加训练卷积神经网络时的处理量,因此,本申请卷积神经网络中的每个卷积模块均包括一个自注意力层。
针对卷积神经网络中的每个卷积模块均包括一个自注意力层的情况,在具体实施过程中,卷积神经网络中除了包括至少一个卷积模块外,卷积神经网络中还包括一个卷积层和一个分类器,其中,一个卷积层位于至少一个卷积模块之前,分类器位于至少一个卷积模块之后,即,卷积层、各卷积模块和分类器(分类器确定待处理图像的分类)顺次连接。为了提高最终提取的特征向量的准确度,至少一个卷积模块按照对图像进行特征提取时的处理方向,设置每个卷积模块中包含的卷积层的数目,例如,卷积神经网络中包括4个卷积模块,按照对图像的处理方向,顺次连接的4个卷积模块中,第一个卷积模块中包括3个卷积层,第二卷积模块包括4个卷积层,第三个卷积模块包括6个卷积层,第四个卷积模块包括3个卷积层,每个卷积模块在进行特征提取时重复执行三次,每次执行特征提取时卷积层的参数(可以预先设定)不同。这样,可以在提高提取的特征向量的准确度的前提下,减少卷积神经网络的中参数的增加量。
以下针对卷积神经网络包括一个卷积层、至少一个卷积模块(特定卷积模块包括一个自注意力层)和分类器的卷积神经网络的训练过程进行说明。
参考图2,在对卷积神经网络进行训练时,根据以下步骤训练特定卷积模块包括一个自注意力层的卷积神经网络:
S201,获取训练图像;
S202,控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积神经网络中的自注意力层进行训练。
这里,训练图像可以是但不限于包括人物、动物、物品的图像,训练图像中包括未标注图像和未标注图像对应的标注分类(或标注向量),针对不同的卷积神经网络应用场景,使用不同的训练图像,后文针对不同的应用场景进行详细说明。
在具体实施中,由于特定卷积模块中包括自注意力层的卷积模块的数目不同,需要通过不同的训练方式对卷积神经网络进行训练。以下分别针对卷积神经网络中特定卷积模块中的一个卷积模块包括一个自注意层的情况和卷积神经网络中的每个卷积模块包括一个自注意力层的情况进行说明。不过应当注意,卷积神经网络的结构为其它形式时,卷积神经网络的训练过程可以参考每个卷积模块包括一个自注意力层的卷积神经网络的训练过程,不一一针对不同的卷积神经网络的结构的训练过程进行展开说明。
在卷积神经网络中仅一个卷积模块中包括一个自注意力层的情况时,控制卷积神经网络中各卷积模块的参数不变,将未标注图像输入到卷积神经网络进行特征提取,计算特征提取结果和相应的标注分类(或标注向量)的交叉熵损失函数值,使得交叉熵损失函数最小调整卷积神经网络中自注意力层的参数。其中,交叉熵损失函数最小调整卷积神经网络中自注意力层的参数的过程可以参考图3的训练过程。
参考图3,在卷积神经网络中各卷积模块中均包括一个自注意力层的情况时,控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积神经网络中的自注意力层进行训练进一步包括:
S301,控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述当前卷积模块中的自注意力层进行训练;
S302,在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
在训练完所述卷积神经网络中的所有卷积模块的自注意力层之后,还包括以下步骤:
基于所述训练图像对所述卷积神经网络中的所述至少一个卷积模块和每个所述卷积模块包括的自注意力层进行训练。
在具体实施中,在对卷积神经网络中的当前自注意力层进行训练时,控制卷积神经网络中各卷积模块的参数不变,将未标注图像输入到仅包含当前自注意力层的卷积神经网络,根据卷积神经网络的输出结果和标注分类(或者标注向量)调整当前卷积模块中的自注意力层的参数,在对当前自注意力层训练完毕后,控制卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,在卷积神经网络中增加一个新的自注意力层,将新增加的自注意力层作为下一个自注意力层,将未标注图像输入到仅包含当前自注意力层和下一个自注意力层的卷积神经网络,根据卷积神经网络的输出结果和标注分类(或者标注向量)调整下一个自注意力层的参数,直到训练完卷积神经网络中所有的自注意力层为止。在自注意力层训练完毕后,将训练图像输入到卷积神经网络,训练各卷积模块和各自注意力层,得到最终的卷积神经网络。
在对自注意力层进行训练时,需要控制卷积模块和已完成训练的自注意力层的参数不变,一方面可以减少当前训练过程中需要调整的参数量,另一方面,可以减少在对当前自注意力层进行训练时调整卷积模块中的参数对自注意力层带来的负面影响,进而提高训练的自注意力层提取的特征的准确度。
在具体实施过程中,卷积神经网络中一般包括一个卷积层、四个卷积模块和一个分类器,以下针对该卷积神经网络的训练过程进行说明。
首先,在卷积神经网络中的第一个卷积模块中增加一个第一自注意力层,其它卷积模块中不增加自注意力层,将该卷积神经网络作为第一卷积神经网络,控制第一卷积神经网络中各卷积模块中的参数不变,将获取的训练图像输入到第一卷积神经网络中对该第一卷积神经网络中的第一自注意力层进行训练。
在对第一自注意力层训练完毕后,在第一卷积神经网络中的第二个卷积模块中增加一个第二自注意力层,其它卷积模块中不增加自注意力层,将增加第二自注意力层的第一卷积神经网络作为第二卷积神经网络,控制第二卷积神经网络中各卷积模块的参数和第一自注意力层的参数不变,将获取的训练图像输入到第二卷积神经网络中对第二卷积神经网络中的第二自注意力层进行训练。
在第二自注意力层训练完毕后,在第二卷积神经网络中的第三个卷积模块中增加一个第三自注意力层,其它卷积模块中不增加自注意力层,将增加第三自注意力层的第二卷积神经网络作为第三卷积神经网络,控制第三卷积神经网络中各卷积模块的参数、第一自注意力层的参数和第二自注意力层的参数不变,将获取的训练图像输入到第三卷积神经网络中对第三卷积神经网络中的第三自注意力层进行训练。
在第三自注意力层训练完毕后,在第三卷积神经网络中的第四个卷积模块中增加一个第四自注意力层,将增加第四自注意力层的第三卷积神经网络作为第四卷积神经网络,控制第四卷积神经网络中各卷积模块的参数、第一自注意力层的参数、第二自注意力层的参数和第三自注意力层的参数不变,将获取的训练图像输入到第四卷积神经网络中对第四卷积神经网络中的第四自注意力层进行训练,直到训练完第四自注意力层。
在训练完第一自注意力层、第二自注意力层、第三自注意力层、第四自注意力层后,将获取的训练图像输入到包括第一自注意力层、第二自注意力层、第三自注意力层、第四自注意力层的卷积神经网络进行训练,以调整卷积神经网络中各卷积模块和各自注意力层的参数。这样,通过在卷积神经网络中增加自注意力层,使得经过自注意力层处理过的图像中的每个点均包含有全局信息,提高提取的特征向量的准确低,同时,也可以降低提取的特征图中的噪声。
在卷积神经网络训练过程中,自注意力层对所述待处理图像进行如下操作:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量,其中,不同次执行S2时,三个所述全连接层的参数均不相同;
S6:基于所述h个第四特征向量,输出第二特征图。
在具体实施中,自注意力层对第一特征图进行提取的过程参考步骤1-步骤8。
步骤1:输入到自注意力层的第一特征图的大小为d×H×W,将特征重新排列为向量维度是d,特征数为hw的第一特征向量。
在对第一特征图进行重新排列时,在第一特征图的hw面上,按照从左至右、从上到下的顺序,每次取出一个长度为d的向量,共得到h*w个,按照向量的提取顺序从上到下排列,得到hw×d的特征向量,特征向量中的每一行为三维特征中一个空间点的深度特征。
例如,参考图4,三维特征是3行3列,通道数为32,即,h=3,w=3,d=32,那么,在3×3的这个面上从左至右、从上至下的顺序,每次取出一个特征为32的向量,得到3×3=9个向量,按照向量的提取顺序将各向量进行排列,得到一个9×32的矩阵。
步骤2:将hw×d的第一特征向量映射到三个不同空间的全连接层(不同全连接层的参数各不相同),对hw×d的第一特征向量进行线性变化得到K(dk×hw)、Q(dq×hw)、V(dv×hw)三个第二特征向量,三个第二特征向量的维度分别为dk,dq,dv,其中,dk=dq=dv=d/h,h为自注意力层中参数的数目。
例如,延续步骤1中的示例,将9×32的特征矩阵映射到三个不同空间的全连接层,得到K矩阵、Q矩阵和V矩阵的维度为32/h维度,h为自注意力层的参数的数目。
步骤3:对第二特征向量Q与第二特征向量K进行内积运算,得到第三特征向量(又称,相似度矩阵)(hw×hw),相似度矩阵中的每个值表示第一特征图中每个特征与其他特征的内积相似度,即,空间中每个点与其它点的相似度。
通过以下公式对Q与K进行相乘:
S=QTK;
其中,S为相似度矩阵,Sij为相似度矩阵中第i行i列的值,也就是,第二特征向量Q中第i列特征和K矩阵中的第j列特征之间的内积相似度;Qi为第二特征向量Q中第i列特征,Kj为K矩阵中第j列特征。
例如,延续步骤2中的示例,Q为32/h×hw的矩阵,K为32/h×hw的矩阵,基于上述相似度公式对转置后的Q矩阵与K矩阵进行相乘,得到hw×hw的相似度矩阵。
步骤4:对步骤3中得到相似度矩阵进行缩放处理(归一化处理)和softmax处理,得到每个特征相对于其他特征的自注意力分布,最终得到处理后的hw×hw的第三特征向量。
softmax公式如下:
其中,Aik为自注意力矩阵中第i行第k列的值;Sik为相似度矩阵中中第i行第k列的值。
在具体实施中,计算第三特征向量和第二特征向量的转置的乘积,得到第四特征向量。其中,在计算特征向量与特征向量的转置的乘积的过程现有技术已有详细介绍,此处不再进行过多说明。
步骤6:重复执行h次步骤2到步骤5,得到h个不同的d/h×hw的第四特征向量,对h个d/h×hw的第四特征向量进行concat处理,也就是,将h个d/h×hw的第四特征向量拼接起来,得到d×hw的第五特征向量。其中,利用concat对特征向量进行拼接处理的过程在现有技术中已有详细的介绍,此处不再进行过多说明。其中,重复步骤2-5时,当前次步骤2中全连接层的参数与上一次步骤2中全连接层的参数不同。
步骤7:将d×hw的第五特征向量输入到一个新的全连接层进行特征提取,目的在于使得最终提取的特征向量的准确度更高,得到处理后的d×hw的第五特征向量。
步骤8:将步骤7中处理后的d×hw的第五特征向量进行特征重排,得到d×h×w的第二特征图。
例如,延续步骤1中的示例,第五特征向量为9×32,按照从左至右、从上至下的顺序,依次将特征为32的向量映射到3x3的面,得到第二特征图。
在对自注意力层进行训练时,以第一自注意力层的参数调整过程为例进行说明,将第一自注意力层的输出结果输入到第二卷积模块、第三卷积模块、第四卷积模块进行特征提取,将提取的特征向量输入到分类器进行分类。利用分类结果和标注分类(或标注向量)计算交叉熵损失函数,利用交叉熵损失函数对卷积神经网络进行反向传播,计算对第一自注意力层的每个参数的导数,利用梯度下降算法对每个参数的导数进行梯度下降,以降低交叉熵损失函数的值,进而调整第一自注意力层的参数。其中,梯度下降算法可以是但不限于随机梯度下降算法等,本申请对此不予限制。
对所有自注意力层的参数进行调整的过程与第一自注意力层参数的调整过程相似,此处不一一针对每个自注意力层的参数调整过程进行展开说明。其中,每个自注意力层在进行特征提取可以参考上述步骤1-8,此处不再展开说明。
针对四个卷积模块中的每个卷积模块包括一个自注意力层和一个分类器、一个卷积层的卷积神经网络的情况,结果以下三个应用场景对卷积神经网络的训练过程进行说明。
应用场景一:针对卷积神经网络中仅第一卷积模块中包括一个自注意力层的情况进行说明,不过应当注意,所有的卷积神经网络的结构均可以使用于该场景。
应用场景一训练的卷积神经网络用于对图像进行分类,如,识别图像中包含的人物、动物或物品等,获取的训练图像包括未标注图像和每个未标注图像对应的标注向量,标注向量由0和1组成,1表征图像属于预设分类,0表征图像不属于预设分类。
控制卷积神经网络中各卷积模块的参数不变,将未标注图像输入到卷积神经网络中卷积层和第一卷积模块进行特征提取,得到第一卷积模块输出的第一特征图,将第一特征图输入到第一自注意力层进行特征提取,第一自注意力层进行特征提取的步骤可以参考步骤1-8,将第一自注意力层的提取的第二特征图输入到第二卷积模块、第三卷积模块、第四卷积模块进行特征提取得到输出特征向量,将输出特征向量输入到分类器进行分类,得到未标注图像对应的分类结果。
利用分类结果和标注向量计算交叉熵损失函数,利用交叉熵损失函数对卷积神经网络进行反向传播,计算对第一自注意力层的每个参数的导数,利用梯度下降算法对每个参数的导数进行梯度下降,以降低交叉熵损失函数的值,进而调整第一自注意力层的参数,将最小的交叉熵损失函数的值对应的第一自注意力层的参数最为最终的参数,完成对第一自注意力层的训练。
在完成对第一自注意力层的训练后,将未标注图像输入到卷积神经网络对整个卷积神经网络进行训练,也就是,调整卷积神经网络中各卷积模块的参数和第一自注意力层的参数,调整整个卷积神经网络的参数的过程可以参考自注意力层的参数的调整,最终得到完成训练的卷积神经网络。其中,在对整个卷积神经网络中的参数进行调整的过程现有技术已有详细的介绍,此处不再进行过多说明。
应用场景二:针对卷积神经网络中第一卷积模块和第三卷积模块中包括一个自注意力层、第二卷积模块和第四卷积模块中均不包括自注意力层的情况进行说明,不过应当注意,所有的卷积神经网络的结构均可以使用于该场景。
应用场景二训练的卷积神经网络用于对图像进行分割,如,对图像中包含的人物、动物或物品等进行分割,分割结果为将相应的人物、动物或物品标注为不同的颜色,获取的训练图像包括未标注图像和每个未标注图像对应的标注向量,特征向量由0和1组成,1表征图像中的像素点属于相应的类别,如,预先设置N个类别,每个未标注图像对应的矩阵中属于相应类别的像素标记为1,否则标记为0。
控制卷积神经网络中各卷积模块的参数不变,将未标注图像输入到卷积神经网络中卷积层和第一卷积模块进行特征提取,得到第一卷积模块输出的第一特征图,将第一特征图输入到第一自注意力层进行特征提取,第一自注意力层进行特征提取的步骤可以参考步骤1-8,将第一自注意力层的提取第二特征图输入到第二卷积模块进行特征提取,进一步,将第一自注意力层的输出的第二特征图输入到第二卷积模块、第三卷积模块、第四卷积模块进行特征提取得到输出特征向量,将输出特征向量输入到分类器进行分类,得到未标注图像对应的分类结果。
利用分类结果和标注向量计算交叉熵损失函数,利用交叉熵损失函数对卷积神经网络进行反向传播,计算对第一自注意力层的每个参数的导数,利用梯度下降算法对每个参数的导数进行梯度下降,以降低交叉熵损失函数的值,进而调整第一自注意力层的参数,将最小的交叉熵损失函数的值对应的第一自注意力层的参数最为最终的参数,完成对第一自注意力层的训练。
在训练完毕第一自注意力层后,控制卷积神经网络中各卷积模块的参数和第一自注意力层的参数不变,将未标注图像输入到卷积神经网络中卷积层、第一卷积模块、第一自注意力层、第二卷积模块、第三卷积模块进行特征提取,得到第三卷积模块输出的第一特征图,将该第一特征图输入到第二自注意力层进行特征提取,第二自注意力层进行特征提取的步骤可以参考步骤1-步骤8,将第二自注意力层输出的第二特征图输入到第四卷积模块进行特征提取,得到输出特征向量,将输出特征向量输入到分类器进行分类,得到未标注图像对应的分类结果。
利用分类结果和标注向量计算交叉熵损失函数,利用交叉熵损失函数对卷积神经网络进行反向传播,计算对第二自注意力层的每个参数的导数,利用梯度下降算法对每个参数的导数进行梯度下降,以降低交叉熵损失函数的值,进而调整第二自注意力层的参数,将最小的交叉熵损失函数的值对应的第二自注意力层的参数最为最终的参数,完成对第二自注意力层的训练。
在完成对第一自注意力层和第二自注意力层的训练后,将未标注图像输入到卷积神经网络对整个卷积神经网络进行训练,也就是,调整卷积神经网络中各卷积模块的参数、第一自注意力层和第二自注意力层的参数,最终得到完成训练的卷积神经网络。其中,调整整个卷积神经网络的参数的过程现有技术已有详细的说明,此处不再进行过多说明。
应用场景三:针对卷积神经网络中每个卷积模块中均均包括自注意力层的情况进行说明,不过应当注意,所有的卷积神经网络的结构均可以应用于该场景。
应用场景三训练的卷积神经网络用于对行人进行重识别,对图像中包含的人物进行识别,获取的训练图像包括未标注图像和每个未标注图像对应的标注向量,特征向量由0和1组成,1表征图像中的像素点属于相应的人物分类,如,预先设置N个分类,每个未标注图像对应的矩阵中属于相应分类的值标记为1,否则标注为0。
控制卷积神经网络中各卷积模块的参数不变,将未标注图像输入到卷积神经网络中卷积层和第一卷积模块进行特征提取,得到第一卷积模块输出的第一特征图,将第一特征图输入到第一自注意力层进行特征提取,第一自注意力层进行特征提取的步骤可以参考步骤1-8,将第一自注意力层输出的第二特征图输入到第二卷积模块进行特征提取,将第一自注意力层的提取结果输入到第二卷积模块、第三卷积模块、第四卷积模块进行特征提取得到输出特征向量,将输出特征向量输入到分类器进行分类,得到未标注图像对应的分类结果。
利用分类结果和标注向量计算交叉熵损失函数,利用交叉熵损失函数对卷积神经网络进行反向传播,计算对第一自注意力层的每个参数的导数,利用梯度下降算法对每个参数的导数进行梯度下降,以降低交叉熵损失函数的值,进而调整第一自注意力层的参数,将最小的交叉熵损失函数的值对应的第一自注意力层的参数最为最终的参数,完成对第一自注意力层的训练。
在训练完毕第一自注意力层后,控制卷积神经网络中各卷积模块的参数和第一自注意力层的参数不变,将未标注图像输入到卷积神经网络中卷积层、第一卷积模块、第一自注意力层、第二卷积模块进行特征提取,得到第二卷积模块输出的第一特征图,将该第一特征图输入到第二自注意力层进行特征提取,第二自注意力层进行特征提取的步骤可以参考步骤1-8,将第二自注意力层输出的第二特征图输入到第四卷积模块进行特征提取,得到输出特征向量,将输出特征向量输入到分类器进行分类,得到未标注图像对应的分类结果。
利用分类结果和标签向量计算交叉熵损失函数,利用交叉熵损失函数对卷积神经网络进行反向传播,计算对第二自注意力层的每个参数的导数,利用梯度下降算法对每个参数的导数进行梯度下降,以降低交叉熵损失函数的值,进而调整第二自注意力层的参数,将最小的交叉熵损失函数的值对应的第二自注意力层的参数最为最终的参数,完成对第二自注意力层的训练。
参考第一自注意力层和第二自注意力层的训练过程,训练第三自注意力层和第四自注意力层,直到完成对所有的自注意力层的训练。
在完成对所有自注意力层的训练后,将未标注图像输入到卷积神经网络对整个卷积神经网络进行训练,调整卷积神经网络中各卷积模块的参数、第一自注意力层、第二自注意力层、第三自注意力层和第四自注意力层的参数,最终得到完成训练的卷积神经网络。
针对上述应用场景一、应用场景二、应用场景三应当注意,上述三个场景中的第一特征图是对卷积模块输出结果的统称,不同的卷积模块输出的第一特征图的内容是不同的,不同的自注意力层输出的第二特征图的内容也不同。
在得到完成训练的卷积神经网络后,应用不包含分类器的卷积神经网络进行特征提取时,可以将卷积神经网络提取的特征向量输入到预设的分类器进行分类或图像分割,得到待处理图像对应的分类结果,或者利用卷积神经网络提取的特征向量进行行人重识别。
参考图5,在对待处理图像进行分类或图像分割时,还包括:
S501,将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
S502,基于所述分类结果,确定所述待处理图像的分类。
这里,分类结果一般为N维特征向量(N为正整数),特征向量的每一维度为预设分类,该预设分类为分类器中预先设置的,特征向量中特征值越大,表征待处理图像属于当前预设分类的概率越大。
在具体实施中,将待处理图像对应的特征向量输入到分类器中,得到分类结果,也就是,每个预设分类对应的概率,将表征最大值的概率对应的预设分类作为待处理图像的分类,或者,将大于设定概率阈值对应的预设分类对应的图像区域作为待处理图像的分割图像。
例如,针对对图像进行分类情况,待处理图像为电脑图像(图像中仅包括电脑),将电脑图像输入到应用场景一训练的卷积神经网络中进行特征提取,得到电脑图像对应的特征向量,将电脑图像对应的特征向量输入到分类器中,得到电脑图像对应的分类结果,若分类器中预先设置有20个预设类别,每个预设类别为分类结果中的维度,则电脑图像对应的分类结果为{0.2,0.3,0.5,0.8,……0.9},预设类别为电脑的第十个维度对应的概率最大,则说明电脑图像的类别为第十个预设类别,也就是,电脑。
又如,针对对图像进行分割情况,待处理图像为电脑图像,将电脑图像输入到应用场景二训练的卷积神经网络中进行特征提取,得到电脑图像对应的特征向量,将电脑图像对应的特征向量输入到分类器中,得到电脑图像对应的分割图像,也就是,仅包含电脑的图像,若分类器针对的是20个预设类别,每个预设类别对应一个矩阵,电脑图像对应的预设分类为电脑,电脑分类对应的的矩阵中的值与电脑图像中的像素点的值对应,大于设定概率阈值的值对应的像素点组成仅包含电脑的图像。
参考图6,在利用卷积神经网络提取的特征向量进行行人重识别,还包括一下步骤:
S601,获取目标图像的特征向量;
S602,基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度。
S603,根据所述相似度,输出针对所述待处理图像的提示信息。
这里,目标图像可以是从摄像设备采集的视频中提取的图像,摄像设备可以为小区、商场等的摄像设备,相似度越大,表示目标图像包含的内容与待处理图像中包含的内容越相近;提示信息中携带有待处理图像的位置信息,如,待处理图像为摄像设备拍摄的视频中的图像时,位置信息为待处理图像在相应视频中的时间位置以及获取相应视频的摄像设备的编号。
在具体实施中,将目标图像输入到卷积神经网络进行特行提取得到目标图像的特征向量,将多个待处理图像输入到卷积神经网络进行特征提取得到每个待处理图像的特征向量,针对每个待处理图像,将该待处理图像的特征向量和目标图像的特征向量输入到欧式距离计算公式,计算该待处理图像和目标图像之间的距离,将小于设定距离阈值对应的距离对应的待处理图像确定为目标图像的相似图像,在将待处理图像确定为目标图像的相似图像后,输出该待处理图像的携带有该待处理图像在相应视频中的位置信息的提示信息。其中,距离越近,表示待处理图像与目标图像之间的相似度越高,欧式距离计算公式在现有技术中已有详细的介绍,此处不再进行过多说明。
例如,目标图像为相关部门提供的嫌疑人图像,待处理图像为从商场中的监控设备拍摄的视频中提取的多个提取图像,每个提取图像在视频的位置(如,时间点)为已知的,将嫌疑人图像和多个提取图像分别输入到应用场景三训练的卷积神经网络进行特征提取,得到嫌疑人图像的特征向量和每个提取图像的特征向量,分别计算嫌疑人图像与各提取图像之间的欧式距离,若嫌疑人与提取图像A和B之间的距离小于设定距离阈值,则确定提取图像A和B为嫌疑人图像的相似图像,其中,提取图像A位于2018年10月15日1号监控设备拍摄的视频T1中的10点50分的位置,提取图像B位于2018年10月16日2号监控设备拍摄的视频T2中的18点50分的位置,将图像A在视频T1中的时间信息和采集视频T1的摄像设备的编号和图像B在视频T2中的时间信息以及采集视频T2的摄像设备的编号携带在提示信息中,这样,相关部门可以直接调取商场中相应编号监控设备中的视频,直接根据提取图像在相应视频的相应位置调取视频即可,大大减少了监管部分工作人员从大量视频中识别嫌疑人的时间,提高了识别嫌疑人图像的效率。
本申请实施例提供了一种特征提取装置70,如图7所示,该装置包括:
获取模块71,用于获取待处理图像;
提取模块72,用于将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量;其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;
输出模块73,用于输出所述待处理图像对应的特征向量。
在一种实施方式中,上述卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
在一种实施方式中,卷积神经网络中的特定卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的每个卷积模块均包括一个自注意力层。
在一种实施方式中,所述卷积神经网络还包括分类器,该装置还包括:分类模块74,所述分类模块74用于:
将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
基于所述分类结果,确定所述待处理图像的分类。
在一种实施方式中,该装置还包括计算模块75,所述计算模块75用于:
获取目标图像的特征向量;
基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度;
根据所述相似度,输出针对所述待处理图像的提示信息。
在一种实施方式中,该装置还包括:训练模块76,所述训练模块76根据以下步骤训练所述卷积神经网络:
获取训练图像;
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积模块中的自注意力层进行训练。
在一种实施方式中,所述训练模块76具体用于:
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述当前卷积模块中的自注意力层进行训练;
在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
在一种实施方式中,所述训练模块76还用于:
基于所述训练图像对所述卷积神经网络中的所述至少一个卷积模块和每个所述卷积模块包括的自注意力层进行训练。
在一种实施方式中,所述提取模块72具体用于:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量;
S6:基于所述h个第四特征向量,输出第二特征图。
其中,不同次执行S2时,三个所述全连接层的参数均不相同。
本申请实施例还提供了一种电子设备800,电子设备800可以是通用计算机或特殊用途的计算机,两者都可以用于实现本申请的特征提取方法。本申请尽管仅示出了一个计算机,但是为了方便起见,可以在多个类似平台上以分布式方式实现本申请描述的功能,以均衡处理负载。
如图8所示,电子设备800可以包括连接到网络的网络端口801、用于执行程序指令的一个或多个处理器802、通信总线803、和不同形式的存储介质804,例如,磁盘、ROM、或RAM,或其任意组合。示例性地,计算机平台还可以包括存储在ROM、RAM、或其他类型的非暂时性存储介质、或其任意组合中的程序指令。根据这些程序指令可以实现本申请的方法。电子设备800还包括计算机与其他输入输出设备(例如键盘、显示屏)之间的输入/输出(Input/Output,I/O)接口805。
为了便于说明,在电子设备800中仅描述了一个处理器。然而,应当注意,本申请中的电子设备800还可以包括多个处理器,因此本申请中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。例如,若电子设备800的处理器执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同的处理器共同执行或者在一个处理器中单独执行。例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一处理器和第二处理器共同执行步骤A和B。
下面以一个处理器为例,处理器802执行存储介质804中存储的如下程序指令:
获取待处理图像;
将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量;其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;
输出所述待处理图像对应的特征向量。
上述卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
上述卷积神经网络中的特定卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的每个卷积模块均包括一个自注意力层。
在一种实施方式中,所述卷积神经网络还包括分类器,处理器802执行的程序指令在所述输出所述待处理图像对应的特征向量后,还包括:
将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
基于所述分类结果,确定所述待处理图像的分类。
在一种实施方式中,处理器802执行的程序指令在所述输出所述待处理图像对应的特征向量后,还包括:
获取目标图像的特征向量;
基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度;
根据所述相似度,输出针对所述待处理图像的提示信息。
在一种实施方式中,处理器802执行的程序指令根据以下步骤训练所述卷积神经网络:
获取训练图像;
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积模块中的自注意力层进行训练。
在一种实施方式中,处理器802执行的程序指令控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积神经网络中的自注意力层进行训练进一步包括:
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述当前卷积模块中的自注意力层进行训练;
在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
在一种实施方式中,处理器802执行的程序指令在训练完所述卷积神经网络中的所有卷积模块的自注意力层之后,还包括:
基于所述训练图像对所述卷积神经网络中的所有卷积模块和所有自注意力层进行训练。
在一种实施方式中,处理器802执行的程序指令将所述待处理图像输入到卷积神经网络进行特征提取,包括:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量;
S6:基于所述h个第四特征向量,输出第二特征图。
其中,不同次执行S2时,三个所述全连接层的参数均不相同。对应于图1至图7中的特征提取方法,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述特征提取方法的步骤。
具体地,该计算机可读存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述特征提取方法,从而解决现有技术中提取的特征准确度低的问题。
基于相同的技术构思,本申请实施例还提供了一种计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行上述特征提取方法的步骤,具体实现可参见上述方法实施例,在此不再赘述。
本申请实施例提供的特征提取方法、装置、电子设备及计算机可读存储介质,通过获取待处理图像,将待处理图像输入到卷积神经网络进行特征提取,卷积神经网络中的至少一个卷积模块包括一个自注意力层,得到待处理图像对应的特征向量,这样,通过包含自注意力层的卷积神经网络提取的特征可以考虑全局信息,提高提取的特征向量的准确度。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考方法实施例中的对应过程,本申请中不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (22)
1.一种特征提取方法,其特征在于,该方法包括:
获取待处理图像;
将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量,其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;
输出所述待处理图像对应的特征向量。
2.如权利要求1所述的方法,其特征在于,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
3.如权利要求2所述的方法,其特征在于,所述卷积神经网络中的特定卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的每个卷积模块均包括一个自注意力层。
4.如权利要求1-3中任一项所述的方法,其特征在于,所述卷积神经网络还包括分类器,
在所述输出所述待处理图像对应的特征向量后,还包括:
将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
基于所述分类结果,确定所述待处理图像的分类。
5.如权利要求1-3中任一项所述的方法,其特征在于,在所述输出所述待处理图像对应的特征向量后,还包括:
获取目标图像的特征向量;
基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度;
根据所述相似度,输出针对所述待处理图像的提示信息。
6.如权利要求1所述的方法,其特征在于,根据以下步骤训练所述卷积神经网络:
获取训练图像;
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积模块中的自注意力层进行训练。
7.如权利要求6所述的方法,其特征在于,控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积神经网络中的自注意力层进行训练进一步包括:
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对当前卷积模块中的自注意力层进行训练;
在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
8.如权利要求7所述的方法,其特征在于,在训练完所述卷积神经网络中的所有卷积模块的自注意力层之后,还包括:
基于所述训练图像对所述卷积神经网络中的所有卷积模块和所有自注意力层进行训练。
9.如权利要求1所述的方法,其特征在于,所述将所述待处理图像输入到卷积神经网络进行特征提取,包括:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量;
S6:基于所述h个第四特征向量,输出第二特征图。
10.如权利要求9所述的方法,其特征在于,不同次执行S2时,三个所述全连接层的参数均不相同。
11.一种特征提取装置,其特征在于,该装置包括:
获取模块,用于获取待处理图像;
提取模块,用于将所述待处理图像输入到卷积神经网络进行特征提取,得到所述待处理图像对应的特征向量;其中,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层;
输出模块,用于输出所述待处理图像对应的特征向量。
12.如权利要求11所述的装置,其特征在于,所述卷积神经网络中的至少一个卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的特定卷积模块包括一个自注意力层。
13.如权利要求12所述的装置,其特征在于,所述卷积神经网络中的特定卷积模块包括一个自注意力层进一步包括:所述卷积神经网络中的每个卷积模块均包括一个自注意力层。
14.如权利要求11-13中任一项所述的装置,其特征在于,所述卷积神经网络还包括分类器,
该装置还包括:分类模块,所述分类模块用于:
将所述待处理图像对应的特征向量输入到所述分类器,得到分类结果;
基于所述分类结果,确定所述待处理图像的分类。
15.如权利要求11-13中任一项所述的装置,其特征在于,该装置还包括计算模块,所述计算模块用于:
获取目标图像的特征向量;
基于所述目标图像的特征向量和所述待处理图像的特征向量,确定所述目标图像与所述待处理图像之间的相似度;
根据所述相似度,输出针对所述待处理图像的提示信息。
16.如权利要求11所述的装置,其特征在于,该装置还包括:训练模块,所述训练模块根据以下步骤训练所述卷积神经网络:
获取训练图像;
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述卷积模块中的自注意力层进行训练。
17.如权利要求16所述的装置,其特征在于,所述训练模块具体用于:
控制所述卷积神经网络中各所述卷积模块的参数不变,基于所述训练图像对所述当前卷积模块中的自注意力层进行训练;
在训练完毕所述当前卷积模块的自注意力层后,控制所述卷积神经网络中各卷积模块的参数和当前卷积模块的自注意力层的参数不变,基于所述训练图像对下一个卷积模块的自注意力层进行训练,直到训练完所述卷积神经网络中的所有卷积模块的自注意力层为止。
18.如权利要求17所述的装置,其特征在于,所述训练模块还用于:
基于所述训练图像对所述卷积神经网络中的所有卷积模块和所有自注意力层进行训练。
19.如权利要求11所述的装置,其特征在于,所述提取模块具体用于:
所述自注意力层对相应的卷积模块处理后的第一特征图执行如下操作:
S1:对所述第一特征图进行特征重排处理,得到所述第一特征图的第一特征向量;
S2:将所述第一特征向量分别输入到三个全连接层,得到与每个全连接层输出的第二特征向量;
S3:对三个所述第二特征向量中的两个特定第二特征向量进行内积运算,得到第三特征向量;
S4:对所述第三特征向量和三个所述第二特征向量中的非特定第二特征向量进行内积运算,得到所述第一特征图的第四特征向量;
S5:重复执行h次S2到S4,输出h个第四特征向量;
S6:基于所述h个第四特征向量,输出第二特征图。
20.如权利要求19所述的装置,其特征在于,不同次执行S2时,三个所述全连接层的参数均不相同。
21.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如权利要求1至10任一项所述的特征提取方法的步骤。
22.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至10任一项所述的特征提取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910138847.9A CN111612024B (zh) | 2019-02-25 | 2019-02-25 | 特征提取方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910138847.9A CN111612024B (zh) | 2019-02-25 | 2019-02-25 | 特征提取方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111612024A true CN111612024A (zh) | 2020-09-01 |
CN111612024B CN111612024B (zh) | 2023-12-08 |
Family
ID=72200088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910138847.9A Active CN111612024B (zh) | 2019-02-25 | 2019-02-25 | 特征提取方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111612024B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112614175A (zh) * | 2020-12-21 | 2021-04-06 | 苏州拓驰信息技术有限公司 | 基于特征去相关的用于封孔剂注射器的注射参数确定方法 |
CN112734013A (zh) * | 2021-01-07 | 2021-04-30 | 北京迈格威科技有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN113452912A (zh) * | 2021-06-25 | 2021-09-28 | 山东新一代信息产业技术研究院有限公司 | 巡视机器人的云台摄像机的控制方法、装置、设备及介质 |
CN114120364A (zh) * | 2021-11-23 | 2022-03-01 | 北京字节跳动网络技术有限公司 | 图像处理方法、图像分类方法、装置、介质及电子设备 |
WO2022072938A1 (en) * | 2020-10-04 | 2022-04-07 | Aizip, Inc. | Artificial neural network architectures for resource-constrained applications |
CN114372946A (zh) * | 2021-12-31 | 2022-04-19 | 北京欧珀通信有限公司 | 图像处理方法及装置、存储介质及电子设备 |
CN115952830A (zh) * | 2022-05-18 | 2023-04-11 | 北京字跳网络技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170101723A (ko) * | 2016-02-29 | 2017-09-06 | 한국항공대학교산학협력단 | 항공 영상 분류 장치 및 그 방법 |
CN108334499A (zh) * | 2018-02-08 | 2018-07-27 | 海南云江科技有限公司 | 一种文本标签标注设备、方法和计算设备 |
CN108491817A (zh) * | 2018-03-30 | 2018-09-04 | 国信优易数据有限公司 | 一种事件检测模型训练方法、装置以及事件检测方法 |
CN109271878A (zh) * | 2018-08-24 | 2019-01-25 | 北京地平线机器人技术研发有限公司 | 图像识别方法、图像识别装置和电子设备 |
-
2019
- 2019-02-25 CN CN201910138847.9A patent/CN111612024B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170101723A (ko) * | 2016-02-29 | 2017-09-06 | 한국항공대학교산학협력단 | 항공 영상 분류 장치 및 그 방법 |
CN108334499A (zh) * | 2018-02-08 | 2018-07-27 | 海南云江科技有限公司 | 一种文本标签标注设备、方法和计算设备 |
CN108491817A (zh) * | 2018-03-30 | 2018-09-04 | 国信优易数据有限公司 | 一种事件检测模型训练方法、装置以及事件检测方法 |
CN109271878A (zh) * | 2018-08-24 | 2019-01-25 | 北京地平线机器人技术研发有限公司 | 图像识别方法、图像识别装置和电子设备 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022072938A1 (en) * | 2020-10-04 | 2022-04-07 | Aizip, Inc. | Artificial neural network architectures for resource-constrained applications |
CN112614175A (zh) * | 2020-12-21 | 2021-04-06 | 苏州拓驰信息技术有限公司 | 基于特征去相关的用于封孔剂注射器的注射参数确定方法 |
CN112734013A (zh) * | 2021-01-07 | 2021-04-30 | 北京迈格威科技有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN113452912A (zh) * | 2021-06-25 | 2021-09-28 | 山东新一代信息产业技术研究院有限公司 | 巡视机器人的云台摄像机的控制方法、装置、设备及介质 |
CN113452912B (zh) * | 2021-06-25 | 2022-12-27 | 山东新一代信息产业技术研究院有限公司 | 巡视机器人的云台摄像机的控制方法、装置、设备及介质 |
CN114120364A (zh) * | 2021-11-23 | 2022-03-01 | 北京字节跳动网络技术有限公司 | 图像处理方法、图像分类方法、装置、介质及电子设备 |
CN114372946A (zh) * | 2021-12-31 | 2022-04-19 | 北京欧珀通信有限公司 | 图像处理方法及装置、存储介质及电子设备 |
CN115952830A (zh) * | 2022-05-18 | 2023-04-11 | 北京字跳网络技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN115952830B (zh) * | 2022-05-18 | 2024-04-30 | 北京字跳网络技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111612024B (zh) | 2023-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111612024B (zh) | 特征提取方法、装置、电子设备及计算机可读存储介质 | |
CN108596277B (zh) | 一种车辆身份识别方法、装置和存储介质 | |
CN106469299B (zh) | 一种车辆搜索方法及装置 | |
CN108470320B (zh) | 一种基于cnn的图像风格化方法及系统 | |
CN112446398B (zh) | 图像分类方法以及装置 | |
KR102554724B1 (ko) | 이미지 내 객체를 식별하기 위한 방법 및 상기 방법을 실행하기 위한 모바일 디바이스 | |
CN110781350B (zh) | 一种面向全画面监控场景的行人检索方法及系统 | |
CN110532970B (zh) | 人脸2d图像的年龄性别属性分析方法、系统、设备和介质 | |
CN113065558A (zh) | 一种结合注意力机制的轻量级小目标检测方法 | |
US20210264144A1 (en) | Human pose analysis system and method | |
CN111476806B (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN111523410A (zh) | 一种基于注意力机制的视频显著性目标检测方法 | |
CN113361495A (zh) | 人脸图像相似度的计算方法、装置、设备及存储介质 | |
CN109034035A (zh) | 基于显著性检测和特征融合的行人重识别方法 | |
CN107506792B (zh) | 一种半监督的显著对象检测方法 | |
CN110969171A (zh) | 基于改进卷积神经网络的图像分类模型、方法及应用 | |
Fang et al. | Aerial-BiSeNet: A real-time semantic segmentation network for high resolution aerial imagery | |
CN110827312A (zh) | 一种基于协同视觉注意力神经网络的学习方法 | |
CN109255382A (zh) | 用于图片匹配定位的神经网络系统,方法及装置 | |
CN113505797A (zh) | 模型训练方法、装置、计算机设备和存储介质 | |
CN115115552B (zh) | 图像矫正模型训练及图像矫正方法、装置和计算机设备 | |
CN111444957B (zh) | 图像数据处理方法、装置、计算机设备和存储介质 | |
CN110826534B (zh) | 一种基于局部主成分分析的人脸关键点检测方法及系统 | |
CN114492634A (zh) | 一种细粒度装备图片分类识别方法及系统 | |
CN114764870A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |