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

向后兼容表示的邻域一致性对比学习方法、系统及介质与流程

2021-11-05 21:04:00 来源:中国专利 TAG:


1.本技术涉及深度学习技术领域,更为具体来说,本技术涉及向后兼容表示的邻域一致性对比学习方法、系统及介质。


背景技术:

2.近些年来,深度学习在很多图像识别及分类任务上实现了超越人类的性能表现,大规模图像检索应用(如行人重识别、车辆重识别)已在城市安防中发挥了重要的作用,其检索涉及的图像数量级可达数十亿乃至上百亿。在如此大的数量级下,新模型的部署更新成本极高。我们需要重新提取数据库中所有图像的新特征,并对新特征构建新的索引。在重提取和重索引期间,我们需要耗费大量的计算资源和储存资源,整个系统可能被挂起。因此,亟待一种更优的神经网络模型部署技术。
3.现有的向后兼容表示方法采用类似于蒸馏的损失函数约束新模型,可以在一定程度上获得向后兼容性。然而,蒸馏方法通常假定教师模型的性能优于学生模型,我们的旧模型性能却比新模型差。该方法没有考虑如何从旧模型中选择、过滤出正确的知识,因此,这种方法将在一定程度上损失新特征的判别性。此外,该方法还假设新模型的训练数据与旧模型的训练数据之间有较大的重叠,也限制了其应用场景。


技术实现要素:

