当前位置: 首页 > 专利查询>之江实验室专利>正文

一种高性能算子选择的动态决策方法及装置制造方法及图纸

技术编号:39670349 阅读:11 留言:0更新日期:2023-12-11 18:35
本说明书公开了一种高性能算子选择的动态决策方法及装置,包括:在选择模型中特定算子应该由算子库中具体的哪一个算子实现时,需要定位到模型中特定算子的

【技术实现步骤摘要】
一种高性能算子选择的动态决策方法及装置


[0001]本说明书涉及深度学习算子优化领域,尤其涉及一种高性能算子选择的动态决策方法及装置


技术介绍

[0002]在深度学习模型训练中,基于不同加速芯片的算子库其性能表现不同,对于硬件厂商而言,开发出适合自家芯片的计算算子库,并进行持续的迭代优化是十分重要的工作

[0003]然而,一方面由于深度学习加速卡的弱复杂逻辑判断处理能力,硬件算子库的开发人员或
AI
编译器很难将计算密集型算子的泛化性能和性能相统一;另一方面,定制化
AI
芯片的算子库建设往往也需要定制化,面临巨大的工作量

因此,为了解决算子泛化性和高性能之间的矛盾,通常的做法是对同一算子进行多种不同的实现,每种实现所适用的算子特征参数(
shape
特征)的区间不一致,其性能的侧重点不同,通过添加算子特征区间的限制,这样就可以在小范围内实现性能较好的算子,也有利于算子库的开发和迭代

然而,在具体的模型训练中,如何高效的选择到性能最佳的算子实现是算子库面临的一个重要问题

如果在训练中没有选择到算子库中的高性能那个算子,往往会导致模型训练的性能极差,而目前所采用的主要方法是通过给定每个算子一个静态的分值来表示这个算子的性能好坏,根据分值大小进行算子选择

这种做法的一个问题是,在具体场景下的选择精度问题,即所选算子并不一定是库中性能最佳的实现,因为每个算子在其所适用的特征区间内的性能并不保持一致

[0004]所以,在模型训练时如何更加准确地选择出合适的算子,则是一个亟待解决的问题


技术实现思路

[0005]本说明书提供一种高性能算子选择的动态决策方法及装置,以部分的解决现有技术存在的上述问题

[0006]本说明书采用下述技术方案:本说明书提供了一种高性能算子选择的动态决策方法,包括:确定构建出的待训练模型;确定所述待训练模型对应的计算图,并根据所述计算图,确定出所述待训练模型中的特定算子;确定所述特定算子的
shape
特征,基于所述
shape
特征,确定在算子库中用于实现所述特定算子的各候选算子,并确定所述
shape
特征落入的特征区间;判断所述特征区间对应的性能排序子表是否已被更新,所述性能排序子表用于排序所述特征区间下所述各候选算子的性能分数;若所述性能排序子表未被更新,在训练所述待训练模型时在不同轮次的训练中采用所述各候选算子中的不同候选算子实现所述特定算子,以得到所述各候选算子在所述特
征区间下的性能分数,并根据所述性能分数,对性能排序子表进行更新,以及基于更新后的性能排序子表从所述各候选算子中选取出目标算子,将所述目标算子应用在所述待训练模型中以对所述待训练模型进行训练;若所述性能排序子表已被更新,基于所述性能排序子表从所述各候选算子中选取出目标算子,并将所述目标算子应用在所述待训练模型中以对所述待训练模型进行训练,所述待训练模型完成训练后用于执行所述待训练模型所对应的业务

[0007]可选地,所述
shape
特征用于表示算子的输入参数

输出参数以及算子相关参数中的至少一种,算子相关参数包括卷积核相关参数

[0008]可选地,确定所述
shape
特征落入的特征区间,具体包括:根据所述
shape
特征中的各参数值,确定优化半径;根据所述优化半径以及所述
shape
特征,确定所述
shape
特征落入的特征区间

[0009]可选地,根据所述
shape
特征中的各参数值,确定优化半径,具体包括:针对所述
shape
特征中的每个参数,根据该参数

该参数对应的方差

该参数对应的均值,确定该参数的归一化值;根据所述
shape
特征中的各归一化值,确定所述优化半径

[0010]可选地,确定构建出的待训练模型之前,所述方法还包括:初始化性能排序表,并按照所述性能排序表,初始化不同特征区间下初始化的性能排序子表

