当前位置: 首页 > 专利查询>浙江大学专利>正文

基于强化学习的神经网络的片上核心编译映射方法及装置制造方法及图纸

技术编号:33504103 阅读:14 留言:0更新日期:2022-05-19 01:13
本发明专利技术公开了基于强化学习的神经网络的片上核心编译映射方法及装置,通过将传统映射规划问题放入强化学习框架,构造状态描述、奖励函数和行动空间,通过强化学习训练获得的策略深度网络,依次将神经元放置在片上网络的多个核心内。以通信代价、映射面积和核心内部使用率构造映射收益,并利用Actor

【技术实现步骤摘要】
基于强化学习的神经网络的片上核心编译映射方法及装置


[0001]本专利技术涉及计算机高性能计算领域,尤其是涉及基于强化学习的神经网络的片上核心编译映射方法及装置。

技术介绍

[0002]神经科学对人脑的研究发现,数百亿神经元通过互联可产生高度的并行计算能力,在此基础上提出的脉冲神经网络可通过脉冲编码完成信息传递来解决复杂任务。基于脉冲神经网络的神经形态芯片以高密度的片上网络组织方式模拟生物神经元的连接,实现了大规模计算的并行化。而片上网络不同核心间的信息通信方式对脉冲的产生和收发非常敏感,对网络部署结果产生的性能约束提出了极高的要求。
[0003]不同于传统编译器,面向基于脉冲传递完成推理的神经网络在片上网络的编译映射,一般被建模为约束条件下的多目标规划问题,其目标为解决芯片内所有节点间脉冲传递的总功耗(也即通讯代价),以及应用计算耗时的优化问题。由于脉冲神经网络的图连接特性,主流映射算法分为两个阶段:1)对原脉冲神经网络先进行分割,重构拓扑结构;2)为每个网络分块分配绑定至物理节点。编译的核心问题在于求解给定优化目标下的最优映射方案是一个NP

Hard问题,如何在芯片的硬件约束下使用较短时间找到近似解。
[0004]工业界中目前的编译环境和框架种类丰富,多数为针对自家芯片进行的特定建模和优化算法设计。英特尔的Loihi芯片的编译器LCompiler分割图后映射至每个核中,并逐一生成二进制文件。分配算法以优化Loihi的输入映射比为目标,迭代尝试神经元的分配直到可放入给定数量的核中。IBM的TrueNorth项目芯片则完成了百万级神经元的规模,编译映射采用VLSI布线问题中类似的优化算法以降低应用在芯片部署后的总通信代价,经过编译器优化后,端口上每个tick的最大脉冲数量由10000个降低至2500个。
[0005]上述针对脉冲神经网络在片上的映射算法基于如下步骤:1.将脉冲神经网络抽象为计算图,以神经元或神经元群作为节点,突触连接作为边。
[0006]2.对计算图进行重新分割聚合,形成可一一映射到片上网络的物理层计算图。
[0007]3.构造一种损失函数用于衡量映射结果的质量,并不断调整迭代,使用基于启发式搜索或其他求解多目标规划问题的算法,设法降低损失函数直至收敛,最终获得映射结果。
[0008]因此,映射问题的规模和解空间特点对算法的搜索能力提出了较高要求。近年来,强化学习算法在求解非线性规划问题上具有很好的表现。传统的强化学习算法通常用于控制智能体的策略过程,通过与环境交互中逐步积累数据并确定所处当前状态下如何采取最优行动,以获得最高收益,进而完成给定任务。近年来深度强化学习通过使用深度神经网络得以处理更为复杂且多样的任务,在诸如机器视觉、自然语言处理、复杂系统等问题中均有很好的表现。具体地,基于策略的Actor

Critic深度强化学习算法(演员评论家算法,Actor为Policy Gradient 表示策略梯度算法,Critic为Q

learning表示一种基于价值的强化学
习算法),使用两套独立的参数分别进行动作值函数参数的更新和策略参数的更新。
[0009]神经网络在芯片端的映射结果直接决定芯片的核心之间脉冲传递效率。过于单一简单的映射方案无法在巨大的解空间中快速搜索到最优解,且容易陷入由于映射算法和代价函数的设计不合理导致的局部次优解上,导致核心间脉冲包传递速度变慢,产生额外的通信和功耗代价。

