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

类脑计算机操作系统的脉冲神经网络应用表示方法及装置制造方法及图纸

技术编号:35761707 阅读:40 留言:0更新日期:2022-11-26 19:13
本发明专利技术公开了类脑计算机操作系统的脉冲神经网络应用表示方法及装置,将一个类脑应用所需的全部文件组织成一个dpk,具体包括:模型校验文件、SNN模型描述文件、SNN权重连接文件、可执行模型文件,以及应用配置、数据预处理、脉冲编解码、应用业务逻辑处理等文件。dpk的生成过程分为三步:SNN模型训练或转换、模型编译、应用压缩打包。类脑计算机操作系统导入dpk后进行解压和安装,部署模型到类脑计算机,并基于该神经模型运行类脑应用。本发明专利技术对各种脉冲神经网络模型和应用配置信息的表示提供约束和规范,为各种类脑应用接入类脑计算机提供统一入口,有助于提高类脑操作系统的管理效率以及类脑计算机硬件资源的利用率。及类脑计算机硬件资源的利用率。及类脑计算机硬件资源的利用率。

【技术实现步骤摘要】
类脑计算机操作系统的脉冲神经网络应用表示方法及装置


[0001]本专利技术涉及新型计算机
,尤其是涉及类脑计算机操作系统的脉冲神经网络应用表示方法及装置。

技术介绍

[0002]随着后摩尔时代的到来,传统的冯诺依曼体系计算机的性能在多个方面达到瓶颈,为了解决“内存墙”、“功耗墙”等问题,类脑计算应运而生,通过借鉴模拟大脑中的神经网络结构和信息加工过程,将存储与计算合并,以此来提高计算性能并降低功耗。
[0003]脉冲神经网络(Spiking Neuron Networks,SNN)作为第三代神经网络具有高度的生物真实性,通过模拟大脑神经网络连接方式并结合时间信息来实现高效运算。基于脉冲神经网络的类脑应用可以对多种数据进行加工和处理,在某些特定的智能信息应用场景中有着突出的性能表现。类脑计算机作为类脑应用运行的载体,通过类脑操作系统维护和控制多种类脑应用的资源分配、任务调度和调试运行。
[0004]但是由于脉冲神经网络复杂多样、模型文件数量多、类脑应用数据来源不一、应用场景种类繁多等问题,往往需要对某一个类脑应用的运行做定制化处理,为匹配不同的脉冲神经网络模型,需要手动配置不同的输入输出方式。这些不仅增加了人力成本,也对类脑操作系统维护和控制不同的脉冲神经网络模型带来了不便,无法高效充分地利用类脑计算机的硬件资源。

技术实现思路

