[发明专利]用于使用知识蒸馏训练神经网络模型的方法和系统在审
申请号: | 202180054067.1 | 申请日: | 2021-09-09 |
公开(公告)号: | CN116134454A | 公开(公告)日: | 2023-05-16 |
发明(设计)人: | 佩曼·帕斯班;吴伊萌;梅赫迪·雷扎霍利扎德 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06N3/096 | 分类号: | G06N3/096;G06N3/0455;G06N3/084 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 蔡维华;刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 使用 知识 蒸馏 训练 神经网络 模型 方法 系统 | ||
1.一种从具有多个教师隐藏层的教师神经模型向具有多个学生隐藏层的学生神经模型进行知识蒸馏的方法,所述方法包括:
训练所述教师神经模型,其中所述教师神经模型被配置为接收输入并生成教师输出;以及
在多个训练输入上训练所述学生神经模型,其中所述学生神经模型也被配置为接收输入并生成对应的输出,包括:
使用所述教师神经模型处理每个训练输入,以针对所述训练输入生成所述教师输出,所述多个教师隐藏层中的每一层生成教师隐藏层输出;
将所述多个教师隐藏层的子集映射到所述多个学生隐藏层中的每一层;
计算映射到所述多个学生隐藏层中的每一层的所述多个教师隐藏层的子集的所述教师隐藏层输出的表征;以及
训练所述学生以针对所述训练输入中的每一个生成近似于针对所述训练输入的所述教师输出的学生输出,其中,针对所述训练输入中的每一个,所述多个学生隐藏层中的每一层被训练为生成学生隐藏层输出,所述学生隐藏层输出近似于映射到所述多个学生隐藏层中的每一层的所述多个教师隐藏层的子集的所述表征。
2.根据权利要求1所述的方法,还包括训练所述学生,以针对所述训练输入中的每一个,生成近似于所述训练输入的真值的学生输出。
3.根据权利要求2所述的方法,其中训练所述学生以生成近似于针对所述训练输入的所述教师输出的学生输出还包括:
计算所述学生输出和所述教师输出之间的知识蒸馏KD损失;
计算所述学生输出和所述真值之间的标准损失;
计算所述多个学生隐藏层中的每一层和映射到所述多个学生层中的每一层的所述教师隐藏层的子集之间的组合KD CKD损失;
将总损失计算为所述KD损失、所述标准损失和所述CKD损失的加权平均;以及
调整所述学生的参数,以最小化所述总损失。
4.根据权利要求3所述的方法,其中所述CKD损失通过以下方式计算:
其中
是所述CKD损失;
MSE()是均方误差函数;
是所述学生的第i个隐藏层;
fiT是通过fiT=F(HT(i))计算的所述教师的第i个隐藏层,其中
F()是由所述教师的第一隐藏层和第三隐藏层提供的融合函数,F()的输出被映射到所述学生的第二隐藏层
Hs和HT分别是所述学生和所述教师的所有隐藏层的集合;
HT(i)是被选择以待映射到所述学生的第i个隐藏层的所述教师的隐藏层的子集;并且
M()是映射函数,所述映射函数采用引用所述学生的隐藏层的索引,并为所述教师返回一组索引。
5.根据权利要求4所述的方法,其中所述融合函数F()包括级联操作,后跟线性映射层。
6.根据权利要求5所述的方法,所述融合函数F()由以下定义:
其中
“;”是级联算子;
mul()是矩阵乘法运算;并且
W和b是可学习参数。
7.根据权利要求4所述的方法,其中所述映射函数M()定义用于组合所述教师的隐藏层的组合策略。
8.根据权利要求7所述的方法,其中所述组合策略为重叠组合、常规组合、跳过组合和交叉组合中的任一种。
9.根据权利要求1至8中任一项所述的方法,其中所述映射还包括,定义用于将所述教师隐藏层映射到所述多个学生隐藏层中的每一层的组合策略。
10.根据权利要求9所述的方法,其中所述组合策略为重叠组合、常规组合、跳过组合和交叉组合中的任一种。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202180054067.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:脂肪酸视黄酯形成的减少
- 下一篇:靶向人和小鼠INSL5的化合物和方法