层次化系统、运算方法、运算装置、电子设备及存储介质与流程

文档序号:37354941发布日期:2024-03-18 18:39阅读:14来源:国知局
层次化系统、运算方法、运算装置、电子设备及存储介质与流程

本发明涉及一种人工智能,尤其涉及一种用于神经网络运算的层次化系统、神经网络运算方法、神经网络运算装置、电子设备及存储介质。


背景技术:

1、目前,类脑计算和认知计算以神经网络为基础,结合生物脑中的多种神经元、突触、树突等进行计算建模,并构造神经环路、神经核团、脑区和全脑模型等模型,可模拟生物脑的诸多认知机制和行为,例如记忆与学习、模拟情感、导航与计划、运动控制、类脑视觉和类脑听觉、注意力、决策等,为人工智能技术的发展提供了更广阔的研发方向。

2、然而,现有的用于神经网络运算的系统,往往使得用户无法专注于如何建模,不仅要自行编写复杂软件,还将面对软件编译所需要涉及到的硬件资源管理,这就使得用户在使用系统时过于繁琐,进而造成用户的使用体验差。

3、由上可知,如何提供一种使得用户能够专注于建模的系统亟待解决。


技术实现思路

1、有鉴于此,本发明提供了一种用于神经网络运算的层次化系统、神经网络运算方法、神经网络运算装置、电子设备及存储介质,用于解决现有技术中用户在使用系统时过于繁琐的问题。为达上述之一或部分或全部目的或是其他目的,本发明提出以下技术方案:

2、第一方面:一种用于神经网络运算的层次化系统,所述系统包括:前端部分、后端部分、以及核心部分;其中,所述前端部分,用于代理所述系统外部与所述核心部分和/或所述后端部分进行交互;所述后端部分,用于运行目标模型;所述核心部分,用于响应所述前端部分和/或所述后端部分的请求,进行所述目标模型的描述和/或组织。

3、可选地,所述前端部分包括实现所述系统外部与所述核心部分和/或所述后端部分交互的多个接口,通过所述接口调用所述系统的至少一种功能。

4、可选地,所述前端部分包括用于触发所述目标模型生成的至少一个接口。

5、可选地,所述前端部分包括用于加载和/或存储所述目标模型的至少一个接口。

6、可选地,所述至少一个接口包括序列化接口,用于指示所述核心部分将所述目标模型以字节序列进行存储;

7、可选地,所述至少一个接口还包括反序列化接口,用于指示所述核心部分将存储为字节序列的所述目标模型进行还原。

8、可选地,所述前端部分包括用于触发所述目标模型进行仿真的至少一个接口;和/或,所述前端部分包括用于展示所述目标模型的模型仿真结果的至少一个接口。

9、可选地,所述前端部分包括用于展示所述目标模型的至少一个接口。

10、可选地,所述前端部分包括用于监控所述系统运行的至少一个接口;和/或,所述前端部分包括用于展示运行监控结果的至少一个接口。

11、可选地,所述接口的类型包括但不限于:图形用户接口gui、应用程序编程接口api、描述文本接口。

12、可选地,所述api配置为面向对象程序设计;所述api的类型包括但不限于:编译型api、解释型api。

13、可选地,所述api配置为具名函数和/或动态绑定。

14、可选地,所述系统还包括会话管理模块,用于通过会话中的会话对象提供所述系统至少一种功能和/或内存对象的访问。

15、可选地,所述目标模型的生命周期包括但不限于:由模型构建阶段拆分形成的模型描述阶段、模型编译阶段、模型运行阶段。

16、可选地,所述目标模型包括源模型和可执行模型;

17、可选地,所述源模型经由所述前端部分和/或所述核心部分对所述目标模型描述而得。

18、可选地,所述可执行模型经由所述源模型编译或转换而得。

19、可选地,所述系统还包括模型编译器,用于将所述源模型编译为所述可执行模型。

20、可选地,所述核心部分包括模型构建器,用于根据所述目标模型的至少一个描述信息,按照指定模型描述范式进行所述目标模型的描述和/或组织,得到所述源模型。

21、可选地,所述模型构建器,还用于基于所述目标模型的至少一个描述信息确定至少一个基础模型,以基于至少一个所述基础模型进行所述目标模型的描述和/或组织。

22、可选地,所述基础模型包括但不限于:所述系统预先配置的基础模型、用户自定义的基础模型。

23、可选地,所述基础模型包括但不限于:神经元模型、突触模型、树突模型、可塑性模型、神经调制模型。

24、可选地,所述指定模型描述范式包括但不限于:容器模型描述范式、端口模型描述范式。

25、可选地,所述指定模型描述范式包括所述容器模型描述范式;所述模型构建器包括第一模型构建子模块,用于根据所述描述信息,按照所述容器模型描述范式由所述基础模型创建节点,并按照指定网络拓扑结构,将创建的所述节点连接形成所述源模型。

26、可选地,所述节点的节点类型包括但不限于:神经元模型、突触前膜模型、突触后膜模型、突触模型、树突模型、连接转换模型、可塑性模型、神经调制模型、通用模型、dnn模型。

