本发明专利技术涉及处理器功耗优化技术领域,尤其涉及一种基于神经网络结构的NPU功耗优化方法及系统,其方法包括:S1、获取目标神经网络的基础结构信息,根据目标神经网络的基础结构信息确定NPU网络基础架构;S2、根据基础结构信息对目标神经网络进行训练,以得到目标神经网络的目标网络参数;S3、基于目标网络参数对NPU基础架构进行调整,以得到初始NPU网络架构;S4、获取NPU的历史运行数据,根据NPU的历史运行数据确定功耗指标参数,并形成功耗训练样本;S5、将功耗训练样本投入初始NPU网络架构进行训练和验证,以得到功耗验证结果;S6、基于功耗验证结果对初始NPU网络架构进行优化调整,以得到目标NPU网络架构。本发明专利技术大大降低NPU运行功耗,提高其运行性能。提高其运行性能。提高其运行性能。
【技术实现步骤摘要】
一种基于神经网络结构的NPU功耗优化方法及系统
[0001]本专利技术涉及处理器功耗优化
,尤其涉及一种基于神经网络结构的NPU功耗优化方法及系统。
技术介绍
[0002]随着人工智能领域相关技术的飞速发展,众多行业正进行着智能化的转变。深度学习是机器学习领域一个研究方向,近年来受到广泛的应用。随着应用场景和人们需求的不断变化,所需处理的数据也变得更加的复杂且数据量也显著增加,这就使得AI算法必须能够高效的运行在硬件平台上,因此,对运行硬件也有了更高的要求。在硬件方面,目前主要是使用GPU并行计算神经网络和嵌入式神经网络处理器(NPU)。
[0003]但是,现有技术中,使用嵌入式神经网络处理器NPU存在功耗很大的问题,无法更好的解决NPU的功耗问题,其能效比还需进行进一步的提升,以更好的满足应用需求。
技术实现思路
[0004]本专利技术的目的在于提出一种基于神经网络结构的NPU功耗优化方法及系统,可大大降低NPU运行功耗,提高其运行性能。
[0005]为达此目的,本专利技术采用以下技术方案:一种基于神经网络结构的NPU功耗优化方法,包括以下步骤:S1、获取目标神经网络的基础结构信息,根据目标神经网络的基础结构信息确定NPU网络基础架构;S2、根据神经网络的基础结构信息对目标神经网络进行训练,以得到目标神经网络的目标网络参数;S3、基于目标网络参数对NPU基础架构进行调整,以得到初始NPU网络架构;S4、获取NPU的历史运行数据,根据NPU的历史运行数据确定功耗指标参数,并形成功耗训练样本;S5、将功耗训练样本投入初始NPU网络架构进行训练和验证,以得到功耗验证结果;S6、基于功耗验证结果对初始NPU网络架构进行优化调整,以得到目标NPU网络架构。
[0006]优选的,还包括以下步骤:S7、根据目标神经网络的基础结构信息获取NPU硬件架构;S8、获取NPU的历史运行数据中的硬件特征数据,形成硬件性能数据样本,并将硬件性能数据样本对NPU硬件架构进行训练和验证,以得到硬件验证结果;S9、基于硬件验证结果对NPU硬件架构进行优化调整,以得到NPU硬件优化架构;S10、结合NPU硬件优化架构和目标NPU网络架构建立最优NPU。
[0007]优选的,所述S3、基于目标网络参数对NPU基础架构进行调整,以得到初始NPU网络
架构;具体包括以下步骤:S31、获取目标网络参数中的各个参数和其对应的属性特征,其中各个参数包括网络结构特征T、计算量C、参数量N、参数权重、网络层占比P以及依赖关系R,其对应的属性特征是指各个参数的具体量值;S32、对NPU基础架构进行拆分,以得到多个架构层,并对各个架构层进行属性标记;S33、基于目标网络参数中的各类参数的属性特征和各个架构层的属性标记对NPU基础架构的各个架构层进行调整,以得到初始NPU网络架构。
[0008]优选的,S8、获取NPU的历史运行数据中的硬件特征数据,形成硬件性能数据样本,并将硬件性能数据样本对NPU硬件架构进行训练和验证,以得到硬件验证结果;具体包括以下步骤:S81、提取NPU的历史运行数据中的硬件特征数据,包括硬件资源约束文件、硬件架构描述文件和控制描述文件中的相关特征数据;S82、将硬件特征数据整理为各个类别的历史训练样本;S83、基于获取的各个类别的历史训练样本结合神经网络学习,对各NPU硬件架构中的各个参数进行训练和验证,得到对应的验证结果。
[0009]一种基于神经网络结构的NPU功耗优化系统,采用如上述所述的一种基于神经网络结构的NPU功耗优化方法,包括:基础架构确定模块,用于获取目标神经网络的基础结构信息,根据目标神经网络的基础结构信息确定NPU网络基础架构;模型训练模块,用于根据神经网络的基础结构信息对目标神经网络进行训练,以得到目标神经网络的目标网络参数;架构调整模块,用于基于目标网络参数对NPU基础架构进行调整,以得到初始NPU网络架构;功耗样本获取模块,用于获取NPU的历史运行数据,根据NPU的历史运行数据确定功耗指标参数,并形成功耗训练样本;架构训练模块,用于将功耗训练样本投入初始NPU网络架构进行训练和验证,以得到功耗验证结果;目标构建模块,用于基于功耗验证结果对初始NPU网络架构进行优化调整,以得到目标NPU网络架构。
[0010]优选的,还包括:硬件架构模块,用于根据目标神经网络的基础结构信息获取NPU硬件架构;硬件样本训练模块,用于获取NPU的历史运行数据中的硬件特征数据,形成硬件性能数据样本,并将硬件性能数据样本对NPU硬件架构进行训练和验证,以得到硬件验证结果;架构优化模块,用于基于硬件验证结果对NPU硬件架构进行优化调整,以得到NPU硬件优化架构;架构融合模块,用于结合NPU硬件优化架构和目标NPU网络架构建立最优NPU。
[0011]优选的,所述架构调整模块包括:
架构参数获取子模块,用于获取目标网络参数中的各个参数和其对应的属性特征,其中各个参数包括网络结构特征T、计算量C、参数量N、参数权重、网络层占比P以及依赖关系R,其对应的属性特征是指各个参数的具体量值;架构拆分标记子模块,用于对NPU基础架构进行拆分,以得到多个架构层,并对各个架构层进行属性标记;架构优化调整子模块,用于基于目标网络参数中的各类参数的属性特征和各个架构层的属性标记对NPU基础架构的各个架构层进行优化调整,以得到初始NPU网络架构。
[0012]优选的,所述硬件样本训练模块包括:硬件样本提取子模块,用于提取NPU的历史运行数据中的硬件特征数据,包括硬件资源约束文件、硬件架构描述文件和控制描述文件中的相关特征数据;硬件样本整理子模块,用于将硬件特征数据整理为各个类别的历史训练样本;硬件样本训练子模块,用于基于获取的各个类别的历史训练样本结合神经网络学习,对各NPU硬件架构中的各个参数进行训练和验证,得到对应的验证结果。
[0013]一种电子设备,包括:存储器,用于存储一个或多个程序;以及处理器;当所述一个或多个程序被所述处理器执行时,实现如上述所述的一种基于神经网络结构的NPU功耗优化方法。
[0014]一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述所述的一种基于神经网络结构的NPU功耗优化方法。
[0015]上述技术方案中的一个技术方案具有以下有益效果:针对神经网络的基础结构特征去确定好NPU网络基础架构,大大方便了后续进行针对性的优化调整,大大提高了其对AI算法的运行效果,降低了功耗。
附图说明
[0016]图1是本专利技术在一种基于神经网络结构的NPU功耗优化方法的其一实施例流程示意图;图2是本专利技术在一种基于神经网络结构的NPU功耗优化方法的其一实施例的流程示意图;图3为本专利技术一种基于神经网络结构的NPU功耗优化系统的其一实施例的原理示意图;图4为本专利技术一种基于神经网络结构的NPU功耗优化系统的其一实施例的的原理示意图;图5为本专利技术实施例提供的一种电子设备的结构示意图。
[0017]附图中:1、基础架构确定模本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于神经网络结构的NPU功耗优化方法,其特征在于,包括以下步骤:S1、获取目标神经网络的基础结构信息,根据目标神经网络的基础结构信息确定NPU网络基础架构;S2、根据神经网络的基础结构信息对目标神经网络进行训练,以得到目标神经网络的目标网络参数;S3、基于目标网络参数对NPU基础架构进行调整,以得到初始NPU网络架构;S4、获取NPU的历史运行数据,根据NPU的历史运行数据确定功耗指标参数,并形成功耗训练样本;S5、将功耗训练样本投入初始NPU网络架构进行训练和验证,以得到功耗验证结果;S6、基于功耗验证结果对初始NPU网络架构进行优化调整,以得到目标NPU网络架构。2.根据权利要求1所述的一种基于神经网络结构的NPU功耗优化方法,其特征在于,还包括以下步骤:S7、根据目标神经网络的基础结构信息获取NPU硬件架构;S8、获取NPU的历史运行数据中的硬件特征数据,形成硬件性能数据样本,并将硬件性能数据样本对NPU硬件架构进行训练和验证,以得到硬件验证结果;S9、基于硬件验证结果对NPU硬件架构进行优化调整,以得到NPU硬件优化架构;S10、结合NPU硬件优化架构和目标NPU网络架构建立最优NPU。3.根据权利要求2所述的一种基于神经网络结构的NPU功耗优化方法,其特征在于,所述S3、基于目标网络参数对NPU基础架构进行调整,以得到初始NPU网络架构;具体包括以下步骤:S31、获取目标网络参数中的各个参数和其对应的属性特征,其中各个参数包括网络结构特征T、计算量C、参数量N、参数权重、网络层占比P以及依赖关系R,其对应的属性特征是指各个参数的具体量值;S32、对NPU基础架构进行拆分,以得到多个架构层,并对各个架构层进行属性标记;S33、基于目标网络参数中的各类参数的属性特征和各个架构层的属性标记对NPU基础架构的各个架构层进行调整,以得到初始NPU网络架构。4.根据权利要求3所述的一种基于神经网络结构的NPU功耗优化方法,其特征在于,所述S8、获取NPU的历史运行数据中的硬件特征数据,形成硬件性能数据样本,并将硬件性能数据样本对NPU硬件架构进行训练和验证,以得到硬件验证结果;具体包括以下步骤:S81、提取NPU的历史运行数据中的硬件特征数据,包括硬件资源约束文件、硬件架构描述文件和控制描述文件中的相关特征数据;S82、将硬件特征数据整理为各个类别的历史训练样本;S83、基于获取的各个类别的历史训练样本结合神经网络学习,对各NPU硬件架构中的各个参数进行训练和验证,得到对应的验证结果。5.根据权利要求1所述的一种基于神经网络结构的NPU功耗优化系统,其特征在于,采用如权利要求1
‑
4任一项所述的一种基于神经网络结构的NPU功耗优化方法,包括:基础架构确定模块,用于获取目标神经网络的基础结构信息,根据目标神经网络的基础结构信息确定NPU网络基础架...
【专利技术属性】
技术研发人员:黄茂芹,
申请(专利权)人:广东赛昉科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。