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

模拟装置及模拟方法制造方法及图纸

技术编号:35473632 阅读:20 留言:0更新日期:2022-11-05 16:20
一种模拟装置、模拟方法、模拟设备以及非易失性计算机可读存储介质。该模拟装置,用于对脉冲神经网络模型的计算进行模拟,所述装置包括表达模块、流程模块和计算模块,其中,所述表达模块,被配置为获取脉冲神经网络模型的参数;所述流程模块,被配置为基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息和与模拟所述脉冲神经网络模型模拟的数据存储过程相关联的第二信息;所述计算模块,被配置为基于所述第一信息和所述第二信息,模拟所述脉冲神经网络模型的数据计算过程和数据存储过程。神经网络模型的数据计算过程和数据存储过程。神经网络模型的数据计算过程和数据存储过程。

【技术实现步骤摘要】
模拟装置及模拟方法


[0001]本公开的实施例涉及一种模拟装置、模拟方法、模拟设备以及非易失性计算机可读存储介质。

技术介绍

[0002]类脑计算是借鉴生物神经系统信息处理模式和结构的计算理论、体系结构、芯片设计以及应用模型与算法的总称,以类脑计算芯片为核心的各种类脑计算系统正迅速发展,在处理某些智能问题以及低功耗智能计算方面逐步展露出优势。
[0003]脉冲神经网络(SNN)是类脑计算系统的主要计算范式,被认为是下一代神经网络的重要计算范式之一。然而当前的脉冲神经网络框架是使用紧耦合方式进行设计的。随着SNN功能日益复杂,已经针对SNN提出了追求更高性能的需求。当前紧耦合方式设计的脉冲神经网络框架已经无法满足SNN的性能提升需求。

技术实现思路