技术实现思路

[0010]为解决现有技术的不足,实现减少片上核心的脉冲包传输距离,芯片映射面积,减少端口脉冲数量,降低计算耗时,降低芯片功耗的目的,提高传输效率,本专利技术采用如下的技术方案:基于强化学习的神经网络的片上核心编译映射方法,包括如下步骤:步骤S1:获取脉冲神经网络的拓扑结构和参数信息,脉冲神经网络包括神经元群和突触,神经元群由神经元组成,神经元之间通过突触连接;拓扑结构为具有节点和边的图结构,节点表示神经元和/或神经元群,边表示作为神经元和/或神经元群之间连接的突触;参数信息包括神经元和突触连接中的特征数据;步骤S2:对部署脉冲神经网络的芯片,获取其片上网络计算核心矩阵的描述信息,计算核心用于分配神经元进行计算,描述信息包括计算核心的规格,计算核心在片上网络的空间位置、不同计算核心的通信连接关系;步骤S3:通过已分配的计算核心在片上网络的空间位置、已分配的神经元连接情况、当前待分配的神经元及其与其他神经元之间的连接情况,构建初始化映射状态;步骤S4:将映射状态输入已完成训练的强化学习策略神经网络,从神经网络的输出,获得当前待分配神经元分配到不同计算核心空间位置的映射行动的概率分布;步骤S5:选取概率分布中,概率最大的计算核心空间位置作为当前神经元的放置位置,并将其填充至对应计算核心的数字存储空间中;步骤S6:重复上述步骤,直至完成所有神经元的放置,得到完整的脉冲神经网络到芯片的片上网络计算核心矩阵的全部映射。
[0011]进一步地,所述步骤S4中,强化学习策略神经网络的训练包括如下步骤:步骤S4.1:初始化,包括确定训练样本的数量E,学习率r,收益衰减系数γ,探索率
ɛ
,策略(Actor)和评价(Critic)两个神经网络结构;步骤S4.2:执行步骤S4.3至步骤S4.7,直至达到训练样本数量E;步骤S4.3:随机构造脉冲神经网络的神经元和突触连接,随机给定包含至少N个计算核心的矩阵区域;步骤S4.4:根据当前已分配的计算核心空间位置、已分配的神经元连接、当前需分配的神经元及其与其他神经元之间的连接构成的特征向量,获得映射状态S;步骤S4.5:将映射状态S输入策略神经网络,获得输出映射行动A,并将对应的神经元放置于映射行动A指定的计算核心空间位置,并获得行动后映射状态S

和对应的映射收益R;步骤S4.6:分别将映射状态S和行动后映射状态S

,输入评价神经网络并获得时间差分(TD,Time Difference)误差,根据最终状态(映射结束后)下的整体的映射收益R,采用
误差反传的方法(随机梯度下降)反传回每个状态,分别更新策略神经网络的权重和评价神经网络的权重,随着网络的收敛,使得映射行动A向更好的映射状态移动;步骤S4.7:使用行动后映射状态S

