针对AI加速芯片的自动混合精度训练方法及装置与流程

文档序号:37630974发布日期:2024-04-18 17:45阅读:11来源:国知局
针对AI加速芯片的自动混合精度训练方法及装置与流程

本公开涉及计算机,尤其涉及一种针对ai加速芯片的自动混合精度训练方法及装置。


背景技术:

1、ai加速芯片也可称为ai芯片或ai计算卡,专门用于处理人工智能应用中的大量计算任务。这些ai加速芯片针对人工智能算法进行了特殊的加速设计,以高效地处理复杂的数学计算和数据处理任务。ai加速芯片是推动人工智能发展的重要基础设施之一,其通过提供强大的计算能力和优化的算法,使得人工智能技术得以更快、更准确地运行。

2、目前,为了节省显存和提高加快ai加速芯片的计算速度,在利用ai加速芯片执行神经网络推理训练时,通常采用自动混合精度训练(automatic mixed precision,amp)方式,该amp方式可以在神经网络模型的推理过程中,针对不同的算子,采用不同的数据精度进行计算,从而起到节省显存和加快计算速度的作用,也即amp可以让每一个算子都匹配各自对应的数据精度,例如,一些算子采用较高精度的32位浮点型(float32),另外一些算子采用更低精度的16位浮点型(float16或bfloat16)。

3、而目前神经网络模型的训练框架的自动混合精度训练能力与ai加速芯片高度耦合,当某一训练框架需要在一款新的ai加速芯片支持自动混合精度训练时,需要技术人员调整ai加速芯片实现统一的计算偏好或者根据ai加速芯片的计算偏好,编写逻辑代码使算子使用合适的数据精度,因此每次支持新的ai加速芯片都需要重新开发训练框架,也即需要针对不同ai加速芯片定制适配的训练框架,存在适配工作量大、技术要求高、重复工作多等问题。


技术实现思路

1、本公开提出了一种针对ai加速芯片的自动混合精度训练技术方案。

2、根据本公开的一方面,提供了针对ai加速芯片的自动混合精度训练方法,包括:响应于所述ai加速芯片执行目标训练框架下的自动混合精度训练,获取当前待计算的输入数据,并从所述目标训练框架中预设的算子精度配置文件中查询待调用的训练算子偏好的目标数据精度,所述算子精度配置文件中定义有所述目标训练框架中各种训练算子偏好的数据精度;根据查询到的目标数据精度以及所述输入数据原始的数据精度,确定具有所述目标数据精度的目标输入数据,并调用所述训练算子对所述目标输入数据进行计算,以使所述ai加速芯片完成所述目标训练框架下的自动混合精度训练。

3、在一种可能的实现方式中,所述目标训练框架中设有默认配置文件,所述默认配置文件定义有所述目标训练框架中各种训练算子默认的数据精度;在所述ai加速芯片执行所述目标训练框架下的自动混合精度训练之前,所述方法还包括:检查所述默认配置文件所定义的各种训练算子默认的数据精度与所述ai加速芯片执行各种训练算子时所偏好的数据精度是否一致;在所述默认配置文件所定义的各种训练算子默认的数据精度与所述ai加速芯片执行各种训练算子时所偏好的数据精度一致的情况下,将所述默认配置文件确定为所述算子精度配置文件。

4、在一种可能的实现方式中,所述方法还包括:在所述默认配置文件中存在训练算子默认的数据精度与所述ai加速芯片所偏好的数据精度不一致的情况下,基于所述ai加速芯片所偏好的数据精度,对所述默认配置文件进行修改,得到所述算子精度配置文件。

5、在一种可能的实现方式中,所述根据查询到的目标数据精度以及所述输入数据原始的数据精度,确定具有所述目标数据精度的目标输入数据,包括:在查询到的目标数据精度与所述输入数据原始的数据精度不同的情况下,对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据;在查询到的目标数据精度与所述输入数据原始的数据精度相同的情况下,将所述输入数据确定为具有所述目标数据精度的目标输入数据。

6、在一种可能的实现方式中,所述目标训练框架中定义有数据精度转换接口,所述数据精度转换接口用于对输入数据进行精度转换,其中,所述对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据,包括:调用所述ai加速芯片提供的所述数据精度转换接口对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据。

7、在一种可能的实现方式中,所述对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据,包括:在调用通用处理器提供的数据精度转换接口对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据。

