首页 / 专利库 / 电脑编程 / 算法 / 自学习算法 / 一种基于双隐含层BP神经网络的离心泵性能预测方法

一种基于双隐含层BP神经网络的离心性能预测方法

阅读:862发布:2020-05-11

专利汇可以提供一种基于双隐含层BP神经网络的离心性能预测方法专利检索,专利查询,专利分析的服务。并且本 发明 属于 离心 泵 性能预测领域,具体涉及一种基于双隐含层BP神经网络的 离心泵 性能预测方法,包括以下步骤:(1)归一化处理样本数据;(2)创建双隐含层BP神经网络;(3)设置网络的训练参数;(4)将样本数据输入BP网络进行训练;(5)验证模型有效性。本发明有益效果在于:基于双隐含层的BP神经网络预测离心泵的性能,解决了之前使用传统的预测方法预测效率不高、容易陷入局部极小值的问题;同时收敛速度更快、预测 精度 更高。且采用双隐含层的BP神经网络的训练时间仅是传统BP网络训练时间的1/42,更适合工程实际应用。,下面是一种基于双隐含层BP神经网络的离心性能预测方法专利的具体信息内容。

1.一种基于双隐含层BP神经网络的离心性能预测方法,其特征在于,包括以下步骤:
(1)归一化处理样本数据;
(2)创建双隐含层BP神经网络;
(3)设置网络的训练参数;
(4)将样本数据输入BP网络进行训练;
(5)验证模型有效性。
2.根据权利要求1所述的一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,所述步骤(1)的具体操作为:先选取20-60组实验数据,将实验数据分为训练集与测试集;再利用Matlab工具箱中的归一化函数将要输入的训练集实验数据进行归一化处理。
3.根据权利要求2所述的一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,所述训练集与测试集的数量比≥8:1。
4.根据权利要求1所述的一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,所述步骤(2)的具体操作为:先利用Matlab工具箱中的newff函数建立双隐含层BP神经网络,其中输入层到隐含层传递函数均为tansig,隐含层到输出层传递函数为purelin,再选择Levenberg-Marquardt算法作为训练函数,最后对建立的双隐含层BP神经网络进行训练。
5.根据权利要求1所述的一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,所述步骤(3)中的具体网络训练参数设置为:网络最大迭代次数(epochs):550步;
网络学习率(lr):0.04;网络的目标误差(Minimum error):10-3;动量因子(mc):0.95。
6.根据权利要求1所述的一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,所述步骤(4)的具体操作为:将归一化处理后的训练集数据输入双隐含层BP神经网络进行训练并计算目标值与实际输出的相对误差,若平均相对误差不大于期望误差最小值或已经达到最大循环次数,结束训练,否则返回继续训练网络,直至网络达到收敛,此时得到一个稳定的针对离心泵性能预测的双隐含层BP神经网络;再将测试集实验数据通过Matlab工具箱中的归一化函数进行处理,输入到训练好的稳定网络进行计算,最后将得到的输出数据使用Matlab工具箱中的反归一化函数进行处理。
7.根据权利要求1所述的一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,所述步骤(5)的具体操作是:首先,随机选取1-10组训练集数据作为样本,去除其扬程和效率值,其余保持不变,再利用Matlab工具箱中的归一化函数进行处理,将训练集数据输入到训练好的双隐含层BP神经网络中,预测其扬程和效率,并计算各自对应的相对误差,以验证该神经网络预测离心泵性能的可行性;其次,取1-10组测试集数据,使用Matlab工具箱中的归一化函数进行处理并输入到训练好的网络模型中,得出结果之后使用Matlab工具箱中的反归一化函数进行处理,并计算对应的相对误差,再次达到对网络模型的正确性验证。

说明书全文

一种基于双隐含层BP神经网络的离心性能预测方法

技术领域

[0001] 本发明属于离心泵性能预测领域,具体涉及到一种基于双隐含层BP神经网络的离心泵性能预测方法。