替代映射状态S,继续步骤S4.4至步骤S4.6,直至完成所有神经元分配。
[0012]进一步地,所述步骤S4.5中,映射行动A是将任意神经元分配至一个未被占据的计算核心空间位置,若未完成所有神经元分配时,映射行动的映射收益为0;若全部分配完成时,通过计算核心的内部代价、计算核心的通信代价、计算核心所占区域的几何面积,及是否满足约束条件的收益,构建映射行动的映射收益R;所述计算核心的内部代价,包括计算核心内未被利用的数字存储空间和计算核心中不同数字存储区域的均衡程度;所述计算核心通信代价,包括每个计算核心在单位时间内接收和发送的脉冲包数量、每个脉冲包在片上本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于强化学习的神经网络的片上核心编译映射方法,其特征在于包括如下步骤:步骤S1:获取脉冲神经网络的拓扑结构和参数信息,脉冲神经网络包括神经元群和突触,神经元群由神经元组成,神经元之间通过突触连接;拓扑结构为具有节点和边的图结构,节点表示神经元和/或神经元群,边表示作为神经元和/或神经元群之间连接的突触;参数信息包括神经元和突触连接中的特征数据;步骤S2:对部署脉冲神经网络的芯片,获取其片上网络计算核心矩阵的描述信息,计算核心用于分配神经元进行计算,描述信息包括计算核心的规格,计算核心在片上网络的空间位置、不同计算核心的通信连接关系;步骤S3:通过已分配的计算核心在片上网络的空间位置、已分配的神经元连接情况、当前待分配的神经元及其与其他神经元之间的连接情况,构建初始化映射状态;步骤S4:将映射状态输入已完成训练的强化学习策略神经网络,从神经网络的输出,获得当前待分配神经元分配到不同计算核心空间位置的映射行动的概率分布;步骤S5:选取概率分布中,概率最大的计算核心空间位置作为当前神经元的放置位置,并将其填充至对应计算核心的数字存储空间中;步骤S6:重复上述步骤,直至完成所有神经元的放置,得到完整的脉冲神经网络到芯片的片上网络计算核心矩阵的全部映射。2.根据权利要求1所述的基于强化学习的神经网络的片上核心编译映射方法,其特征在于:所述步骤S4中,强化学习策略神经网络的训练包括如下步骤:步骤S4.1:初始化,包括确定训练样本的数量;步骤S4.2:执行步骤S4.3至步骤S4.7,直至达到训练样本数量;步骤S4.3:随机构造脉冲神经网络的神经元和突触连接,随机给定包含至少N个计算核心的矩阵区域;步骤S4.4:根据当前已分配的计算核心空间位置、已分配的神经元连接、当前需分配的神经元及其与其他神经元之间的连接构成的特征向量,获得映射状态S;步骤S4.5:将映射状态S输入策略神经网络,获得输出映射行动A,并将对应的神经元放置于映射行动A指定的计算核心空间位置,并获得行动后映射状态S
’ꢀ
和对应的映射收益R;步骤S4.6:分别将映射状态S和行动后映射状态S

,输入评价神经网络并获得时间差分误差,根据整体的映射收益R,采用误差反传,分别更新策略神经网络的权重和评价神经网络的权重;步骤S4.7:使用行动后映射状态S
’ꢀ
替代映射状态S,继续步骤S4.4至步骤S4.6,直至完成所有神经元分配。3.根据权利要求2所述的基于强化学习的神经网络的片上核心编译映射方法,其特征在于:所述步骤S4.5中,映射行动A是将神经元分配至一个未被占据的计算核心空间位置,若未完成所有神经元分配时,映射行动的映射收益为0;若全部分配完成时,通过计算核心的内部代价、计算核心的通信代价、计算核心所占区域的几何面积,及是否满足约束条件的收益,构建映射行动的映射收益R;所述计算核心的内部代价,包括计算核心内未被利用的数字存储空间和计算核心中不同数字存储区域的均衡程度;
所述计算核心通信代价,包括每个计算核心在单位时间内接收和发送的脉冲包数量、每个脉冲包在片上的传递路径长度;所述计算核心所占区域的几何面积,对于计算核心网格上,构造一个最小的包含所有映射使用到的计算核心的矩形闭包,该矩形闭包内包含的所有核心数量即为核心所占区域的几何面积;所述约束条件的收益,是硬件约束要求脉冲神经网络的输入层和输出层需要排布在网格的指定位置和/或自定义的偏好约束。4.根据权利要求3所...

【专利技术属性】
技术研发人员:何煜坤李莹吕攀章明孙世春邓水光潘纲马德齐勃金孝飞
申请(专利权)人:浙江大学
类型:发明
国别省市:

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

1