一种量化参数确定方法、混合精度量化方法以及装置与流程

文档序号:33809788发布日期:2023-04-19 13:22阅读:86来源:国知局
一种量化参数确定方法、混合精度量化方法以及装置与流程

本公开涉及人工智能,尤其涉及深度学习以及自动驾驶等。


背景技术:

1、目前,在训练模型时通常会选择精度较高的数据格式,如fp64(双精度浮点数)、fp32(单精度浮点数)等等,以得到准确度较高的模型。但在实际应用中,由于对于模型处理数据的快速高效需求,通常会对训练得到的模型进行模型推理,如降低模型中参数的数据精度等以对模型进行简化,来提高模型运行速率。


技术实现思路

1、本公开提供了一种量化参数确定方法、混合精度量化方法以及装置,以提高量化精度。

2、根据本公开的一方面,提供了一种量化参数确定方法,包括:

3、获取基于目标模型中各网络层的数据格式确定的多个计算图,其中,每个所述计算图中的各网络层的数据格式相同,且至少两个所述计算图中的网络层的数据格式不同;

4、基于各所述计算图,确定各所述计算图中的精度转换节点;所述精度转换节点为将数据输出至其他计算图的节点;

5、针对各所述计算图中除所述精度转换节点外的各内部节点,基于所述内部节点的精度量化损失以及所述精度转换节点的精度量化损失,确定所述内部节点的量化参数,作为所述内部节点所表示的网络层的量化参数。

6、根据本公开的另一方面,提供了一种混合精度量化方法,包括:

7、确定原始模型中各网络层量化后数据格式,得到目标模型;

8、基于所述目标模型中各网络层的量化参数,对所述目标模型进行量化,得到量化后模型;所述量化参数通过以下步骤预先获取:获取基于目标模型中各网络层的数据格式确定的多个计算图,其中,每个所述计算图中的各网络层的数据格式相同,且至少两个所述计算图中的网络层的数据格式不同;

9、基于各所述计算图,确定各所述计算图中的精度转换节点;所述精度转换节点为将数据输出至其他计算图的节点;

10、针对各所述计算图中除所述精度转换节点外的各内部节点,基于所述内部节点的精度量化损失以及所述精度转换节点的精度量化损失,确定所述内部节点的量化参数,作为所述内部节点所表示的网络层的量化参数。

11、根据本公开的另一方面,提供了一种量化参数确定装置,包括:

12、计算图获取模块,用于获取基于目标模型中各网络层的数据格式确定的多个计算图,其中,每个所述计算图中的各网络层的数据格式相同,且至少两个所述计算图中的网络层的数据格式不同;

13、精度转换节点确定模块,用于基于各所述计算图,确定各所述计算图中的精度转换节点;所述精度转换节点为将数据输出至其他计算图的节点;

14、量化参数确定模块,用于针对各所述计算图中除所述精度转换节点外的各内部节点,基于所述内部节点的精度量化损失以及所述精度转换节点的精度量化损失,确定所述内部节点的量化参数,作为所述内部节点所表示的网络层的量化参数。

15、根据本公开的另一方面,提供了一种混合精度量化装置,包括:

16、目标模型获取模块,用于确定原始模型中各网络层量化后数据格式,得到目标模型;

17、量化模块,用于基于所述目标模型中各网络层的量化参数,对所述目标模型进行量化,得到量化后模型;所述量化参数通过以下步骤预先获取:获取基于目标模型中各网络层的数据格式确定的多个计算图,其中,每个所述计算图中的各网络层的数据格式相同,且至少两个所述计算图中的网络层的数据格式不同;

18、基于各所述计算图,确定各所述计算图中的精度转换节点;所述精度转换节点为将数据输出至其他计算图的节点;

19、针对各所述计算图中除所述精度转换节点外的各内部节点,基于所述内部节点的精度量化损失以及所述精度转换节点的精度量化损失,确定所述内部节点的量化参数,作为所述内部节点所表示的网络层的量化参数。

20、根据本公开的另一方面,提供了一种电子设备,包括:

21、至少一个处理器;以及

22、与所述至少一个处理器通信连接的存储器;其中,

23、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述任一所述的量化参数确定方法和/或混合精度量化方法。

24、根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行上述任一所述的量化参数确定方法和/或混合精度量化方法。

25、根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述任一所述的量化参数确定方法和/或混合精度量化方法。

26、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。



技术特征:

1.一种量化参数确定方法,包括:

2.根据权利要求1所述的方法,还包括:

3.根据权利要求1所述的方法,还包括:针对各所述计算图,基于所述精度转换节点的精度量化损失,确定所述精度转换节点的量化参数,作为所述精度转换节点所表示的网络层的量化参数。

4.根据权利要求1所述的方法,还包括:

5.根据权利要求1所述的方法,其中,所述基于所述内部节点的精度量化损失以及所述精度转换节点的精度量化损失,确定所述内部节点的量化参数,包括:

6.一种混合精度量化方法,包括:

7.一种量化参数确定装置,包括:

8.根据权利要求7所述的装置,还包括:

9.根据权利要求7所述的装置,所述量化参数确定模块,用于针对各所述计算图,基于所述精度转换节点的精度量化损失,确定所述精度转换节点的量化参数,作为所述精度转换节点所表示的网络层的量化参数。

10.根据权利要求7所述的装置,还包括:

11.根据权利要求7所述的装置,其中,所述基于所述内部节点的精度量化损失以及所述精度转换节点的精度量化损失,确定所述内部节点的量化参数,包括:

12.一种混合精度量化装置,包括:

13.一种电子设备,包括:

14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-5或6中任一项所述的方法。

15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-5或6中任一项所述的方法。


技术总结
本公开提供了一种量化参数确定方法、混合精度量化方法以及装置,涉及人工智能领域,尤其涉及深度学习以及自动驾驶领域。具体实现方案为:获取基于目标模型中各网络层的数据格式确定的多个计算图;确定各计算图中的精度转换节点;针对各计算图中除精度转换节点外的各内部节点,基于内部节点的精度量化损失以及精度转换节点的精度量化损失,确定内部节点的量化参数,作为内部节点所表示的网络层的量化参数。通过在确定计算图中的内部节点的量化参数时,考虑精度转化节点处的精度损失,即考虑到模型内采用不同数据格式的节点之间的数据转换带来的精度损失,从而可以使得精度量化损失达到全局以及局部最优,提高了量化精度。

技术研发人员:龚孚
受保护的技术使用者:北京百度网讯科技有限公司
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1