CN116524282B - 一种基于特征向量的离散相似度匹配分类方法 - Google Patents
一种基于特征向量的离散相似度匹配分类方法 Download PDFInfo
- Publication number
- CN116524282B CN116524282B CN202310756831.0A CN202310756831A CN116524282B CN 116524282 B CN116524282 B CN 116524282B CN 202310756831 A CN202310756831 A CN 202310756831A CN 116524282 B CN116524282 B CN 116524282B
- Authority
- CN
- China
- Prior art keywords
- output
- matrix
- feature vector
- batch
- size
- 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.)
- Active
Links
- 239000013598 vector Substances 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000012549 training Methods 0.000 claims abstract description 36
- 230000008569 process Effects 0.000 claims abstract description 19
- 238000003062 neural network model Methods 0.000 claims abstract description 9
- 238000013528 artificial neural network Methods 0.000 claims abstract description 8
- 239000011159 matrix material Substances 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000007423 decrease Effects 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 7
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000013527 convolutional neural network Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 17
- 238000010276 construction Methods 0.000 description 5
- 238000012512 characterization method Methods 0.000 description 4
- 241000722921 Tulipa gesneriana Species 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 241000723353 Chrysanthemum Species 0.000 description 1
- 235000005633 Chrysanthemum balsamita Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
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/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/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于特征向量的离散相似度匹配分类方法,包括以下步骤:双阶段神经网络训练:阶段一,载入神经网络模型,训练数个周期,不用训至收敛,记该模型为M,删除M的全连接层,记为M’;阶段二,继续训练,经过阶段二的训练之后,利用M’遍历数据集中所有样本的输出特征向量V,构建代表各类别的显著表达位置集合;并以样本的显著表达位置序列作为分类依据,与各类别的统计显著位置集合做匹配分数比较,进行分类推理。本发明采用上述基于特征向量的离散相似度匹配分类方法,使得网络模型在推理过程中无需全连接层实现分类目的,可在不降低卷积神经网络模型准确度的情况下提升推理速度。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种基于特征向量的离散相似度匹配分类方法。
背景技术
卷积神经网络被广泛应用于图像分类任务中,通常由卷积层、池化层和全连接层组成。其中,卷积层负责使用卷积核通过反向传播算法从输入图像中学习特征,且卷积核在训练过程的每次迭代中都会更新。池化层用于特征图的下采样,从而降低特征图的空间维度,减少处理量,使网络更高效。全连接层用于执行分类任务。在深度学习图像分类领域,一般都使用全连接层作为分类器,因为其构造简单、方便,但是这也带来了极大的冗余数据和参数量。
然而,目前的全连接层具有以下缺点:
1、可解释性有限,由于全连接层中的每个神经元都从前一层中所有的神经元接收信息,而不管它们的位置,故使得很难理解网络使用输入图像中的哪些特征进行分类。
2、过拟合,由于训练过程中涉及大量的参数,当神经网络对训练数据学习得太好,无法泛化到新的数据时,就会发生过拟合。
3、有限的可伸缩性,当输入图像的大小或要分类的类别数量增加时,全连接层的计算成本很高,而且占用大量的内存,从而限制了神经网络的可伸缩性,并使其难以用于大规模图像分类任务。
发明内容
为解决上述问题,本发明提供一种基于特征向量的离散相似度匹配分类方法,使得网络模型在推理过程中无需全连接层实现分类目的,可在不降低卷积神经网络模型准确度的情况下提升推理速度,且能提高卷积神经网络的推理速度、准确率和鲁棒性,并具备因其依据图形特征作推理识别分类所内含的可解释性。
为实现上述目的,本发明提供了一种基于特征向量的离散相似度匹配分类方法,包括以下步骤:
S1、双阶段神经网络训练:
阶段一,载入神经网络模型,神经网络模型为Resnet34,使用交叉熵损失函数基于标准分类任务训练数个周期,不用训至收敛,记该模型为M,此时仅保存M中全连接层在行维度上归一化处理过后的权重矩阵的绝对值W供阶段二使用,删除M的全连接层,同时对M增加一步对输出特征向量做归一化处理的操作,记为M’;
阶段二,继续训练,增加M’在不同类别间的输出特征向量的差异性:对于每一个样本的标签为Li的输出特征向量Xi,让输出特征向量Xi靠近权重矩阵W中属于Li类别的一维权重张量;
S2、经过阶段二的训练之后,利用M’遍历数据集中所有样本的输出特征向量,构建代表各类别的显著表达位置集合,其中输出特征向量的长度等于全连接层输入张量的长度;并以样本的显著表达位置序列作为分类依据(位置序列作为整型数据,可以减少存储空间和计算量),与各类别的统计显著位置集合做匹配分数比较,进行分类推理;
样本的显著表达位置序列来自于样本在M’上的输出特征向量。
步骤S2具体包括以下步骤:
S21、获得降序索引:
把特征向量V按其元素值从大到小的顺序作排序称为sort_V,而sort_V各个元素在特征向量V上的索引记为sort_i,此时引进超参数N’,其表示需设置的显著集合长度,根据给定N’的大小保留sort_V的前N’个元素及其对应的索引序号,分别记为sort_V’与sort_i’,则sort_V’和sort_i’的长度都为N’;
S22、为每一个类别创建一个与特征向量长度相等的一维张量,均初始化为0,并将所有类别的该一维张量拼接组成Arrays矩阵,矩阵形状为n×N,其中n为类别数,N为M’输出的特征向量V的长度;
S23、更改网络模型M’的结构,将batch_size数量的样本输入M’后,输出batch_size × N’的二维张量,称为outputs;
S24、对于每个batch_size输出的outputs,outputs的第i个整型一维张量表示了batch_size内第i个样本的显著性逐渐下降的前N’个显著位置序列,长度为N’,该序列的第一个元素代表的位置显著性最大;
S25、在经过多个batch_size后,M’在数据集上遍历完毕,此时Arrays[n×N]矩阵更新完成,其代表n个类别在特征向量维度上的显著性分数统计;对该矩阵作在行维度上的降序操作,同样,取其前N’列的索引序号,表示各类别的前N’个显著位置,记截断后的矩阵为Sets,其形状为n×N’;
S26、定义相似度比对函数,并确定相似度比对函数的两个输入:其中一个为步骤S24所述的outputs,另一个为步骤S25所述的Sets,从而利用outputs与代表各类显著通道位置的Sets作相似度比较以输出最匹配的类别;
S27、推理,具体包括以下步骤:
S271、载入M’的无全连接层模型权重,并将(样本,Sets)输入到M’;
S272、M’的前向传播过程在最后发生改变,样本进入backbone后被展平为batch_size个特征向量;
S273、将batch_size个特征向量降序排列并取出前N’个的索引位置,作为步骤S26中的outputs;
S274、输出该batch_size样本在所有标签上的相似度评分;
S275、经过max函数,得到预测标签,完成推理。
优选的,在步骤S1所述的阶段二中,由于在全连接层分类中,特征向量x×W[Li]等于模型判定x属于第i个类别的概率分数,W[Li]为第i个类别的权重张量,并根据公式:x·w=|x|×|w|×cosθ,可知因为输出特征向量以及w的二范数都等于一,所以将两向量的余弦相似度作为将x判别为第i个类别的直接标准,只需设计损失函数使得特征向量靠近其对应类别的w即可,损失函数的具体公式为:
(1)
式中,n表示类别个数。
优选的,步骤S23具体包括以下步骤:
更改M’在删除全连接层后的前向传播过程最后一步:将特征向量降序排列并截取前N’个元素,并取出其对应索引序号作为模型前向传播的最后输出。
优选的,步骤S23中所述的outputs输出的是长度为N’的int16整型张量。
优选的,在步骤S24中,对于所属标签L(L=0,1,……,n-1)的一维序列,其各元素Xi(i=0,1,……,N-1)都会增加显著分数到向量Arrays[L]中第Xi所对应的位置上,且显著分数随i的增大而等比递减,显著分数的初始值为1,递减公比为q。
优选的,步骤S26具体包括以下步骤:
S261、增加outputs[batch_size × N’]的两个维度1与3,得到[batch_size × 1× N’ × 1];
S262、增加Sets[n,N’]的两个维度0与2,得到Sets[1,n,1,N’];
S263、为了用outputs与sets的每一个张量作相同元素个数的count计数,且利用上cuda的张量计算机制,采用矩阵相除操作,得到由0,1值组成的四维张量Matrix(outputs行数,Sets行数,outputs列数,Sets列数):
Matrix = ~ ( (outputs+1) / (Sets+1) -1 ).bool() )
S264、返回Matrix在维度2、3上的求和结果,得到batch_size下每一个样本在n个类别上的相似度评分。
本发明具有以下有益效果:
1、通过对卷积神经网络中最后的全连接层进行丢弃处理,利用特征向量中的显著表征位置作为分类依据,以直观、快速的方式与各类别的代理特征向量做匹配分数比较,以达到提高推理速度的作用,进一步减少模型的参数量和冗余信息。
2、仅依赖于神经网络主干部分的输出特征向量,可适用于大多数模型和方法,且避免了模型过拟合情况的出现。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明的一种基于特征向量的离散相似度匹配分类方法的流程框图;
图2为本发明的实验例的对比图。
具体实施方式
为了使本发明实施例公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明实施例,并不用于限定本发明实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。
需要说明的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
如图1所示,一种基于特征向量的离散相似度匹配分类方法,包括以下步骤:
S1、双阶段神经网络训练(模型的结构会依据训练阶段发生一次变化,后期结构依赖于前期结构,同时可丢弃前期结构的冗余部分):
阶段一,载入神经网络模型,使用交叉熵损失函数基于标准分类任务训练数个周期,不用训至收敛,记该模型为M,此时仅保存M中全连接层在行维度上归一化处理过后的权重矩阵的绝对值W供阶段二使用,删除M的全连接层,同时对M增加一步对输出特征向量做归一化处理的操作,记为M’;此时认定M’具有在训练数据集上完备表现的能力。即在向M’输入图像X后,能生成与X对应的图像特征V,V能够较完整地表达X;
阶段二,继续训练,增加M’在不同类别间的输出特征向量的差异性:对于每一个样本的标签为Li的输出特征向量Xi,让输出特征向量Xi靠近权重矩阵W中属于Li类别的一维权重张量;
优选的,在步骤S1所述的阶段二中,由于在全连接层分类中,特征向量x×W[Li]等于模型判定x属于第i个类别的概率分数,W[Li]为第i个类别的权重张量,并根据公式:x·w=|x|×|w|×cosθ,可知因为输出特征向量以及w的二范数都等于一,所以将两向量的余弦相似度作为将x判别为第i个类别的直接标准,只需设计损失函数使得特征向量靠近其对应类别的w即可,损失函数的具体公式为:
(1)
式中,n表示类别个数。
S2、经过阶段二的训练之后,利用M’遍历数据集中所有样本的输出特征向量,构建代表各类别的显著表达位置集合(该构建过程需要额外的时间开销但构建完成后可反复使用),其中输出特征向量的长度等于全连接层输入张量的长度;并以样本的显著表达位置序列作为分类依据(位置序列作为整型数据,可以减少存储空间和计算量),与各类别的统计显著位置集合做匹配分数比较,进行分类推理;
样本的显著表达位置序列来自于样本在M’上的输出特征向量。
优选的,步骤S2具体包括以下步骤:
S21、获得降序索引:
把特征向量V按其元素值从大到小的顺序作排序称为sort_V,而sort_V各个元素在特征向量V上的索引记为sort_i,此时引进超参数N’,其表示需设置的显著集合长度,根据给定N’的大小保留sort_V的前N’个元素及其对应的索引序号,分别记为sort_V’与sort_i’,则sort_V’和sort_i’的长度都为N’;
S22、为每一个类别创建一个与特征向量长度相等的一维张量,均初始化为0,并将所有类别的该一维张量拼接组成Arrays矩阵,矩阵形状为n×N,其中n为类别数,N为M’输出的特征向量V的长度;
S23、更改网络模型M’的结构,将batch_size数量的样本输入M’后,输出batch_size × N’的二维张量,称为outputs;
优选的,步骤S23具体包括以下步骤:
更改M’在删除全连接层后的前向传播过程最后一步:将特征向量降序排列并截取前N’个元素,并取出其对应索引序号作为模型前向传播的最后输出。优选的,步骤S23中所述的outputs输出的是长度为N’的int16整型张量。因为M’已在训练集上收敛,所以对于训练集数据都具备提取图像规律的能力,此时可认为M’所输出的outputs对于输入的批量样本具有相应表征意义。
模型的传统前向传播过程在此步输出为长度为2048(假设采用resNet50)的float32浮点型张量。可知,采用本发明所述方法极大地降低了模型参数量和推理计算量。
S24、对于每个batch_size输出的outputs,outputs的第i个整型一维张量表示了batch_size内第i个样本的显著性逐渐下降的前N’个显著位置序列,长度为N’,该序列的第一个元素代表的位置显著性最大;
优选的,在步骤S24中,对于所属标签L(L=0,1,……,n-1)的一维序列,其各元素Xi(i=0,1,……,N-1)都会增加显著分数到Arrays[L]中第Xi所对应的位置上,且显著分数随i的增大而等比递减,显著分数的初始值为1,递减公比为q。
S25、在经过多个batch_size后,M’在数据集上遍历完毕,此时Arrays[n×N]矩阵更新完成,其代表n个类别在特征向量维度上的显著性分数统计;对该矩阵作在行维度上的降序操作,同样,取其前N’列的索引序号,表示各类别的前N’个显著位置,记截断后的矩阵为Sets,其形状为n×N’;
S26、定义相似度比对函数,并确定相似度比对函数的两个输入:其中一个为步骤S24所述的outputs,另一个为步骤S25所述的Sets,从而利用outputs与代表各类显著通道位置的Sets作相似度比较以输出最匹配的类别;
优选的,步骤S26具体包括以下步骤:
S261、增加outputs[batch_size × N’]的两个维度1与3,得到[batch_size × 1× N’ × 1];
S262、增加Sets[n,N’]的两个维度0与2,得到Sets[1,n,1,N’];
S263、为了用outputs与sets的每一个张量作相同元素个数的count计数,且利用上cuda的张量计算机制,采用矩阵相除操作,得到由0,1值组成的四维张量Matrix(outputs行数,Sets行数,outputs列数,Sets列数):
Matrix = ~ ( (outputs+1) / (Sets+1) -1 ).bool() )
S264、返回Matrix在维度2、3上的求和结果,得到batch_size下每一个样本在n个类别上的相似度评分。
S27、推理。
优选的,步骤S27具体包括以下步骤:
S271、载入M’的无全连接层模型权重,并将(样本,Sets)输入到M’;
S272、M’的前向传播过程在最后发生改变,样本进入backbone后被展平为batch_size个特征向量;
S273、将batch_size个特征向量降序排列并取出前N’个的索引位置,作为步骤S26中的outputs;
S274、输出该batch_size样本在所有标签上的相似度评分;
S275、经过max函数,得到预测标签,完成推理。
优选的,步骤S1所述的神经网络模型为Resnet34。
实施例1:
1、双阶段神经网络训练:
阶段一,载入神经网络模型Resnet34,其特征向量长度为512(全连接层输入张量的长度),运行在ACCV(亚洲计算机视觉会议)数据集(100个类,细粒度图像,即ACCV数据集是ACCV2022国际细粒度图像分析挑战赛的数据集,原数据集是1000类,本实施例随机取了其中的100个类别)之上,待其训练30个周期达到模型,不用训至收敛,记该模型为M,此时仅保存M中全连接层在行维度上归一化处理过后的权重矩阵的绝对值W供阶段二使用,删除M的全连接层,同时对M增加一步对输出特征向量做归一化处理的操作,记为M’。即在向该Resnet34输入图像X后,M’能生成与X对应的大小为(1×512)的图像特征,该图像特征能够较完整地表达X。
阶段二,继续训练,增加M’在不同类别间的输出特征向量的差异性:对于每一个样本的标签为Li的输出特征向量Xi,让输出特征向量Xi靠近权重矩阵W中属于Li类别的一维权重张量;
且在阶段二中,由于在全连接层分类中,特征向量x×W[Li]等于模型判定x属于第i个类别的概率分数,W[Li]为第i个类别的权重张量,并根据公式:x·w=|x|×|w|×cosθ,可知因为输出特征向量以及w的二范数都等于一,所以将两向量的余弦相似度作为将x判别为第i个类别的直接标准,只需设计损失函数使得特征向量靠近其对应类别的w即可,损失函数的具体公式为:
(1)
式中,n表示类别个数。
2、经过阶段二的训练之后,利用M’遍历数据集中所有样本的输出特征向量,构建代表各类别的显著表达位置集合(该构建过程需要额外的时间开销但构建完成后可反复使用),其中输出特征向量的长度等于全连接层输入张量的长度;并以样本的显著表达位置序列作为分类依据(位置序列作为整型数据,可以减少存储空间和计算量),与各类别的统计显著位置集合做匹配分数比较,进行分类推理:
(21)把特征向量V按其元素值从大到小的顺序作排序称为sort_V,而sort_V各个元素在特征向量V上的索引记为sort_i,根据给定超参数N’的大小120保留sort_V的前120个元素及其对应索引,分别记为sort_V’与sort_i’,则sort_V’与sort_i’长度都为120,sort_V’的结果导出如下:
;
对应sort_V’的sort_i’结果导出如下:
(22)为每一个类别创建一个与特征向量长度相等的一维张量,均初始化为0,并将所有类别的该一维张量拼接组成Arrays矩阵,矩阵形状为100x512,其中100是类别数,512是M’输出的特征向量V的长度。
(23)更改M’在删除全连接层后的前向传播过程最后一步:将特征向量降序排列并截取前120个元素,并取出其对应索引序号作为模型前向传播的最后输出。优选的,步骤S23中所述的outputs输出的是长度为N’的int16整型张量。因为M’已在训练集上收敛,所以对于训练集数据都具备提取图像规律的能力,此时可认为M’所输出的outputs对于输入的批量样本具有相应表征意义。则对于batch_sizesize=64数量的样本,输入M’后,输出64 x512的二维张量,称为outputs。因为M’已在训练集上收敛,所以对于训练集数据都具备提取图像规律的能力,此时可认为M’所输出的outputs对于输入的批量样本具有相应表征意义。outputs输出的是长度为120的int16整型张量,而模型的传统前向传播过程在此步输出为长度为512的float32浮点型张量。可知,采用本实施例可极大地降低模型参数量和推理计算量。
(24)对于每个batch_size输出的outputs,outputs的第i个整型一维张量表示了batch_size内第i个样本的前120个显著位置,且显著性逐渐下降,即该序列的第一个元素显著性最大。对于所属标签L(L=0,1,……,99)的一维序列,其各元素Xi(i=0,1,……,119)都会增加显著分数到Arrays[L]中第Xi所对应的位置上,且显著分数随i的增大而等比递减,递减公比为0.9。
(25)在经过多个batch_size后,M’在训练集上遍历完毕,此时Arrays[100x512]已更新完成,其代表100个类在特征向量维度512上的显著性分数统计。对该矩阵作截取操作,取其前120列,表示各类别的前N’个显著位置。记截断后的矩阵为Sets,其形状为n×N’,可将其保存在本地,在本方法中与M’一起作协作推理,需注意,M’已没有全连接层。
(26)定义相似度比对函数,该函数会接收两个输入,一个为样本输入模型后的输出outputs(见步骤24),另一个为步骤25中的Sets。目的是让outputs与代表各类显著通道位置的Sets作相似度比较以输出最匹配的类别。具体为:首先让outputs[64 x 120]增加维度1与3,即[64 x 1 x 120 x 1],其次增加Sets[100,120]的两个维度0与2,即Sets[1,100,1,120]。为了用outputs与sets的每一个张量作相同元素个数的count计数,且利用上cuda的张量计算机制,则采用矩阵相除操作,同时保证分母不出现零,在分式上下端都+1,然后整体分式-1,再分式的布尔值再取反,可以得到由0,1值组成的四维张量Matrix(outputs行数,Sets行数,outputs列数,Sets列数),具体计算为:
Matrix = ~ ( (outputs+1) / (Sets+1) -1 ).bool() )
函数返回Matrix在维度2、3上的求和结果,得到batch_size下每一个样本在n个类别上的相似度评分。
(27)推理阶段:载入M’的无全连接层模型权重,将(样本,Sets)输入到M’。如(23)所述,M’的前向传播过程在最后发生改变,样本进入backbone后被展平为batch_size个特征向量,此时这些特征向量降序排列并取出前N’个的索引位置,作为(26)的outputs,最后输出该batch_size样本在所有标签上的相似度评分,类似logits,后续经过max函数得到预测标签,推理完成。
实验例1
如图2所示,在tulip(郁金香)和daisy(雏菊)两种花的各两个样本上将它们的特征向量显著通道位置可视化出来,从对应sort_V’的sort_i’结果导出可以看到不同类别间,特征向量的显著位置差异很大,相反,在同一类别里的不同样本,其特征向量的显著位置差异小很多。
实验例2:
为了比较本方法与传统带全连接层方法在推理速度上的效果提升,使用ResNet34模型在cifar100数据集上分别做了推理时间的对比实验,在本实验中N=2048,而设置的N’=225,两者都是使用ResNet34在cifar100数据集上10000个样本的实验结果,accuracy表示推理分类精度,sum_time_cost表示所有样本的总推理时间,单位为秒,传统带全连接层方法的实验结果如下:
,
此实施例的实验结果如下:
,
从上述结果可以看到,本发明的推理耗时相比传统方法更少。
因此,本发明采用上述基于特征向量的离散相似度匹配分类方法,摒弃了模型的全连接层,只留下特征向量的显著表达位置集合,将高纬度的实值型全连接层推理转变为低纬度的整型集合匹配推理,减少了网络模型参数量和体积。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。
Claims (6)
1.一种基于特征向量的离散相似度匹配分类方法,其特征在于:包括以下步骤:
S1、双阶段神经网络训练:
阶段一,载入神经网络模型,神经网络模型为Resnet34,特征向量长度为512,运行在具有100个类的细粒度图像ACCV数据集之上,待其训练30个周期达到模型,不用训至收敛,记该模型为M,此时仅保存M中全连接层在行维度上归一化处理过后的权重矩阵的绝对值W供阶段二使用,删除M的全连接层,同时对M增加一步对输出特征向量做归一化处理的操作,记为M’;
阶段二,继续训练,增加M’在不同类别间的输出特征向量的差异性:对于每一个样本的标签为Li的输出特征向量Xi,让输出特征向量Xi靠近权重矩阵W中属于Li类别的一维权重张量;
S2、经过阶段二的训练之后,利用M’遍历数据集中所有样本的输出特征向量,构建代表各类别的显著表达位置集合,其中输出特征向量的长度等于全连接层输入张量的长度;并以样本的显著表达位置序列作为分类依据,与各类别的统计显著位置集合做匹配分数比较,进行分类推理;
样本的显著表达位置序列来自于样本在M’上的输出特征向量;
具体包括以下步骤:
S21、获得降序索引:
把特征向量V按其元素值从大到小的顺序作排序称为sort_V,而sort_V各个元素在特征向量V上的索引记为sort_i,此时引进超参数N’,其表示需设置的显著集合长度,根据给定N’的大小保留sort_V的前N’个元素及其对应的索引序号,分别记为sort_V’与sort_i’,则sort_V’和sort_i’的长度都为N’;
S22、为每一个类别创建一个与特征向量长度相等的一维张量,均初始化为0,并将所有类别的该一维张量拼接组成Arrays矩阵,矩阵形状为n×N,其中n为类别数,N为M’输出的特征向量V的长度;
S23、更改网络模型M’的结构,将batch_size数量的样本输入M’后,输出batch_size ×N’的二维张量,称为outputs;
S24、对于每个batch_size输出的outputs,outputs的第i个整型一维张量表示了batch_size内第i个样本的显著性逐渐下降的显著位置序列,长度为N’,该序列的第一个元素代表的位置显著性最大;
S25、在经过多个batch_size后,M’在数据集上遍历完毕,此时Arrays[n×N]矩阵更新完成,其代表n个类别在特征向量维度上的显著性分数统计;对该矩阵作在行维度上的降序操作,同样,取其前N’列的索引序号,表示各类别的前N’个显著位置,记截断后的矩阵为Sets,其形状为n×N’;
S26、定义相似度比对函数,并确定相似度比对函数的两个输入:其中一个为步骤S24所述的outputs,另一个为步骤S25所述的Sets,从而利用outputs与代表各类显著通道位置的Sets作相似度比较以输出最匹配的类别;
S27、推理,具体包括以下步骤:
S271、载入M’的无全连接层模型权重,并将(样本,Sets)输入到M’;
S272、M’的前向传播过程在最后发生改变,样本进入backbone后被展平为batch_size个特征向量;
S273、将batch_size个特征向量降序排列并取出前N’个的索引位置,作为步骤S26中的outputs;
S274、输出该batch_size样本在所有标签上的相似度评分;
S275、经过max函数,得到预测标签,完成推理。
2.根据权利要求1所述的一种基于特征向量的离散相似度匹配分类方法,其特征在于:在步骤S1所述的阶段二中,由于在全连接层分类中,特征向量x×W[Li]等于模型判定x属于第i个类别的概率分数,W[Li]为第i个类别的权重张量,并根据公式:x·w=|x|×|w|×cosθ,可知因为输出特征向量以及w的二范数都等于一,所以将两向量的余弦相似度作为将x判别为第i个类别的直接标准,只需设计损失函数使得特征向量靠近其对应类别的w即可,损失函数的具体公式为:
(1)
式中,n表示类别个数。
3.根据权利要求1所述的一种基于特征向量的离散相似度匹配分类方法,其特征在于:步骤S23具体包括以下步骤:
更改M’在删除全连接层后的前向传播过程最后一步:将特征向量降序排列并截取前N’个元素,并取出其对应索引序号作为模型前向传播的最后输出。
4.根据权利要求1所述的一种基于特征向量的离散相似度匹配分类方法,其特征在于:步骤S23中所述的outputs输出的是长度为N’的int16整型张量。
5.根据权利要求1所述的一种基于特征向量的离散相似度匹配分类方法,其特征在于:在步骤S24中,对于所属标签L(L=0,1,……,n-1)的一维序列,其各元素Xi(i=0,1,……,N’-1)都会增加显著分数到向量Arrays[L]中Xi所对应的位置上,且显著分数随i的增大而等比递减,显著分数的初始值为1,递减公比为q。
6.根据权利要求1所述的一种基于特征向量的离散相似度匹配分类方法,其特征在于:步骤S26具体包括以下步骤:
S261、增加outputs[batch_size × N’]的两个维度1与3,得到[batch_size × 1 ×N’ × 1];
S262、增加Sets[n,N’]的两个维度0与2,得到Sets[1,n,1,N’];
S263、为了用outputs与sets的每一个张量作相同元素个数的count计数,且利用上cuda的张量计算机制,采用矩阵相除操作,得到由0,1值组成的四维张量Matrix(outputs行数,Sets行数,outputs列数,Sets列数):
Matrix = ~ ( (outputs+1) / (Sets+1) -1 ).bool() )
S264、返回Matrix在维度2、3上的求和结果,得到batch_size下每一个样本在n个类别上的相似度评分。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310756831.0A CN116524282B (zh) | 2023-06-26 | 2023-06-26 | 一种基于特征向量的离散相似度匹配分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310756831.0A CN116524282B (zh) | 2023-06-26 | 2023-06-26 | 一种基于特征向量的离散相似度匹配分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116524282A CN116524282A (zh) | 2023-08-01 |
CN116524282B true CN116524282B (zh) | 2023-09-05 |
Family
ID=87394448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310756831.0A Active CN116524282B (zh) | 2023-06-26 | 2023-06-26 | 一种基于特征向量的离散相似度匹配分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116524282B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117195951B (zh) * | 2023-09-22 | 2024-04-16 | 东南大学 | 一种基于架构搜索和自知识蒸馏的学习基因继承方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107122809A (zh) * | 2017-04-24 | 2017-09-01 | 北京工业大学 | 基于图像自编码的神经网络特征学习方法 |
CN107463954A (zh) * | 2017-07-21 | 2017-12-12 | 华中科技大学 | 一种模糊异谱图像的模板匹配识别方法 |
CN109508655A (zh) * | 2018-10-28 | 2019-03-22 | 北京化工大学 | 基于孪生网络的不完备训练集的sar目标识别方法 |
CN110443277A (zh) * | 2019-06-30 | 2019-11-12 | 天津大学 | 基于注意力模型的少量样本分类方法 |
CN110909643A (zh) * | 2019-11-14 | 2020-03-24 | 北京航空航天大学 | 基于最近邻原型表示的遥感舰船图像小样本分类方法 |
CN114611667A (zh) * | 2022-03-09 | 2022-06-10 | 贵州大学 | 一种基于小规模参数矩阵计算特征图边界的重构方法 |
CN115565042A (zh) * | 2022-10-14 | 2023-01-03 | 广州欢聚时代信息科技有限公司 | 商品图像特征表示方法及其装置、设备、介质、产品 |
CN116089646A (zh) * | 2023-01-04 | 2023-05-09 | 武汉理工大学 | 一种基于显著性捕获机制的无人机图像哈希检索方法 |
CN116168418A (zh) * | 2023-01-29 | 2023-05-26 | 北京交通大学 | 一种图像的多模态目标感知与重识别方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG11202108223XA (en) * | 2019-02-08 | 2021-08-30 | Singapore Health Serv Pte Ltd | Method and system for classification and visualisation of 3d images |
CN113627518B (zh) * | 2021-08-07 | 2023-08-08 | 福州大学 | 利用迁移学习实现神经网络脑电情感识别模型的方法 |
-
2023
- 2023-06-26 CN CN202310756831.0A patent/CN116524282B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107122809A (zh) * | 2017-04-24 | 2017-09-01 | 北京工业大学 | 基于图像自编码的神经网络特征学习方法 |
CN107463954A (zh) * | 2017-07-21 | 2017-12-12 | 华中科技大学 | 一种模糊异谱图像的模板匹配识别方法 |
CN109508655A (zh) * | 2018-10-28 | 2019-03-22 | 北京化工大学 | 基于孪生网络的不完备训练集的sar目标识别方法 |
CN110443277A (zh) * | 2019-06-30 | 2019-11-12 | 天津大学 | 基于注意力模型的少量样本分类方法 |
CN110909643A (zh) * | 2019-11-14 | 2020-03-24 | 北京航空航天大学 | 基于最近邻原型表示的遥感舰船图像小样本分类方法 |
CN114611667A (zh) * | 2022-03-09 | 2022-06-10 | 贵州大学 | 一种基于小规模参数矩阵计算特征图边界的重构方法 |
CN115565042A (zh) * | 2022-10-14 | 2023-01-03 | 广州欢聚时代信息科技有限公司 | 商品图像特征表示方法及其装置、设备、介质、产品 |
CN116089646A (zh) * | 2023-01-04 | 2023-05-09 | 武汉理工大学 | 一种基于显著性捕获机制的无人机图像哈希检索方法 |
CN116168418A (zh) * | 2023-01-29 | 2023-05-26 | 北京交通大学 | 一种图像的多模态目标感知与重识别方法 |
Non-Patent Citations (1)
Title |
---|
大规模数据集下图像表征问题的研究和应用;王崎;《中国博士学位论文全文数据库信息科技辑》(第5期);I138-26 * |
Also Published As
Publication number | Publication date |
---|---|
CN116524282A (zh) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110263227B (zh) | 基于图神经网络的团伙发现方法和*** | |
Springenberg et al. | Improving deep neural networks with probabilistic maxout units | |
CN107480261B (zh) | 一种基于深度学习细粒度人脸图像快速检索方法 | |
CN113361664B (zh) | 一种基于量子卷积神经网络的图像识别***及方法 | |
WO2020095321A2 (en) | Dynamic structure neural machine for solving prediction problems with uses in machine learning | |
CN115661550B (zh) | 基于生成对抗网络的图数据类别不平衡分类方法及装置 | |
CN110222218A (zh) | 基于多尺度NetVLAD和深度哈希的图像检索方法 | |
CN116524282B (zh) | 一种基于特征向量的离散相似度匹配分类方法 | |
CN110941734A (zh) | 基于稀疏图结构的深度无监督图像检索方法 | |
KR102285530B1 (ko) | 영상 정합을 위한 이미지 처리 방법 | |
CN110263855B (zh) | 一种利用共基胶囊投影进行图像分类的方法 | |
US20230206109A1 (en) | Machine learning mapping for quantum processing units | |
Jain | Convolutional neural network based advertisement classification models for online English newspapers | |
Saum et al. | Hyperparameter optimization using iterative decision tree (idt) | |
Ferreira et al. | Data selection in neural networks | |
CN114741487B (zh) | 基于图文语义嵌入的图文检索方法及*** | |
CN113378866B (zh) | 图像分类方法、***、存储介质及电子设备 | |
CN114037051A (zh) | 一种基于决策边界的深度学习模型压缩方法 | |
Aggarwal et al. | Object Detection Based Approaches in Image Classification: A Brief Overview | |
CN113052298A (zh) | 一种基于胶囊网络的三维模型检索方法 | |
Rao et al. | Learning semantic features for classifying very large image datasets using convolution neural network | |
CN118094018B (zh) | 一种增强的图对比学习推荐***方法、设备及存储介质 | |
CN117058401B (zh) | 复杂环境感知的高精度点云分类自适应下采样方法及装置 | |
Heindl | Graph Neural Networks for Node-Level Predictions | |
US20210365794A1 (en) | Discovering Novel Artificial Neural Network Architectures |
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 |