一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种关系网络小样本图像分类方法、系统、装置及介质

2022-06-11 08:29:53 来源:中国专利 TAG:


1.本发明涉及计算机视觉领域,尤其涉及一种关系网络小样本图像分类方法、系统、装置及介质。


背景技术:

2.小样本学习是人工智能中的重要研宄方向之一,人类具有从少数样本中快速学习和快速归纳的能力。以图片分类任务为例,人类可以通过观察少数几张图片样本,从这些样本中学习特征,迅速分辨出与其同一类或不同类的图片。孩子在小时候学习辨认不同的动物时,通常仅需看一两张这种动物的图像就能在不同的场景下认出这个物种,因为他已经学习到了很多经验知识,利用这些经验知识很快就能完成对新目标的辨认。这种从少数样本中快速学习,并且利用已学到的经验学习新的知识,而不是面对每个任务都从头学的能力,称为小样本学习。
3.通过有限样本完成模型的训练,然后在面对训练过程中没有出现过的新样本同样具有识别能力。随着深度学习的发展,深度学习技术己在视频分类、身份识别、自动驾驶m等视觉领域得到了广泛应用,然而在这些领域中常常面对数据稀缺的问题,同时对一些数据的采集也具有较高的难度,对采集来的数据进行标注也是费时费力的事情。人类能够从单个或少数样本中学习新概念,而且能够从稀疏的数据中获得极其丰富的表征,并且可以通过之前的学习经验,进一步增强未来的学习能力。如何让机器具备这种能力,对于人工智能至关重要。然而目前此领域大多是从特征提取网络直接提取特征向量来进行度量,这类装置的缺点是没有充分考虑每个任务中各个类别的联系,进而提取最符合这个任务的一个比较有代表性辨别性的特征向量,如猫和老虎相比较与猫和狗相比较,这两个任务所提取到的代表性特征向量是不相同的。


技术实现要素:

4.为至少一定程度上解决现有技术中存在的技术问题之一,本发明的目的在于提供一种关系网络小样本图像分类方法、系统、装置及介质。
5.本发明所采用的技术方案是:
6.一种关系网络小样本图像分类方法,包括以下步骤:
7.划分数据集,在每个训练批次中,将数据集划分为训练集和测试集,训练集的样本标注有样本标签;
8.采用嵌入模块提取数据集中图像的图片特征表示;
9.由于嵌入模块提取的图片特征表示是任务无关型,利用自注意力模块学习任务间的上下文信息,将任务无关的图片特征表示转化为任务相关的图片特征表示;
10.根据任务相关的图片特征表示,以基于原学习的关系网络度量方式训练神经网络,采用训练后的神经网络进行图像分类。
11.进一步地,所述划分数据集,在每个训练批次中,将数据集划分为训练集和测试
集,包括:
12.每一个批次对应一个任务,每个批次将数据集划分为训练集和测试集,将训练集中的支持集输入嵌入模块获取图片特征表示,训练集中的查询集带有标签,负责衡量与支持集中样本的距离;
13.训练集中的支持集和查询集负责不断更新网络模型的参数。
14.进一步地,所述嵌入模块采用残差网络来实现,所述残差网络包含4个依次连接基础模块,每个基础模块包含三个卷积小模块,在每个基础模块的输出端附加一个2
×
2最大池化层,在最后一个最大池化层的输出端附加一个2
×
2平均池化层;
15.将支持集d
support
和查询集d
query
中的图像数据输入嵌入模块f
θ
中,获得相应的图片特征表示r
p
,其中p=c
×h×
w,c、h和w分别相应地表示特征表示的通道数、高度和宽度。
16.进一步地,还包括多分类学习的步骤:
17.定义n表示类别,z代表该类别中的一张图片;
18.计算每个类别的特征表示中心点,即将同一类图片特征表示相加起来取平均,表示为:
[0019][0020]
如果每个类别只有一个样本,将该样本的图片特征表示充当类中心特征表示;
[0021]
定义每个批次的类向量c=[c1,c2,c3,

,cn](c∈rn×c×h×w),将类向量c输入自注意力模块f
β
之前,先改变类向量c的形状,即c∈rn×
l
×d,其中,d是隐藏层的一个超参数,n是类别数量。
[0022]
进一步地,所述利用自注意力模块学习任务间的上下文信息,将任务无关的图片特征表示转化为任务相关的图片特征表示,包括:
[0023]
将嵌入模块输出的图片特征表示与三个预设的待训练矩阵相乘,获得查询向量dq、键向量dk和值向量dv;
[0024]
根据查询向量dq和键向量dk获取注意得分矩阵mh,将值向量dv乘以注意得分矩阵mh后,执行softmax操作,获得更具区分性的任务相关的图片特征表示c