27、可选地,所述核心部分还包括容器管理模块,用于按照指定容器组织方式,将所述模型构建器创建的节点,形成位于相同或不同层次的至少一个第一容器。

28、可选地,所述第一容器包括但不限于:节点参数容器、节点容器、层容器、模块容器、汇聚容器、网络容器。

29、可选地,所述核心部分还包括连接生成器,用于按照所述指定容器组织方式,在任意两种第一容器之间进行连接,形成位于相同或不同层次的至少一个第二容器。

30、可选地,所述第二容器包括但不限于:边参数容器、边容器、连接容器、通道容器、流通容器、网络容器。

31、可选地,所述容器模型描述范式包括容器类、容器模板中的至少一种,以基于所述容器类、所述容器模板中的至少一种形成容器和/或所述节点。

32、可选地,所述指定模型描述范式包括所述端口模型描述范式;所述模型构建器包括第二模型构建子模块,用于根据所述描述信息,按照所述端口模型描述范式由所述基础模型确定端口模型,并根据指定网络拓扑结构,将所确定的所述端口模型连接形成所述源模型。

33、可选地,所述端口模型包括模型主体及与所述模型主体连接的端口;所述端口包括输入端口、输出端口、引用端口、连接端口中的至少一种。

34、可选地,所述端口模型描述范式包括端口模型类、端口模型模板中的至少一种,以基于所述端口模型类、所述端口模型模板中的至少一种形成所述端口模型。

35、可选地,所述模型构建器,还用于对所述源模型和/或所述可执行模型进行模型优化处理,得到优化后的所述源模型和/或所述可执行模型。

36、可选地,所述模型优化处理包括但不限于:神经元裁剪、突触裁剪。

37、可选地,所述系统将所述目标模型分解为数据和/或操作。

38、可选地,所述目标模型的描述信息包括:用于描述所述目标模型所对应数据的信息,和/或,用于描述所述目标模型所对应操作的信息。

39、可选地,所述操作包括但不限于:所述系统预先配置的操作、用户自定义的操作。

40、可选地,所述系统还包括数据封装模块,用于对一至多种数据类型进行封装,使得所述目标模型能够对应经封装的数据类型。

41、可选地,所述数据类型包括但不限于:标量、张量、字符串、单变量、张量变量、字符串变量。

42、可选地,所述系统还包括变量注册器,用于将所述目标模型对应的数据注册至变量注册表,使得所述目标模型对应的数据关联至容器和/或节点。

43、可选地,所述变量注册表用于记录所述目标模型所对应数据的信息。

44、可选地,所述系统还包括变量填充器,用于根据所述目标模型所对应数据中的指定变量、以及所述指定变量的指定填充方式,按照所述指定填充方式对所述指定变量进行数值填充。

45、可选地,所述指定填充方式包括同步填充方式和/或异步填充方式。

46、可选地,所述指定填充方式但不限于:常量填充、拷贝填充、均匀随机填充、正态随机填充、局部卷积填充。

47、可选地,所述系统还包括操作注册器,用于将所述目标模型对应的操作注册至操作注册表,使得所述目标模型对应的操作关联至容器和/或节点。

48、可选地,所述操作注册表用于记录所述目标模型所对应操作的信息。

49、可选地,所述系统还包括操作管理器,用于管理所述目标模型对应的操作;所述管理至少包括:操作注册。

50、可选地,所述操作注册的方式包括:将所述操作注册至操作注册表、将所述操作注册至节点关联的节点工厂中的至少一种。

51、可选地,所述操作管理器,还用于配置与所述节点关联的节点工厂。

52、可选地,所述系统还包括持久化模块,用于对所述源模型和/或所述可执行模型进行持久化处理。

53、可选地,所述持久化模块包括序列化子模块,用于对所述源模型和/或所述可执行模型进行序列化处理,以使处理得到的序列化处理结果存储于指定存储区。

54、可选地,所述持久化模块还包括反序列化子模块,用于将所述序列化处理结果还原为所述源模型和/或所述可执行模型。

55、可选地,所述系统还包括运行监控器,用于监控所述系统的运行状态。

56、可选地,所述系统还包括基础模块,用于实现以下至少一种功能:日志功能、测试功能、性能评估功能。

57、可选地,所述系统还包括第一扩展接口,用于对所述核心部分的功能进行扩展。

58、可选地,所述系统还包括插件,用于对所述核心部分的功能以插件形式进行扩展。

59、可选地,所述后端部分包括执行引擎,用于运行所述目标模型。

60、可选地,所述执行引擎,还用于为所述目标模型的运行调用硬件资源。

61、可选地,所述执行引擎,还用于为所述目标模型的运行调度在所述核心部分注册的操作及关联的容器和/或节点。

62、可选地,所述系统还包括第二扩展接口,用于对所述后端部分的功能进行扩展。

63、可选地,所述系统支持的指定容器组织方式包括但不限于:级联、嵌套。

64、可选地,所述系统支持的指定容器组织方式包括但不限于:树状结构组织方式、扁平结构组织方式。

