一种面向智能制造业的自进化神经网络模型的构建方法

文档序号:26751918发布日期:2021-09-25 02:46阅读:147来源:国知局
一种面向智能制造业的自进化神经网络模型的构建方法

1.本发明涉及智能制造技术领域,更具体地,涉及一种面向智能制造业的自进化神经网络模型的构建方法。


背景技术:

2.由于计算机硬件的飞速发展,以深度学习为代表的人工智能得到广泛的应用和发展。各行各业都在积极拥抱人工智能算法,但由于各行业的数据类型或者说数据的维度大相径庭,所以在图像处理领域的广泛应用的模型如lenet,alexnet和resnet等并不能很好的发挥作用。例如,当输入数据的维度发生变化的时候,ai工程师需要重新调整神经网络参数包括卷积层间的数据维度、激活函数、损失函数、优化函数和优化步长等,或者用不同的网络架构来分别测试手头的数据,最终通过效果比较来选择适合自己行业和自己手头的数据的网络架构和参数,这种方式费时费力。并且如果数据的维度稍微发生了变化,例如工厂的生产线添加了一台或几台设备,那么原来的网络架构就不再适用,输入层和全连接层需要更改,所采用的网络参数如激活函数、损失函数、优化函数和优化步长等,也要重新选择和调试,所消耗的时间完全依赖于资深专业人士的经验,导致效率低下。
3.总之,目前单一的一种神经网络模型不适用于不同种类和不同维度的数据,在实际应用中,当数据种类和维度发生变化时,往往需要资深的专业人士重新选择网络架构、更改数据维度和调试神经网络参数,很费时间,从而严重阻碍了人工智能技术在智能制造领域中的应用和发展。


技术实现要素:

