CN109146246B - 一种基于自动编码器和贝叶斯网络的故障检测方法 - Google Patents
一种基于自动编码器和贝叶斯网络的故障检测方法 Download PDFInfo
- Publication number
- CN109146246B CN109146246B CN201810796797.9A CN201810796797A CN109146246B CN 109146246 B CN109146246 B CN 109146246B CN 201810796797 A CN201810796797 A CN 201810796797A CN 109146246 B CN109146246 B CN 109146246B
- Authority
- CN
- China
- Prior art keywords
- model
- data set
- variable
- bayesian network
- spe
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 76
- 238000001311 chemical methods and process Methods 0.000 claims abstract description 27
- 238000012824 chemical production Methods 0.000 claims abstract description 24
- 238000012549 training Methods 0.000 claims abstract description 17
- 239000000126 substance Substances 0.000 claims abstract description 13
- 238000010924 continuous production Methods 0.000 claims abstract description 9
- 230000002159 abnormal effect Effects 0.000 claims description 20
- 239000011159 matrix material Substances 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 6
- 230000007787 long-term memory Effects 0.000 claims description 5
- 230000006403 short-term memory Effects 0.000 claims description 5
- 238000007476 Maximum Likelihood Methods 0.000 claims description 4
- 230000001364 causal effect Effects 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000002945 steepest descent method Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 238000005520 cutting process Methods 0.000 claims description 3
- 238000003745 diagnosis Methods 0.000 abstract description 10
- 239000000284 extract Substances 0.000 abstract description 4
- 238000005312 nonlinear dynamic Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 6
- 238000004088 simulation Methods 0.000 description 6
- 238000000513 principal component analysis Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000003889 chemical engineering Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000348 solid-phase epitaxy Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 239000007791 liquid phase Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000000376 reactant Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000002910 structure generation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Tourism & Hospitality (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Educational Administration (AREA)
- Bioinformatics & Computational Biology (AREA)
- Game Theory and Decision Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Manufacturing & Machinery (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
本发明提出一种基于自动编码器和贝叶斯网络的故障检测方法,属于化工过程故障诊断领域。该方法离线阶段从任一化工连续生产过程中选取变量数据构建化工过程数据集和样本数据集;利用样本数据集训练自动编码器模型并计算统计量T2和SPE检测阈值;利用化工过程数据集构建贝叶斯网络并估计条件概率;在现阶段,获取实时数据并输入自动编码器模型得到对应估计值,计算输入数据对应的T2和SPE值并与检测阈值进行比较:若满足条件,则化工生产过程正常;若不满足,则计算每个变量的贡献度,通过贝叶斯网络找到故障的根原因。本发明从化工生产的过程数据中自动提取特征,有效应用于非线性的动态化工过程,实现化工过程故障的检测和快速诊断。
Description
技术领域
本发明涉及化工过程故障诊断领域,特别涉及一种基于自动编码器和贝叶斯网络的故障检测方法。
背景技术
化工生产过程是一个复杂过程。为了使经济效益最大化,化工生产过程往往要求“安、稳、长、满、优”,要求生产装置能够长周期、平稳地运行。随着自动控制的技术不断发展,装置的控制与状态变量紧紧耦合在一起,当化工生产过程中一个主要的变量发生异常时,这些异常会通过传质、传热等方式在装置传播,从而导致整个装置发生波动,引起装置发生报警泛滥,导致操作人员难以对故障进行正确诊断。如果操作人员因判断失误而做出错误的决策,可能引起重大事故,造成巨大的财产损失,甚至造成人员的伤亡。因此,快速准确地对故障进行诊断,对于化工的安全生产具有重大的意义。
为了辅助操作人员应对异常工况,有关故障诊断的研究已经将近有40年的历史,现有的故障诊断方法主要分为3类:基于定性模型的方法,基于定量模型的方法和基于过程数据驱动的方法。而其中基于过程数据驱动的方法已经展现明显的优势,能够有效地帮助操作人员诊断故障发生的原因。现有的基于过程数据驱动的方法为动态贝叶斯网络方法;动态贝叶斯网络考虑了变量在时间上的相关性,通过连接不同时刻下的不同变量,建立起具有时间特性的贝叶斯网络。然而,对于复杂的化工流程,动态贝叶斯网路的结构生成需要花费大量的时间和人力,并且动态贝叶斯网络并没有考虑那些未测量的变量,而有些故障的发生是由非测量变量引起的。
故障诊断过程分为故障检测阶段与故障原因识别阶段。在故障检测阶段,许多学者提出了主成分分析(PCA),偏最小二乘法(PLS)和费舍尔判别分析(FDA)等统计方法进行化工过程的故障检测。这些方法能够提取过程数据的特征,根据这些特征利用统计学原理定义统计量和假设检验。在生产过程中,根据监测的数据计算统计量,当统计量超过了某一个阈值,则认为有故障发生。传统的PCA方法只是适用于线性模型,并不反映数据的非线性特征。核主成分分析(KPCA)等方法虽然可以解决非线性问题,但是需要选择合适的核函数以及参数,这些参数的选择影响着最终的检测效果。除此之外,这些方法都没有将化工过程的动态性质考虑进去。近年来,研究人员开始通过机器学习的方法来进行故障检测。
对于故障原因识别阶段,PCA等统计方法将过程数据分解为特征空间和残差空间,通过计算不同变量对于统计量的贡献度,来对故障发生的原因进行识别,贡献度最大的变量为导致故障发生根本原因。由于化工过程具有高度的耦合性,一个变量的异常可能导致其他变量也发生异常,单纯从贡献度出发得到原因可能不是故障发生的根本原因。因此,需要在此结果上进行进一步的推断。
自动编码器是一种非监督学习的方法。它使用了反向传播算法,使输出值等于输入值。自动编码器由两个部分构成:编码器和解码器。编码器将原始数据映射到特征空间进行压缩,解码器将压缩数据复原。自动编码器可以自动提取特征,并且能够处理非线性问题。因此,自动编码器被广泛应用于图像识别、自然语言处理和机器故障识别。传统的自动编码器的编码器和解码器一般都由多层前馈神经网络构成,并没有考虑动态时间的拓展。
贝叶斯网络是一种概率网络。它是基于概率推理的图形化网络。一个贝叶斯网络是一个有向无环图,由代表变量节点以及连接这些节点的有向边构成。节点代表着随机变量,而这些有向边代表着这些节点之间的相互关系,用条件概率表达这些变量之间连接强度。贝叶斯网络在处理不确定信息的智能化***中已得到了重要的应用,已成功地用于医疗诊断、统计决策、专家***、学习预测等领域。
发明内容
本发明旨在克服现有方法的不足之处,提出了一种基于自动编码器和贝叶斯网络的故障检测方法。本发明将自动编码器模型和贝叶斯网络结合,能够从化工生产的过程数据中自动提取特征,有效应用于非线性的动态化工过程,从而实现化工过程故障的检测和快速诊断。
本发明提出一种基于自动编码器和贝叶斯网络的故障检测方法,其特征在于,分为离线阶段和在线阶段,包括以下步骤:
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的三维数组;
1-3-2)将输入数据集合Xtrain的每组输入数据按批次输入当前模型,每个批次输入当前模型进行训练之后,根据损失函数,通过最速下降法更新模型的参数,损失函数如式(2)所示:
当遍历完毕输入数据集合Xtrain之后,更新当前模型为Modelold,计算得到Modelold的损失函数记为Lossold;
1-3-3)重复步骤1-3-2),再次遍历输入数据集合Xtrain,更新当前模型记为Modelnew,计算得到Modelnew的损失函数记为Lossnew
1-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)建立的贝叶斯网络中,通过最大似然估计得到贝叶斯网络的节点之间条件概率;
3)在线阶段;
2-1)数据获取:从实时数据库获取步骤1-1)的化工连续生产过程选取变量的实时数据组成实时数据集,实时数据集的长度与自动编码器模型的一组输入数据长度相等;
2-2)重复步骤1-2),对步骤2-1)获取的实时数据进行标准化;
2-3)将步骤2-1)采集的实时数据集输入步骤1-3)训练完毕的模型,模型输出实时数据集对应的估计值;
2-4)利用公式(3)和公式(4),分别计算得到实时数据集对应的统计量T2d和SPEd;
若两个统计量T2d和SPEd均低于对应的检测阈值,则表示该化工生产过程正常,重新返回步骤2-1),继续监测;若任一统计量高于其对应的检测阈值,则该化工生产过程存在异常,进入步骤2-6);
2-6)对步骤2-1)获取的每个变量的实时数据对SPE的贡献度用变量的实际值与变量的重构值的2范数进行计算,计算每个变量贡献度大小,将所有贡献度的大小用柱状图进行展示,得到变量贡献度图;利用变量贡献图,选出对统计量SPE贡献度最大的变量;
2-7),在贝叶斯网络中将将对统计量SPE贡献度最大的变量的状态设置为100%异常,然后更新贝叶斯网络;
2-8)对更新后的贝叶斯网络进行检查:若贡献度最大的变量就是贝叶斯网络的根节点,则该变量就是故障发生的根原因;若贡献度最大的变量不是贝叶斯网络的根节点而是子节点,则从该子节点出发寻找该子节点对应的父节点,从父节点中选取处于异常状态概率最大的节点即为故障发生的根原因。
本发明的特点及有益效果在于:
本发明应用了动态扩展的自动编码器来检测故障,可以自动提取化工生产中的过程数据的特征,避免了参数选择对最终检测效果的影响。动态扩展的自动编码器使用长短期记忆网络(LSTMs)构建的自动编码器,使得提取的特征具有时间特性,适用于非线性动态化工过程。此外,此发明将自动编码器和贝叶斯网络结合,满足不同故障情况下的诊断,帮助操作人员快速诊断。
附图说明
图1为本发明方法的整体流程框图。
图2为本发明实施例的Tennessee Eastman模型流程图。
图3是本实施例中输入数据集合的统计量SPE和T2的分布示意图。
图4为本发明实施例的故障1情况下的SPE和T2分布示意图。
图5为本发明实施例的故障2情况下的SPE和T2分布示意图。
图6为本发明实施例的故障6情况下的SPE和T2分布示意图。
图7为本发明实施例的故障1情况下的各变量对统计量SPE的贡献度示意图。
图8为本发明实施例的故障2情况下的各变量对统计量SPE的贡献度示意图。
图9为本发明实施例的故障6情况下的各变量对统计量SPE的贡献度示意图。
图10为本发明实施例的贝叶斯网络推断示意图。
具体实施方式
本发明提出一种基于自动编码器和贝叶斯网络的故障检测方法,下面结合附图和具体实施实例进一步详细说明如下。
本发明提出一种基于自动编码器和贝叶斯网络的故障检测方法,分为离线阶段和在线阶段,整体流程如图1所示,包括以下步骤:
1)离线阶段;
1-1)收集化工生产过程的数据,构建样本数据集;
从任一化工连续生产过程中选取若干变量数据构建化工过程数据集,变量的选取是根据具体的化工过程选定;从化工过程数据集中选取其中一段合适长度(一般长度为选取变量个数的10到50倍)的正常数据(正常数据是指化工生产装置未发生异常平稳运行时的数据)作为样本组成样本数据集。
令X为样本数据集,其中xij代表第j个变量的第i个时刻的值,i=1,2…N,j=1,2…n,n为选取变量个数,N为时刻总数,则X为N×n维,表达式如下:
其中,矩阵X每一列代表一个变量在不同时刻的数值。
1-2)对步骤1-1)得到的样本数据集进行标准化;
对步骤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,m代表着每组数据的输入时间长度,所有的输入数据构成输入数据集合为Xtrain={Xm(m+1),Xm(m+2),...,Xm(N)},输入数据集合为(N-m)×m×n的三维数组。这个三维数组通过矩阵X生成。其中m的值与***的动态特性相关。模型的输入批次(barch,8≤batch≤128),批次指的是每一次迭代输入数据的组数。
1-3-2)将输入数据集合Xtrain的每组输入数据按批次输入当前模型,每个批次输入当前模型进行训练之后,根据定义的损失函数,通过最速下降法更新模型的参数。定义的损失函数如式(2)所示:
其中,Xm为每个批次的输入数据集合,为经过自动编码器模型得到的对应的输出数据集合。当模型遍历完毕输入数据集合Xtrain之后,更新当前模型为Modelold,计算得到Modelold的损失函数Lossold;
1-3-3)重复步骤1-3-2),再次遍历输入数据集合Xtrain,更新当前模型记为Modelnew,计算得到Modelnew的损失函数记为Lossnew
1-3-4)训练停止判定条件:
若Lossnew≤Lossold,则说明测试误差还在下降,继续训练模型,将当前Modelnew更新为新的Modelold,将当前Lossnew更新为新的Lossold,重新返回步骤1-3-3);
若Lossnew≥Lossold时,则说明测试误差开始上升,模型停止训练,输出当前Modelold作为最终训练完毕的自动编码器模型,进入步骤1-4);
1-4)估计阈值
检测使用的统计量为T2和SPE,将输入数据集合Xtrain的每组输入数据按批次输入步骤1-3)得到的训练完毕的自动编码器模型。模型的编码器层输出每个批次输入数据集合Xm对应特征为H=[h1,h2,...,hi,...,hN-m+1],其中hi为输入数据Xm(i)经过自动编码器模型得到的特征向量(Xm(i)中的每个元素X(i),X(i-1),...,X(i-m)]依次输入到自动编码器模型中,利用LSTMs网络得到一维特征向量hi。记H的协方差矩阵为S,统计量T2(霍特林T2统计量)的计算公式如公式(3)所示:
T2i=hiS-1(hi)T (3)
其中,i表示i时刻;
统计量SPE(平方预测误差)计算表达如式(4)所示:
分别计算输入数据集合Xtrain中每组输入数据对应的T2和SPE值,取计算结果中T2的最大值作为T2检测阈值,取计算结果中SPE的最大值作为SPE检测阈值,分别记T2检测阈值为T2thre,SPE检测阈值为SPEthre;
1-5)构建贝叶斯网络构建并估计条件概率;
1-5-1)利用步骤1-1)收集的化工过程数据集,使用传递熵算法和收敛交叉映射算法计算变量之间的因果关系,得到相邻矩阵,通过管道仪表流程图(P&ID)和工艺流程图(PFD)得到过程知识,并对相邻矩阵进行修正。利用修正后的相邻矩阵构建贝叶斯网络。因为贝叶斯网络有向无环图,而在实际化工连续生产过程中会有闭环控制器以及循环流,因此建立的贝叶斯网络会出现有环的情况。判断建立的贝叶斯网络是否有闭环。若有闭环,此时需要对这些环进行处理,切断这些环,并为环断处的变量创建虚拟节点,保证贝叶斯网络是一个有向无环图。
1-5-2)条件概率估计:将化工过程数据集的数据输入到步骤1-5-1)建立的贝叶斯网络中,通过最大似然估计得到贝叶斯网络的节点之间条件概率。
2)在线阶段;
2-1)数据获取:使用Jave数据库连接驱动程序(JDBC driver)(连接程序与实时数据库),从实时数据库获取步骤1-1)的化工连续生产过程的选取变量的实时数据组成实时数据集,实时数据集的长度与自动编码器模型的一组输入数据长度相等(时间长度为m);
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)对更新后的贝叶斯网络进行检查:如果贡献度最大的变量就是贝叶斯网络的根节点,那么该变量就是故障发生的根原因;如果贡献度最大的变量不是贝叶斯网络的根节点而是子节点,则从该子节点出发寻找该子节点对应的父节点,从父节点中选取异常状态最大的节点(即节点处于异常状态概率最大的节点)即为故障发生的根原因。
本发明的一个具体实施实例如下:
利用本发明对一个化工仿真模型进行故障诊断,包括以下步骤:
整个仿真模型分为五个操作单元,分别为反应器,冷凝器,分离罐,汽提塔和压缩机。反应物进入反应器中进行反应,反应后的物质进入冷凝器,冷凝后的物质进入分离器,部分未反应的物质通过压缩机输送到反应器重新进行反应,液相部分进入汽提塔进步提纯分离,得到最终的产品。
本实施例提出一种基于自动编码器和贝叶斯网络的故障检测方法,包括以下步骤:1)离线部分
1-1)收集化工生产过程的数据,构建样本数据集;
仿真模型采用的是Tennessee Eastman模型,整个流程如图2所示。整个模型一共52个变量,其中11个变量是操作变量,22个变量是过程监控变量,19个变量是浓度相关的监控变量,由于浓度变量采集时间不一致,所以输入数据中剔除浓度变量。操作变量和过程监控变量具体含义分别如表1和表2所示。在正常工况下,仿真模型运行25小时,每3分钟采一个样,则样本数据集X为(500,33)的一个矩阵。
表1 操作变量表
表2 过程监控变量表
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的三维数组;
本实施例中,m确定为3,则输入数据集合为(498,3,33)的三维数组。
模型输入批次为(batch=64),则每个批次的输入数据集合大小为(batch,m,33),每个批次的输出数据集合大小同样为(batch,m,33);
1-3-2)将输入数据集合Xtrain的每组输入数据按批次输入当前模型,每个批次输入当前模型进行训练之后,根据损失函数,通过最速下降法更新模型的参数,损失函数如式(2)所示:
当遍历完毕输入数据集合Xtrain之后,更新当前模型为Modelold,计算得到Modelold的损失函数记为Lossold;
1-3-3)重复步骤1-3-2),再次遍历输入数据集合Xtrain,更新当前模型记为Modelnew,计算得到Modelnew的损失函数记为Lossnew
1-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)经过自动编码器模型得到的特征向量,本实施例中,编码器层输出为17维的特征;记H的协方差矩阵为S,则第i个时刻所有变量对应的统计量T2的计算表达式如式(3)所示:
T2i=hiS-1(hi)T (3)
统计量SPE计算表达式如式(4)所示:
分别计算输入数据集合Xtrain中每组输入数据对应的T2和SPE值,取计算结果中T2的最大值作为T2检测阈值,取计算结果中SPE的最大值作为SPE检测阈值,分别记T2检测阈值为T2thre,SPE检测阈值为SPEthre;
图3是本实施例中输入数据集合的统计量SPE和T2的分布示意图,其中图3(a)横坐标为时间,纵坐标为统计量SPE的值;图3(b)横坐标为时间,纵坐标为统计量T2的值。计算得到阈值T2thre=51.14和SPEthre=171.68
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);
本实施例中的仿真过程一共有21种故障,此处选取三种故障应用于本发明中,所选取故障列表如表3所示。仿真模型每个故障运行48h,其中在第8h引入故障。数据不断输出离线建立的模型之中,计算得到的统计量T2和SPE,分别于T2thre和SPEthre进行比较。
图4-6分别为故障1,故障2和故障6的SPE和T2分布示意图。,其中每张图中的虚线均代表对应的检测阈值;其中图4-6中的图(a)横坐标为时间,纵坐标为SPE统计量的值;图4-6中的图(b)横坐标为时间,纵坐标为T2统计量的值。这些故障都可以被成功检测出。
表3 本实施例的故障类型表
2-6)对步骤2-1)获取的每个变量的实时数据对SPE的贡献度用变量的实际值与变量的重构值的2范数进行计算,计算每个变量贡献度大小,将所有贡献度的大小用柱状图进行展示,得到变量贡献度图;利用变量贡献图,选出对统计量SPE贡献度最大的变量;
本实施例中,图7-9分别为故障1,故障2和故障6的SPE变量贡献图,其中横坐标代表着各变量,纵坐标表示各变量对SPE的贡献度。可以看到故障1(IDV1)的SPE最大贡献变量为XMEAS20,故障2(IDV2)的SPE最大贡献变量为XMV 6,故障6(IDV6)的SPE最大贡献变量为XMEAS1
2-7)在贝叶斯网络中将将对统计量SPE贡献度最大的变量的状态设置为100%异常,然后更新贝叶斯网络;
以故障1为例,XMEAS20为SPE最大贡献度的变量,将贝叶斯网络中XMEAS20设置为100%异常。更新之后的网络如图10,图10中各节点代表着变量,变量一共有三种状态正常(normal)、高(high)、低(low),其中高和低都是出于异常状态,从图10可以看出XMEAS 20并不处于根节点,所以由XMEAS 20出发,向父节点寻找,XMEAS13(低,69%),XMEAS11(低,66%),XMEAS9(高,76%),XMEAS7(低,68%),XMEAS(高,60%),XMEAS1(高,78%),括号中高和低表示该变量所处的状态,而百分比则代表着变量处于该状态的概率。而IDV6的最大贡献变量XMEAS1在贝叶斯网路的根节点。
2-8)对更新后的贝叶斯网络进行检查:若贡献度最大的变量就是贝叶斯网络的根节点,则该变量就是故障发生的根原因;若贡献度最大的变量不是贝叶斯网络的根节点而是子节点,则从该子节点出发寻找该子节点对应的父节点,从父节点中选取处于异常状态概率最大的节点即为故障发生的根原因。
本实施例中,可以看到IDV1发生的根本原因在于XMEAS1,且IDV6发生故障根本原因在于XMEAS1,得到最终故障检测结果。
Claims (1)
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的三维数组;
1-3-2)将输入数据集合Xtrain的每组输入数据按批次输入当前模型,每个批次输入当前模型进行训练之后,根据损失函数,通过最速下降法更新模型的参数,损失函数如式(2)所示:
当遍历完毕输入数据集合Xtrain之后,更新当前模型为Modelold,计算得到Modelold的损失函数记为Lossold;
1-3-3)重复步骤1-3-2),再次遍历输入数据集合Xtrain,更新当前模型记为Modelnew,计算得到Modelnew的损失函数记为Lossnew
1-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)对更新后的贝叶斯网络进行检查:若贡献度最大的变量就是贝叶斯网络的根节点,则该变量就是故障发生的根原因;若贡献度最大的变量不是贝叶斯网络的根节点而是子节点,则从该子节点出发寻找该子节点对应的父节点,从父节点中选取处于异常状态概率最大的节点即为故障发生的根原因。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810471453 | 2018-05-17 | ||
CN2018104714530 | 2018-05-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109146246A CN109146246A (zh) | 2019-01-04 |
CN109146246B true CN109146246B (zh) | 2021-06-04 |
Family
ID=64801037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810796797.9A Active CN109146246B (zh) | 2018-05-17 | 2018-07-19 | 一种基于自动编码器和贝叶斯网络的故障检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109146246B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110321933B (zh) * | 2019-06-11 | 2021-09-14 | 武汉闻道复兴智能科技有限责任公司 | 一种基于深度学习的故障识别方法和装置 |
CN110378036A (zh) * | 2019-07-23 | 2019-10-25 | 沈阳天眼智云信息科技有限公司 | 基于传递熵的化工过程故障诊断方法 |
CN111241688B (zh) * | 2020-01-15 | 2023-08-25 | 北京百度网讯科技有限公司 | 复合生产工艺过程监控方法及装置 |
CN111626099B (zh) * | 2020-04-10 | 2023-06-09 | 浙江大学 | 一种基于改进ccm的工业控制***多回路振荡因果关系分析方法 |
CN112101439B (zh) * | 2020-09-09 | 2023-11-28 | 浙江大学 | 基于分布式贝叶斯网络的高速线材质量缺陷诊断与溯源方法 |
CN112367293A (zh) * | 2020-10-10 | 2021-02-12 | 浙江大学 | 一种基于时序特征的加密流量异常检测方法 |
CN112311662B (zh) * | 2020-10-22 | 2022-08-30 | 南京富岛信息工程有限公司 | 一种智慧油田边缘计算网关 |
WO2022107296A1 (ja) * | 2020-11-19 | 2022-05-27 | 日本電信電話株式会社 | 推定装置、推定方法、および、推定プログラム |
CN112415894B (zh) * | 2020-11-20 | 2021-09-10 | 中国矿业大学 | 基于主动学习和bn的重介质选煤过程安全运行控制方法 |
CN112949947A (zh) * | 2021-04-19 | 2021-06-11 | 广东电网有限责任公司计量中心 | 一种基于卷积长短期记忆网络的电力故障预警方法及*** |
CN113671923A (zh) * | 2021-08-30 | 2021-11-19 | 东北大学 | 一种基于数据驱动的连轧过程故障检测方法 |
CN113722140B (zh) * | 2021-08-30 | 2023-08-04 | 中国地质大学(武汉) | 基于小样本学习的工业报警泛滥根源诊断方法及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528528A (zh) * | 2016-10-18 | 2017-03-22 | 哈尔滨工业大学深圳研究生院 | 文本情感分析的方法及装置 |
CN107169117A (zh) * | 2017-05-25 | 2017-09-15 | 西安工业大学 | 一种基于自动编码器和dtw的手绘图人体运动检索方法 |
CN107194433A (zh) * | 2017-06-14 | 2017-09-22 | 电子科技大学 | 一种基于深度自编码网络的雷达一维距离像目标识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160098633A1 (en) * | 2014-10-02 | 2016-04-07 | Nec Laboratories America, Inc. | Deep learning model for structured outputs with high-order interaction |
-
2018
- 2018-07-19 CN CN201810796797.9A patent/CN109146246B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106528528A (zh) * | 2016-10-18 | 2017-03-22 | 哈尔滨工业大学深圳研究生院 | 文本情感分析的方法及装置 |
CN107169117A (zh) * | 2017-05-25 | 2017-09-15 | 西安工业大学 | 一种基于自动编码器和dtw的手绘图人体运动检索方法 |
CN107194433A (zh) * | 2017-06-14 | 2017-09-22 | 电子科技大学 | 一种基于深度自编码网络的雷达一维距离像目标识别方法 |
Non-Patent Citations (1)
Title |
---|
基于收敛交叉映射的化工过程扰动因果分析方法;程非凡等;《化工学报》;20161231;第67卷(第12期);5082-5088 * |
Also Published As
Publication number | Publication date |
---|---|
CN109146246A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109146246B (zh) | 一种基于自动编码器和贝叶斯网络的故障检测方法 | |
Surucu et al. | Condition monitoring using machine learning: A review of theory, applications, and recent advances | |
CN113642754B (zh) | 一种基于rf降噪自编码信息重构和时间卷积网络的复杂工业过程故障预测方法 | |
CN111337768A (zh) | 变压器油中溶解气体的深度并行故障诊断方法及*** | |
CN111914873A (zh) | 一种两阶段云服务器无监督异常预测方法 | |
CN111275288A (zh) | 基于XGBoost的多维数据异常检测方法与装置 | |
CN112904810B (zh) | 基于有效特征选择的流程工业非线性过程监测方法 | |
CN116757534A (zh) | 一种基于神经训练网络的智能冰箱可靠性分析方法 | |
CN105607631B (zh) | 间歇过程弱故障模型控制限建立方法及弱故障监测方法 | |
Wei et al. | A novel deep learning model based on target transformer for fault diagnosis of chemical process | |
Tang et al. | A deep belief network-based fault detection method for nonlinear processes | |
CN116244617A (zh) | 一种基于异构图结构学习的智能高压开关柜故障诊断方法和*** | |
Zhang et al. | A novel fault diagnosis method based on stacked LSTM | |
JP3718765B2 (ja) | プラント診断装置 | |
CN115204272A (zh) | 基于多采样率数据的工业***故障诊断方法与设备 | |
CN116431966A (zh) | 一种增量式特征解耦自编码器的堆芯温度异常检测方法 | |
Kefalas et al. | Automated machine learning for remaining useful life estimation of aircraft engines | |
Xu et al. | Global attention mechanism based deep learning for remaining useful life prediction of aero-engine | |
CN112947649B (zh) | 一种基于互信息矩阵投影的多变量过程监控方法 | |
Wang et al. | Stationary mapping based generalized monitoring scheme for industrial processes with mixed operational stages | |
Yang et al. | Anomaly detection of automobile welding workstation based on stacked autoencoders and long short-term memory network | |
CN115564021A (zh) | 一种聚酯纤维聚合过程的故障根因排序方法 | |
CN115184734A (zh) | 一种电网线路故障检测方法和*** | |
Zhang et al. | A flexible monitoring framework via dynamic-multilayer graph convolution network | |
KR102486463B1 (ko) | 열화에 따른 시계열 데이터를 이용한 실시간 이상 감지 방법 및 그를 위한 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |