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

一种基于多教师知识蒸馏的跨域小样本识别方法

2022-12-02 23:45:55 来源:中国专利 TAG:


1.本发明属于计算机技术领域,具体涉及跨域小样本识别方法。


背景技术:

2.小样本学习旨在将知识从源数据集转移到只有一个或几个标记示例的新目标数据集。通常,小样本学习假设源数据集和目标数据集的图像属于同一数据域。然而,这样一个理想的假设在现实世界的多媒体应用中可能并不容易满足。例如,如工作[1]中所揭示的,在主要由大量多样的自然图像组成的数据集上训练的模型仍然无法识别新颖的细粒度鸟类。为此,跨域小样本识别旨在解决小样本识别中源域与目标域领域不一致的问题。
[0003]
近年来,跨域小样本已在许多先前的方法中得到广泛研究[2、3、4、5、6]。他们中的大多数[3,5,6]仅使用源域图像进行训练,并主要致力于提高模型的泛化能力。尽管已经取得了一些成就,但由于源数据集和目标数据集之间存在巨大的领域差距,在性能上仍很难取得重大突破。因此,一些工作[2,4]放宽了该最基本但最严格的设置,允许在训练阶段使用目标数据。其中,startup[4]中使用了大量的未标记目标数据,而meta-fdmixup[2]主张使用少量有限的标记目标数据。然而,在面对现实中的具体类别,例如濒临灭绝的野生动物或者是特定的建筑物等,获取大量未标记类别图像不那么容易实现。相比之下,使用少量有限标注的目标域数据(例如,每个类5个图像)则更为现实。因此,本发明方法在具体的任务设定上跟meta-fdmixup保持一致。
[0004]
给定一个具有足够多标注图像的源数据集和一个只有少数标注图像的辅助目标域数据集,
[0005]
为了让模型更好的将这两个数据集上的知识学习并迁移到目标域数据,meta-fdmixup的主要方法在于:(1)提出一种基于mixup[7]的数据增强方法来混合利用源域和目标域训练数据;(2)提出特征解耦模块将整体特征拆分成领域相关特征与领域无关特征。
[0006]
不同于meta-fdmixup,本发明首先注意到这问题下的两大挑战:(1)源数据集和辅助目标数据集的标记图像数量非常不平衡。在这种不平衡的训练数据上学习的模型将偏向源数据集,而在目标数据集上的表现要差得多。(2)由于源数据集和辅助目标属于两个不同的领域,单个模型可能很难同时从不同领域的数据集中学习知识。因此,本发明提出了一种基于多教师知识蒸馏的跨域小样本识别方法,首先分别训练两个各自领域的教师模型,然后让学生模型从多教师模型中蒸馏知识以解决训练数据不平衡问题,然后进一步提出将学生模型特定层动态拆解为源领域自网络和目标域自网络,从而避免学生模型同时学习两个不同领域知识。


技术实现要素:

[0007]
本发明的目的在于提供一种基于多教师知识蒸馏的跨域小样本识别方法,为跨域小样本识别这个同时存在目标类可使用标注样本少、源域与目标域存在领域差异这两大难点的视觉任务提供一个泛化迁移能力强的小样本分类模型。
[0008]
本发明提供的基于多教师知识蒸馏的跨域小样本识别方法,涉及三个模块:特征提取网络、小样本分类器以及动态领域拆分模型,以及三个网络模型:源域教师模型、目标域教师模型以及领域可拆分的学生模型。
[0009]
本发明提出的基于多教师知识蒸馏的跨域小样本识别方法,具体步骤如下。
[0010]
(1)搭建三个模块:特征提取网络、小样本分类器、动态领域拆分模型;
[0011]
(1.1)在现有模型中,选取任意一种可以从图像中提取出图像高维特征的深度神经网络模型,作为特征提取网络模型;在本发明中,resnet-10结构[8]被采用;使用该特征提取网络模型,给定源域或者目标域数据,抽取得到对应的源域特征fs、目标域特征f
t