4.本发明的目的是克服上述现有技术的缺陷,提供一种面向智能制造业的自进化神经网络模型的构建方法。
5.根据本发明的第一方面,提供一种面向智能制造业的自进化神经网络模型的构建方法,该自进化神经网络模型包括数据维度计算模块、多个种子网络架构、多个预训练单元、多个子进化单元,该方法包括以下步骤:
6.利用数据维度计算模块自动调整各种子网络架构的输入层和全连接层之间传递的数据维度,进行网络模型的初步定型;
7.将历史数据并行传送到内部的种子网络架构进行预训练,各种子网络架构同时独立运行,通过循环反复预训练,演算出当前各种子网络架构下合适的网络参数,获得对应的局部最优参数集;
8.子进化单元根据对应的局部最优参数集通过网络层数和特征数的增减演算出适合的子网络层数和特征数,从而生成对应的最优子网络模型;
9.对各最优子网络模型进行正式训练,并根据设定的性能指标排序,进而得到全局最优网络和权重模型。
10.根据本发明的第二方面,提供一种生产数据处理方法。该方法包括:对于生产场景
的数据,根据数据库中的数据集自动测算数据维度,并以此维度输入上述自进化神经网络模型的构建方法获得的全局最优网络模型,输出数据分类结果或预测结果。
11.与现有技术相比,本发明的优点在于,提供一种具有自我学习和进化能力的自进化神经网络模型,当读入历史数据进行训练时,首先通过内部的维度计算模块测算出数据维度,赋值给输入层和全连接层,进行网络模型的初步定型,此时多个种子网络架构也同时完成初步定型,并开始预训练,训练一定的次数后,可求得各自的局部最优网络参数集,子进化单元根据各自的网络参数集进行自进化,通过增减子网络架构上的层数和特征值,演算出各自框架下的最优子网络模型,最后进行正式的训练,通过精度对比,选出最优的子网络模型作为此自适应网络的最优网络和权重模型供生产现场使用。当数据维度或种类发生变化时,该方法能够通过维度计算模块测算出数据维度,并重新完成网络模型的初步定型,筛选出最适合的子网络架构,用它自动演算出最优网络参数,从而进化为最适合的网络模型。此过程无需人工干预,大大降低了对技术经验的依赖和人们的劳动强度,提高了生产效率和人工智能技术的易用性和普适性。
12.通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
13.被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
14.图1是根据本发明一个实施例的自进化神经网络模型的构建过程示意图;
15.图2是根据本发明一个实施例的自进化神经网络模型构建方法的流程图;
16.图3是根据本发明一个实施例的自进化神经网络模型的架构示意图。
具体实施方式
17.现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
18.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
19.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
20.在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
21.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
22.结合图1所示,本发明提供的具有自我适应和进化能力的自进化神经网络主要包括数据维度计算模块、多个种子网络架构(或称子网络)、多个预训练单元、多种网络参数和多个子进化单元。种子网络架构就好像是种树时,树的种子,它决定了树的种类,例如分为lenet,alexnet、resnet和unet。网络参数就好像是生长因子,包括激活函数、损失函数、优
化函数和优化步长。子进化单元就好像是树的生长过程,它进化的结果决定了树的高低和粗细,子进化单元进化的过程是神经网络的层数和特征数增减的过程。在现有技术中,只存在网络参数的自适应,还没有数据维度的自适应,也没有种子网络架构的自动筛选和子进化单元的自进化。简言之,自进化神经网络模型的构建方法包括:当读入历史数据进行训练时,首先通过内部的维度计算模块测算出数据维度,赋值给输入层和全连接层,进行网络模型的初步定型,此时多个种子网络架构也同时完成初步定型,并开始预训练,训练一定的次数后,可求得各自的局部最优网络参数集,子进化单元根据各自的网络参数集进行自进化,通过增减子网络架构上的层数和特征值,演算出各自框架下的最优子网络模型,最后进行正式的训练,通过根据设定的性能指标对比,选出最优的子网络模型作为此自进化网络的最优网络和权重模型供生产现场使用。当数据维度或种类发生变化时,本发明能够通过维度计算模块测算出数据维度,并重新完成网络模型的初步定型,筛选出最适合的子网络架构,用它自动演算出最优网络参数,从而进化为最适合的网络模型。此过程无需人工干预,显著降低了对技术经验的依赖和人们的劳动强度,从而提高了生产效率和人工智能技术的易用性及普适性。
23.具体地,结合图1所示,所提供的面向智能制造业的自进化神经网络模型包括数据维度计算单元,初步定型的网络模型,种子网络架构1到n,预训练单元1到n,权重,局部最优网络参数集1到n,子进化单元1到n,最优网络和权重模型。该自进化神经网络模型的构建方法包括以下步骤。
24.步骤s210,构建自进化神经网络模型,其内部包含多个种子网络架构,对于每种种子网络架构,该网络根据生产场景的数据维度自动调整其内部传递的数据维度。
25.在一个实施例中,种子网络架构包括但不限于lenet、alexnet和resnet。这些神经网络通常包含卷积层、池化层和全连接层等。根据生产场景的数据维度来调整各种子网络架构自身的卷积层、池化层和全连接层之间传递的数据维度。
26.例如,通过数据维度计算模块来调整自己内部各种子网络架构的输入层和全连接层之间传递的数据维度,进行网络模型的初步定型,然后将历史数据并行传送到内部的种子网络架构进行预训练(即步骤s220)。
27.步骤s220,对不同类型的种子网络架构进行预训练,演算出当前各种子网络架构下的局部最优参数集。
28.具体地,将历史数据(或称训练数据集)并行传送不同类型的种子网络架构进行预训练,各种架构同时独立运行,通过循环往复地预训练,演算出当前架构下比较合适的网络参数,每种网络参数的预训练次数例如设置在1000次以下,所有种子网络架构的预训练结束后,可以得到局部最优参数集。
29.子进化单元根据对应的局部最优网络参数集通过网络层数和特征数的增减演算出最适合的子网络层数和特征数,并最终生成对应的最优子网络模型,然后各最优子网络模型开始正式训练。
30.例如,每种种子网络的局部最优参数集包括但不限于激活函数、损失函数、优化函数和步长。
31.激活函数用于在神经网络中引入非线性特性,例如包括sigmoid函数、tanh函数、relu函数等。
32.损失函数用于衡量神经网络的预测准确度,例如包括l2损失函数、l1损失函数、铰链损失函数、交叉熵损失函数、指数损失函数等。
33.优化函数用于控制损失值在神经网络中的传递,例如包括但不限于批量梯度下降算法、随机梯度下降算法、mini批量梯度下降算法、动量梯度下降法、rmsprop等。
34.优化步长可用于控制训练效率和训练效果,可根据实际需要设置。
35.结合图3所示,在一个实施例中,构建自进化神经网络模型的计算公式表示为:
36.y=max{max[l
n1
(f
a
,f
l
,f
o
,γ;x)]|max[a
n2
(f
a
,f
l
,f
o
,γ;x)]|max[r
n3
(f
a
,f
l
,f
o
,γ;x)]}
ꢀꢀ
(1)
[0037]
y为分类输出,f
a
代表激活函数,f
l
代表损失函数,f
o
代表优化函数,γ代表优化步长,x为多维的输入数据,n1、n2、n3分别代表lenet,alexnet,resnet的训练次数。
[0038]
步骤s230,各子进化单元先利用局部最优参数集演算出最合理的网络层数和特征数,然后每种种子网络最终定型(包括种子网络架构最优参数集,网络层数和各层的特征数的最终确定),并开始进行正式的训练,最后根据设定的性能指标排序,得到最优网络和权重模型供生产现场使用。
[0039]
具体地,子进化单元根据各自的网络参数集进行自进化,通过增减子网络架构上的层数和特征值,演算出各自框架下的最优子网络模型,然后进行正式的训练,正式训练次数一般在10万次以上,正式训练结束后,根据精度等设定指标排序,选出最优的子网络模型作为此自适应网络的最优网络和权重模型,此时最初的自进化网络就进化成了相应数据需要的最优网络模型,通过此模型对现场数据进行预测,输出结果。当使用场景发生变化时,重复以上步骤,自进化网络模型会自动学习和进化为最适应的网络模型,然后直接参与到现场数据的分类和预测当中,并输出结果。
[0040]
例如,同一生产场景的数据维度是恒定不变的,但不同生产场景的数据维度可能不同,数据维度的自适应主要针对这种生产场景的变化,不同的产品生产线、不同类的加工车间、不同的工厂以及同一生产线传感器数量的变化等。例如一台智能设备上包含有n个传感器,在一个生产现场有m台设备,则输入神经网络的数据维度为m*n,本发明提供的自进化神经网络会根据数据库中的数据集自动测算数据维度,并以此维度初始化输入变量和各网络层的传递变量,从而实现数据维度的自适应。
[0041]
目前的卷积神经网络的数据维度都是特定的,如lenet只能用维度为32*32的数据,alexnet和resnet只能用224*224的数据,利用本发明可适应于不同生成场景的数据维度或同一生成场景的数据维度变化。
[0042]
综上所述,本发明提供的自进化神经网络模型对数据维度的变化具有自适应能力,通过测算数据维度并修改自身的输入层和全连接层的维度实现自适应。该自进化神经网络内部含有多个种子网络架构和预训练单元,通过1000次以下的预训练即可得到相应的局部最优网络参数。该自进化神经网络包含多个子进化单元,子进化单元通过神经网络的层数和特征数增减来实现最优子网络模型的进化。总之,可以在不用人工干预的情况下自动、有效地筛选出最适合的子网络架构和对应的权重模型,从而节省人力和物力,同时提高人工智能模型的使用效率。
[0043]
经验证,本发明的方法能够自适应数据维度,省去对专业人士的依赖,并且能够实现自进化,不用再依靠专业人士费时费力的测试,提高了效率并节省了成本。此外,通过内
部预训练单元,节省了参数优化时间,并且局部最优网络模型和全局最优网络模型同时产生,不用再进行训练,提高了模型的自进化效率。
[0044]
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0045]
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd

rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0046]
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0047]
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++、python等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
[0048]
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0049]
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指
令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0050]
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0051]
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
[0052]
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1