4.基于上述技术缺陷,本发明旨在使神经网络模型具备向后兼容能力,可以直接与原神经网络模型中的旧特征互操作。从而使旧特征在滚动更新中被新特征覆盖,从而实现模型的平滑部署,后续在图像检索应用时可自动更新模型。本技术实施例提供了向后兼容表示的邻域一致性对比学习方法、系统及介质。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
5.本发明第一方面提供了一种向后兼容表示的邻域一致性对比学习方法,包括以下步骤:
6.获取训练样本;
7.将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;
8.采用高斯核函数计算所述第一特征的熵;
9.基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;
10.将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;
11.基于对比学习的损失函数优化所述第二神经网络模型。
12.具体地,所述采用高斯核函数计算所述第一特征的熵的方法为:
13.获取所述第一神经网络模型所对应的映射函数;
14.基于所述映射函数采用高斯核函数计算所述训练样本中每一个样本与其在所述第一神经网络模型中被识别出的样本之间的相似度;
15.利用所述相似度求所述第一特征的熵。
16.具体地,所述相似度为x
i
表示训练样本中第i个样本,σ表示方差,和表示第一特征中第k类特征和第j类特征和的平均值,φ
old
表示第一神经网络模型所对应的映射函数,所述第一特征的熵为其中,p为概率,k
new
表示所述训练样本中类的个数。
17.进一步地,所述对比学习的损失函数为:
[0018][0019]
其中,w
ip
表示聚簇权重,s
ip
代表正样本p与锚点i的相似度,为训练样本集合,a(i)表示和i相同标签的样本构成的集合。
[0020]
优选地,引入邻域共识权重来衡量锚点和正样本属于同一个聚簇的概率,进行聚簇级别的兼容学习,所述聚簇权重通过计算所述第二特征的每一个样本之间的相对距离获得。
[0021]
进一步地,所述正样本p与锚点i的相似度的计算公式为:
[0022][0023]
其中,标识不同下标的x表示训练样本中不同的点,τ是控制分布锐化程度的参数,φ
old
表示第一神经网络模型所对应的映射函数,表示第二神经网络模型所对应的映射函数,b(i)表示和i不相同标签的样本构成的集合。
[0024]
本方明第二方面提供了一种图像检索中更新模型的方法,在图像检索中将任一实施方式中所述向后兼容表示的邻域一致性对比学习方法中的第二神经网络模型作为更新的模型。
[0025]
本发明第三方面提供了一种向后兼容表示的邻域一致性对比学习系统,所述系统包括:
[0026]
获取模块,用于获取训练样本;
[0027]
输入模块,用于将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;
[0028]
求熵模块,用于采用高斯核函数计算所述第一特征的熵;
[0029]
过滤模块,用于基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;
[0030]
对比学习模块,用于将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;
[0031]
优化模块,用于基于对比学习的损失函数优化所述第二神经网络模型。
[0032]
本发明第四方面提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如下步骤:
[0033]
获取训练样本;
[0034]
将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;
[0035]
采用高斯核函数计算所述第一特征的熵;
[0036]
基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;
[0037]
将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;
[0038]
基于对比学习的损失函数优化所述第二神经网络模型。
[0039]
本发明第五方面提供了一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如下步骤:
[0040]
获取训练样本;
[0041]
将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;
[0042]
采用高斯核函数计算所述第一特征的熵;
[0043]
基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;
[0044]
将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;
[0045]
基于对比学习的损失函数优化所述第二神经网络模型。
[0046]
本技术的有益效果为:本发明提供的方法通过训练样本在第一神经网络模型中提取的第一特征,将第一特征中的边缘区域删除,再和新特征对比学习,实现了模型的平滑部署,方便应用,而且后续在图像检索应用及其它应用场景时可自动更新模型。
附图说明
[0047]
图1示出了本技术一示例性实施例中的向后兼容表示的邻域一致性对比学习方法方法流程示意图;
[0048]
图2示出了本技术一示例性实施例中的对比学习方法整体流程及相关学习细节示意图;
[0049]
图3示出了本技术一示例性实施例中的向后兼容表示的邻域一致性对比学习系统结构示意图;
[0050]
图4示出了本技术一实施例所提供的一种电子设备的结构示意图;
[0051]
图5示出了本技术一实施例所提供的一种存储介质的示意图。
具体实施方式
[0052]
以下,将参照附图来描述本技术的实施例。但是应该理解的是,这些描述只是示例性的,而并非要限制本技术的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本技术的概念。对于本领域技术人员来说显而易见的是,本技术可以无需一个或多个这些细节而得以实施。在其他的例子中,为了避免与本技术发生混淆,对于本领域公知的一些技术特征未进行描述。
[0053]
应予以注意的是,这里所使用的术语仅是为了描述具体实施例,而非意图限制根据本技术的示例性实施例。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组合。
[0054]
现在,将参照附图更详细地描述根据本技术的示例性实施例。然而,这些示例性实施例可以多种不同的形式来实施,并且不应当被解释为只限于这里所阐述的实施例。附图并非是按比例绘制的,其中为了清楚表达的目的,可能放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状以及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
[0055]
实施例1:
[0056]
本实施例实施了一种向后兼容表示的邻域一致性对比学习方法,如图1所示,包括以下步骤:
[0057]
s1、获取训练样本;
[0058]
s2、将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;
[0059]
s3、采用高斯核函数计算所述第一特征的熵;
[0060]
s4、基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;
[0061]
s5、将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;
[0062]
s6、基于对比学习的损失函数优化所述第二神经网络模型。
[0063]
具体地,所述采用高斯核函数计算所述第一特征的熵的方法为:
[0064]
获取所述第一神经网络模型所对应的映射函数;
[0065]
基于所述映射函数采用高斯核函数计算所述训练样本中每一个样本与其在所述第一神经网络模型中被识别出的样本之间的相似度;
[0066]
利用所述相似度求所述第一特征的熵。
[0067]
具体地,所述相似度为x
i
表示训练样本中第i个样本,σ表示方差,主表示第一特征中第k类特征和第j类特征和的平均值,
φ
old
表示第一神经网络模型所对应的映射函数,所述第一特征的熵为其中,p为概率,k
new
表示所述训练样本中类的个数。
[0068]
进一步地,所述对比学习的损失函数为:
[0069][0070]
其中,w
ip
表示聚簇权重,s
ip
代表正样本p与锚点i的相似度,为训练样本集合,a(i)表示和i相同标签的样本构成的集合。
[0071]
优选地,引入邻域共识权重来衡量锚点和正样本属于同一个聚簇的概率,进行聚簇级别的兼容学习,所述聚簇权重通过计算所述第二特征的每一个样本之间的相对距离获得。
[0072]
进一步地,所述正样本p与锚点i的相似度的计算公式为:
[0073][0074]
其中,标识不同下标的x表示训练样本中不同的点,τ是控制分布锐化程度的参数,φ
old
表示第一神经网络模型所对应的映射函数,表示第二神经网络模型所对应的映射函数,b(i)表示和i不相同标签的样本构成的集合。
[0075]
需要说明的是,由于旧分类器在某些场景不可用,我们需通过计算属于旧类中心的每个样本的分配分数来构造伪分类向量,利用多个高斯核函数获得样本和旧分类中心之间的相似度得分,所以基于所述映射函数采用高斯核函数计算所述训练样本中每一个样本与其在所述第一神经网络模型中被识别出的样本之间的相似度,还可以表述为根据所述样本的类别标签及第一特征,计算第一特征的类别中心特征,基于高斯核函数计算所述训练样本的第一特征和类别中心特征的相似度。这些变换性表述及在具体实施过程中经过简单的逻辑分析与推理得到的,也属于本技术的保护范围。
[0076]
实施例2:
[0077]
本实施例实施了一种向后兼容表示的邻域一致性对比学习方法,包括以下步骤:获取训练样本;将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;采用高斯核函数计算所述第一特征的熵;基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;基于对比学习的损失函数优化所述第二神经网络模型。
[0078]
具体地,所述采用高斯核函数计算所述第一特征的熵的方法为:获取所述第一神经网络模型所对应的映射函数;基于所述映射函数采用高斯核函数计算所述训练样本中每一个样本与其在所述第一神经网络模型中被识别出的样本之间的相似度;利用所述相似度求所述第一特征的熵。
[0079]
具体地,所述相似度为x
i
表示训练样本中第i个样本,σ表示方差,和表示第一特征中第k类特征和第j类特征和的平均值,φ
old
表示第一神经网络模型所对应的映射函数,所述第一特征的熵为其中,k
new
表示所述训练样本中类的个数,的计算可表示为:
[0080]
由于log k
new
是的最大值,因此,我们将阈值设置为有关log k
new
的定值,例如然后删除那些熵大于的样本,它们不参与下一阶段的对比学习过程,即基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征。
[0081]
进一步地,所述对比学习的损失函数为:
[0082][0083]
其中,w
ip
表示聚簇权重,s
ip
代表正样本p与锚点i的相似度,为训练样本集合,a(i)表示和i相同标签的样本构成的集合。
[0084]
优选地,引入邻域共识权重来衡量锚点和正样本属于同一个聚簇的概率,进行聚簇级别的兼容学习,所述聚簇权重通过计算所述第二特征的每一个样本之间的相对距离获得。
[0085]
进一步地,所述正样本p与锚点i的相似度的计算公式为:
[0086][0087]
其中,标识不同下标的x表示训练样本中不同的点,τ是控制分布锐化程度的参数,φ
old
表示第一神经网络模型所对应的映射函数,表示第二神经网络模型所对应的映射函数,b(i)表示和i不相同标签的样本构成的集合。
[0088]
作为可变换的实施方式,本实施例还包括对第二特征和第三特征施加对偶约束,函数为:
[0089]
其中,权重w
ip
与损失函数l1中使用的权重一致,为第三特征经过第二神经网络模型中分类器得到的分类概率值,为第二特征经过第二神经网络模型中分类器得到的分类概率值。考虑到深度学习中一个mini