[0012]
(1.2)在现有模型中,选取任意一个可以根据小样本支持集中的图像将小样本查询集中的图像进行类别分类的模型,作为小样本分类器;在本发明中,gnn[9]被采用;使用该小样本分类器,给定任意一个元学习任务{s,q},得到q的概率分布p;
[0013]
(1.3)搭建动态领域拆分模型,其主要功能在于动态地将网络的特定层拆解为源域相关的部分和目标域相关的部分;具体地,就是定义一个领域门矩阵m,矩阵m的维度与需要拆解的卷积核的数量一致;相对应地,m中第i个元素的值mi表示的就是第i个卷积核分配给源域的概率,而1-mi则表示这个卷积核被分配给目标域的概率;但处于0-1之间的浮点数不符合本发明希望将某个卷积核完全分配给源域或者完全分配给目标域的理想期望;因此,本发明进一步引入gumbel softmax[10],实现将浮点m二值化,当mi输出为1时表示源域通路激活,而目标域通路关闭;反之,当mi输出为0时表示源域通路关闭,而目标域通路激活;
[0014]
使用该动态领域拆分模型,给定网络某层的输出特征源域输出fs、目标域输出f
t
,通过矩阵m的数值确定最终的源域输出为fs·
m,目标域输出为f
t
·
(1-m);设置矩阵m为可学习参数,随着网络训练共同更新。
[0015]
(2)基于三个模块形成三个网络模型:源域教师模型、目标域教师模型、领域可拆分的学生模型;
[0016]
(2.1)连接特征提取网络以及小样本分类器,构成源域教师模型;
[0017]
(2.2)连接特征提取网络以及小样本分类器,构成目标域教师模型;
[0018]
(2.3)连接特征提取网络以及小样本分类器,对特征提取网络中的特定几层插入动态领域拆分模型,构成领域可拆分的学生模型。
[0019]
(3)只使用源域数据训练源域教师模型,训练方法为:从源域数据集中随机采样一个元学习单元作为网络输入,依次通过特征提取网络、以及小样本分类器,得到模型对于此次查询集中各个图片类别的结果预测概率分布,然后通过跟正确类别之间的距离得到训练损失函数。
[0020]
(4)只使用目标域域数据训练目标域教师模型,训练方法为:从目标域数据集中随机采样一个元学习单元作为网络输入,依次通过特征提取网络、以及小样本分类器,得到模型对于此次查询集中各个图片类别的结果预测概率分布,然后通过跟正确类别之间的距离得到训练损失函数。
[0021]
(5)使用同时来自源域和目标域的数据训练领域可拆分学生模型,训练方法为:从源域和目标域数据集中各自采样一个元学习单元,将两个学习单元都通过标准通路(依次通过特征提取网络、小样本分类器,不对特征提取网络进行领域拆分,即不管是来自哪个领
域的数据,所有的卷积核都会被激活)和领域通路(特征提取网络、动态领域拆分模型、小样本分类器,对特征提取网络进行拆分,即只有对应领域门mi的输出值为1时,该卷积核才对当前领域的数据激活)这两个通路分别得到概率预测结果,然后执行两个子任务:
[0022]
(5.1)小样本元分类学习任务,然后通过跟正确类别之间的距离得到训练损失函数;
[0023]
(5.2)知识蒸馏任务:将学生模型的预测概率分布与对应教师模型概率分布进行比较,得到训练损失。
[0024]
(6)在目标域未知类别测试数据上,对领域可拆分的学生模型以小样本元分类任务进行性能测试,将数据通过标准通路和普通通路得到两个不同的概率预测结果,将两个预测概率取平均作为最终的预测结果,该概率分布中得分最高的类别即为此次的预测类别。重复该步骤若干次(例如1000次),得到最终的模型准确率。
[0025]
本发明步骤(5)中,所述小样本元分类学习任务,首先从数据集中随机采样一个元学习单元{支持集,查询集}作为网络输入,依次通过特征提取网络、动态领域拆解网络(如有)、小样本分类器,得到模型对于此次查询集中各个图片类别的结果预测概率分布。该预测概率分布将用于与正确的查询集类别进行比较,得到训练损失。在本发明中,交叉熵损失用于计算小样本元分类损失。
[0026]
本发明步骤(5)中,所述知识蒸馏任务,给定待输入到学生模型中特定领域的数据,例如源数据,将学生模型的预测概率分布与源教师模型对于该数据得到的教师模型概率分布进行比较,得到训练损失。在本发明中,离散散度距离用于计算知识蒸馏任务损失。
[0027]
综合来讲,本发明的创新之处在于:
[0028]
1.本发明首次将多教师模型机制以及知识蒸馏技术引入到带有少量标记目标数据的跨域小样本识别任务中,以防止模型直接在样本标注极度数量不平衡的数据集上学习;
[0029]
2.本发明创新性地提出一个动态领域拆分模块,让网络自动学习将模型结构分解为源域特定的部分和目标域特定的部分;这种基于领域的结构分解在之前的跨域小样本工作中很少被探索。
附图说明
[0030]
图1是本发明处理的跨域小样本任务难点以及解决方案图示。
[0031]
图2是本发明的主要步骤示意图。其中,(a)针对源域和目标域分别训练教师模型;(b)通过从源域教师模型和目标域教师模型蒸馏知识来训练领域可拆解学生网络;(c)在推理阶段,仅使用学生网络进行预测。
[0032]
图3是本发明的动态领域拆解模块示意图。该模块学习领域门矩阵m来控制过滤器的激活状态。gumbel softmax用于对矩阵值进行二值化。
具体实施方式
[0033]
本发明处理的跨域小样本任务难点以及解决方案参见图1所示。给定一个样本量充足的源域数据集和一个仅有少量样本量的目标域数据集,该任务存在以下难点:(1)两个训练数据集之间存在严重的数据不平衡问题;(2)模型需要同时从不同的域学习。相应地,
本发明提供了以下关键解决方案:(1)提出多教师模型学习方法,首先训练两个单独的教师模型,然后通过知识蒸馏将知识转移到学生模型;(2)提出了一种新的动态领域拆解模块,该模块学习将学生模型的网络结构分解为两个与领域相关的子部分。
[0034]
本发明提出的基于多教师知识蒸馏的跨域小样本识别方法,详细步骤如下。
[0035]
步骤1.设定基础网络模型,resnet-10为特征提取器,gnn为小样本特征提取器,设定动态领域拆分模型的领域门矩阵m为可学习参数。
[0036]
步骤2.用resnet10和gnn组成源域教师模型st-net和目标域教师模型tt-net。
[0037]
步骤3.从源域数据集中随机选择元学习任务{s,q,y}训练源域教师模型st-net,其中s表示支持集,q表示查询集,y表示查询集对应的正确样本标签,具体的过程为依次将{s,q}输入到resnet10以及gnn中,得到最终的小样本预测概率然后对与y计算交叉熵损失函数作为此次训练的度量损失函数优化模型。
[0038]
步骤4.重复步骤3共num
train
轮次,得到最终的源域教师模型st-net,其中num
train
=400。
[0039]
步骤5.从目标域数据集中随机选择元学习任务{s,q,y}训练目标域教师模型tt-net,具体训练方法与步骤3和步骤4一致,得到最终的目标域教师模型tt-net。
[0040]
步骤6.将resnet10分成4个结构块,设置最后两个结构块为领域可拆解块,具体做法为统计这两个结构块的卷积核数量,然后根据该数量设定领域门矩阵m的维度。在该带有可学习领域门m的resnet10基础上,加上gnn小样本分类器,构成领域可拆分学习模型me-d2n。
[0041]
步骤7.随机从源域数据集中采样元学习任务{s
src
,q
src
,y
src
},从目标域数据集中采样元学习任务{s
tgt
,q
tgt
,y
tgt
},用于训练me-d2n领域可拆分学生模型。其中,下标src/tgt分别表示该元学习任务的数据从源域/目标域采样而来。具体分步骤如下:
[0042]
步骤7.1:将源域元学习任务{s
src
,q
src
}输入到源域教师模型中,得到教师模型的预测结果输出同样将目标域元学习任务{s
tgt
,q
tgt
}输入到目标域教师模型中,得到预测结果输出其中,p表示预测结果,特指该预测结果来自教师模型;
[0043]
步骤7.2:通过标准通路(std)获取概率预测分布;以源域元学习任务{s
src
,q
src
,y
src
}为例,标准通路的做法为不考虑领域门m的存在,直接将支持集和查询集各自输入到resnet-10以及gnn中,获取到标准通路对应的概率分布同样的方式对目标域元学习任务{s
tgt
,q
tgt
,y
tgt
}获取到对应的标准通路对应的概率分布
[0044]
步骤7.3:通过领域通路(dsg)获取概率预测分布;以源域元学习任务{s
src
,q
src
,y
src
}为例,领域通路的做法为:根据领域门m的输出控制卷积核对于源域数据和目标域数据的激活关系;具体而言,首先对领域门m的数值进行gumbel softmax,实现数值二值化;标记由resnet普通通路得到的原始源域数据特征为通过矩阵m的数值确定最终的源域输出为然后将该特征输入到gnn中,得到领域通路对应的概率分布同样的方式,对目标域元学习任务{s
tgt
,q
tgt
,y
tgt
},首先获取到原始目标域数据特征为通过矩阵m的数值确定最终的源域输出为将该该特征输入到gnn中,得
到领域通路对应的概率分布这里,符号f表示视觉特征;
[0045]
步骤7.4:对源域标准通路的概率分布和源域领域通路的概率分布计算小样本元学习任务损失和知识蒸馏损失符号l表示损失函数;具体计算方法如下所示:
[0046][0047][0048]
其中,ce()表示交叉熵损失函数,kd()表示离散散度距离,k表示超参数,具体的,k=0.2
[0049]
步骤7.5:对目标域标准通路的概率分布和源域领域通路的概率分布计算小样本元学习任务损失和知识蒸馏损失具体计算方式跟步骤7.4类似,具体公式如下:
[0050][0051][0052]
步骤7.6:计算得到最终的单次训练损失函数l如下:
[0053][0054][0055]
l=k2·
l
src
(1-k2)
·
l
tgt

