随机模型生成方法、随机模型发生器及硬件平台与流程

摘要: 本技术涉及人工智能芯片验证领域,尤其涉及一种随机模型生成方法、随机模型发生器及硬件平台。背景技术:1、在人工智能芯片的设计与验证过程中,验证工程师需要针对硬件平...
随机模型生成方法、随机模型发生器及硬件平台与流程

本技术涉及人工智能芯片验证领域,尤其涉及一种随机模型生成方法、随机模型发生器及硬件平台。

背景技术:

1、在人工智能芯片的设计与验证过程中,验证工程师需要针对硬件平台,例如神经网络加速器、图形处理器(graphics processing unit,gpu),构建大量测试用例,以确保芯片在不同场景下的功能正确性、性能稳定性和边界条件覆盖性。

2、现有技术中,通常依赖人工手动构造神经网络模型作为测试用例,例如通过人工设计网络结构、配置算子参数并生成目标格式(如onnx、caffe)的模型文件。然而,随着芯片复杂度的提升和验证需求的多样化,人工构造测试用例的效率已难以满足需求。

3、因此,亟需一种自动化生成测试模型的解决方案,能够在生成模型时自动校验其与硬件平台的适配性,从而减少无效模型比例,提升验证效率。

技术实现思路

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、基于所述覆盖率,通过指数梯度更新策略对各候选区域对应的权重进行更新;

27、归一化各所述候选区域更新后的权重,得到所述随机化引擎新的概率分布。

28、在一种可能的实施方式中,在基于随机化引擎对应的概率分布从配置参数中随机选取模型参数,生成候选随机模型之前,所述方法还包括:

29、响应于验证任务,基于所述验证任务的验证需求特征,确定待生成的候选随机模型的类型;

30、所述类型包括:

31、采用标准格式封装的第一类模型,和/或基于自定义中间表示层构建的第二类模型。

32、在一种可能的实施方式中,验证需求特征包括:兼容性评分和定制化评分,所述基于所述验证任务的验证需求特征,确定待生成的候选随机模型的类型,包括:

33、在所述兼容性评分大于第一预设值,且所述定制化评分小于第二预设值,则确定所述待生成的候选随机模型为第一类模型;

34、在所述兼容性评分大于所述第一预设值,且所述定制化评分大于或等于所述第二预设值,则确定所述待生成的候选随机模型为第一类模型和所述第二类模型;

35、在所述兼容性评分小于或等于所述第一预设值时,确定所述待生成的候选随机模型为所述第二类模型。

36、第二方面,本技术实施例还提供一种随机模型发生器,包括:

37、生成模块,用于基于随机化引擎对应的概率分布从配置参数中随机选取模型参数,生成候选随机模型;

38、校验模块,用于对所述候选随机模型的算子匹配性,以及部署在硬件平台上的资源需求量进行多层校验;

39、校验模块,还用于滤除未通过所述多层校验的候选随机模型,得到有效随机模型,所述有效随机模型用于部署在所述硬件平台。

40、第三方面,本技术实施例提供一种硬件平台,包括:存储器,处理器;

41、所述存储器存储目标模型,所述目标模型是如上第一方面和/或第一方面各种可能的实施方式生成的;

42、所述处理器用于基于所述目标模型对输入数据执行推理并输出推理结果。

43、第四方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上第一方面和/或第一方面各种可能的实施方式。

44、第五方面,本技术实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面和/或第一方面各种可能的实施方式。

45、本技术实施例提供的随机模型生成方法、随机模型发生器及硬件平台,通过在模型生成阶段引入受配置参数约束的概率采样,并在候选随机模型形成后依次执行算子匹配性校验和资源需求量校验,使随机生成与部署约束在同一流程内衔接。由此,生成端输出的并非未经筛选的随机网络集合,而是已经满足结构一致性和硬件承载条件的有效随机模型集合,解决了人工构造效率低以及无约束随机生成导致无效模型比例高的问题,并在随机模型进入硬件平台前完成结构合法性与资源可部署性的联合过滤,从而使投放到神经网络加速器、图形处理器或其他硬件平台的随机模型更贴合目标平台约束,使测试流程中的仿真时间和计算资源被集中用于可执行模型,验证结果对硬件平台逻辑的覆盖更具针对性。