神经网络模型量化方法及装置、存储介质及电子设备制造方法及图纸

技术编号:37202941 阅读:15 留言:0更新日期:2023-04-20 22:57
本公开涉及模型量化技术领域,具体涉及一种神经网络模型量化方法及装置、计算机可读存储介质及电子设备,该方法包括:获取待量化神经网络模型和训练数据;利用训练数据对待量化神经网络模型进行预设数次的量化感知迭代训练;获取初始量化参数,并利用第一次至第N次迭代训练得到的量化参数更新初始量化参数;在每次迭代后根据初始量化参数更新待量化神经网络模型权重,以得到目标神经网络模型;其中,N为大于或等于2且小于或等于预设次数的正整数。本公开实施例的技术方案提升模型量化方法的精度,克服了量化过程中模型精度损失较大的问题,同时提升了量化效率。同时提升了量化效率。同时提升了量化效率。

【技术实现步骤摘要】
神经网络模型量化方法及装置、存储介质及电子设备


[0001]本公开涉及模型量化
,具体而言,涉及一种神经网络模型量化方法及装置、计算机可读存储介质及电子设备。

技术介绍

[0002]随着深度学习的快速发展,深度学习模型的精度不断地得到提高。这些深度学习模型在应用时,也需要消耗巨大的硬件资源,不适用于移动终端等,为了解决在移动终端上应用高精度的深度学习模型,通常会采用对模型进行量化的方法来获得可以在移动终端上使用的模型。
[0003]但是,相关技术中的模型量化方法的量化精度较差,会造成模型的精度损失。
[0004]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0005]本公开的目的在于提供一种神经网络模型量化方法、神经网络模型量化装置、计算机可读介质和电子设备,进而至少在一定程度上提升模型量化方法的精度,克服了量化过程中模型精度损失较大的问题,提升了量化效率。
[0006]根据本公开的第一方面,提供一种神经网络模型量化方法,包括:获取待量化神经网络模型和训练数据;利用所述训练数据对所述待量化神经网络模型进行预设数次的量化感知迭代训练;获取初始量化参数,并利用第一次至第N次迭代训练得到的量化参数更新所述初始量化参数;在每次迭代后根据所述初始量化参数更新所述待量化神经网络模型权重,以得到目标神经网络模型;其中,N为大于或等于1且小于或等于所述预设次数的正整数。
[0007]根据本公开的第二方面,提供一种神经网络模型量化装置,包括:获取模块,用于获取待量化神经网络模型和训练数据;训练模块,用于利用所述训练数据对所述待量化神经网络模型进行预设数次的量化感知迭代训练;参数更新模块,用于获取初始量化参数,并利用第一次至第N次迭代训练得到的量化参数更新所述初始量化参数,所述量化参数包括激活值;模型更新模块,用于在每次迭代后根据所述初始量化参数更新所述待量化神经网络模型权重,以得到目标神经网络模型;其中,N为大于或等于1且小于或等于所述预设次数的正整数。
[0008]根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。
[0009]根据本公开的第四方面,提供一种电子设备,其特征在于,包括:一个或多个处理器;以及存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。
[0010]本公开的一种实施例所提供的神经网络模型量化方法,获取待量化神经网络模型
和训练数据;利用训练数据对待量化神经网络模型进行预设数次的量化感知迭代训练;获取初始量化参数,并利用第一次至第N次迭代训练得到的量化参数更新初始量化参数;在每次迭代后根据初始量化参数更新待量化神经网络模型权重,以得到目标神经网络模型;其中,N为大于或等于2且小于或等于预设次数的正整数。相较于现有技术,利用第一次至第N次迭代训练得到的量化参数更新初始量化参数,充分考虑了多次迭代过程中的量化参数的变化,提升了量化精度,同时,在更新初始量化参数时,并非是每一次迭代都更新,在保证精度的同时,降低了计算量,提升了量化效率。
[0011]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
[0012]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0013]图1示出了可以应用本公开实施例的一种示例性系统架构的示意图;
[0014]图2示意性示出本公开示例性实施例中一种神经网络模型量化方法的流程图;
[0015]图3示意性示出本公开示例性实施例中一种获取待量化神经网络模型的流程图;
[0016]图4示意性示出本公开示例性实施例中另一种获取待量化神经网络模型的流程图;
[0017]图5示意性示出本公开示例性实施例中一种确定量化范围的流程图;
[0018]图6示意性示出本公开示例性实施例中另一种确定量化范围的流程图;
[0019]图7示意性示出本公开示例性实施例中一种量化范围确定的数据结构图;
[0020]图8示意性示出本公开示例性实施例中另一种量化范围确定的数据结构图;
[0021]图9示意性示出本公开示例性实施例中更新初始量化参数的流程图;
[0022]图10示意性示出本公开示例性实施例中另一种新初始量化参数的流程图;
[0023]图11示意性示出本公开示例性实施例中再一种新初始量化参数的流程图;
[0024]图12示意性示出本公开示例性实施例中还一种新初始量化参数的流程图;
[0025]图13示意性示出本公开示例性实施例中神经网络模型量化装置的组成示意图;
[0026]图14示出了可以应用本公开实施例的一种电子设备的示意图。
具体实施方式
[0027]现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
[0028]此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功
能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0029]在相关技术中,随着机器学习、深度学习的不断发展,深度神经网络被广泛的运用在自动驾驶、计算机视觉、自然语言处理、语音识别和数据处理等各个方面。以自动驾驶领域中的物料检测为例,通常是采用训练好的神经网络模型对输入数据进行预测处理,以得到对应的物料检测结果。但是,通常训练好的神经网络模型中的数据通常为32位浮点数,为了使得训练好的神经网络模型可以部署到不同硬件设备(如移动端设备)上,通常对神经网络模型进行量化。
[0030]神经网络模型量化是一种流行的深度学习优化方法,例如,将模型数据从32位浮点数(FP32)转换成定点数(如INT8),使得量化后的模型尺寸缩小,所占用内存比较小,另外,计算使用定点乘法器而不是浮点乘法器,速度更快,并且访问内存所占用的传输带宽更低。基于以上优点,模型量化成为在嵌入式设备上进行网络模型加速的一个重要手段。因此,如何能够使得训练好的神经网络模型较好的适用于嵌入式设备上,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种神经网络模型量化方法,其特征在于,包括:获取待量化神经网络模型和训练数据;利用所述训练数据对所述待量化神经网络模型进行预设数次的量化感知迭代训练;获取初始量化参数,并利用第一次至第N次迭代训练得到的量化参数更新所述初始量化参数;在每次迭代后根据所述初始量化参数更新所述待量化神经网络模型权重,以得到目标神经网络模型;其中,N为大于或等于1且小于或等于所述预设次数的正整数。2.根据权利要求1所述的方法,其特征在于,所述量化参数包括激活值,所述获取初始量化参数,并利用第一次至第N次迭代训练得到的量化参数更新所述初始量化参数,包括:设定第一更新比例和第二更新比例;根据所述每一次迭代的激活值、所述迭代次数N、所述第一更新比例和第二更新比例更新所述初始激活值范围。3.根据权利要求1所述的方法,其特征在于,根据所述每一次迭代的激活值、所述迭代次数N、所述第一更新比例和第二更新比例更新所述初始量化参数,包括:确定所述第一次至第N次迭代训练得到的量化参数中大于所述初始量化参数的第一数量;确定所述第一次至第N次迭代训练得到的量化参数中小于所述初始量化参数的第二数量;响应所述第一数量与所述迭代次数N的比值大于所述第一更新比例,利用所述第一次至第N次迭代训练得到的量化参数的平均值增大所述初始量化参数;响应所述第二数量与所述迭代次数N的比值大于所述第二更新比例,利用所述第一次至第N次迭代训练得到的量化参数的平均值减小所述初始量化参数。4.根据权利要求3所述的方法,其特征在于,所述利用所述第一次至第N次迭代训练得到的量化参数的平均值更新所述初始量化参数:分别确定所述初始量化参数与所述平均值的更新权重;利用所述更新权重、所述初始量化参数以及所述平均值更新所述初始量化参数。5.根据权利要求2所述的方法,其特征在于,根据所述每一次迭代的激活值、所述迭代次数N、所述第一更新比例和第二更新比例更新所述初始量化参数,包括:确定所述第一次至第N次迭代训练得到的量化参数中大于所述初始量化参数的第一数量;确定所述第一次至第N次迭代训练得到的量化参数中小于所述初始量化参数的第二数量;响应所述第一数量与所述迭代次数N的比值大于所述第一更新比例,利用预设更新系数增大所述初始量化参数;响应所述第二数量与所述迭代次数N的比值大于所述第二更新比例,利用预设更新系数减小所述初始量化参数。6.根据权利要求3

5任一项所述的方法,其...

【专利技术属性】
技术研发人员:陈腊梅
申请(专利权)人:OPPO重庆智能科技有限公司
类型:发明
国别省市:

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

1