本发明涉及深度学习,具体涉及一种适用于ai芯片的量化调优装置及方法。
背景技术:
1、随着ai技术的不断发展,用于加速人工智能计算的专用ai芯片得到广泛应用。ai芯片中嵌入有神经网络模型,同时为适应算力需求,需进行模型压缩,其中,神经网络量化是实现这些需求最有效的方法之一。
2、目前,在神经网络量化加速算法中,大多采用ptq(post-training quantization)和qat(quantization-aware training)量化技术。
3、ptq量化技术是一种在训练后对模型进行量化的方法。它的优点包括需要较少的校准数据和较快的量化速度,可以更快部署模型。ptq通过将已训练好的模型转换为低精度表示,如整数或二进制,来实现模型压缩和加速。
4、qat量化技术通过在训练过程中引入量化操作,使模型对量化误差具有鲁棒性。qat可以通过模拟量化操作或使用硬件支持的量化函数来实现。qat可以有效减少量化带来的精度损失。
5、然而,ptq可能导致不小的模型精度损失,并且在某些情况下可能需要手动调整超参数来优化性能;而qat通常需要大量的校准数据,并且量化操作相对较慢,影响部署效率。
技术实现思路
1、针对背景技术中所提及的技术缺陷,本发明实施例的目的在于提供一种适用于ai芯片的量化调优装置及方法,在兼顾模型精度的前提下,实现更好的模型压缩和加速效果。
2、为实现上述目的,第一方面,本发明实施例提供了一种适用于ai芯片的量化调优装置,包括:
3、拆分模块,用于按约束条件将模型拆分成多个子图;其中,所述模型为深度学习浮点模型,所述约束条件为ai芯片在量化过程中所面临的限制;
4、设定模块,用于采用组合方式,组合了众多调优设定,以得到对应的调优策略;
5、处理模块,用于:
6、依次对每个子图结合所述调优策略进行调优处理并进行效果判断;
7、若判断结果为优于调优前且已为最后一个子图时,结束量化调优并更新对应的量化参数。
8、作为本申请的一种优选实现方式,所述调优设定包括搜索设定,子图观察层设定,子图的输入设定和定义了对每个子图的观察层所使用的评价指标以及如何比较相应指标。
9、作为本申请的一种优选实现方式,所述搜索设定包括:
10、仅调优部分校准效果不好的层的激活scale/zero point;
11、调优所有层的激活scale/zero point;
12、调优所有层的激活和权重的scale/zero point。
13、作为本申请的一种优选实现方式,所述子图观察层设定用于为子图指定观察层,所述观察层包括:
14、子图输出;
15、子图的下一层;
16、子图的下n层;其中,n为正整数;
17、模型输出。
18、作为本申请的一种优选实现方式,所述的一种适用于ai芯片的量化调优装置,还包括调优器模块,所述调优器模块用于使用组合方式,组合了众多调优器。
19、作为本申请的一种优选实现方式,进行调优处理时,将尝试不同的量化参数;并且仅当该量化参数使得整个模型或子图的量化损失优于调优前时,才会替换原有量化参数。
20、第二方面,本发明实施例还提供了一种适用于ai芯片的量化调优方法,应用于第一方面所述的一种适用于ai芯片的量化调优装置,所述方法包括:
21、按约束条件将模型拆分成多个子图;其中,所述模型为深度学习浮点模型,所述约束条件为ai芯片在量化过程中所面临的限制;
22、采用组合方式,组合了众多调优设定,以得到对应的调优策略;
23、依次对每个子图结合所述调优策略进行调优处理并进行效果判断;
24、若判断结果为优于调优前且已为最后一个子图时,结束量化调优并更新对应的量化参数。
25、本发明实施例提供的技术方案,采用模块化设计结构,方便针对不同模型,采用不同的组合方式,得出对应的调优策略;同时,将模型按约束条件划分为多个子图逐一进行调优,尝试不同的量化参数并进行择优更新,实现更好的调优效果;与现有的ptq和qat量化技术相比,本技术方案所需的数据量与ptq相近,并且能够在保持模型精度的前提下,实现更好的模型压缩和加速效果。
1.一种适用于ai芯片的量化调优装置,其特征在于,包括:
2.如权利要求1所述的一种适用于ai芯片的量化调优装置,其特征在于,所述调优设定包括搜索设定,子图观察层设定,子图的输入设定和定义了对每个子图的观察层所使用的评价指标以及如何比较相应指标。
3.如权利要求2所述的一种适用于ai芯片的量化调优装置,其特征在于,所述搜索设定包括:
4.如权利要求2所述的一种适用于ai芯片的量化调优装置,其特征在于,所述子图观察层设定用于为子图指定观察层,所述观察层包括:
5.如权利要求1至4中任一项所述的一种适用于ai芯片的量化调优装置,其特征在于,还包括调优器模块,所述调优器模块用于使用组合方式,组合了众多调优器。
6.如权利要求5所述的一种适用于ai芯片的量化调优装置,其特征在于,进行调优处理时,将尝试不同的量化参数;并且仅当该量化参数使得整个模型或子图的量化损失优于调优前时,才会替换原有量化参数。
7.一种适用于ai芯片的量化调优方法,其特征在于,应用于权利要求1所述的一种适用于ai芯片的量化调优装置,所述方法包括:
8.如权利要求6所述的一种适用于ai芯片的量化调优方法,其特征在于,所述调优设定包括搜索设定,子图观察层设定,子图的输入设定和定义了对每个子图的观察层所使用的评价指标以及如何比较相应指标。
9.如权利要求7或8所述的一种适用于ai芯片的量化调优方法,其特征在于,所述方法还包括:使用组合方式,组合了众多调优器。
10.如权利要求9所述的一种适用于ai芯片的量化调优方法,其特征在于,进行调优处理时,将尝试不同的量化参数;并且仅当该量化参数使得整个模型或子图的量化损失优于调优前时,才会替换原有量化参数。