【技术实现步骤摘要】
基于知识蒸馏的模型训练方法、图像处理方法及装置
本公开一般地涉及图像识别领域,具体涉及一种基于知识蒸馏的模型训练方法、基于知识蒸馏的模型训练装置、图像处理方法、图像处理装置、电子设备和计算机可读存储介质。
技术介绍
随着人工智能识别的发展,普遍采用模型进行数据处理、图像识别等,不断提高识别精度和识别范围的同时,神经网络也越来越庞大,计算耗时、参数多并且所需存储容量巨大。因此很难将其应用于移动端,特别是硬件设备较差的移动端。知识蒸馏是一种模型压缩方法,在教师-学生框架中,将复杂、学习能力强的教师模型学到的特征表示“知识”蒸馏出来,传递给参数量小、学习能力弱的学生模型。简单的说就是用新的小模型去学习大模型的预测结果,复杂模型或者组合模型的中“知识”通过合适的方式迁移到一个相对简单模型之中,进而方便模型推广部署。目前一些知识蒸馏技术主要方法主要针对蒸馏的位置(如最后一层特征输出位置、特征图(featuremap)输出位置,神经网络softmax前的输出logit的位置)等和蒸馏的度量方式两个方向。但是传统方法对所有 ...
【技术保护点】
1.一种基于知识蒸馏的模型训练方法,其中,应用于学生模型,所述方法包括:/n根据蒸馏位置,设置与所述蒸馏位置的第一输出层相同的第二输出层;/n获取训练集,所述训练集包括多个训练数据;/n基于所述训练数据,得到所述第一输出层输出的第一数据、以及所述第二输出层输出的第二数据;/n获取教师模型基于所述训练数据,在与所述蒸馏位置对应的教师层输出的监督数据,其中所述教师模型为已完成训练、且与所述学生模型完成相同任务的复杂模型;/n基于所述监督数据与所述第一数据的差距、以及所述第二数据,根据蒸馏损失函数得到蒸馏损失值;/n基于所述蒸馏损失值,更新所述学生模型的参数。/n
【技术特征摘要】
1.一种基于知识蒸馏的模型训练方法,其中,应用于学生模型,所述方法包括:
根据蒸馏位置,设置与所述蒸馏位置的第一输出层相同的第二输出层;
获取训练集,所述训练集包括多个训练数据;
基于所述训练数据,得到所述第一输出层输出的第一数据、以及所述第二输出层输出的第二数据;
获取教师模型基于所述训练数据,在与所述蒸馏位置对应的教师层输出的监督数据,其中所述教师模型为已完成训练、且与所述学生模型完成相同任务的复杂模型;
基于所述监督数据与所述第一数据的差距、以及所述第二数据,根据蒸馏损失函数得到蒸馏损失值;
基于所述蒸馏损失值,更新所述学生模型的参数。
2.根据权利要求1所述的基于知识蒸馏的模型训练方法,其中,所述蒸馏损失函数设置为所述差距与所述蒸馏损失值正相关;且当所述第二数据提高时,所述蒸馏损失值降低。
3.根据权利要求2所述的基于知识蒸馏的模型训练方法,其中,所述蒸馏损失函数为:
其中,为所述监督数据,为所述第一数据,为所述第二数据。
4.根据权利要求1-3任一项所述的基于知识蒸馏的模型训练方法,其中,
所述训练集还包括:与所述训练数据一一对应的标准标注数据;
所述方法还包括:基于所述训练数据,得到所述学生模型输出的学生输出数据;以及,基于所述标准标注数据以及所述学生输出数据,根据任务损失函数得到任务损失值;
所述基于所述蒸馏损失,更新所述学生模型的参数,包括:基于所述任务损失值与所述蒸馏损失值的损失总值,更新所述学生模型的参数。
5.根据权利要求4所述的基于知识蒸馏的模型训练方法,其中,所述方法还包括:经过多次迭代使得所述损失总值低于训练阈值后,删除所述第二输出层,得到完成训练的学生模型。
6.根据权利要求1所述的基于知识蒸馏的模型训练方法,其中,所述蒸馏位置包括以下一个或多个:...
【专利技术属性】
技术研发人员:张有才,戴雨辰,常杰,危夷晨,
申请(专利权)人:北京迈格威科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。