ꢀꢀꢀꢀ
(7)
[0056]
其中,k1和k2表示超参数,其取值均为0.2;
[0057]
步骤7.7:用损失l训练此次模型,重复步骤7共num
train
轮,num
train
等于400。
[0058]
步骤8:在目标域未知类别测试数据上对领域可拆分的me-d2n学生模型以小样本元分类任务{s
test
,q
test
}进行性能测试,将数据通过标准通路和普通通路得到两个不同的概率预测结果(同步骤7.2和步骤7.3)得到和将两个预测概率取平均作为最终的预测结果该概率分布中得分最高的类别即为此次的预测类别。重复该步骤1000次,得到最终的模型准确率。
[0059]
本实施例中,模型准确率如下表1:其中,cub,cars,places,plantae表示四个不同的目标域未知类别测试数据。5-way 1-shot以及5-way 5-shot表示每个小样本元学习任务,其中5-way表示每个元学习任务支持集s中共有5个不同的类别,1-shot以及5-shot表示s中的类别有1张/5张支持集样本。
[0060]
表1:模型准确率
[0061] cubcarsplacesplantae平均5-way 1-shot65.05
±
0.8349.53
±
0.7960.36
±
0.8052.89
±
0.8356.965-way 5-shot83.17
±
0.5669.17
±
0.6880.45
±
0.6272.87
±
0.6776.42。
[0062]
参考文献
[0063]
[1]wei-yu chen,yen-cheng liu,zsolt kira,yu-chiang frank wang,and jia-bin huang.2019.a closer look at few-shot classification.arxiv preprint(2019).
[0064]
[2]yuqian fu,yanwei fu,and yu-gang jiang.2021.meta-fdmixup:cross-domain few-shot learning guided by labeled target data.in acm multimedia.5326

