一种蒸馏式竞争学习的目标分类系统和方法技术方案

技术编号:32556325 阅读:19 留言:0更新日期:2022-03-05 11:57
本发明专利技术针对现有目标分类方法存在的样本错误标记、类别模糊、人为知识干预带来的训练难题,提供一种蒸馏式竞争学习的目标分类系统和方法,可以显著提高基于深度学习的目标识别准确率,为基于深度学习的目标分类领域提供核心技术支撑。心技术支撑。心技术支撑。

【技术实现步骤摘要】
一种蒸馏式竞争学习的目标分类系统和方法


[0001]本专利技术属于信号与信息处理领域
,具体涉及一种目标分类系统和方法。

技术介绍

[0002]目标分类是诸多领域,如计算机视觉、自然语音处理等,最基础和最重要的研究方向之一。在民事上,其广泛应用于自动驾驶、安防、医学等领域。在军事上,其广泛应用于目标侦查、精确制导、远程监视等领域。近年,随着高速运算硬件、大数据以及深度学习技术的快速发展,目标分类技术迈上了一个新台阶。基于深度学习的目标分类准确率大幅超过传统方法,并在多个数据集上达到了超越人类水平的识别性能。
[0003]然而,基于深度学习的目标分类仍面临以下问题:1)错误标注:深度学习依赖大量高质量的标注数据,很多领域的样本从搜索引擎或者开源数据集获取,这些数据存在标注质量不高,误标记较多的问题。
[0004]2)模糊类别:比如图像识别中,狮子和猫之间存在类别模糊的问题,使用传统的独热编码(one

hot)标签学习可能导致模型过拟合,降低泛化性能。
[0005]3)人为知识:样本的独热编码标签是人为标记的,不能保证人为设计的标签最适合神经网络学习。

技术实现思路

[0006]本专利技术针对上述问题,提出一种蒸馏式竞争学习的目标分类系统和方法。包含两个神经网络,每个神经网络的预测结果与独热编码(one

hot)标签进行加权平均作为新的标签知识,对另一个神经网络进行知识蒸馏,使得神经网络相互学习的同时,相互竞争实现比对方更优的结果。不让人为标记的独热编码(one

hot)标签直接参与神经网络学习,使网络有足够的空间进行自我调整,一定程度上解决了错误标注、类别模糊带来的训练难题。蒸馏式竞争学习框图如图1所示。
[0007]本专利技术目的在于实现一种蒸馏式竞争学习的目标分类系统和方法。针对现有目标分类方法存在的样本错误标记、类别模糊、人为知识干预带来的训练难题,提供一种蒸馏式竞争学习的目标分类系统和方法,可以显著提高基于深度学习的目标识别准确率,为基于深度学习的目标分类领域提供核心技术支撑。
[0008]一种蒸馏式竞争学习的目标分类系统,包括输入模块、神经网络1、神经网络2、第一softmax模块、第一加权平均模块、loss1模块、第二softmax模块、第二加权平均模块、loss2模块、独热编码模块。样本经输入模块分别进入神经网络1、神经网络2,神经网络1的输出送至第一softmax模块,第一softmax模块的输出一路送至第一加权平均模块、一路送至loss1模块,神经网络2的输出送至第二softmax模块,第二softmax模块的输出一路送至第二加权平均模块、一路送至loss2模块,独热编码模块的输出分别送至第一加权平均模块、第二加权平均模块,第一加权平均模块的输出送至loss2模块,第二加权平均模块的输出送至loss1模块。
[0009]一种蒸馏式竞争学习的目标分类方法,该方法包括如下步骤:步骤1、网络模型设计:设计或选择两个神经网络模型;蒸馏式竞争学习框图如图1所示,两个神经网络相互竞争学习,每次迭代训练后,试图让自己的预测结果比对方更接近样本标签。神经网络1和神经网络2均采用ResNet50。分别在cifar

10和cifar

100数据集上验证方法效果。因为cifar

10和cifar

100数据集分别含有10和100个类别目标,因此两组实验中,ResNet50的输出维数分别为10和100。
[0010]步骤2、损失函数设计:设计蒸馏式竞争损失函数;蒸馏式竞争损失函数采用交叉熵损失函数,不同之处在于神经网络的标签和的构建。神经网络1和神经网络2的损失函数分别为:
ꢀꢀ
(1)
ꢀꢀ
(2)其中,为总类别数,为神经网络1标签中第类的标注概率,为神经网络1的预测结果中第类的预测概率,为神经网络2标签中第类的标注概率,为神经网络2的预测结果中第类的预测概率。
[0011]步骤3、预训练:前若干训练周期(epoch),利用独热编码(one

hot)训练神经网络,使神经网络快速收敛;前n个训练周期(epoch),利用独热编码(one

hot)训练神经网络,即,和,使神经网络快速收敛。
[0012]步骤4、新标签获取:首先,将当前批次样本送入两个神经网络得到两种预测结果。然后,将两种预测结果分别与独热编码(one

hot)标签加权平均,得到两个神经网络的新标签;从cifar