65、可选地,所述系统支持的指定网络拓扑结构包括但不限于:顺馈结构、反馈结构、跨层结构、侧向结构、循环结构、自循环结构、神经元与神经元直连结构、突触与突触直连结构、突触与树突直连结构、树突与树突直连结构。

66、可选地,所述系统支持不定参数传参。

67、第二方面:一种神经网络运算方法,由如上所述的用于神经网络运算的层次化系统执行,所述系统包括前端部分、后端部分、以及核心部分,所述方法包括:通过所述前端部分,代理所述系统外部与所述核心部分和/或所述后端部分进行交互;通过所述后端部分,运行目标模型;通过所述核心部分,响应所述前端部分和/或所述后端部分的请求,进行所述目标模型的描述和/或组织。

68、可选地,所述交互至少包括:通过所述前端部分将接收到的模型生成指令传输至所述核心部分,以使所述核心部分响应所述前端部分的请求;所述模型生成指令用于请求生成所述目标模型。

69、可选地,所述模型生成指令的接收,包括:在图形编辑界面中,检测针对所述目标模型的网络拓扑结构触发进行的第一编辑操作;响应检测到的第一编辑操作,生成所述模型生成指令。

70、可选地,所述模型生成指令的接收,包括:调用目标api,并基于所述目标api指定的所述目标模型,检测针对所述目标模型触发进行的第二编辑操作;响应检测到的第二编辑操作,生成所述模型生成指令。

71、可选地,所述模型生成指令的接收,包括:加载关于所述目标模型的描述文本,并在显示所述描述文本的文本编辑界面中,检测针对所述目标模型触发进行的第三编辑操作;响应检测到的第三编辑操作,生成所述模型生成指令。

72、可选地,所述方法还包括:通过所述后端部分,响应于请求所述目标模型进行仿真的模型仿真指令,在调用硬件资源构建的运行环境中运行所述可执行模型,得到模型仿真结果。

73、可选地,所述方法还包括:进行所述目标模型和/或所述模型仿真结果的推送。

74、第三方面:一种神经网络运算装置,所述装置部署于如上所述的用于神经网络运算的层次化系统,所述层次化系统包括前端部分、后端部分、以及核心部分;所述装置包括:交互模块,用于结合所述前端部分,代理所述系统外部与所述核心部分和/或所述后端部分进行交互;运行模块,用于结合所述后端部分,运行目标模型;响应模块,用于结合所述核心部分,响应所述前端部分和/或所述后端部分的请求,进行所述目标模型的描述和/或组织。

75、可选地,所述交互模块至少包括:指令接收子模块,用于通过所述前端部分将接收到的模型生成指令传输至所述核心部分,以使所述核心部分响应所述前端部分的请求;所述模型生成指令用于请求生成所述目标模型。

76、可选地,所述指令接收子模块,包括:第一操作检测单元,用于在图形编辑界面中,检测针对所述目标模型的网络拓扑结构触发进行的第一编辑操作;第一指令生成单元,用于响应检测到的第一编辑操作,生成所述模型生成指令。

77、可选地,所述指令接收子模块,包括:第二操作检测单元,用于调用目标api,并基于所述目标api指定的所述目标模型,检测针对所述目标模型触发进行的第二编辑操作;第二指令生成单元,用于响应检测到的第二编辑操作,生成所述模型生成指令。

78、可选地,所述指令接收子模块,包括:第三操作检测单元,用于加载关于所述目标模型的描述文本,并在显示所述描述文本的文本编辑界面中,检测针对所述目标模型触发进行的第三编辑操作;第三指令生成单元,用于响应检测到的第三编辑操作,生成所述模型生成指令。

79、可选地,所述装置还包括:仿真模块,用于通过所述后端部分,响应于请求所述目标模型进行仿真的模型仿真指令,在调用硬件资源构建的运行环境中运行所述目标模型,得到模型仿真结果。

80、可选地,所述装置还包括:推送模块,用于进行所述目标模型和/或所述模型仿真结果的推送。

81、第四方面:一种电子设备,包括:至少一个处理器、至少一个存储器、以及至少一条通信总线,其中,所述存储器上存储有计算机程序,所述处理器通过所述通信总线读取所述存储器中的所述计算机程序;所述计算机程序被所述处理器执行时实现如上所述的神经网络运算方法。

82、第五方面:一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的神经网络运算方法。

83、实施本发明实施例,将具有如下有益效果:

84、在上述技术方案中,系统包括前端部分、后端部分以及核心部分,基于前端部分代理系统外部与核心部分、后端部分进行交互、以及后端部分运行目标模型,核心部分将相应地响应前端部分和/或后端部分的请求,进行目标模型的描述和/或组织,也就是说,对于系统外部的用户而言,通过与系统交互,便能够将与目标模型相关的请求传递至核心部分,使得复杂软件的编写由用户转移至核心部分,并且基于后端部分运行目标模型,也使得用户无需面对硬件资源管理的繁琐,进而使得用户能够专注于建模,从而有效地解决了现有技术中用户在使用系统时过于繁琐的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1