System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开的实施例涉及一种参数优化方法及装置、编译方法及装置、电子装置以及计算机可读存储介质。
技术介绍
1、存内计算装置通过融合存储单元与计算单元,降低了数据密集型任务计算过程中数据搬移与数据运算的能耗,同时还节省了部分数据搬移的时间,从而极大地降低了系统功耗与计算延迟。但是由于存算一体系统与传统计算系统具有较大的差异,因此传统的计算任务部署流程不能直接应用到存算一体系统中。
技术实现思路
1、本公开至少一个实施例提供一种参数优化方法,应用于存内计算装置,包括:根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合;根据所述神经网络模型拆分或组合后的权重,确定神经网络推理代码,其中,所述神经网络推理代码携带有关于权重拆分或组合以及所述存内计算装置进行推理运算的运行参数的信息;以及进行所述神经网络推理代码的运行参数寻优过程,确定所述存内计算装置的优化运行参数。
2、例如,在本公开一实施例提供的参数优化方法中,在所述根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合之前,所述方法还包括:对所述存内计算装置以及将要运行于所述存内计算装置的神经网络模型进行解析。
3、例如,在本公开一实施例提供的参数优化方法中,所述存内计算装置包括至少一个存算一体阵列;所述对所述存内计算装置以及将要运行于所述存内计算装置的神经网络模型进行解析,包括:从所述神经网络的算法描述中提取所述神经网络模型中适用于
4、例如,在本公开一实施例提供的参数优化方法中,所述根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合,包括:根据所述神经网络模型的模型参数和所述存内计算装置的硬件参数,对适用于所述至少一个存算一体阵列的运算层的权重进行拆分或组合。
5、例如,在本公开一实施例提供的参数优化方法中,所述神经网络模型包括卷积神经网络模型;所述神经网络模型的模型参数包括利用所述卷积神经网络模型进行卷积运算所需的运算参数,其中,所述卷积神经网络模型进行卷积运算所需的运算参数包括:卷积核参数、卷积的步长、输入图像补零操作参数或输入卷积分组参数。
6、例如,在本公开一实施例提供的参数优化方法中,适用于所述至少一个存算一体阵列的运算层包括卷积层;所述对适用于所述至少一个存算一体阵列的运算层的权重进行拆分或组合,包括:将提取的所述卷积层的权重展开为所述存算一体阵列的运算层的权重。
7、例如,在本公开一实施例提供的参数优化方法中,所述对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合,包括:对所述将要运行于所述存内计算装置的神经网络模型的权重的输入通道方向或输出通道方向进行拆分或组合。
8、例如,在本公开一实施例提供的参数优化方法中,所述存内计算装置包括至少一个存算一体阵列;所述存内计算装置的硬件参数包括:所述至少一个存算一体阵列的规模或所述存内计算装置的数据精度。
9、例如,在本公开一实施例提供的参数优化方法中,所述进行所述神经网络推理代码的运行参数寻优过程,包括:根据启发式算法进行所述神经网络推理代码的运行参数寻优过程,其中,所述启发式算法包括遗传算法、模拟退火算法,蚁群算法或粒子群优化算法。
10、例如,在本公开一实施例提供的参数优化方法中,所述存内计算装置的优化运行参数包括:adc积分时间参数、adc量程参数、dac量程参数、输出移位参数、权重复制次数、权重数据精度、输入数据精度、输出数据精度、权重的复制次数或adc缩放系数。
11、本公开至少一个实施例提供一种编译方法,包括:获取经编译前端的中间表示以及存内计算装置的硬件描述;根据所述存内计算装置的硬件描述,对所述经编译前端的中间表示进行神经网络模型映射;根据所述神经网络模型映射的结果和根据本公开任一实施例提供的参数优化方法得到的优化运行参数;以及,基于所述优化运行参数,生成针对所述存内运算装置的机器码。
12、本公开至少一个实施例提供一种参数优化装置,包括:权重拆分与部署模块,被配置为根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合;代码确定模块,被配置为根据所述神经网络模型拆分或组合后的权重,确定神经网络推理代码,其中,所述神经网络推理代码携带有关于权重拆分或组合以及所述存内计算装置进行推理运算的运行参数的信息;运行参数寻优模块,被配置为进行所述神经网络推理代码的运行参数寻优过程,确定所述存内计算装置的优化运行参数。
13、例如,本公开一实施例提供的参数优化装置,还包括:解析模块,被配置为对所述存内计算装置以及将要运行于所述存内计算装置的神经网络模型进行解析。
14、本公开至少一个实施例提供一种编译装置,包括:获取模块,被配置为获取经编译前端的中间表示以及存内计算装置的硬件描述;模型映射模块,被配置为根据所述存内计算装置的硬件描述,对所述经编译前端的中间表示进行神经网络模型映射;参数优化模块,被配置为根据所述神经网络模型映射的结果根据本公开任一实施例提供的参数优化方法得到的优化运行参数;代码生成模块,被配置为基于所述优化运行参数,生成针对目标存内运算装置的机器码。
15、本公开至少一个实施例提供一种电子装置,包括:处理器以及存储单元,所述存储单元中存储有至少一个计算机程序模块;其中,所述至少一个计算机程序模块被配置为由所述处理器执行时实现本公开任一实施例提供的参数优化方法或者本公开任一实施例提供的编译方法的指令。
16、本公开至少一个实施例提供一种计算机可读存储介质,用于存储计算机可读指令,当所述计算机可读指令由计算机执行时实现本公开任一实施例提供的参数优化方法或者本公开任一实施例提供的编译方法。
本文档来自技高网...【技术保护点】
1.一种参数优化方法,应用于存内计算装置,包括:
2.根据权利要求1所述的方法,其中,在所述根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合之前,所述方法还包括:
3.根据权利要求2所述的方法,其中,所述存内计算装置包括至少一个存算一体阵列;
4.根据权利要求3所述的方法,其中,所述根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合,包括:
5.根据权利要求3所述的方法,其中,所述神经网络模型包括卷积神经网络模型;
6.根据权利要求5所述的方法,其中,适用于所述至少一个存算一体阵列的运算层包括卷积层;
7.根据权利要求1-6任一所述的方法,其中,所述对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合,包括:
8.根据权利要求1-6任一所述的方法,其中,所述存内计算装置包括至少一个存算一体阵列;
9.根据权利要求1-6任一所述的方法,其中,所述进行所述神经网络推理代码的运行参数寻优过程,
10.根据权利要求1-6任一所述的方法,其中,所述存内计算装置的优化运行参数包括:ADC积分时间参数、ADC量程参数、DAC量程参数、输出移位参数、权重复制次数、权重数据精度、输入数据精度、输出数据精度、权重的复制次数或ADC缩放系数。
11.一种编译方法,包括:
12.一种参数优化装置,包括:
13.根据权利要求12所述的参数优化装置,还包括:
14.一种编译装置,包括:
15.一种电子装置,包括:
16.一种计算机可读存储介质,用于非暂时性地存储计算机可读指令,当所述计算机可读指令由计算机执行时实现权利要求1-10任一所述的参数优化方法或者权利要求11所述的编译方法。
...【技术特征摘要】
1.一种参数优化方法,应用于存内计算装置,包括:
2.根据权利要求1所述的方法,其中,在所述根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合之前,所述方法还包括:
3.根据权利要求2所述的方法,其中,所述存内计算装置包括至少一个存算一体阵列;
4.根据权利要求3所述的方法,其中,所述根据所述存内计算装置的硬件参数,对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合,包括:
5.根据权利要求3所述的方法,其中,所述神经网络模型包括卷积神经网络模型;
6.根据权利要求5所述的方法,其中,适用于所述至少一个存算一体阵列的运算层包括卷积层;
7.根据权利要求1-6任一所述的方法,其中,所述对将要运行于所述存内计算装置的神经网络模型的权重进行拆分或组合,包括:
8.根据权利要求1-6任一所述...
【专利技术属性】
技术研发人员:吴华强,喻睿华,王泽,高滨,唐建石,钱鹤,
申请(专利权)人:清华大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。