8、在一种可能的实现方式中,待调用的训练算子有两种以上,两种以上训练算子对应查询到至少一种目标数据精度,所述对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据,包括:基于所述两种以上训练算子对应查询到的至少一种目标数据精度,对所述输入数据进行精度转换,得到至少一种目标输入数据;其中,所述方法还包括:对所述输入数据及所述输入数据对应的所述至少一种目标输入数据进行存储并建立查询索引,所述查询索引用于查询所述输入数据在任一目标数据精度下的目标输入数据。

9、根据本公开的一方面,提供了一种针对ai加速芯片的自动混合精度训练装置,包括:查询模块,用于响应于所述ai加速芯片执行目标训练框架下的自动混合精度训练,获取当前待计算的输入数据,并从所述目标训练框架中预设的算子精度配置文件中查询待调用的训练算子偏好的目标数据精度,所述算子精度配置文件中定义有所述目标训练框架中各种训练算子偏好的数据精度;计算模块,用于根据查询到的目标数据精度以及所述输入数据原始的数据精度,确定具有所述目标数据精度的目标输入数据,并调用所述训练算子对所述目标输入数据进行计算,以使所述ai加速芯片完成所述目标训练框架下的自动混合精度训练。

10、在一种可能的实现方式中,所述目标训练框架中设有默认配置文件,所述默认配置文件定义有所述目标训练框架中各种训练算子默认的数据精度;在所述ai加速芯片执行所述目标训练框架下的自动混合精度训练之前,所述装置还包括:检查模块,用于检查所述默认配置文件所定义的各种训练算子默认的数据精度与所述ai加速芯片执行各种训练算子时所偏好的数据精度是否一致;在所述默认配置文件所定义的各种训练算子默认的数据精度与所述ai加速芯片执行各种训练算子时所偏好的数据精度一致的情况下,将所述默认配置文件确定为所述算子精度配置文件。

11、在一种可能的实现方式中,所述装置还包括:修改模块,用于在所述默认配置文件中存在训练算子默认的数据精度与所述ai加速芯片所偏好的数据精度不一致的情况下,基于所述ai加速芯片所偏好的数据精度,对所述默认配置文件进行修改,得到所述算子精度配置文件。

12、在一种可能的实现方式中,所述根据查询到的目标数据精度以及所述输入数据原始的数据精度,确定具有所述目标数据精度的目标输入数据,包括:在查询到的目标数据精度与所述输入数据原始的数据精度不同的情况下,对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据;在查询到的目标数据精度与所述输入数据原始的数据精度相同的情况下,将所述输入数据确定为具有所述目标数据精度的目标输入数据。

13、在一种可能的实现方式中,所述目标训练框架中定义有数据精度转换接口,所述数据精度转换接口用于对输入数据进行精度转换,其中,所述对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据,包括:调用所述ai加速芯片提供的所述数据精度转换接口对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据。

14、在一种可能的实现方式中,所述对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据,包括:调用通用处理器提供的数据精度转换接口对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据。

15、在一种可能的实现方式中,待调用的训练算子有两种以上,两种以上训练算子对应查询到至少一种目标数据精度,所述对所述输入数据进行精度转换,得到具有所述目标数据精度的目标输入数据,包括:基于所述两种以上训练算子对应查询到的至少一种目标数据精度,对所述输入数据进行精度转换,得到至少一种目标输入数据;其中,所述装置还包括:存储模块,用于对所述输入数据及所述输入数据对应的所述至少一种目标输入数据进行存储并建立查询索引,所述查询索引用于查询所述输入数据在任一目标数据精度下的目标输入数据。

16、根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。

17、根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。

18、在本公开实施例中,通过利用预设的算子精度配置文件定义目标训练框架下的自动混合精度训练中各种训练算子偏好的数据精度,并在调用训练算子进行计算之前先从算子精度配置文件查询待调用的训练算子偏好的目标数据精度,进而根据查询到的目标数据精度与原始的数据精度自动确定出具有目标数据精度的目标输入数据,再调用训练算子对目标输入数据进行计算,能够使计算总发生在为各训练算子设计的较优数据精度上,从而尽量在不影响算子计算精度的前提下加快训练算子的计算速度,也即使目标训练框架的自动混合精度训练自动适配ai加速芯片,无需ai加速芯片无需对目标训练框架的自动混合精度训练过程做额外支持,也无需人工手动对目标训练框架做额外的适配工作,降低ai加速芯片与目标训练框架之间的适配成本,使目标训练框架可以高效地自动适配到不同ai加速芯片中执行自动混合精度训练。

19、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1