[0011]本说明书提供了一种高性能算子选择的动态决策装置,包括:第一确定模块,用于确定构建出的待训练模型;第二确定模块,用于确定所述待训练模型对应的计算图,并根据所述计算图,确定出所述待训练模型中的特定算子;区间定位模块,用于确定所述特定算子的
shape
特征,基于所述
shape
特征,确定在算子库中用于实现所述特定算子的各候选算子,并确定所述
shape
特征落入的特征区间;判断模块,用于判断所述特征区间对应的性能排序子表是否已被更新,所述性能排序子表用于排序所述特征区间下所述各候选算子的性能分数;更新模块,用于若所述性能排序子表未被更新,在训练所述待训练模型时在不同轮次的训练中采用所述各候选算子中的不同候选算子实现所述特定算子,以得到所述各候选算子在所述特征区间下的性能分数,并根据所述性能分数,对性能排序子表进行更新,以及基于更新后的性能排序子表从所述各候选算子中选取出目标算子,将所述目标算子应用在所述待训练模型中以对所述待训练模型进行训练;训练模块,用于若所述性能排序子表已被更新,基于所述性能排序子表从所述各候选算子中选取出目标算子,并将所述目标算子应用在所述待训练模型中以对所述待训练模型进行训练,所述待训练模型完成训练后用于执行所述待训练模型所对应的业务

[0012]可选地,所述
shape
特征用于表示算子的输入参数

输出参数以及算子相关参数中的至少一种,算子相关参数包括卷积核相关参数

[0013]可选地,所述区间定位模块具体用于,根据所述
shape
特征中的各参数值,确定优化半径;根据所述优化半径以及所述
shape
特征,确定所述
shape
特征落入的特征区间

[0014]本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所
述计算机程序被处理器执行时实现上述高性能算子选择的动态决策方法

[0015]本说明书提供了一种电子设备,包括存储器

处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述高性能算子选择的动态决策方法

[0016]本说明书采用的上述至少一个技术方案能够达到以下有益效果:从上述一种高性能算子选择的动态决策方法中可以看出,本方法中,在选择模型中特定算子应该由算子库中具体的哪一个算子实现时,需要定位到模型中特定算子的
sh本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种高性能算子选择的动态决策方法,其特征在于,包括:确定构建出的待训练模型;确定所述待训练模型对应的计算图,并根据所述计算图,确定出所述待训练模型中的特定算子;确定所述特定算子的
shape
特征,基于所述
shape
特征,确定在算子库中用于实现所述特定算子的各候选算子,并确定所述
shape
特征落入的特征区间;判断所述特征区间对应的性能排序子表是否已被更新,所述性能排序子表用于排序所述特征区间下所述各候选算子的性能分数;若所述性能排序子表未被更新,在训练所述待训练模型时在不同轮次的训练中采用所述各候选算子中的不同候选算子实现所述特定算子,以得到所述各候选算子在所述特征区间下的性能分数,并根据所述性能分数,对性能排序子表进行更新,以及基于更新后的性能排序子表从所述各候选算子中选取出目标算子,将所述目标算子应用在所述待训练模型中以对所述待训练模型进行训练;若所述性能排序子表已被更新,基于所述性能排序子表从所述各候选算子中选取出目标算子,并将所述目标算子应用在所述待训练模型中以对所述待训练模型进行训练,所述待训练模型完成训练后用于执行所述待训练模型所对应的业务
。2.
如权利要求1所述的方法,其特征在于,所述
shape
特征用于表示算子的输入参数

输出参数以及算子相关参数中的至少一种,算子相关参数包括卷积核相关参数
。3.
如权利要求1或2所述的方法,其特征在于,确定所述
shape
特征落入的特征区间,具体包括:根据所述
shape
特征中的各参数值,确定优化半径;根据所述优化半径以及所述
shape
特征,确定所述
shape
特征落入的特征区间
。4.
如权利要求3所述的方法,其特征在于,根据所述
shape
特征中的各参数值,确定优化半径,具体包括:针对所述
shape
特征中的每个参数,根据该参数

该参数对应的方差

该参数对应的均值,确定该参数的归一化值;根据所述
shape
特征中各参数的归一化值,确定所述优化半径
。5.
如权利要求1所述的方法,其特征在于,确定构建出的待训练模型之前,所述方法还包括:初始化性能排序表,并按照所述性能...

【专利技术属性】
技术研发人员:孙红江陈晨杨贺淞范文杰王鹏程李勇曾令仿陈光
申请(专利权)人:之江实验室
类型:发明
国别省市:

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

1