System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() CNN模型与加速器的联合搜索方法、装置、设备及介质制造方法及图纸_技高网

CNN模型与加速器的联合搜索方法、装置、设备及介质制造方法及图纸

技术编号:41488459 阅读:6 留言:0更新日期:2024-05-30 14:35
本发明专利技术公开了一种CNN模型与加速器的联合搜索方法、装置、设备及介质,该方法包括通过可微分NAS引擎,对预先构建的超网络进行训练,并在训练过程中,采用硬件友好量化器执行量化操作;根据超网络训练结果中包括的各项架构参数,确定目标子网;通过快速HAS引擎,在基于BPU的异构多核硬件FPGA平台中,搜索出与目标子网匹配的目标加速器的设计参数,并评估将目标子网配置在目标加速器上执行目标数据集时的硬件评估结果;将硬件评估结果反馈至可微分NAS引擎进行新的目标子网的确定,直至满足联合搜索结束条件。本发明专利技术实施例的技术方案可以高效实现CNN网络和加速器的联合搜索,在满足模型性能需求的同时,显著减少搜索时间成本。

【技术实现步骤摘要】

本专利技术涉及计算机系统结构,尤其涉及一种cnn(convolutional neuralnetworks,卷积神经网络)模型与加速器的联合搜索方法、装置、设备及介质。


技术介绍

1、nas(neural architecture search,神经网络架构搜索)技术的提出,旨在使研究人员摆脱容易出错且耗时的手工设计网络的过程。它由三个主要部分组成:搜索空间、搜索算法和评估器。

2、针对上述三个主要部分,研究人员提出了各类解决方案,例如,设计超网结构,并在超网结构的每个可搜索的层中包含所有候选算子,通过连续可微的方式建模nas问题,进而开展了硬件感知的nas,以及网络与加速器联合搜索等研究。

3、专利技术人在实现本专利技术的过程中,发现在软硬件联合搜索的过程中,如何有效定义软硬件联合搜索空间,以及如何在大型且复杂的硬件设计空间中为子网提供及时的硬件延迟反馈,是目前有待解决的主要技术难点。


技术实现思路

1、本专利技术提供了一种cnn模型与加速器的联合搜索方法、装置、设备及介质,以高效实现cnn网络和加速器的联合搜索,在充分满足模型性能需求的同时,显著减少搜索时间成本。

2、根据本专利技术实施例的一方面,提供了一种cnn模型与加速器的联合搜索方法,包括:

3、通过可微分nas引擎,对预先构建的超网络进行训练,并在训练过程中,采用预先构建的硬件友好量化器执行量化操作;

4、根据超网络训练结果中包括的各项架构参数,确定目标子网;

5、其中,目标子网的每个卷积块具有设定的目标位宽和设定的目标通道扩展比率;每个卷积块中包括依次相连的dw(depthwise,深度)卷积层、第一pw(pointwise,逐点)卷积层和第二pw卷积层;通道扩展比率用于确定第一pw卷积层和第二pw卷积层的通道数;

6、通过快速has(hardware architecture search,硬件架构搜索)引擎,在基于bpu(block processing unit,块处理单元)的异构多核硬件fpga(field programmable gatearray,可编程逻辑门阵列)平台中,搜索出与目标子网匹配的目标加速器的设计参数,并评估将目标子网配置在目标加速器上执行目标数据集时的硬件评估结果;

7、将硬件评估结果反馈至可微分nas引擎进行新的目标子网的确定,直至满足联合搜索结束条件。

8、根据本专利技术实施例的另一方面,提供了一种cnn模型与加速器的联合搜索装置,包括:

9、超网络训练模块,用于通过可微分nas引擎,对预先构建的超网络进行训练,并在训练过程中,采用预先构建的硬件友好量化器执行量化操作;

10、子网确定模块,用于根据超网络训练结果中包括的各项架构参数,确定目标子网;