[0004]本公开的实施例提供模拟装置、模拟方法、模拟设备以及非易失性计算机可读存储介质。
[0005]本公开至少一个实施例提供了一种模拟装置,用于对脉冲神经网络模型的计算进行模拟,所述装置包括表达模块、流程模块和计算模块,其中,所述表达模块,被配置为获取脉冲神经网络模型的参数;所述流程模块,被配置为基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息和与模拟所述脉冲神经网络模型模拟的数据存储过程相关联的第二信息;所述计算模块,被配置为基于所述第一信息和所述第二信息,模拟所述脉冲神经网络模型的数据计算过程和数据存储过程。
[0006]本公开至少一个实施例提供了一种模拟方法,用于对脉冲神经网络模型的计算进行模拟,包括:获取脉冲神经网络模型的参数;基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息和与模拟所述脉冲神经网络模型模拟的数据存储过程相关联的第二信息;以及基于所述第一信息和所述第二信息,模拟所述脉冲神经网络模型的数据计算过程和数据存储过程。
[0007]本公开至少一个实施例还提供了一种模拟设备,所述设备包括存储器和处理器,其中所述存储器中存有可执行代码,当利用所述处理器执行所述可执行代码时,使得所述处理器执行如前任一所述的模拟方法。
[0008]本公开至少一个实施例还提供了一种非易失性计算机可读存储介质,其上存储有可执行代码,所述可执行代码在被处理器执行时,使得所述处理器执行如前任一所述的模拟方法。
[0009]本公开的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计
算机设备执行根据本公开实施例的跨多个验证域的验证方法。
[0010]本公开至少一实施例提供了模拟装置、模拟方法、模拟设备以及非易失性计算机可读存储介质。本公开的实施例基于分层解耦合原则,提出了一种新颖的脉冲神经网络模拟装置。相较于传统的紧耦合框架下的模拟装置,根据本公开实施例的脉冲神经网络模拟装置更加灵活,其能够实现功能和性能之间的平衡,从而保证了功能上的完备性和性能上的高效性。
附图说明
[0011]为了更清楚地说明本公开实施例的技术方案,下面将对实施例的附图作简单地介绍,显而易见地,下面描述中的附图仅仅涉及本公开的一些实施例,而非对本公开的限制。
[0012]图1A是根据本公开实施例的脉冲神经网络模型的示意图。
[0013]图1B示出了一种典型的紧耦合架构下的模拟装置的伪代码。
[0014]图2为本公开至少一实施例提供的一种模拟装置的示意图。
[0015]图3为本公开至少一实施例提供的表达模块的示意图。
[0016]图4示出了本公开的实施例的流程模块对第一信息和第二信息进行优化的第一示例伪代码。
[0017]图5A示出了本公开的实施例的流程模块和计算模块基于稀疏性进行优化的示例。
[0018]图5B示出了本公开的实施例的流程模块和计算模块基于硬件特性进行优化的又一示例。
[0019]图6示出了本公开至少一实施例提供的模拟装置的部分伪代码。
[0020]图7示出了本公开至少一个实施例的模拟方法70的流程图。
[0021]图8示出了根据本公开实施例的电子设备的示意图。
[0022]图9示出了根据本公开实施例的示例性计算设备的架构的示意图。
[0023]图10示出了根据本公开实施例的存储介质的示意图。
具体实施方式
[0024]为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
[0025]除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“一个”、“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。
[0026]本公开至少一个实施例提供了一种模拟装置,用于对脉冲神经网络模型的计算进行模拟,所述装置包括表达模块、流程模块和计算模块,其中,所述表达模块,被配置为获取脉冲神经网络模型的参数;所述流程模块,被配置为基于所述脉冲神经网络模型的参数,确
定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息和与模拟所述脉冲神经网络模型模拟的数据存储过程相关联的第二信息;所述计算模块,被配置为基于所述第一信息和所述第二信息,模拟所述脉冲神经网络模型的数据计算过程和数据存储过程。
[0027]本公开至少一个实施例提供了一种模拟方法,用于对脉冲神经网络模型的计算进行模拟,包括:获取脉冲神经网络模型的参数;基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息和与模拟所述脉冲神经网络模型模拟的数据存储过程相关联的第二信息;以及基于所述第一信息和所述第二信息,模拟所述脉冲神经网络模型的数据计算过程和数据存储过程。
[0028]本公开至少一实施例提供了模拟装置、模拟方法、模拟设备以及非易失性计算机可读存储介质。本公开的实施例基于分层解耦合原则,提出了一种新颖的脉冲神经网络模型模拟框架。相较于传统的脉冲神经网络模型模拟框架,根据本公开实施例的脉冲神经网络模型模拟框架更加灵活,其能够实现功能和性能之间的平衡,从而保证了功能上的完备性和性能上的高效性。
[0029]下面结合附图对本公开的实施例及其示例进行详细说明。
[0030]图1A是根据本公开实施例的脉本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种模拟装置,用于对脉冲神经网络模型的计算进行模拟,所述装置包括表达模块、流程模块和计算模块,其中,所述表达模块,被配置为获取脉冲神经网络模型的参数;所述流程模块,被配置为基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息和与模拟所述脉冲神经网络模型模拟的数据存储过程相关联的第二信息;所述计算模块,被配置为基于所述第一信息和所述第二信息,模拟所述脉冲神经网络模型的数据计算过程和数据存储过程。2.如权利要求1所述的模拟装置,其中,所述脉冲神经网络模型的参数包括以下各项中的至少一项:所述脉冲神经网络模型的神经基元相关的参数、所述脉冲神经网络模型对应的计算环境相关参数、用于初始化所述脉冲神经网络模型的参数、用于定义所述脉冲神经网络模型的计算方式的参数、用于重置所述脉冲神经网络模型的参数。3.如权利要求2所述的模拟装置,其中,所述脉冲神经网络模型的神经基元相关的参数包括以下各项中的至少一项:神经元的相关参数、突触相关的参数、神经元组相关的参数、用于描述神经元组之间的连接方式的相关参数、用于描述神经元之间的连接方式的相关参数。4.如权利要求3所述的模拟装置,其中,所述用于描述神经元之间的连接方式的相关参数包括以下各项中的至少一项:构成神经元之间的连接的突触的内部状态、突触连接神经元的方式;其中,所述突触的内部状态包括突触延迟和突触权重,其中,所述突触连接神经元的方式包括一对一的连接、全对全的连接、以预设概率的连接。5.如权利要求2所述的模拟装置,其中,所述脉冲神经网络模型对应的计算环境相关参数包括以下各项中的至少一项:脉冲神经网络模型执行一次循环对应的现实时间以及循环次数、实际执行循环的硬件运行环境的类型。6.如权利要求1所述的模拟装置,其中,所述第一信息包括所述脉冲神经网络模型处理数据的多个阶段之间的执行顺序和依赖关系,所述多个阶段包括以下多个阶段中的至少两个阶段:神经元更新阶段、突触可塑性更新阶段、神经元脉冲发放阶段。7.如权利要求1所述的模拟装置,其中,所述第二信息包括:所述脉冲神经网络模型存储数据的方式和所述脉冲神经网络模型处理数据的多个阶段之间的传输数据的方式,所述存储和传输的数据包括各个神经元内部的电压、各个神经元发放的脉冲、脉冲经过各个突触后的电位。8.如权利要求1所述的模拟装置,其中,所述流程模块被配置为:基于所述第一信息和所述第二信息,生成描述脉冲神经网络模型的可执行文件,并向述计算模块传输所述可执行文件。9.如权利要求1所述的模拟装置,其中,所述基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息还包括:基于神经元组的信息,合并具有相同类型的神经元的神经元组,基于合并后的神经元组的信息,生成第一信息,以使得相同类型的神经元被连续地存
储。10.如权利要求8所述的模拟装置,其中,所述生成描述脉冲神经网络模型的可执行文件还包括:基于神经元组的信息,枚举每一个神经元组,基于所述第一信息和所述第二信息,生成可执行文件,所述可执行文件指示计算模块以神经元组为单位来更新神经元。11.如权利要求1所述的模拟装置,其中,所述基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一信息还包括:基于所述脉冲神经网络模型的稀疏特性,确定第一信息,所述第一信息指示使用多个线程的资源来计算每个神经元的电压发放信息;和/或基于计算模块的硬件特性,确定第一信息,所述第一信息指示使用以适配硬件特性的算子来模拟所述脉冲神经网络模型的数据计算过程。12.一种模拟方法,用于对脉冲神经网络模型的计算进行模拟,包括:获取脉冲神经网络模型的参数;基于所述脉冲神经网络模型的参数,确定与模拟所述脉冲神经网络模型的数据计算过程相关联的第一...

【专利技术属性】
技术研发人员:张悠慧杨乐
申请(专利权)人:清华大学
类型:发明
国别省市:

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

1