背景技术

[0002] 近年来,离心泵性能预测研究己经成为离心泵产品设计中必不可少的关键环节,同时也是验证离心泵设计好坏的必要步骤。目前,针对离心泵性能预测的方法主要有:能量损失法、流场数值模拟法以及人工神经网络法。水力能量损失法计算复杂且得到的结果也只是针对某一具体离心泵的水力损失;不具备普遍用于其他类型离心泵的能力。流场数值模拟法很难保证其预测精度;而人工神经网络法相对比较简单容易,不需较多的物理参数,靠算法来完成。BP(back-propagation)神经网络是非线性不确定性数学模型,是一种具有连续传递函数的多层前馈人工神经网络,其采用误差反向传播算法,并以均方误差(MSE)最小化为目标不断修改网络的权值和阈值,最终能高精度地拟合数据。然而传统的BP神经网络算法存在一些不足,例如收敛速度很慢,往往收敛于局部极小点,数值稳定性差,学习率、动量项系数和初始权值等参数难以调整;经研究发现,非线性神经网络训练算法Levenberg-Marquardt可以有效地克服BP算法所存在的这些缺陷;它通过自适应调整阻尼因子来达到收敛特性,具有更高的迭代收敛速度,在很多非线性优化问题中得到了稳定可靠解。采用基于Levenberg-Marquardt算法与双隐含层的BP神经网络相结合的方法来对离心泵进行性能预测,解决了运用传统BP网络预测时学习效率不高、容易陷入局部极小值点等问题;且新的预测模型收敛速度更快、预测精度更高。

发明内容

[0003] (一)要解决的技术问题
[0004] 鉴于以上所述,本发明的目的在于提供一种使用双隐含层BP神经网络来对离心泵的性能进行预测的方法,已达到提升预测效率,提高预测精度的目的。
[0005] (二)技术方案
[0006] 为解决所述技术问题,本发明提供一种一种基于双隐含层BP神经网络的离心泵性能预测方法,其特征在于,包括以下步骤:
[0007] (1)归一化处理样本数据;
[0008] (2)创建双隐含层BP神经网络;
[0009] (3)设置网络的训练参数;
[0010] (4)将样本数据输入BP网络进行训练;
[0011] (5)验证模型有效性。
[0012] 本发明提供的一种基于双隐含层BP神经网络的离心泵性能预测方法可进一步设置为所述步骤(1)的具体操作为:先选取20-60组实验数据,将实验数据分为训练集与测试集;再利用Matlab工具箱中的归一化函数将要输入的训练集实验数据进行归一化处理。
[0013] 本发明提供的一种基于双隐含层BP神经网络的离心泵性能预测方法可进一步设置为所述训练集与测试集的数量比≥8:1。
[0014] 本发明提供的一种基于双隐含层BP神经网络的离心泵性能预测方法可进一步设置为所述步骤(2)的具体操作为:先利用Matlab工具箱中的newff函数建立双隐含层BP神经网络,其中输入层到隐含层传递函数均为tansig,隐含层到输出层传递函数为purelin,再选择Levenberg-Marquardt算法作为训练函数,最后对建立的双隐含层BP神经网络进行训练。
[0015] 本发明提供的一种基于双隐含层BP神经网络的离心泵性能预测方法可进一步设置为所述步骤(3)中的具体网络训练参数设置为:网络最大迭代次数(epochs):550步;网络学习率(lr):0.04;网络的目标误差(Minimum error):10-3;动量因子(mc):0.95。
[0016] 本发明提供的一种基于双隐含层BP神经网络的离心泵性能预测方法可进一步设置为所述步骤(4)的具体操作为:将归一化处理后的训练集数据输入双隐含层BP神经网络进行训练并计算目标值与实际输出的相对误差,若平均相对误差不大于期望误差最小值或已经达到最大循环次数,结束训练,否则返回继续训练网络,直至网络达到收敛,此时得到一个稳定的针对离心泵性能预测的双隐含层BP神经网络;再将测试集实验数据通过Matlab工具箱中的归一化函数进行处理,输入到训练好的稳定网络进行计算,最后将得到的输出数据使用Matlab工具箱中的反归一化函数进行处理。
[0017] 本发明提供的一种基于双隐含层BP神经网络的离心泵性能预测方法可进一步设置为所述步骤(5)的具体操作是:首先,随机选取1-10组训练集数据作为样本,去除其扬程和效率值,其余保持不变,再利用Matlab工具箱中的归一化函数进行处理,将训练集数据输入到训练好的双隐含层BP神经网络中,预测其扬程和效率,并计算各自对应的相对误差,以验证该神经网络预测离心泵性能的可行性;其次,取1-10组测试集数据,使用Matlab工具箱中的归一化函数进行处理并输入到训练好的网络模型中,得出结果之后使用Matlab工具箱中的反归一化函数进行处理,并计算对应的相对误差,再次达到对网络模型的正确性验证。
[0018] 有益效果
[0019] 本发明提供的一种基于双隐含层的BP神经网络预测离心泵性能,有益效果在于:基于双隐含层的BP神经网络预测离心泵的性能,解决了之前使用传统的预测方法预测效率不高、容易陷入局部极小值的问题;同时收敛速度更快、预测精度更高。且采用双隐含层的BP神经网络的训练时间仅是传统BP网络训练时间的1/42,更适合工程实际应用。
附图说明
[0020] 图1为单隐含层BP神经网络结构;
[0021] 图2为双隐含层BP神经网络结构;
[0022] 图3为5组测试集预测结果与实验结果的比较;
[0023] 图4为单隐含层BP网络均方误差变化曲线;
[0024] 图5为双隐含层BP网络均方误差变化曲线。

