脉冲神经网络模型的在线可视化开发方法和装置

未命名 10-08 阅读:149 评论:0


1.本技术涉及新型计算机技术领域,特别是涉及一种脉冲神经网络模型的在线可视化开发方法和装置。


背景技术:

2.近年来,深度学习在各个领域得到很大发展,神经网络也被广泛用于解决各种人工智能问题。脉冲神经网络(spiking neuron networks,snn)作为第三代神经网络,从生物仿真的角度出发,对真实的生物神经元机制进行建模,除神经元和突触的状态之外,还将时间状态纳入计算过程中。与第二代bp(back propagation)神经网络相比,可以更真实地模拟大脑神经元行为来实现高效计算,目前已成为类脑计算的研究热点。
3.传统的神经网络模型开发过程需要开发者熟悉算法原理,熟练掌握编程知识,开发门槛较高,现有技术中也提出了一些基于可视化的神经网络模型开发方法,简化神经网络模型的构建过程,例如根据可视化控件的节点和可视化有向弧完成神经网络的构建。
4.但是相关技术中的可视化构建和训练方法适用于人工神经网络,不适用于开发流程更为复杂的脉冲神经网络,且在神经网络模型开发过程中缺少可视化的信息进行指导和分析。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种能够在开发过程中提供可视化的信息进行指导和分析的脉冲神经网络模型的在线可视化开发方法和装置。
6.第一方面,本技术提供了一种脉冲神经网络模型的在线可视化开发方法。
7.所述方法包括:
8.获取脉冲神经网络训练用的数据集;
9.从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与所述设计元素对应的属性值;
10.基于所述设计元素及所述属性值构建所述初始脉冲神经网络结构;
11.基于所述数据集对所述初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对所述脉冲神经网络的训练监控数据进行可视化展示。
12.在其中一个实施例中,所述基于所述设计元素及所述属性值构建所述初始脉冲神经网络结构,包括:
13.根据所述设计元素及其所述属性值进行自动代码转换,得到用代码编写的所述初始脉冲神经网络结构。
14.在其中一个实施例中,所述获取脉冲神经网络训练用的数据集,包括:
15.接收初始数据集以及预处理规则;
16.根据所述预处理规则对所述初始数据集进行预处理,得到脉冲神经网络训练用的数据集。
17.在其中一个实施例中,所述基于所述数据集对所述初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型,包括:
18.基于所述数据集以及所述初始脉冲神经网络结构进行训练代码自动生成,根据所述训练代码进行网络训练,得到训练后的脉冲神经网络模型;
19.将所述训练后的脉冲神经网络模型进行量化编译,得到脉冲神经网络模型的指令文件;
20.将所述指令文件打包发送至用于合法性验证的设备处以进行合法性验证;
21.当接收到所述设备返回的验证通过信息时,将所述训练后的脉冲神经网络模型认定为目标脉冲神经网络模型。
22.在其中一个实施例中,所述并在训练过程中,对所述脉冲神经网络的训练监控数据进行可视化展示,包括:
23.在训练过程中,将所述脉冲神经网络的训练监控数据存入redis缓存;
24.根据接收到的查询请求将所述redis缓存中的所述训练监控数据发送给可视化页面进行可视化展示。
25.在其中一个实施例中,所述训练监控数据包括训练/测试准确率、训练/测试损失、预测结果以及训练日志。
26.第二方面,本技术还提供一种脉冲神经网络模型的在线可视化开发装置,所述装置包括:
27.获取数据集模块,用于获取脉冲神经网络训练用的数据集;
28.获取属性值模块,用于从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与所述设计元素对应的属性值;
29.构建网络结构模块,用于基于所述设计元素及其所述属性值构建所述初始脉冲神经网络结构;
30.训练模型模块,基于所述数据集对所述初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对所述脉冲神经网络的训练监控数据进行可视化展示。
31.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一个方面所述的脉冲神经网络模型的在线可视化开发方法。
32.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一个方面所述的脉冲神经网络模型的在线可视化开发方法。
33.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一个方面所述的脉冲神经网络模型的在线可视化开发方法。
34.与相关技术相比,上述脉冲神经网络模型的在线可视化开发方法和装置,通过从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与所述设计元素对应的属性值;基于所述设计元素及其属性值构建所述初始脉冲神经网络结构;获取所述初始脉冲神经网络结构训练用的数据集,并基于所述数据集对所述初始脉冲神经
可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
46.在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图1是本实施例的脉冲神经网络模型的在线可视化开发方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
47.存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如在本实施例中的脉冲神经网络模型的在线可视化开发方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
48.传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(network interface controller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
49.在本实施例中提供了一种脉冲神经网络模型的在线可视化开发方法,图2是本实施例的脉冲神经网络模型的在线可视化开发方法的流程图,如图2所示,该流程包括如下步骤:
50.步骤s210,获取脉冲神经网络训练用的数据集。
51.具体的,接收初始数据集以及预处理规则;根据预处理规则对初始数据集进行预处理,得到脉冲神经网络训练用的数据集。
52.步骤s220,从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与设计元素对应的属性值。
53.其中,预设的脉冲神经网络图形化设计页面包括四个部分,页面上方为工具栏,左侧是脉冲神经网络的图形元素的展示区域,中间是画布,右侧是图形元素的属性值设置区域。图形元素包括神经元输入层、输出层、隐藏层以及突触连接。各个图形元素都有不同的属性:输入层可以设置脉冲编码方法、时间步、snn运行时长等参数;输出层可以设置解码方法等参数;中间隐藏层可以设置隐藏层名称、神经元组形状、神经元类型、电位衰减模式、膜电位重置模式、脉冲发放阈值、状态监视器、脉冲监视器等参数;突触连接图元可以设置连接类型,包括全连接和卷积连接,如果是卷积连接,可以设置卷积核大小、卷积步长、特征图填充宽度等参数;此外还有一些全局属性,包括学习算法、学习率等。用户通过鼠标将图形
元素拖拽到中间画布中进行规划设计,并设置好每个元素的相关属性值。设计完成后,前端将图形化设计的脉冲神经网络结构的相关数据发送给后端,后端接收到数据后从中提取各个设计元素及其属性值
54.步骤s230,基于设计元素及其属性值构建初始脉冲神经网络结构。
55.例如前端绘制了一个三层的网络结构,后端提取到的图形元素包括输入层、输出层、一个隐藏层和突触连接,并提取到各个图形元素的属性值。其中,输入层用于编码和输入,隐藏层神经元类型为if模型,包含576个神经元用于训练,输出层用于解码和输出,突触连接类型为全连接。此外提取到的全局属性包括学习算法为stca算法(spatio-temporal credit assignment,时空信用分配算法),学习率为0.01等。
56.具体的,根据设计元素及其属性值进行自动代码转换,得到用代码编写的基于spaic(spike-based artificial intelligence computing)类脑计算框架构建的初始脉冲神经网络结构。spaic是一个结合了神经科学与机器学习的开源类脑计算框架。
57.步骤s240,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示。
58.具体的,在执行snn训练时,根据用户操作自动生成网络训练和测试所需的代码,代码实现数据集加载、网络训练和网络测试等各个步骤。
59.其中,使用属性值中设置的学习算法进行训练,示例性的,脉冲神经网络模型代码根据spaic框架实现,可以采用stca算法进行训练。开始训练后,实时的收集初始脉冲神经网络模型的训练监控数据,其中,监控数据包括训练/测试准确率、训练/测试损失、预测结果以及训练日志,将上述训练监控数据存入redis缓存,根据接收到的查询请求将redis缓存中的训练监控数据发送给可视化页面进行可视化展示。
60.在本实施例中,通过从预设的脉冲神经网络图形化设计页面中获取的设计元素及其属性值构建初始脉冲神经网络结构,使开发者利用脉冲神经网络图形化设计页面设计脉冲神经网络,具体通过设计元素和属性值来设置脉冲神经网络模型的结构和参数,方便开发者对脉冲神经网络的众多参数进行调节,简化了脉冲神经网络的构建过程,同时在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示,为模型的训练过程提供可视化的分析,直观的引导开发者对脉冲神经网络模型进行优化设计,从而提高脉冲神经网络模型开发的准确度。
61.在一个实施例中,基于上述步骤s230,基于设计元素及其属性值构建初始脉冲神经网络结构,具体可以包括以下步骤:
62.步骤s231,根据设计元素及其属性值进行自动代码转换,得到用代码编写的初始脉冲神经网络结构。
63.具体的,如图3所示,根据前端的请求,后端服务基于设计元素及其属性值通过预置的mustache模板渲染,输出使用python代码编写的基于spaic类脑计算框架构建的初始脉冲神经网络模型。后端将代码转换成功后,前端web页面会为用户打开一个jupyter notebook页面,用户可以在线预览或编辑生成的初始脉冲神经网络结构代码。
64.通过上述步骤,实现了从脉冲神经网络图形化设计页面的图形元素到代码的自动转化,开发者无需手动撰写代码,即可得到完整准确的初始脉冲神经网络结构,从而简化开发过程,降低了开发门槛。
65.在一个实施例中,基于上述步骤s240,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示,可以包括以下步骤:
66.步骤s241,基于数据集对初始脉冲神经网络结构进行训练,得到训练后的脉冲神经网络模型。
67.其中,在执行snn训练时,根据用户操作并基于spaic框架自动生成网络训练和测试所需的代码,代码实现数据集加载、网络训练和网络测试等各个步骤,代码生成成功后,前端web页面会为用户打开一个jupyter notebook页面,用户可以在线预览或编辑生成的训练代码,如果代码无误,后端将会运行代码进行脉冲神经网络训练。
68.步骤s242,将训练后的脉冲神经网络模型进行量化编译,得到脉冲神经网络模型的指令文件。
69.其中,量化编译是使用达尔文类脑编译器darwincpl将训练后的脉冲神经网络模型编译成达尔文芯片能识别的指令。
70.步骤s243,将指令文件打包发送至用于合法性验证的设备处以进行合法性验证。
71.具体的,如图4所示,前端发送验证请求给后端服务,后端接收到http请求后对指令文件进行打包,然后通过http请求将其发送给类脑计算机,类脑计算机解析指令文件,检查训练后的脉冲神经网络模型合法性,若检测合法,类脑计算机将训练后的脉冲神经网络模型部署到类脑芯片上,并向后端返回验证结果。
72.步骤s244,当接收到设备返回的验证通过信息时,将训练后的脉冲神经网络模型认定为目标脉冲神经网络模型。
73.其中,在接收到验证通过信息后,将验证通过信息发送至可视化页面进行展示,以告知用户开发成功。
74.上述步骤s241至步骤s244,通过对将训练后的脉冲神经网络模型进行量化编译,以供合法性验证的设备端对本次可视化训练得到的脉冲训练模型进行合法性验证,如果验证无误,表明该脉冲神经网络模型开发成功,得到的目标脉冲神经网络可以用于后续的类脑应用开发中,使得开发结果更具安全性和可靠性。
75.在一个实施例中,基于上述步骤s240,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示,还包括以下步骤:
76.步骤s245,在训练过程中,将脉冲神经网络的训练监控数据存入redis缓存。
77.步骤s246,根据接收到的查询请求将redis缓存中的训练监控数据发送给可视化页面进行可视化展示。
78.具体的,前端每隔500毫秒发送一次查询请求,后端服务收到请求后将redis缓存中的数据返回给前端进行图形绘制。其中,监控数据包括训练/测试准确率、训练/测试损失、预测结果以及训练日志,因此,在可视化界面可以展示出训练/测试准确率折线图、训练/测试损失折线图、预测结果混淆矩阵、训练日志信息等信息。
79.本实施例通过redis缓存对训练监控数据进行存取,可以提高数据的读取速度,使训练监控数据能够进行实时的可视化展示。
80.下面通过优选实施例对本实施例进行描述和说明。
81.本优选实施例基于b/s(浏览器/服务器)架构设计了一套snn模型在线开发系统,结合可视化和代码在线编辑两种方式,用户可以从零开始完成snn模型的开发。用户的所有操作都是在本地客户端浏览器的web页面上执行,后台服务器中部署的后端服务会对用户的请求进行处理和给予响应。
82.snn模型在线开发主要包括四个阶段:
83.第一阶段是准备阶段,用户首先需要在线申请cpu、gpu等计算资源和类脑硬件资源,申请通过后就可以创建snn在线开发工程,并上传网络训练所需的数据集。
84.第二阶段是配置阶段,用户需要对上传的数据集配置数据预处理规则。
85.第三阶段是设计和训练阶段,涉及一种脉冲神经网络模型的在线可视化开发方法,用于解决编码构建snn过程中学习门槛高、开发难度大、通用性差、缺乏数据可视化分析等问题。
86.具体的,本实施例基于开源绘图工具draw.io进行了二次开发,并将其嵌入到工程开发页面中。用户在snn图形化设计页面中,通过鼠标将网络图形元素拖拽到中间画布中进行规划设计,并设置好每个元素的相关属性值,保存并点击“应用”按钮后,即可完成整体网络结构的设计工作。
87.之后用户可以选择将该网络结构的图形化设计自动转为代码,前端会通过http请求将所有设计元素发送给后端服务,后端服务接收到请求后,提取所有设计元素的属性值,通过预置的mustache模板渲染,输出使用python代码编写的基于spaic类脑计算框架(spaic是一个结合了神经科学与机器学习的开源类脑计算框架)构建的snn模型。后端代码转换成功后,前端web页面会为用户打开一个jupyter notebook页面,用户可以在线预览或编辑生成的网络结构代码。
88.在执行snn训练时,后端服务也会根据前几个阶段的用户操作自动生成所需代码,代码实现数据集加载、网络训练和网络测试等各个步骤。代码根据spaic框架实现,按照snn设计步骤中选择的学习算法运行网络,对给定的数据集进行训练和识别,代码会呈现在前端jupyter notebook页面中,用户可以进行预览或编辑。开始训练后web页面会对实时数据进行可视化展示,可视化界面包含四个部分,分别是训练/测试准确率折线图、训练/测试损失折线图、预测结果混淆矩阵、训练日志信息。该可视化的实现是通过后端服务将训练过程中输出的实时数据存入redis缓存,前端每隔500毫秒发送一次查询请求,后端服务收到请求后将redis中的数据返回给前端进行图形绘制。
89.第四阶段是验证阶段,用于将训练得到的snn模型进行量化编译,然后发送给类脑计算机进行部署验证。量化编译是使用达尔文类脑编译器darwincpl将snn模型编译成达尔文芯片能识别的指令,snn部署验证过程如图5所示。前端发送验证请求给后端服务,后端接收到http请求后对网络模型文件进行打包,然后通过http请求将其发送给类脑计算机,类脑计算机通过检查snn模型合法性后,将模型部署到类脑芯片上,如果验证无误,表明该snn模型开发成功,可以用于后续的类脑应用(通过snn的推理来实现功能的应用)开发中。
90.此外,本发明可以提供离线安装包,对已经购买类脑芯片硬件资源的用户,可以将本发明的前端和后端服务部署到个人电脑上,启动本地web服务,即可使用snn的可视化设计和训练功能。
91.图5是本优选实施例的脉冲神经网络模型的可视化开发脉冲神经网络模型的在线
可视化开发方法的流程图。
92.步骤s501,从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与设计元素对应的属性值。
93.步骤s502,根据设计元素及其属性值进行自动代码转换,得到用代码编写的初始脉冲神经网络结构。
94.步骤s503,接收初始数据集以及预处理规则;根据预处理规则对初始数据集进行预处理,得到脉冲神经网络训练用的数据集。
95.步骤s504,基于数据集对初始脉冲神经网络结构进行训练,得到训练后的脉冲神经网络模型。
96.步骤s505,将训练后的脉冲神经网络模型进行量化编译,得到脉冲神经网络模型的指令文件;将指令文件打包发送至用于合法性验证的设备处以进行合法性验证;当接收到设备返回的验证通过信息时,将训练后的脉冲神经网络模型认定为目标脉冲神经网络模型。
97.步骤s506,在训练过程中,将脉冲神经网络的训练监控数据存入redis缓存;根据接收到的查询请求将redis缓存中的训练监控数据发送给可视化页面进行可视化展示。
98.应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
99.基于同样的发明构思,在本实施例中还提供了一种脉冲神经网络模型的在线可视化开发装置,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
100.在一个实施例中,如图6所示,提供了一种脉冲神经网络模型的在线可视化开发装置,包括:获取数据集模块61、获取属性值模块62、构建网络结构模块63和训练模型模块64,其中:
101.获取数据集模块61,用于获取脉冲神经网络训练用的数据集。
102.获取属性值模块62,用于从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与设计元素对应的属性值。
103.构建网络结构模块63,用于基于设计元素及其属性值构建初始脉冲神经网络结构。
104.训练模型模块64,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示。
105.在一个实施例中,获取数据集模块61,还用于接收初始数据集以及预处理规则;
106.根据预处理规则对初始数据集进行预处理,得到脉冲神经网络训练用的数据集。
107.在一个实施例中,构建网络结构模块63,还用于根据设计元素及其属性值进行自动代码转换,得到用代码编写的初始脉冲神经网络结构。
108.在一个实施例中,训练模型模块64,还用于基于数据集以及初始脉冲神经网络结构进行训练代码自动生成,根据训练代码进行网络训练,得到训练后的脉冲神经网络模型;
109.将训练后的脉冲神经网络模型进行量化编译,得到脉冲神经网络模型的指令文件;
110.将指令文件打包发送至用于合法性验证的设备处以进行合法性验证;
111.当接收到设备返回的验证通过信息时,将训练后的脉冲神经网络模型认定为目标脉冲神经网络模型。
112.在一个实施例中,训练模型模块64,还用于在训练过程中,将脉冲神经网络的训练监控数据存入redis缓存;
113.根据接收到的查询请求将redis缓存中的训练监控数据发送给可视化页面进行可视化展示。
114.在一个实施例中,训练模型模块64中的训练监控数据包括训练/测试准确率、训练/测试损失、预测结果以及训练日志。
115.上述脉冲神经网络模型的在线可视化开发装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
116.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
117.s1,获取脉冲神经网络训练用的数据集;
118.s2,从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与设计元素对应的属性值;
119.s3,基于设计元素及其属性值构建初始脉冲神经网络结构;
120.s4,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示。
121.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
122.s1,获取脉冲神经网络训练用的数据集;
123.s2,从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与设计元素对应的属性值;
124.s3,基于设计元素及其属性值构建初始脉冲神经网络结构;
125.s4,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示。
126.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
127.s1,获取脉冲神经网络训练用的数据集;
128.s2,从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计
元素和与设计元素对应的属性值;
129.s3,基于设计元素及其属性值构建初始脉冲神经网络结构;
130.s4,基于数据集对初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示。
131.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
132.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
133.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
134.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。

技术特征:
1.一种脉冲神经网络模型的在线可视化开发方法,其特征在于,包括:获取脉冲神经网络训练用的数据集;从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与所述设计元素对应的属性值;基于所述设计元素及所述属性值构建所述初始脉冲神经网络结构;基于所述数据集对所述初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对所述脉冲神经网络的训练监控数据进行可视化展示。2.根据权利要求1所述的脉冲神经网络模型的在线可视化开发方法,其特征在于,所述基于所述设计元素及所述属性值构建所述初始脉冲神经网络结构,包括:根据所述设计元素及其所述属性值进行自动代码转换,得到用代码编写的所述初始脉冲神经网络结构。3.根据权利要求1所述的脉冲神经网络模型的在线可视化开发方法,其特征在于,所述获取脉冲神经网络训练用的数据集,包括:接收初始数据集以及预处理规则;根据所述预处理规则对所述初始数据集进行预处理,得到脉冲神经网络训练用的数据集。4.根据权利要求1所述的脉冲神经网络模型的在线可视化开发方法,其特征在于,所述基于所述数据集对所述初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型,包括:基于所述数据集以及所述初始脉冲神经网络结构进行训练代码自动生成,根据所述训练代码进行网络训练,得到训练后的脉冲神经网络模型;将所述训练后的脉冲神经网络模型进行量化编译,得到脉冲神经网络模型的指令文件;将所述指令文件打包发送至用于合法性验证的设备处以进行合法性验证;当接收到所述设备返回的验证通过信息时,将所述训练后的脉冲神经网络模型认定为目标脉冲神经网络模型。5.根据权利要求1所述的脉冲神经网络模型的在线可视化开发方法,其特征在于,所述并在训练过程中,对所述脉冲神经网络的训练监控数据进行可视化展示,包括:在训练过程中,将所述脉冲神经网络的训练监控数据存入redis缓存;根据接收到的查询请求将所述redis缓存中的所述训练监控数据发送给可视化页面进行可视化展示。6.根据权利要求1所述的脉冲神经网络模型的在线可视化开发方法,其特征在于,所述训练监控数据包括训练/测试准确率、训练/测试损失、预测结果以及训练日志。7.一种脉冲神经网络模型的在线可视化开发装置,其特征在于,所述装置包括:获取数据集模块,用于获取脉冲神经网络训练用的数据集;获取属性值模块,用于从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与所述设计元素对应的属性值;构建网络结构模块,用于基于所述设计元素及所述属性值构建所述初始脉冲神经网络结构;
训练模型模块,基于所述数据集对所述初始脉冲神经网络结构进行训练,得到目标脉冲神经网络模型;并在训练过程中,对所述脉冲神经网络的训练监控数据进行可视化展示。8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至权利要求6中任一项所述的方法的步骤。9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至权利要求6中任一项所述的方法的步骤。10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至权利要求6中任一项所述的方法的步骤。

技术总结
本申请涉及一种脉冲神经网络模型的在线可视化开发方法和装置。所述方法包括:获取脉冲神经网络训练用的数据集;从预设的脉冲神经网络图形化设计页面中获取初始脉冲神经网络结构的设计元素和与设计元素对应的属性值;基于设计元素及其属性值进行自动代码转换构建初始脉冲神经网络结构;基于数据集以及脉冲神经网络结构进行训练代码自动生成,根据训练代码进行网络训练,得到目标脉冲神经网络模型;并在训练过程中,对脉冲神经网络的训练监控数据进行可视化展示。采用本方法能够结合图形化和代码编辑两种方式构建和训练脉冲神经网络模型,且在开发过程中为开发者提供可视化的信息进行指导和分析,以提高脉冲神经网络的开发质量。质量。质量。


技术研发人员:孙庆姣 章明 李沁心 邓水光 杨国青 李莹 潘纲
受保护的技术使用者:浙江大学
技术研发日:2023.04.21
技术公布日:2023/10/6
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