利索能及
我要发布
收藏
专利号: 2022111046234
申请人: 浙江工业大学之江学院
专利类型:发明专利
专利状态:已下证
更新日期:2026-07-29
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于循环神经网络的超声波燃气表故障预测方法,包括如下步骤:

1)对时间预测RNN集成模型进行预训练;时间预测RNN集成模型包括顺流时间预测RNN模型和逆流时间预测RNN模型,使用正常的超声波在流体中顺、逆流传播时间数据集,对时间预测RNN集成模型预训练,分别对顺流时间预测RNN模型和逆流时间预测RNN模型训练10个epochs;

2)采集超声波燃气相关历史数据;对超声波燃气表进行相关时间数据监控采样;采取每个超声波在流体中的初始顺流传播时间ti_up、超声波在流体中的初始逆流传播时间ti_down;之后对超声波燃气进行连续一段时间的采样,实时采样并记录燃气实时顺流传播时间tm_up,实时逆流传播时间tm_down,每隔20秒取一个样本点;

3)对步骤2)采集到的燃气实时顺流历史数据进行预处理;将获得的实时顺流传播时间tm_up数据,按照训练集:测试集=8:2的比例,将前面80%的数据作为训练集数据,剩下20%的数据作为测试集数据;对收集到训练集的实时顺流传播时间tm_up数据进行有重叠的分段,即每隔1个样本点取32个样本点,这样对采集到的样本可以得到如下时间序列数组:arrayi_up={ti,ti+1,......ti+32}(i∈[1,n])其中,i表示第i组数据,n是训练集的最后一组数据;

4)将预处理过训练集的数据输入到顺流时间预测RNN模型得到输出结果;

对实时顺流传播时间tm_up进行预测;

运用顺流时间预测RNN模型;该模型的输入为训练集中的时间序列数组:arrayi_up

其中,i表示第i个时间序列数组,i∈[1,n];

输出的为预测的接下来的1个数据;每输入一组数据,就会输出这组数据接下来的1个数据;将这些输出的数依次记为F={f1,f2,……fn};与之对应的真实值序列为T={t33,t34,……,tn+32},其中,n表示的是训练集预测的最后一位数据;

5)对输出的数据F={f1,f2,……fn}进行如下的预处理:fo_i=softmax(fi) (i∈[1,n])  (1)FO={fo_1,fo_2,……fo_n}         (2)其中,fo_i是预处理过的预测数据,i表示第i个数据;FO是预处理过的预测数据集;

中的fi表示模型输出的预测数据,i表示第i个数据; 中的fj表示的是模型输出的预测数据,j表示第j个数据;

对真实数据T={t33,t34,……,tn+32}进行预处理,to_i=softmax(ti+33) (i∈[1,n])   (4)TO={to_1,to_2,……to_n}        (5)其中,to_i是预处理过的真实数据,i表示第i个数据;TO是预处理过的真实数据集;

中的ti+33表示真实数据,i表示第i个数据; 中的tj+33表示的是真实数据,j表示第j个数据;

运用损失函数计算预测值与真实值之间的误差:

通过不断训练模型,调整顺流时间预测RNN模型内的参数,使损失函数Li的值不断趋向于0;

6)用测试集对模型进行测试;将测试集的数据输入至训练完的顺流时间预测RNN模型,输出为预测的顺流时间,将其与真实值之间运用损失函数计算误差,判断损失函数的结果是否在合理的范围内;若在合理的范围内,则模型训练完成;若不在合理的范围内,则重新返回步骤4)对模型再训练;

7)对步骤2)采集到的燃气实时逆流历史数据进行预处理;获得的实时逆流传播时间tm_down数据,按照训练集:测试集=8:2的比例,将前80%的数据作为训练集数据,剩下的

20%的数据作为测试集数据;对收集到训练集的实时逆流传播时间tm_down数据进行有重叠的分段,即每隔1取32个样本点,这样对采集到的样本可以得到如下所示时间序列数组:arrayi_down={ti,ti+1,…ti+32}其中,i表示第i组数据,n是训练集的最后一组数据;

8)将预处理过训练集的数据输入到逆流时间预测RNN模型得到输出结果;

对实时逆流传播时间tm_down进行预测;

运用逆流时间预测RNN模型;该模型的输入为训练集中的时间序列数组:arrayi_down

其中,i表示第i个时间序列数组;

输出的为预测的接下来的1个数据;每输入一组数据,就会输出这组数据接下来的1个数据;将这些输出的数依次记为P={p1,p2,……pn};与之对应的真实值序列为R={r33,r34,……,rn+32},其中,n表示的是训练集预测的最后一位数据;

9)对输出的数据P={p1,p2,……pn}进行预处理,po_i=softmax(pi) (i∈[1,n])    (9)PO={po_1,po_2,……po_n}         (10)其中,po_i是预处理过的预测数据,i表示第i个数据;PO是预处理过的预测数据集;

中的pi表示模型输出的预测数据,i表示第i个数据; 中的pj表示的是模型输出的预测数据,j表示第j个数据;

对真实数据R={r33,r34,……,rn+32}进行预处理,ro_i=softmax(ri+33) (i∈[1,n])      (12)RO={ro_1,ro_2,……ro_n}             (13)其中,ro_i是预处理过的真实数据,i表示第i个数据;RO是预处理过的真实数据集;

中的ri+33表示真实数据,i表示第i个数据; 中的rj+33表示的是真实数据,j表示第j个数据;

运用损失函数计算预测值与真实值之间的误差:

通过不断训练模型,调整逆流时间预测RNN模型内的参数,使损失函数Li的值不断趋向于0;

10)用测试集对逆流时间预测RNN模型进行测试;将测试集的数据输入至训练完的逆流时间预测RNN模型,输出为预测的逆流时间,将其与真实值之间运用损失函数计算误差,判断损失函数的结果是否在合理的范围内;若在合理的范围内,则模型训练完成;若不在合理的范围内,则重新返回步骤2)对模型再训练;

11)将顺流时间预测RNN模型和逆流时间预测RNN模型简单组合在一起,构成时间预测RNN集成模型,由时间预测RNN集成模型每隔一段时间就按照步骤2)中的采样方法实时采样燃气的实时顺、逆流时间,预测燃气的顺、逆流时间,实现模型预测功能;

12)对于预测得到的数据,当燃气的流速vm=0时,当预测的数据tm1_up=tm1_down和初始记录的顺、逆流时间数据ti1_up=ti1_down之间的差值达到时间阈值下限时,将向远程终端发出安全警告。