5334.
[0065]
[3]yuqian fu,yu xie,yanwei fu,jingjing chen,and yu-gang jiang.2022.wave-san:wavelet based style augmentation network for cross-domain few-shot learning.arxiv preprint(2022).
[0066]
[4]cheng perngphoo and bharath hariharan.2020.self-training for few-shot transfer across extreme task differences.arxiv preprint(2020).
[0067]
[5]jiamei sun,sebastian lapuschkin,wojciech samek,yunqing zhao,ngai-man cheung,and alexander binder.2020.explanation-guided training for cross-domain few-shot classification.arxiv preprint(2020).
[0068]
[6]hung-yu tseng,hsin-ying lee,jia-bin huang,and ming-hsuan yang.2020.cross-domain few-shot classification via learned feature-wise transformation.in iclr.
[0069]
[7]hongyi zhang,moustaphacisse,yann ndauphin,and david lopez-paz.2017.mixup:beyond empirical risk minimization.arxiv preprint(2017).
[0070]
[8]kaiming he,xiangyu zhang,shaoqing ren,and jian sun.2016.deep residual learning for image recognition.in cvpr.
[0071]
[9]victor garcia and joan bruna.2017.few-shot learning with graph neural networks.arxiv preprint(2017).
[0072]
[10]eric jang,shixiang gu,and ben poole.2016.categorical reparameterization with gumbel-softmax.arxiv preprint(2016)。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献