batch的数据可能不具备足够的代表性,我们引入了额外的队列来储存更多的第二特征,该队列采用先进先出的更新方式,并在每个batch内根据加载的数据更新。
[0090]
具体在模型训练的过程中,结合独立训练的第二神经网络模型上的分类损失l
new
,我们给出了以下损失函数用于训练兼容模型:
[0091]
l
total
=l
new
αl1 βl2[0092]
其中,α和β是两个超参数,分别控制嵌入空间学习和判别空间学习的相对重要性。具体来说,我们首先使用损失函数l
new
和l1来训练第二神经网络模型,然后我们冻结分类头的权重,然后在训练中添加损失函数l2。损失函数l2本质上属于一种微调技术,用以降低新特征的方差,因此其必须在损失函数l1波动较小时使用。
[0093]
图2所示为对比学习方法整体流程及相关学习细节,如图2中的a)所示,将训练数据送入第一神经网络进行特征提取获得第一特征(待兼容特征),使用熵筛选第一特征获得第二特征(低熵待兼容特征),将第二特征和训练数据送入第二神经网络,训练获得第三特征(兼容特征)。如图2中的b)所示,邻域感知对比学习利用对比学习约束第二神经网络输出的特征和第二特征,使二者的同类特征靠近,不同类特征远离。对于同类特征,给予相同聚簇特征更大的优先级。如图2中的c)表示构造伪多标签对比学习任务,即采用高斯核函数计算所述训练样本中每一个样本与其在所述第一神经网络模型中被识别出的样本之间的相似度构造伪多标签,对于任意一个第二神经网络输出的特征,以与其同标签的第二特征为正样本,不同标签的第二特征为负样本,进行对比学习。
[0094]
需要说明的是,由于旧分类器在某些场景不可用,我们需通过计算属于旧类中心的每个样本的分配分数来构造伪分类向量,利用多个高斯核函数获得样本和旧分类中心之间的相似度得分,所以基于所述映射函数采用高斯核函数计算所述训练样本中每一个样本与其在所述第一神经网络模型中被识别出的样本之间的相似度,还可以表述为根据所述样本的类别标签及第一特征,计算第一特征的类别中心特征,基于高斯核函数计算所述训练样本的第一特征和类别中心特征的相似度。这些变换性表述及在具体实施过程中经过简单的逻辑分析与推理得到的,也属于本技术的保护范围。
[0095]
实施例3:
[0096]
本实施例实施了一种向后兼容表示的邻域一致性对比学习系统,如图3所示,包括:
[0097]
获取模块301,用于获取训练样本;
[0098]
输入模块302,用于将所述训练样本输入到第一神经网络模型中进行特征提取,得到第一特征;
[0099]
求熵模块303,用于采用高斯核函数计算所述第一特征的熵;
[0100]
过滤模块304,用于基于熵值过滤掉所述第一特征中位于类边缘区域的模糊特征,得到第二特征;
[0101]
对比学习模块305,用于将训练样本输入到第二神经网络模型中进行特征提取得到第三特征,利用所述第二特征和所述第三特征进行对比学习;
[0102]
优化模块306,用于基于对比学习的损失函数优化所述第二神经网络模型。
[0103]
实施例4:
[0104]
本实施例提供一种图像检索中更新模型的方法,在图像检索中将任一实施方式中所述向后兼容表示的邻域一致性对比学习方法中的第二神经网络模型作为更新的模型。当然作为可变换的实施方式,除了图像检索,也包括其它应用场景的更新,在此不做具体限定。
[0105]
接下来请参考图4,其示出了本技术的一些实施方式所提供的一种电子设备的示意图。如图4所示,所述电子设备2包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本技术前述任一实施方式所提供的向后兼容表示的邻域一致性对比学习方法。
[0106]
其中,存储器201可能包含高速随机存取存储器(ram:random access memory),也可能还包括非不稳定的存储器(non

volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
[0107]
总线202可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本技术实施例任一实施方式揭示的所述向后兼容表示的邻域一致性对比学习方法可以应用于处理器200中,或者由处理器200实现。
[0108]
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
[0109]
本技术实施例提供的电子设备与本技术实施例提供的向后兼容表示的邻域一致性对比学习方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
[0110]
本技术实施方式还提供一种与前述实施方式所提供的向后兼容表示的邻域一致性对比学习方法对应的计算机可读存储介质,请参考图5,其示出的计算机可读存储介质为
光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的向后兼容表示的邻域一致性对比学习方法。
[0111]
所述计算机可读存储介质的例子还可以包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
[0112]
需要说明的是:在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本技术也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本技术的内容,并且上面对特定语言所做的描述是为了披露本技术的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本技术的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本技术并帮助理解各个发明方面中的一个或多个,在上面对本技术的示例性实施例的描述中,本技术的各个特征有时被一起分组到单个实施例、图或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本技术要求比在每个权利要求中所明确记载的特征更多的特征。
[0113]
以上所述,仅为本技术较佳的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

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

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

相关文献