[0005]为解决现有技术的不足,实现类脑计算机操作系统支持更多类脑应用的开发和普及,更好地促进类脑计算机硬件的发展的目的,本专利技术采用如下的技术方案:一种类脑计算机操作系统的脉冲神经网络应用表示方法,采用达尔文类脑计算机,包括一组基础模块,每个基础模块包含多个由多颗达尔文神经拟态芯片组成的子模块,类脑计算机操作系统基于达尔文神经拟态芯片,控制类脑计算机的计算资源和存储资源,每个类脑应用通过类脑应用程序包的方式,经类脑计算机操作系统进行安装、部署、运行,利用类脑计算机的芯片资源,实现特定的人工智能需求,包括如下步骤:步骤S1:构建脉冲神经网络并进行训练,得到脉冲神经网络文件;对构建的脉冲神经网络进行编译,建立脉冲神经网络与类脑计算机硬件资源之间的映射关系,得到编译文件;将脉冲神经网络文件和编译文件,连同校验文件和业务功能文件打包为类脑应用程序包,一个类脑应用程序可以包含多个脉冲神经网络,每个脉冲神经网络对应生成一套编译文件;其中,校验文件用于检验类脑应用程序包的完整性和安全性,业务功能文件用于类脑计算机操作系统对具体应用功能的调用;步骤S2:类脑计算机操作系统针对类脑应用程序包构建接口,根据类脑应用程序包的目录结构获取并运行对应的文件,来部署脉冲神经网络,包括如下步骤:步骤S2.1:类脑计算机操作系统导入类脑应用程序包,并解压;
步骤S2.2:执行校验文件,检查包的完整性和安全性,并判断脉冲神经网络能否部署于类脑计算机上;类脑应用程序包执行安装后,类脑计算机操作系统会首先解析校验数据,检查类脑应用程序包的安全性和完整性;步骤S2.3:基于编译文件,得到脉冲神经网络与类脑计算机硬件资源之间的映射关系,将脉冲神经网络部署于类脑计算机的类脑芯片上,部署成功后,将该脉冲神经网络纳入类脑计算机操作系统的控制范围内;步骤S2.4:解析脉冲神经网络文件和业务功能文件,获取脉冲输入;步骤S2.5:将脉冲输入发送至部署于类脑计算机的脉冲神经网络,解析并返回脉冲输出。
[0006]进一步地,所述步骤S1包括如下步骤:步骤S1.1:脉冲神经网络模型的训练和/或转换,将人工智能神经网络转换为脉冲神经网络,对脉冲神经网络进行训练,输出脉冲神经网络文件,包括描述文件和权重连接文件;人工智能神经网络转换为脉冲神经网络,是根据人工智能神经网络的连接关系,构建脉冲神经网络结构,并将人工智能网络的连接权重转换为脉冲神经网络的突触权重;描述文件包括脉冲神经网络的名称、版本、层次结构和每一层的神经元规模;权重连接文件为四元组集合,每个四元组定义了突触连接的两个神经元编号、突触权重和突触时延;步骤S1.2:对脉冲神经网络进行编译,通过编译器建立脉冲神经网络的结构与类脑计算机硬件资源之间的映射关系,由于步骤S1.1输出的SNN模型文件无法在类脑计算机上运行,因此需要生成SNN模型的二进制文件,并将脉冲神经网络编译为类脑计算机能够识别的类脑芯片指令集,以便于类脑计算机操作系统将其部署到类脑芯片上;步骤S1.3:将脉冲神经网络文件和编译文件,连同校验文件和业务功能文件打包为类脑应用程序包。
[0007]编译文件,包括每个文件的MD5值和文件大小,文件签名序列,类脑应用程序包的配置信息。
[0008]进一步地,所述步骤S2.3中,基于类脑芯片指令集,逐层将脉冲神经网络的神经元映射到作为硬件计算节点的类脑芯片上。
[0009]进一步地,所述步骤S1中,业务功能文件为实现应用业务功能的脚本,包括数据处理脚本、脉冲编解码脚本、业务功能处理脚本,数据处理脚本用于配置数据源输入方式和数据预处理方法,具体地,业务功能处理脚本中,通过调用类脑计算机操作系统提供的API接口,对脉冲数据进行处理,包括数据输入输出等,调试和运行等日志信息也需要调用专门的API;脉冲编码脚本中定义编码方法,用于将预处理的结果转换为脉冲序列;脉冲解码脚本中定义解码方法,用于将输出层神经元的脉冲激发序列解码为相应的结果;业务功能处理脚本用于实现具体的业务功能;类脑计算机操作系统部署好模型并运行后,会调用该目录下的脚本来实现具体的应用功能;所述步骤S2.4中,基于描述文件得到的输入层的神经元规模,经数据处理脚本得到数据输入源和数据预处理方法,再通过脉冲编码脚本得到数据预处理后的脉冲序列;将脉冲序列作为脉冲输入。
[0010]进一步地,所述脉冲编码脚本的输出是键值对的集合,形式如下:[key1:[time1,time2,time3,...],key2:[time1,time2,time3,...]...]其中key表示输入神经元编号,其个数与脉冲神经网络的输入层神经元规模相匹配,time表示该神经元发放脉冲的时间点。
[0011]进一步地,所述步骤S1中,类脑应用程序包还包括图标文件,用于在类脑计算机操作系统用户界面中显示;所述步骤S2中,还包括创建类脑应用程序运行面板,用于载入图标文件用于标识,在获取到解码后的脉冲输出后,通过调用可视化脚本定义的输出信息展示方式,将脉冲输出呈现在运行面板上。
[0012]一种类脑计算机操作系统的脉冲神经网络应用表示方法,将所述类脑计算机操作系统的脉冲神经网络应用表示方法应用于图像分类识别,所述步骤S2.5中,对脉冲输出进行解码,并统计脉冲神经网络输出层神经元各自的脉冲发放次数之和,基于输出层神经元各自的脉冲发放次数之和得到图像分类概率值。
[0013]进一步地,当输出层神经元分布在类脑计算机操作系统中作为计算节点的多个类脑芯片上时,对每个神经元重新编号,得到的最终索引号的计算规则如下:式中::表示计算节点在脉冲神经网络最后一层的序号;:表示每个计算节点上的神经元数目,通过将脉冲神经本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种类脑计算机操作系统的脉冲神经网络应用表示方法,其特征在于包括如下步骤:步骤S1:构建脉冲神经网络并进行训练,得到脉冲神经网络文件;对构建的脉冲神经网络进行编译,建立脉冲神经网络与类脑计算机硬件资源之间的映射关系,得到编译文件;将脉冲神经网络文件和编译文件,连同校验文件和业务功能文件打包为类脑应用程序包;其中,校验文件用于检验类脑应用程序包的完整性和安全性,业务功能文件用于类脑计算机操作系统对具体应用功能的调用;步骤S2:类脑计算机操作系统针对类脑应用程序包构建接口,根据类脑应用程序包的目录结构获取并运行对应的文件,来部署脉冲神经网络,包括如下步骤:步骤S2.1:类脑计算机操作系统导入类脑应用程序包;步骤S2.2:执行校验文件,检查包的完整性和安全性,并判断脉冲神经网络能否部署于类脑计算机上;步骤S2.3:基于编译文件,得到脉冲神经网络与类脑计算机硬件资源之间的映射关系,将脉冲神经网络部署于类脑计算机的类脑芯片上;步骤S2.4:解析脉冲神经网络文件和业务功能文件,获取脉冲输入;步骤S2.5:将脉冲输入发送至部署于类脑计算机的脉冲神经网络,解析并返回脉冲输出。2.根据权利要求1所述的类脑计算机操作系统的脉冲神经网络应用表示方法,其特征在于:所述步骤S1包括如下步骤:步骤S1.1:脉冲神经网络模型的训练和/或转换,将人工智能神经网络转换为脉冲神经网络,对脉冲神经网络进行训练,输出脉冲神经网络文件,包括描述文件和权重连接文件;步骤S1.2:对脉冲神经网络进行编译,通过编译器建立脉冲神经网络的结构与类脑计算机硬件资源之间的映射关系,并将脉冲神经网络编译为类脑计算机能够识别的类脑芯片指令集;步骤S1.3:将脉冲神经网络文件和编译文件,连同校验文件和业务功能文件打包为类脑应用程序包。3.根据权利要求2所述的类脑计算机操作系统的脉冲神经网络应用表示方法,其特征在于: 所述步骤S2.3中,基于类脑芯片指令集,逐层将脉冲神经网络的神经元映射到作为硬件计算节点的类脑芯片上。4.根据权利要求1所述的类脑计算机操作系统的脉冲神经网络应用表示方法,其特征在于:所述步骤S1中,业务功能文件为实现应用业务功能的脚本,包括数据处理脚本、脉冲编解码脚本、业务功能处理脚本,数据处理脚本用于配置数据源输入方式和数据预处理方法;脉冲编码脚本中定义编码方法,用于将预处理的结果转换为脉冲序列;脉冲解码脚本中定义解码方法,用于将输出层神经元的脉冲激发序列解码为相应的结果;业务功能处理脚本用于实现具体的业务功能;所...

【专利技术属性】
技术研发人员:孙庆姣吕攀齐勃孙世春邓水光李莹潘纲
申请(专利权)人:浙江大学
类型:发明
国别省市:

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

1