[0025]
进一步地,为加快计算速度,采用矩阵形式代替向量形式进行计算,将向量形式转换为矩阵形式的公式为:
[0026][0027][0028][0029]
式中,q表示查询矩阵,k表示键矩阵,v表示值矩阵,c表示支持集嵌入,wq表示查询线性映射矩阵,wk表示键线性映射矩阵,wv表示值线性映射矩阵,表示输入输出维度,输入维度为d,输出维度为d
model
,d
model
是隐藏层的维数;
[0030]
任务相关的图片特征表示c

的定义公式为:
[0031][0032]
式中,
t
表示键矩阵的转置。attn(q,k,v)表示自注意力模块的计算。
[0033]
进一步地,所述根据任务相关的图片特征表示,以基于原学习的关系网络度量方式训练神经网络,包括:
[0034]
采用关系网络的度量方式来衡量样本间的距离,从度量的角度出发,将任务相关的图片特征表示与查询集的样本拼接的方式来约束判断样本的相似度;
[0035]
其中,度量的公式为:
[0036]
loss(s
m,n
,ym)=(s
m,n-1(n==ym))2[0037]
式中,ym是查询集的样本的标准标签,n是这个查询集的类别,s
m,n
代表任务相关特征向量与查询特征向量的相似度得分。
[0038]
本发明所采用的另一技术方案是:
[0039]
一种关系网络小样本图像分类方法系统,包括:
[0040]
数据划分模块,用于划分数据集,在每个训练批次中,将数据集划分为训练集和测试集,训练集的样本标注有样本标签;
[0041]
特征提取模块,用于采用嵌入模块提取数据集中图像的图片特征表示;
[0042]
特征转化模块,用于由于嵌入模块提取的图片特征表示是任务无关型,利用自注意力模块学习任务间的上下文信息,将任务无关的图片特征表示转化为任务相关的图片特征表示;
[0043]
网络训练模块,用于根据任务相关的图片特征表示,以基于原学习的关系网络度量方式训练神经网络,采用训练后的神经网络进行图像分类。
[0044]
本发明所采用的另一技术方案是:
[0045]
一种关系网络小样本图像分类装置,包括:
[0046]
至少一个处理器;
[0047]
至少一个存储器,用于存储至少一个程序;
[0048]
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上所述方法。
[0049]
本发明所采用的另一技术方案是:
[0050]
一种计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行如上所述方法。
[0051]
本发明的有益效果是:本发明通过注意力机制,将任务无关特征向量转化为任务相关的特征向量,具有考虑任务上下文信息、缩小类内距离的优点,更有利于进行后面的度量计算相似度得分。
附图说明
[0052]
为了更清楚地说明本发明实施例或者现有技术中的技术方案,下面对本发明实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员而言,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
[0053]
图1是本发明实施例中一种关系网络小样本图像分类方法的步骤流程图;
[0054]
图2是本发明实施例中一种关系网络小样本图像分类方法的结构图;
[0055]
图3是本发明实施例中嵌入模块的结构图;
[0056]
图4是本发明实施例中注意力模块的结构示意图;
[0057]
图5是本发明实施例中残差网络resnet-12中每一层可视化效果示意图;
[0058]
图6是本发明实施例中自注意力机制定量可视化图。
具体实施方式
[0059]
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
[0060]
在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0061]
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
[0062]
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
[0063]
如图1和图2所示,本实施例提供一种关系网络小样本图像分类方法,包括以下步骤:
[0064]
s1、划分数据集,在每个训练批次中,将数据集划分为训练集和测试集,训练集的样本标注有样本标签。
[0065]
划分mini-imagenet数据集:在每个训练批次中,会将mini-imagenet数据集划分为训练集和测试集,训练集和测试集还会继续划分为支持集和查询集,训练集的样本都会标注好样本标签。
[0066]
具体地,每一个批次(episode)会有一个任务,每个批次都会将mini-imagenet数据集划分为支持集和查询集,支持集负责输入模型获取特征表示,而训练集中的查询集也有标签,负责衡量和支持集中样本的距离,原则是同类样本应该距离离得越近,不同类样本应该越来越远。训练集的支持集和查询集负责不断更新网络模型的参数。假定待分类的小样本类别有c个类别,每个类别有z个样本,我们称之为c-way-z-key小样本分类学习。具体为:从mini-imagenet的类别中随机选择c个类别,再从这c个类别随机挑选z个样本,构成的这个任务称为t
support
很多个任务则构成支持集d
support
查询集样本则用这c个类别中样本的剩余数据样本组成,称之d
query
。数据集d
support
和数据集d
query
数据交集为空互不干扰。
[0067]
s2、采用嵌入模块提取数据集中图像的图片特征表示。
[0068]
在本实施例中,使用残差网络resnet-12作为嵌入模块,如图3所示。该残差网络嵌入模块包含4个基础模块,每个基础模块又包含三个卷积小模块,在每个基础模块后面会附加一个2
×
2最大池化层,特地的,在最后一个最大池化层后面会再加一个2
×
2平均池化层。参见图5,图5是4个基础模块输出的可视化效果图。
[0069]
采取的是传统的小样本分类学习方式,即将支持集d
support
和查询集d
query
的数据传入嵌入模块f
θ
中去获得相应的图片特征表示r
p
,p=c
×h×
w,字母c,h和w分别相应地表示特征表示的通道数,高度和宽度。我们定义n表示类别,z代表那个类别中的一张图片。
[0070]
进一步地,在多分类学习中,我们会提前计算每个类别的特征表示中心点,即将同一类图片特征表示相加起来取平均,表示为:
[0071][0072]
如果每个类别只有一个样本,就让那个样本的图片特征表示充当类中心特征表示。然后我们定义每个批次的类向量c=[c1,c2,c3,

,cn](c∈rn×c×h×w),再将类向量c输入自注意力模块f
β
之前,会先改变类向量c的形状,即c∈rn×
l
×d.首先d是隐藏层的一个超参数。
[0073]
s3、由于嵌入模块提取的图片特征表示是任务无关型,利用自注意力模块学习任务间的上下文信息,将任务无关的图片特征表示转化为任务相关的图片特征表示。
[0074]
注意力机制模仿了生物观察行为的内部过程,即一种将内部经验和外部感觉对齐从而增加部分区域的观察精细度的机制。注意力机制可以快速提取稀疏数据的重要特征,因而被广泛用于自然语言处理任务,特别是机器翻译。
[0075]
而本实施例中的自注意力机制是注意力机制的改进,其减少了对外部信息的依赖,更擅长捕捉数据或特征的内部相关性。本实施例将自注意力用于图片分类中,使得提取出来的特征表征在每个任务中具有更加独特的辨识力和表示。我们将注意机制视为一个组件,目的是从提取的无关特征中学习更具适应性和区分性的任务相关嵌入。图6是自注意力机制定量可视化图,通过图6可以看出自注意力机制可以使类内样本距离缩小,类间距离扩大,学习一种与任务相关的特征向量。图6中,每张图都显示了进入自注意力模块f
β
前后的pca预测支持嵌入的位置;图中的数值为支持集嵌入进入自注意力模块f
β
前后的5-way-5-shot分类准确率。
[0076]
如图4所示,自注意力机制工作的原理如下:创建三个向量,称为查询向量、键向量和值向量来计算自我注意。这三个向量是通过将在第一个模块中提取的无关图片特征表示与三个待训练矩阵相乘得到的。我们相应地标示了这三个矩阵向量dq、dk和dv的维数。根据经验,dq、dk和dv在正常情况下是小于这些原始无关图片特征表示的。通过实现查询与每个类的键之间的内积,可以得到表示它们之间相似度的初始注意得分矩阵mh。为了使注意得分矩阵mh具有更稳定的梯度,将注意得分矩阵mh除以一个值也可以是任何其他可能的值。在将每个值向量乘以最终的注意得分矩阵后,我们最终执行softmax操作以获得更具区
分性的任务相关图片特征表示c