11、其中,目标子网的每个卷积块具有设定的目标位宽和设定的目标通道扩展比率;每个卷积块中包括依次相连的dw卷积层、第一pw卷积层和第二pw卷积层;通道扩展比率用于确定第一pw卷积层和第二pw卷积层的通道数;

12、加速器搜索模块,用于通过快速has引擎,在基于bpu的异构多核硬件fpga平台中,搜索出与目标子网匹配的目标加速器的设计参数,并评估将目标子网配置在目标加速器上执行目标数据集时的硬件评估结果;

13、循环迭代模块,用于将硬件评估结果反馈至可微分nas引擎进行新的目标子网的确定,直至满足联合搜索结束条件。

14、根据本专利技术实施例的另一方面,还提供了一种电子设备,所述电子设备包括:

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

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

17、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的cnn模型与加速器的联合搜索方法。

18、根据本专利技术实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的cnn模型与加速器的联合搜索方法。

19、本专利技术实施例的技术方案,通过可微分nas引擎,对预先构建的超网络进行训练,并在训练过程中,采用预先构建的硬件友好量化器执行量化操作;根据超网络训练结果中包括的各项架构参数,确定目标子网;通过快速has引擎,在基于bpu的异构多核硬件fpga平台中,搜索出与目标子网匹配的目标加速器的设计参数,并评估将目标子网配置在目标加速器上执行目标数据集时的硬件评估结果;将硬件评估结果反馈至可微分nas引擎进行新的目标子网的确定,直至满足联合搜索结束条件的实现方式,基于预先构建的硬件友量化器,可以将位宽搜索集成至nas引擎,此外,通过先在超网络中采样子网,后生成针对子网的加速器优化方案,并返回相应的硬件评估结果的实现方式,可以从一定程度上裁剪搜索空间,减少搜索时间成本。

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

本文档来自技高网...

【技术保护点】

1.一种CNN模型与加速器的联合搜索方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,采用预先构建的硬件友好量化器执行量化操作,包括:

3.根据权利要求1所述的方法,其特征在于,所述异构多核硬件FPGA平台中,包括有设定数量的BPU;

4.根据权利要求3所述的方法,其特征在于,在所述BPU的每个子核心执行计算的过程中,将两个或者三个低精度乘法打包至异构多核硬件FPGA平台中一个单独的DSP单元中执行计算;

5.根据权利要求1-4任一项所述的方法,其特征在于,通过快速HAS引擎,在基于BPU的异构多核硬件FPGA平台中,搜索出与目标子网匹配的目标加速器的设计参数,包括:

6.根据权利要求5所述的方法,其特征在于,所述连续卷积块分配数量值为分配至同一BPU的连续卷积块的数量值;其中,对每个BPU进行连续卷积块分配的策略,是基于计算与通信比的分布规律得到的。

7.根据权利要求5所述的方法,其特征在于,采用遗传算法,在裁剪后的设计参数搜索空间中,迭代搜索出与目标子网匹配的目标加速器的设计参数,包括:

8.一种CNN模型与加速器的联合搜索装置,其特征在于,包括:

9.一种电子设备,其特征在于,所述电子设备包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的CNN模型与加速器的联合搜索方法。

...

【技术特征摘要】

1.一种cnn模型与加速器的联合搜索方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,采用预先构建的硬件友好量化器执行量化操作,包括:

3.根据权利要求1所述的方法,其特征在于,所述异构多核硬件fpga平台中,包括有设定数量的bpu;

4.根据权利要求3所述的方法,其特征在于,在所述bpu的每个子核心执行计算的过程中,将两个或者三个低精度乘法打包至异构多核硬件fpga平台中一个单独的dsp单元中执行计算;

5.根据权利要求1-4任一项所述的方法,其特征在于,通过快速has引擎,在基于bpu的异构多核硬件fpga平台中,搜索出与目标子网匹配的目标加速器的设计参数,包括:

6.根据...

【专利技术属性】
技术研发人员:娄文启
申请(专利权)人:中国科学技术大学苏州高等研究院
类型:发明
国别省市:

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

1