一种网络模型蒸馏方法及装置制造方法及图纸

技术编号:24459050 阅读:49 留言:0更新日期:2020-06-10 16:26
本申请实施例公开了一种网络模型蒸馏方法及装置,具体地,从第一网络模型(老师模型)的蒸馏位点获取第一通道特征集合,包括M个第一通道特征。同时从第二网络模型(学生模型)的蒸馏位点获取第二通道特征集合,包括N个第二通道特征。按照预设规则及匹配算法从第一通道特征集合中确定出与第二通道特征集合匹配的第三通道特征集合,包括N个通道特征,使得第三通道特征集合与第二通道特征集合匹配。最后,根据第二通道特征集合与第三通道特征集合所匹配的一对通道特征,构建该对通道特征的距离损失函数,利用该距离损失函数对第二网络模型的参数更新,直至构建的距离损失函数满足预设距离阈值,使得第二网络模型学习到第一网络模型的特征表达。

A network model distillation method and device

The embodiment of the application discloses a network model distillation method and device, in particular, obtaining the first channel feature set from the distillation site of the first network model (teacher model), including m first channel features. At the same time, the second channel feature set is obtained from distillation sites of the second network model (student model), including N second channel features. According to the preset rules and matching algorithm, the third channel feature set matching the second channel feature set is determined from the first channel feature set, including N channel features, so that the third channel feature set matches the second channel feature set. Finally, according to a pair of channel features matched by the second channel feature set and the third channel feature set, the distance loss function of the pair of channel features is constructed, and the parameters of the second network model are updated by the distance loss function until the distance loss function meets the preset distance threshold, so that the second network model can learn the feature expression of the first network model.

【技术实现步骤摘要】
一种网络模型蒸馏方法及装置
本申请涉及自动机器学习
,具体涉及一种网络模型蒸馏方法及装置。
技术介绍
卷积神经网络模型蒸馏是一种在广泛使用的小模型训练方法,通常情况况下,小模型具有参数量少、运行速度快、计算资源消耗少的优点,但由于小模型的参数规模较小而存在性能瓶颈、识别准确率不高。模型蒸馏则是使用参数规模较大、性能优异的大模型去引导小模型的训练过程,使后者间接习得前者的特征表达方式,从而达到提升自身性能的目的。其中,模型蒸馏中最主要的步骤在于训练过程中,在大模型和小模型的特定层级(蒸馏位点)的输出特征之间构建距离损失函数,通过该距离损失函数促使小模型的参数进行迭代更新,进而使得小模型输出的特征表达逼近大模型,以使得小模型的识别准确率提高。然而,由于大模型和小模型的参数规模不同,导致从大模型选定的特征对应的通道数目与从小模型选定的特征对应的通道数目不对应,因此,在构造距离损失函数时,需要通过额外的转换算子来对大模型的通道数目进行缩减,但这种缩减会引入额外的参数,增加计算开销。
技术实现思路
<br>有鉴于此,本申本文档来自技高网...

【技术保护点】
1.一种网络模型蒸馏方法,其特征在于,所述方法包括:/n从第一网络模型的蒸馏位点获取第一通道特征集合,所述第一网络模型为利用训练样本预先训练生成的老师模型,所述第一通道特征集合包括M个第一通道特征,其中,M为大于1的正整数;/n从第二网络模型的蒸馏位点获取第二通道特征集合,所述第二网络模型为学生模型,所述第二通道特征集合包括N个第二通道特征,其中,N为大于1的正整数,M大于N;/n根据预设规则以及匹配算法从所述第一通道特征集合中确定出与所述第二通道特征集合匹配的第三通道特征集合,所述第三通道特征集合包括N个通道特征;/n针对所述第二通道特征集合和所述第三通道特征集合所匹配的一对通道特征,构建该...

【技术特征摘要】
1.一种网络模型蒸馏方法,其特征在于,所述方法包括:
从第一网络模型的蒸馏位点获取第一通道特征集合,所述第一网络模型为利用训练样本预先训练生成的老师模型,所述第一通道特征集合包括M个第一通道特征,其中,M为大于1的正整数;
从第二网络模型的蒸馏位点获取第二通道特征集合,所述第二网络模型为学生模型,所述第二通道特征集合包括N个第二通道特征,其中,N为大于1的正整数,M大于N;
根据预设规则以及匹配算法从所述第一通道特征集合中确定出与所述第二通道特征集合匹配的第三通道特征集合,所述第三通道特征集合包括N个通道特征;
针对所述第二通道特征集合和所述第三通道特征集合所匹配的一对通道特征,构建该对通道特征对应的距离损失函数,以根据所述距离损失函数对所述第二网络模型的参数进行更新。


2.根据权利要求1所述的方法,其特征在于,所述根据预设规则以及匹配算法从所述第一通道特征集合中确定出与所述第二通道特征集合匹配的第三通道特征集合,包括:
当所述预设规则为稀疏匹配时,计算所述第二通道特征集合中每一个所述第二通道特征与所述第一通道特征集合中每个所述第一通道特征之间的距离,构成第一距离矩阵,所述第一距离矩阵大小为N*M;
对所述第一距离矩阵进行补充操作,添加P个距离数值,以使得补充后的第一距离矩阵大小为M*M,所述P等于M*M减去N*M;
针对所述补充后的第一距离矩阵中的任一行,选择最小距离数值;
将所述最小距离数值对应的第一通道特征确定为目标通道特征;
将各个所述目标通道特征构成第三通道特征集合。


3.根据权利要求1所述的方法,其特征在于,所述根据预设规则以及匹配算法从所述第一通道特征集合中确定出与所述第二通道特征集合匹配的第三通道特征集合,包括:
当所述预设规则为随机选择时,对所述第一通道特征集合和所述第二通道特征集合进行匹配,获得通道特征匹配对,所述通道特征匹配对中所述第二通道特征至少匹配一个所述第一通道特征;
利用随机函数从目标通道特征匹配对中选择一个所述第一通道特征作为目标通道特征,所述目标通道特征匹配对为任一通道特征匹配对;
将各个所述目标通道特征构成第三通道特征集合。


4.根据权利要求1所述的方法,其特征在于,所述根据预设规则以及匹配算法从所述第一通道特征集合中确定出与所述第二通道特征集合匹配的第三通道特征集合,包括:
当所述预设规则为最大特征值池化时,对所述第一通道特征集合和所述第二通道特征集合进行匹配,获得通道特征匹配对,所述通道特征匹配对中所述第二通道特征至少匹配一个所述第一通道特征;
将所述通道特征匹配对中各个所述第一通道特征对应的最大特征值进行融合,获得目标通道特征;
将各个所述目标通道特征构成第三通道特征集合。


5.根据权利要求3或4所述的方法,其特征在于,当所述匹配算法为匈牙利算法时,所述对所述第一通道特征集合和所述第二通道特征集合进行匹配,获得通道特征匹配对,包括:
从所述第一通道特征集合中确定出第二参数S个第一通道特征,构成第四通道特征集合,其中,S=R*N,
计算所述第二通道特征集合中每个所述...

【专利技术属性】
技术研发人员:岳凯宇邓江帆周峰
申请(专利权)人:北京爱笔科技有限公司
类型:发明
国别省市:北京;11

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

1