。在实际实现中,为了加快计算速度,我们采用矩阵形式代替向量形式进行计算。将向量形式转换为矩阵形式的公式为:
[0077][0078][0079][0080]
式中,d
model
是隐藏层的维数。任务相关的图片特征表示c

的定义公式为:
[0081][0082]
s4、根据任务相关的图片特征表示,以基于原学习的关系网络度量方式训练神经网络,采用训练后的神经网络进行图像分类。
[0083]
本实施例使用关系网络的度量方式来衡量样本间的距离。从度量的角度出发,我们让任务相关的图片特征表示与查询集样本拼接的方式来约束判断样本的相似度。其主要方法是训练一个网络来学习(例如卷积神经网络)距离的度量方式,使得小样本分类时更具合理性以及泛化性。我们使用的是标准方差mse损失函数,适用于在每个批次执行随机梯度下降参数的更新。具体的度量公式为:
[0084]
loss(s
m,n
,ym)=(s
m,n-1(n==ym))2[0085]
式中,ym是查询样本的标准标签,n是这个查询集的类别。
[0086]
综上所述,本实施例的方法相对于现有技术,具有如下优点及有益效果:
[0087]
(1)本实施例方法基于注意力机制,将现有技术中生成的任务无关特征向量转化为任务相关的特征向量,既充分考虑类内样本之间的共同通用性,又能学习出一种类别间具有代表性和区分性的特征向量,使得生成的特征向量是基于任务级别的,能够使得同类样本距离近,不同类样本间距离远,更有利于进行后面的度量计算相似度得分。
[0088]
(2)本实施例方法在小样本分类学习mini-imagenet数据集中精度最高的,在5分类每类别5样本的设定中精度达到了73.69,在5分类每类别1样本的设定中精度达到了61.57,远超其它比较有竞争力的小样本分类学习模型,同时我们的模型也是所有基于注意力机制中,分类准确率最高的。
[0089]
(3)本实施例方法中的架构所需要计算的参数个数很少,因为自注意力机制进行运算的时候会提前减少特征向量维度,进而大大提高运算速度。
[0090]
本发明还提供一种关系网络小样本图像分类方法系统,包括:
[0091]
数据划分模块,用于划分数据集,在每个训练批次中,将数据集划分为训练集和测试集,训练集的样本标注有样本标签;
[0092]
特征提取模块,用于采用嵌入模块提取数据集中图像的图片特征表示;
[0093]
特征转化模块,用于由于嵌入模块提取的图片特征表示是任务无关型,利用自注意力模块学习任务间的上下文信息,将任务无关的图片特征表示转化为任务相关的图片特征表示;
[0094]
网络训练模块,用于根据任务相关的图片特征表示,以基于原学习的关系网络度量方式训练神经网络,采用训练后的神经网络进行图像分类。
[0095]
本实施例的一种关系网络小样本图像分类系统,可执行本发明方法实施例所提供
的一种关系网络小样本图像分类方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
[0096]
本发明还提供一种关系网络小样本图像分类装置,包括:
[0097]
至少一个处理器;
[0098]
至少一个存储器,用于存储至少一个程序;
[0099]
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现图1所示方法。
[0100]
本实施例的一种关系网络小样本图像分类装置,可执行本发明方法实施例所提供的一种关系网络小样本图像分类方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
[0101]
本技术实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行图1所示的方法。
[0102]
本实施例还提供了一种存储介质,存储有可执行本发明方法实施例所提供的一种关系网络小样本图像分类方法的指令或程序,当运行该指令或程序时,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
[0103]
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
[0104]
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
[0105]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0106]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
[0107]
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0108]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0109]
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
[0110]
尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
[0111]
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于上述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献