[发明专利]一种用于混合位宽超网络的充分训练方法在审
| 申请号: | 202210965207.7 | 申请日: | 2022-08-12 |
| 公开(公告)号: | CN115438784A | 公开(公告)日: | 2022-12-06 |
| 发明(设计)人: | 王玉峰;张泽豪;方双康;丁文锐 | 申请(专利权)人: | 北京航空航天大学 |
| 主分类号: | G06N3/08 | 分类号: | G06N3/08;G06N3/04 |
| 代理公司: | 北京永创新实专利事务所 11121 | 代理人: | 易卜 |
| 地址: | 100191*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 用于 混合 位宽超 网络 充分 训练 方法 | ||
1.一种用于混合位宽超网络的充分训练方法,其特征在于,具体步骤如下:
首先,对于含有n个位宽的搜索空间,分别训练各位宽的单精度网络,形成各自的量化网络;对每个量化网络进行训练直至网络收敛,计算不同位宽对应的量化网络中各层量化的误差,形成单精度网络的量化误差Q;
针对量化网络archn中第l层的量化误差值qln,计算方式如下:
其中,xln表示量化网络archn中第l层中的全精度数据,xlnq表示对全精度数据xln进行位宽为bn的量化后的数据;M表示当前层中的数据个数,量化网络的总层数为L,Q={ql}l=1:L表示单精度网络的量化误差,其中ql=[ql1,ql2…qln];
然后,在网络结构的各卷积层中,插入含有候选位宽的量化器来构建混合位宽超网络;在训练混合位宽超网络的每一个轮次开始前,计算当前超网络在每一位宽下的量化误差,形成超网络的量化误差
具体操作方式如下:
首先,将超网络的所有量化器位宽均转换到b1上,计算此时的所有层的量化误差具体计算方式如下:
其中,表示超网络中第l层中的全精度数据;表示对全精度数据进行位宽为b1的量化后的数据;
其次,依次将超网络的量化器位宽转换到b2,b3,...,bn上,分别计算在该配置下的超网络量化误差由此,得到超网络的量化误差矩阵其中每一层的量化误差可表示为:
包含了该层n个候选位宽下的量化误差值;
接着,根据超网络的量化误差与单精度网络的量化误差Q之间的差距,动态调整训练轮次中超网络每层位宽的采样概率;
最后,超网络训练完成后,在超网络上进行搜索,从所有候选网络中找到满足精度与计算量权衡的最优候选网络。
2.如权利要求1所述的一种用于混合位宽超网络的充分训练方法,其特征在于,所述对于含有n个位宽的确定网络结构arch,搜索空间为B{b1,b2,...,bn},分别对网络结构arch中各卷积层的输入与权重进行位宽为b1到bn的量化,形成量化网络arch1,arch2,...,archn。
3.如权利要求1所述的一种用于混合位宽超网络的充分训练方法,其特征在于,所述构建混合位宽超网络,具体插入过程为:
在各卷积层的输入端分别插入输入量化器,在各卷积核部分分别插入权重量化器,每个量化器都有n个候选位宽,对应了搜索空间中的位宽;在训练过程中对每个位宽进行采样,采样完成后每个量化器的位宽将转换到所采样的位宽上,完成输入数据的前向传播过程。
4.如权利要求1所述的一种用于混合位宽超网络的充分训练方法,其特征在于,所述动态调整采样概率的具体过程为:
首先,求取超网络第l层第n个候选位宽的差值时,计算方式为:
若Δln为正数,则代表在位宽bn下,超网络的第l层的量化误差大于单精度网络的量化误差,该位宽下该层训练还不充分,需要进一步训练;而Δln为负数,则代表该层该位宽下训练误差已经足够小,在接下来的训练中可以减少对该位宽的采样次数;
然后,在误差差值计算完毕后,对Δln中的数值进行调整,保留其正数部分,负数值则置0,表示为:
最后,将每一层卷积各位宽间的量化误差差值进行归一化得到当前轮次各位宽的采样概率:
至此得到了超网络在当前训练轮次中各位宽的采样概率,Δln数值越大,说明当前位宽的训练充分度越低,因而当前轮次对其的采样概率pln越大,越容易使得当前位宽下的网络得到训练,从而降低该位宽下网络的量化误差,提升其量化准确度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210965207.7/1.html,转载请声明来源钻瓜专利网。





