[发明专利]一种基于自动编码器和贝叶斯网络的故障检测方法有效

专利信息
申请号: 201810796797.9 申请日: 2018-07-19
公开(公告)号: CN109146246B 公开(公告)日: 2021-06-04
发明(设计)人: 赵劲松;程非凡 申请(专利权)人: 清华大学
主分类号: G06Q10/06 分类号: G06Q10/06;G06Q50/04;G06K9/62
代理公司: 北京清亦华知识产权代理事务所(普通合伙) 11201 代理人: 廖元秋
地址: 100084*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提出一种基于自动编码器和贝叶斯网络的故障检测方法,属于化工过程故障诊断领域。该方法离线阶段从任一化工连续生产过程中选取变量数据构建化工过程数据集和样本数据集;利用样本数据集训练自动编码器模型并计算统计量T2和SPE检测阈值;利用化工过程数据集构建贝叶斯网络并估计条件概率;在现阶段,获取实时数据并输入自动编码器模型得到对应估计值,计算输入数据对应的T2和SPE值并与检测阈值进行比较:若满足条件,则化工生产过程正常;若不满足,则计算每个变量的贡献度,通过贝叶斯网络找到故障的根原因。本发明从化工生产的过程数据中自动提取特征,有效应用于非线性的动态化工过程,实现化工过程故障的检测和快速诊断。
搜索关键词: 一种 基于 自动 编码器 贝叶斯 网络 故障 检测 方法
【主权项】:
1.一种基于自动编码器和贝叶斯网络的故障检测方法,其特征在于,分为离线阶段和在线阶段,包括以下步骤:1)离线阶段;1‑1)收集化工生产过程的数据,构建样本数据集;从任一化工连续生产过程中选取若干变量数据构建化工过程数据集;从化工过程数据集中选取一段正常数据作为样本组成样本数据集;令X为样本数据集,其中xij代表第j个变量的第i个时刻的值,i=1,2…N,j=1,2…n,n为选取变量个数,N为时刻总数,则X为N×n维,表达式如下:1‑2)对步骤1‑1)得到的样本数据集进行标准化;对X的每一列求取对应的平均值和标准差,然后将每列中每个变量数据与该列对应的平均值作差并除以该列对应的标准差,对X的每个变量数据进行标准化;1‑3)构建自动编码器模型并进行训练,得到训练完毕的自动编码器模型;具体步骤如下:1‑3‑1)构建一个自动编码器模型,包括:输入层、编码器层和解码器层,其中编码器层和解码器层均由长短期记忆网络LSTMs层构成;将该模型记为当前模型;模型输入:记X中第k行的数据组成的集合X(k)为[xk1,…,xkn],则自动编码器模型的每一组输入数据为Xm(k)=[X(k),X(k‑1),...,X(k‑m)],其中k=m+1,m+2,...,N,所有的输入数据构成输入数据集合为Xtrain={Xm(m+1),Xm(m+2),...,Xm(N)},输入数据集合为(N‑m+1)×m×n的三维数组;模型的输出:模型的每一组输出数据记作k=m+1,m+2,...,N;其中为对应每组输入数据Xm(k)的估计值;1‑3‑2)将输入数据集合Xtrain的每组输入数据按批次输入当前模型,每个批次输入当前模型进行训练之后,根据损失函数,通过最速下降法更新模型的参数,损失函数如式(2)所示:其中,模型的输入批次指每一次迭代输入数据的组数,记为batch,8≤batch≤128;Xm为每个批次的输入数据集合,为经过自动编码器模型得到的对应的输出数据集合;当遍历完毕输入数据集合Xtrain之后,更新当前模型为Modelold,计算得到Modelold的损失函数记为Lossold;1‑3‑3)重复步骤1‑3‑2),再次遍历输入数据集合Xtrain,更新当前模型记为Modelnew,计算得到Modelnew的损失函数记为Lossnew1‑3‑4)训练停止判定条件:若Lossnew≤Lossold,则继续训练模型,将当前Modelnew更新为新的Modelold,将当前Lossnew更新为新的Lossold,重新返回步骤1‑3‑3);若Lossnew≥Lossold时,则模型停止训练,输出当前Modelold作为最终训练完毕的自动编码器模型,进入步骤1‑4);1‑4)计算检测阈值;将输入数据集合Xtrain的每组输入数据按批次输入步骤1‑3)得到的训练完毕的自动编码器模型,模型的编码器层输出每个批次输入数据集合Xm对应特征为H=[h1,h2,...,hi,...,hN‑m+1],其中hi为输入数据Xm(i)经过自动编码器模型得到的特征向量;记H的协方差矩阵为S,则第i个时刻所有变量对应的统计量T2的计算表达式如式(3)所示:T2i=hiS‑1(hi)T  (3)第i个时刻所有变量对应的统计量SPE计算表达式如式(4)所示:分别计算输入数据集合Xtrain中每组输入数据对应的T2和SPE值,取计算结果中T2的最大值作为T2检测阈值,取计算结果中SPE的最大值作为SPE检测阈值,分别记T2检测阈值为T2thre,SPE检测阈值为SPEthre;1‑5)构建贝叶斯网络并估计条件概率;1‑5‑1)利用步骤1‑1)收集的化工过程数据集,使用传递熵算法和收敛交叉映射算法计算变量之间的因果关系,得到相邻矩阵,通过管道仪表流程图和工艺流程图得到过程知识,并对相邻矩阵进行修正;利用修正后的相邻矩阵构建贝叶斯网络;若构建的贝叶斯网络存在闭环,则切断所有环,并为环断处的变量创建创建虚拟节点,使得贝叶斯网络为一个有向无环图,贝叶斯网络构建完毕;1‑5‑2)条件概率估计:将化工过程数据集的数据输入到步骤1‑5‑1)建立的贝叶斯网络中,通过最大似然估计得到贝叶斯网络的节点之间条件概率;2)在线阶段;2‑1)数据获取:从实时数据库获取步骤1‑1)的化工连续生产过程选取变量的实时数据组成实时数据集,实时数据集的长度与自动编码器模型的一组输入数据长度相等;2‑2)重复步骤1‑2),对步骤2‑1)获取的实时数据进行标准化;2‑3)将步骤2‑1)采集的实时数据集输入步骤1‑3)训练完毕的模型,模型输出实时数据集对应的估计值;2‑4)利用公式(3)和公式(4),分别计算得到实时数据集对应的统计量T2d和SPEd;2‑5)将步骤2‑4)得到的实时数据集对应的统计量T2d和SPEd分别与T2thre和SPEthre进行比较并判定化工生产过程是否存在异常:若两个统计量T2d和SPEd均低于对应的检测阈值,则表示该化工生产过程正常,重新返回步骤2‑1),继续监测;若任一统计量高于其对应的检测阈值,则该化工生产过程存在异常,进入步骤2‑6);2‑6)对步骤2‑1)获取的每个变量的实时数据对SPE的贡献度用变量的实际值与变量的重构值的2范数进行计算,计算每个变量贡献度大小,将所有贡献度的大小用柱状图进行展示,得到变量贡献度图;利用变量贡献图,选出对统计量SPE贡献度最大的变量;2‑7),在贝叶斯网络中将将对统计量SPE贡献度最大的变量的状态设置为100%异常,然后更新贝叶斯网络;2‑8)对更新后的贝叶斯网络进行检查:若贡献度最大的变量就是贝叶斯网络的根节点,则该变量就是故障发生的根原因;若贡献度最大的变量不是贝叶斯网络的根节点而是子节点,则从该子节点出发寻找该子节点对应的父节点,从父节点中选取处于异常状态概率最大的节点即为故障发生的根原因。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201810796797.9/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top