10或cifar

100训练集中取出一个批次样本,样本经过神经网络1,并用softmax函数运算后得到的预测结果为y
net1
,样本经过神经网络2,并用softmax函数运算后的预测结果为y
net2
,样本的独热编码(one

hot)标签为t
one

hot
,。则神经网络1和神经网络2的标签为:
ꢀꢀ
(3)
ꢀꢀ
(4)其中,为权重因子。
[0013]步骤5、训练:利用当前批次获取的新标签和损失函数对神经网络模型进行训练;利用获取的新标签和损失函数对神经网络模型进行训练。训练中,采用随机水平翻转做数据增广,并对图像进行减均值除方差标准化。采用梯度下降(SGD)法训练神经网络,批大小(batch size)设置为64。模型总共训练100个周期(epoch)。初始学习率设置为0.1,采用学习率余弦退火衰减策略。所有训练过程中权值衰减(weight decay)设为
0.0005,动量(momentum)设为0.9。
[0014]步骤6、迭代训练:重复步骤4

步骤5,直到训练结束。
[0015]步骤7、测试:利用训练好的神经网络对测试样本进行测试。
[0016]利用训练好的神经网络在cifar

10和cifar

100测试集上进行测试。同时,采用相同参数设置对原始单个ResNet50进行训练,然后在cifar

10和cifar

100测试集上进行测试。测试结果如表1所示。可以看出,经过蒸馏式竞争学习的两个ResNet50网络识别效果均好于原始ResNet50,其中,效果最好的神经网络在cifar

10上比原始ResNet50识别率高了0.82%,在cifar

100上比原始ResNet50识别率高2.01%。
[0017]蒸馏式竞争学习框架可以扩展至多神经网络,当神经网络个数大于2时,当次迭代训练中,当前神经网络的损失函数为,当前神经网络与其它所有神经网络的蒸馏式竞争损失函数的平均。
[0018]本专利技术的有益效果是:本专利技术实现本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种蒸馏式竞争学习的目标分类系统,其特征在于:该系统包括输入模块、神经网络1、神经网络2、第一softmax模块、第一加权平均模块、loss1模块、第二softmax模块、第二加权平均模块、loss2模块、独热编码模块;样本经输入模块分别进入神经网络1、神经网络2,神经网络1的输出送至第一softmax模块,第一softmax模块的输出一路送至第一加权平均模块、一路送至loss1模块,神经网络2的输出送至第二softmax模块,第二softmax模块的输出一路送至第二加权平均模块、一路送至loss2模块,独热编码模块的输出分别送至第一加权平均模块、第二加权平均模块,第一加权平均模块的输出送至loss2模块,第二加权平均模块的输出送至loss1模块。2.一种蒸馏式竞争学习的目标分类方法,其特征在于,该方法步骤如下:步骤1、网络模型设计:设计或选择两个神经网络模型;步骤2、损失函数设计:设计蒸馏式竞争损失函数;步骤3、预训练:前若干训练周期,利用独热编码训练神经网络,使神经网络快速收敛;步骤4、新标签获取:首先,将当前批次样本送入两个神经网络得到两种预测结果;然后,将两种预测结果分别与独热编码标签加权平均,得到两个神经网络的新标签;步骤5、训练:利用当前批次获取的新标签和损失函数对神经网络模型进行训练;步骤6、迭代训练:重复步骤4

步骤5,直到训练结束;步骤7、测试:利用训练好的神经网络对测试样本进行测试。3.根据权利要求2所述的方法,其特征在于,步骤1具体为:两个神经网络相互竞争学习,每次迭代训练后,试图让自己的预测结果比对方更接近样本标签;神经网络1和神经网络2均采用ResNet50;分别在cifar

10和cifar

100数据集上验证方法效果。4.根据权利要求2所述的方法,其特征在于,步骤2具体为:蒸馏式竞争损失函数采用交叉熵损失函数,不同之处在于神经网络的标签和的构建;神经网络1和神经网络2的损失函数分别为:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)其中,...

【专利技术属性】
技术研发人员:郭杰谢聪庄龙
申请(专利权)人:中国电子科技集团公司第十四研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1