具体实施方式

[0025] 下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。以下实施例中涉及的零部件、结构、机构等,如无特殊说明,则均为常规市售产品。
[0026] (1)对样本集进行归一化:从《现代泵理论与设计》与沈阳水泵研究所中选取具有代表性的优秀水力模型构建44组相关模型数据,其中前39组作为训练集,后5组作为测试集,用来检验模型预测的好坏。再利用Matlab工具箱中的prestd函数将要输入的训练集实验数据进行归一化处理(归一到0和1之间),其中部分离心泵性能预测模型样本数据见表1。
[0027] 表1部分离心泵性能预测模型样本数据
[0028]
[0029] (2)创建双隐含层BP神经网络:传统BP神经网络结构(见图1),它包含一个输入层、一个隐含层、一个输出层。双隐含层BP神经网络结构(见图2),它包含一个输入层、两个隐含层、一个输出层,利用网络工具箱中的newff函数建立双隐含层的BP神经网络,输入层到隐含层传递函数均为tansig,隐含层到输出层传递函数为purelin,选取Levenberg-Marquardt算法为训练函数,并对建立的双隐含层BP神经网络进行训练。
[0030] (3)设置网络的训练参数:最大迭代次数(epochs)为550步,网络学习率(lr)为-30.04,网络的目标误差(Minimum error)为10 ,动量因子(mc)设置为0.95。参数设置如表2所示。
[0031] 表2参数设置
[0032]
[0033] (4)将归一化处理后的训练集数据输入双隐含层BP神经网络进行训练并计算各组实际输出,训练集数据的目的就是用来训练及检测网络的稳定性以及计算能力;计算目标值与实际输出的相对误差,若平均相对误差不大于期望误差最小值或已经达到最大循环次数,结束学习,否则返回继续训练网络,直至网络达到稳定,此时得到一个稳定的双隐含层BP神经网络;便可输入测试集数据进行测试计算,测试集实验数据通过Matlab工具箱中的trastd函数进行归一化处理,再输入稳定网络进行计算,最后将得到的输出数据使用Matlab工具箱中的poststd函数进行反归一化处理,反归一化处理的目的是将归一过后的(0,1)之间的数值转化为实际数值。
[0034] (5)验证:训练好的模型具有一定的预测能力,还需要使用多组数据来进行验证,首先,随机选取5组训练集数据作为样本,删除其扬程和效率值,其余保持不变,再利用Matlab工具箱中的trastd函数进行归一化处理,将训练集数据输入到训练好的双隐含层BP神经网络中,网络就会预测出扬程和效率,并计算各自对应的相对误差,以验证神经网络的可行性;然后取5组测试集数据,使用Matlab工具箱中的trastd函数进行归一化处理后作为样本进行再次验证,得出结果之后使用Matlab工具箱中的poststd函数进行反归一化处理,并计算对应的相对误差,再次达到对网络模型的正确性验证。
[0035] 结论:基于双隐含层的BP神经网络预测离心泵的性能,解决了之前使用传统的预测方法预测效率不高、容易陷入局部极小值的问题;且收敛速度更快、预测精度更高。且采用双隐含层的BP神经网络的训练时间仅是传统BP网络训练时间的1/42,更适合工程实际应用(不同隐含层训练对比结果见表3)。
[0036] 表3不同隐含层网络的预测结果
[0037]
[0038] (1)表4给出了随机选取5组训练集样本的预测结果。由表4可知,训练样本预测的扬程与实验所得的扬程平均相对误差为0.3042%,训练样本预测的效率与实验所得的效率平均相对误差为0.0654%。即将该训练好的网络用于预测离心泵的性能是可行的。
[0039] 表4 5组训练集预测结果与实验结果数据比较
[0040]
[0041] (2)表5给出了5组测试集样本的预测结果。由表5可知,模型预测的扬程与实验所得的扬程最大相对误差值为11.8700%,最小相对误差值为0.1360%,平均相对误差为4.3552%,误差分布较为平均。模型预测的效率与实验所得的效率最大相对误差为4.99%,最小相对误差为0.47%,平均相对误差为2.945%,误差分布均匀。
[0042] 表5 5组测试集预测结果与实验结果数据比较
[0043]
[0044] (3)表6给出了运用不同隐含层结构,对于离心泵性能预测的结果比较。从表6可以看出,双隐含层BP网络扬程预测值相对单隐含层BP网络扬程预测值相对误差最大下降11.414%,最小下降0.228%,平均相对误差下降了3.4044%,效率预测值相对误差最大下降4.99%,最小下降0.47%,平均相对误差下降了2.377%。即在保持训练参数相同的情况下,相对于传统的单隐含层BP神经网络预测结果,经过改进后的双隐含层BP网络预测结果更为精确,更能满足离心泵的工业生产需求。
[0045] 表6单隐含层BP网络与双隐含层BP网络对离心泵性能预测结果比较[0046]
[0047] (4)图3所示为5组测试集数据的预测结果与实验结果的比较曲线。从图3中可以看出,预测结果与实验结果相差很小且走向一致;偏差可能是由于使用BP神经网络在训练与计算时往往需要大量且全面的训练样本引起的,而本发明的44组实验数据相对较少,导致个别数据出现偏差。
[0048] (5)图4为单隐含层BP网络均方误差变化曲线;图5为双隐含层BP网络均方误差变化曲线。从图4和图5可知,单隐含层BP网络训练样本最终也能够达到收敛,但达到收敛的步数需要550步,而双隐含层BP网络训练花费时间更少,仅需13步即可达到收敛。训练时间是传统单隐含层BP神经网络的1/42,更适合工程实际应用。
[0049] 综上所述,上述实施方式并非是本发明的限制性实施方式,凡本领域的技术人员在本发明的实质内容的基础上所进行的修饰或者等效变形,均在本发明的技术范畴。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