【技术实现步骤摘要】
一种模型量化方法及其装置
[0001]本申请涉及人工智能领域,尤其涉及一种模型量化方法及其装置。
技术介绍
[0002]神经网络模型(尤其是实现视觉相关任务的模型)在实际运行的时候需要大量的内存空间和计算资源,这使得将它们部署到移动设备上非常困难。
[0003]为了提升运行效率,通过各种不同的方法用于压缩模型的尺寸,如网络剪枝、模型量化、轻量级架构设计和知识蒸馏。在这些方法中,模型量化是对现有人工智能加速芯片相对更优的技术,因为这些芯片通常专注于低精度的计算,从而可以显著降低模型推理的时延、内存占用以及功耗。然而,现有技术中通过模型量化方法得到的压缩后的模型的精度降低。
技术实现思路
[0004]本申请提供了一种模型量化方法以及相关装置,可以提高网络的精度。
[0005]第一方面,本申请实施例提供了一种模型量化方法,所述方法包括:获取第一特征图,所述第一特征图为神经网络的第一中间层输出的特征图,所述第一特征图包括多个第一特征点,所述神经网络为浮点模型;根据所述多个第一特征点的数值分布,确定满足 ...
【技术保护点】
【技术特征摘要】
1.一种模型量化方法,其特征在于,所述方法包括:获取第一特征图,所述第一特征图为神经网络的第一中间层输出的特征图,所述第一特征图包括多个第一特征点,所述神经网络为浮点模型;根据所述多个第一特征点的数值分布,确定满足预设条件的第一截断区间;所述第一截断区间包括第一上边界阈值和第一下边界阈值,其中,在对所述第一中间层输出的特征图进行量化时,小于所述第一下边界阈值的第一特征点的数值被量化为所述第一下边界阈值,大于所述第一上边界阈值的第一特征点的数值被量化为所述第一上边界阈值;所述预设条件包括:在所述数值截断区间内的特征点的数值分布密度大于在所述数值截断区间外的特征点的数值分布密度。2.根据权利要求1所述的方法,其特征在于,所述预设条件还包括:在所述数值截断区间内的特征点的数量和特征图包括的特征点的数量占比大于第一阈值。3.根据权利要求1或2所述的方法,其特征在于,所述根据所述多个第一特征点的数值分布,确定满足预设条件的第一截断区间,包括:将所述多个第一特征点的数值范围按照数值大小划分为多个数值区间;从所述多个数值区间的两侧向内部依次确定数值分布密度较小的数值区间为边缘数值区间,直至所述多个数值区间中除所述边缘数值区间之外的其他数值区间内的第一特征点的数量和所述多个第一特征点的数量占比小于第二阈值,确定所述其他数值区间为所述第一截断区间。4.根据权利要求1至3任一所述的方法,其特征在于,所述第一特征图为神经网络在处理第一批batch训练样本时第一中间层输出的特征图;所述方法还包括:获取第二特征图,所述第二特征图为所述神经网络在处理第二批batch训练样本时所述第一中间层输出的特征图,所述第二特征图包括多个第二特征点;根据所述多个第二特征点的数值分布,确定满足所述预设条件的第二截断区间;所述第二截断区间包括第二上边界阈值和第二下边界阈值;根据所述第二截断区间,对所述第一截断区间进行更新,得到第三截断区间。5.根据权利要求4所述的方法,其特征在于,所述根据所述第二截断区间,对所述第一截断区间进行更新,包括:根据所述第二截断区间,通过指数移动平均对所述第一截断区间进行更新。6.根据权利要求1至5任一所述的方法,其特征在于,所述方法还包括:获取第三特征图,所述第三特征图为神经网络的第二中间层输出的特征图,所述第三特征图包括多个第三特征点,所述神经网络为浮点模型;根据所述多个第三特征点的数值分布,确定满足所述预设条件的第三截断区间;所述第三截断区间包括第三上边界阈值和第三下边界阈值,其中,在对所述第二中间层输出的特征图进行量化时,小于所述第三下边界阈值的第三特征点的数值被量化为所述第三下边界阈值,大于所述第三上边界阈值的第三特征点的数值被量化为所述第三上边界阈值。7.根据权利要求1至6任一所述的方法,其特征在于,所述第一截断区间用于对所述神经网络进行量化,得到量化后的神经网络;所述方法还包括:
获取第一输出和第二输出,所述第一输出为所述神经网络在处理训练样本时中间层或者输出层的输出,所述第二输出为所述量化后的神经网络在处理所述训练样本时中间层或者输出层的输出;根据所述第一输出和所述第二输出,确定损失,并根据所述损失对所述第一截断区间进行更新。8.根据权利要求7所述的方法,其特征在于,所述训练样本为无标签的数据。9.根据权利要求7或8所述的方法,其特征在于,所述第一输出和所述第二输出为中间层输出的特征图;所述根据所述第一输出和所述第二输出,确定损失,包括:对所述第一输出和所述第二输出分别计算L2的范数,得到处理后的第一输出和处理后的第二输出;根据所述处理后的第一输出和处理后的第二输出之间的均方误差,确定损失。10.根据权利要求7至9任一所述的方法,其特征在于,所述根据所述损失对所述第一截断区间进行更新,包括:在保持针对于所述神经网络的权重参数对应的截断区间不变的情况下,根据所述损失对所述第一截断区间进行更新。11.一种模型量化装置,其特征在于,所述装置包括:获取模块,用于获取第一特征图,所述第一特征图为神经网络的第一中间层输出的特征图,所述第一特征图包括多个第一特征点,所述神经网络为浮点模型;处理模块,用于根据所述多个第一特征点的数值分布,确定满足预设条件的第一截断区间;...
【专利技术属性】
技术研发人员:涂志俊,胡杰,陈汉亭,王云鹤,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。