A data-driven approach to industrial process fault detection
By combining principal component analysis, independent component analysis, and typical correlation analysis with a three-channel convolutional neural network, the problems of high single-fault accuracy, low multiple-fault detection accuracy, and large computational complexity in data-driven industrial process fault detection are solved, achieving efficient fault detection and tracing.
Patent Information
- Application Number
- CN202210367561.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-08
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2042-04-08
AI Technical Summary
Existing data-driven industrial process fault detection methods have the problems of high single-fault accuracy, low multiple-fault detection accuracy, high data dimension and large computational complexity.
Principal component analysis, independent component analysis and canonical correlation analysis are combined with a three-channel convolutional neural network. Through feature extraction and deep learning, an industrial process fault detection network is constructed. The PCA channel, ICA channel and CCA channel are used to process feature data respectively to achieve fault detection.
It improves the accuracy of multi-fault detection, reduces the amount of calculation, adapts to large-scale and complex industrial processes, and can better trace faults in the production process.
Smart Images

Figure CN114647231B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of industrial process control and fault diagnosis, and in particular to a data-driven industrial process fault detection method. Background Art
[0002] In recent years, the continuous development of modern industry has led to the emergence of numerous large-scale industrial production and manufacturing systems and highly complex industrial processes. While these ever-expanding and complex processes have brought convenience to modern industry, they have also brought with them certain problems and challenges. The increasing complexity and scale of these systems has significantly increased the probability of machine failures during the production and manufacturing process, and once a failure occurs, it can easily spread throughout the system. Without reliable detection methods, these failures can lead to serious consequences such as equipment damage, casualties, and product failures.
[0003] There are currently three general categories of detection methods for large-scale, highly complex faults. The first category is knowledge-based methods, which are suitable for systems where mathematical model building is relatively easy. However, this method is limited to systems with fewer process variables. The second category is model-based methods, which do not require precise mathematical models but only require some collected basic data and incorporate some fixed knowledge for detection. However, these methods are less versatile and have significant limitations. The third category is data-driven methods, which require operational status information and use the currently available theoretical knowledge to process these basic data to obtain results.
[0004] Data-driven process monitoring and fault detection are currently hot topics. Existing methods suffer from complex training networks, high data dimensionality, incomplete feature engineering, and other issues, resulting in high accuracy for detecting single faults but low accuracy for detecting multiple faults, as well as high computational complexity. Therefore, improvements are needed to accurately and rapidly analyze fault data from industrial processes and ensure stable production operations. Summary of the Invention
[0005] The technical problem to be solved by the present invention is to provide a data-driven industrial process fault detection method to solve the current problems in industrial processes where the accuracy of detecting single faults is high, the accuracy of detecting multiple faults is low, and the data dimension is high and the computational complexity is large.
[0006] In order to solve the above technical problems, the present invention provides a data-driven industrial process fault detection method, which includes the following process:
[0007] S01. Obtain the process data of industrial production. The dimension of the process data is 53 and the total number of entries is m. Then construct the original matrix Z of the process data with m rows and 53 columns. src , the original matrix Z of process data srcEach column of the trained column mean matrix Z is subtracted mean , get the centralized matrix Z o ;
[0008] S02, the centralized matrix Z o Input principal component analysis and use the trained eigenvector matrix A9 to calculate the eigendata Y1_online=A9Z O ; The centralized matrix Z o Input independent component analysis and use the trained vector matrix Calculating feature data The centered matrix Z o Input the canonical correlation analysis method and use the trained eigenvector matrix Σ9 and the trained right singular vector orthogonal basis V9 to calculate the feature data Y3_online:
[0009]
[0010] Among them, p k is the centered matrix Z o kth row of ; k∈(1,m) is the number of process data at the current moment, and after substituting k from 1 to m into formula (23) in sequence, the characteristic data Y3_online is obtained;
[0011] S03. The industrial process fault detection network includes a three-channel convolutional neural network of PCA channel, ICA channel and CCA channel. The feature data Y1_online is used as the input of the PCA channel, the feature data Y2_online is used as the input of the ICA channel, and the feature data Y3_online is used as the input of the CCA channel. They are respectively input into the industrial process fault detection network to infer the classification labels of the process data. If the classification label is 1-6, the inference result is abnormal, and the data is marked with the abnormal label and stored in the database; if the classification label is 0, the inference result is normal, and the data is marked with the normal label and stored in the database.
[0012] As an improvement of the data-driven industrial process fault detection method of the present invention:
[0013] The process of feature extraction by principal component analysis in step S02 is as follows:
[0014] S0201. Principal component analysis method to extract features:
[0015] S020101. Calculate the covariance matrix C based on the input centralized matrix:
[0016]
[0017] Where Z is the central matrix of the input;
[0018] S020102. Find the eigenvalue λ of the covariance matrix C i and the corresponding eigenvectors;
[0019] S020103, the eigenvalue λ of the covariance matrix C i Arrange the values of the main diagonal from large to small, and set all other values to 0, and save them as the eigenvalue matrix Λ; set η>85%, and determine the number of selected eigenvalues k according to formula (3):
[0020]
[0021] S020104: The eigenvector is divided into two parts according to the corresponding eigenvalue λ. i The size is arranged in a matrix from top to bottom in descending order and saved as the eigenvector matrix A. The first k rows of the eigenvector matrix A are recorded as A k ;
[0022] S020105: Feature data Y1 after principal component analysis:
[0023] Y1=A k Z (4)
[0024] The output of principal component analysis is the characteristic data Y1 and the characteristic vector matrix A k .
[0025] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0026] The process of feature extraction using the independent component analysis method in step S02 is as follows:
[0027] S0202, Independent Component Analysis Feature Extraction
[0028] S020201. Get the whitening matrix W:
[0029]
[0030] S020202: Get new whitened process data
[0031] Z new =WZ (6)
[0032] Where Z is the central matrix of the input;
[0033] S020203: Let the number of components to be estimated be r, the number of iterations be n, initialize n=0 and select a random initial vector ω(0);
[0034] S020204: Calculate ω(n+1) using the Newton iteration method according to formula (7):
[0035] ω(n+1)=E{Z new g(ω(n) T Z new )}-E{g'(ω T Z new )}ω(n) (7)
[0036] Among them, E represents the mean, g represents the nonlinear function, a represents the constant, g'(ω T Z new ) represents the derivative of the function g, n is the number of calculations, and ω(n) represents the result of n times of iterative calculation;
[0037] S020205. Normalize the obtained ω(n+1) according to formula (8), and perform convergence judgment according to formula (9): If the condition of formula (9) is not satisfied, then after n=n+1, repeat step S020204 to calculate ω(n+1);
[0038]
[0039] ||ω(n+1)ω(n) T |-1|<ε (9)
[0040] Where ε is the error;
[0041] If the condition of formula (9) is satisfied, when the number of converged vectors is equal to r, the independent component analysis stops and the vector matrix is obtained
[0042] S020206. The feature data Y2 extracted by the independent component analysis is:
[0043]
[0044] The output of independent component analysis is feature data Y2 and vector matrix
[0045] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0046] The process of feature extraction using the typical association analysis method in step S02 is as follows:
[0047] S0203, Feature extraction using canonical association analysis
[0048] S020301. Construct history vector p k With the historical dataset P k :
[0049] p k =[z k-1 , z k-2 ,…,z k-h ] T (12)
[0050] P k =[p k-1 ,p k-2 ,…,p k+N-1 ]∈R mh×N (13)
[0051] Among them, h is the length of the history vector, N is the total number of data, z k The kth row of the input matrix is the centralized data, and P is recorded k The covariance matrix of pp ;
[0052] S020302: Construct future vector f k With the future dataset F k :
[0053] f k =[z k , z k+1 ,…,z k+s ] T (14)
[0054] F k =[f k ,f k+1 ,…,f k+N-1 ]∈R sh×N (15)
[0055] Where s is the future vector length;
[0056] Remember the future dataset F k The covariance matrix of ff , record the future vector f k With the future dataset F k The covariance of pf ;
[0057] S020303, use the canonical correlation analysis method to make the historical data set P k and future dataset F k The data set formed has the greatest correlation, and the correlation coefficient is decomposed into singular values:
[0058] ρ pf =UΣV T (16)
[0059] According to the singular value decomposition formula, we can get:
[0060]
[0061] Among them, Σ ff For the future dataset F k The covariance matrix, Σ pf is the historical dataset P k and future dataset F k The covariance of pp is the historical dataset P k The covariance matrix of , V is the right singular vector orthogonal basis, U is the left singular vector orthogonal basis, Σ is the eigenvector matrix; we can get:
[0062]
[0063] Σ=Σ pf (19)
[0064]
[0065] S020304. The characteristic data Y3 obtained by the typical association analysis method is:
[0066]
[0067] Wherein, y(k) represents the characteristic data obtained by the typical correlation analysis method at time k, k∈(1,m) represents the number of entries of the input centralized matrix at the current moment, and m is the total number of entries of the input centralized matrix. Substituting k from 1 to m into formula (21), the characteristic data Y3 obtained by the typical correlation analysis is obtained;
[0068] The output of the typical correlation analysis method is the characteristic data Y3, the characteristic vector matrix Σ and the right singular vector orthogonal basis V.
[0069] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0070] The industrial process fault detection network in step S03 includes a three-channel convolutional neural network with three equivalent channels, namely a PCA channel, an ICA channel, and a CCA channel; each channel includes a four-layer structure: the first layer is 16 2x2 convolution kernels, the step size is 1, the padding is 1, the activation function is ReLU, and the output is 16x4x4; the second layer is 32 2x2 convolution kernels, the step size is 1, the padding is 0, the activation function is also ReLU, and the output is 32x3x3; the third layer is 16 2x2 convolution kernels, the step size is 1, the padding is 0, the activation function is also ReLU, and the output is 16x2x2; the fourth layer is a fully connected layer;
[0071] The input feature data is converted into 32-dimensional data after passing through the PCA channel, ICA channel, and CCA channel. The 32-dimensional data of the three channels are connected and then passed through a fully connected layer to output the 32-dimensional data. Finally, the classification results of 0 to 6 are output through the output layer.
[0072] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0073] The trained column mean matrix Z mean , eigenvector matrix A9, vector matrix The process of obtaining the eigenvector matrix Σ9 and the right singular vector orthogonal basis V9 is:
[0074] 1) Software simulation is performed on Tennessee Eastman's process data to obtain sample data and label them. Normal data is labeled 0, and abnormal data is labeled 1-6. The sample data and its corresponding labels are divided into training and test sets in an 8:2 ratio.
[0075] 2) After pre-processing the training set, the centralized matrix Z is obtained train , and save the mean value of each column of the training set as the trained column mean matrix Z mean =z mean_1 ,z mean_2 ,…,z mean_53 ;
[0076] 3) Centralized matrix Z train Obtain the eigenvector matrix A through the principal component analysis method, take the first 9 rows of the eigenvector matrix A and save them as the trained eigenvector matrix A9, and output the eigendata Y1=A9Z train ;
[0077] 4) Centralized matrix Z train The vector matrix is obtained by the independent component analysis method Take the number of vectors r=9 and save it as the trained vector matrix Output feature data
[0078] 5) Centralized matrix Z train The characteristic vector matrix Σ and the right singular vector orthogonal basis V are obtained by the typical correlation analysis method, and then the dimension is taken as n=9, and the first 9×9 diagonal matrix of the characteristic vector matrix Σ is saved as the trained characteristic vector matrix Σ9 and the first 9×9 diagonal matrix of the right singular vector orthogonal basis V is saved as the trained right singular vector orthogonal basis V9, and k is substituted from the first to the last item of the training set into formula (23) to output the characteristic data Y3:
[0079]
[0080] Among them, p k is the centered matrix Z train The kth row of .
[0081] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0082] The test set constructs an original matrix Z of the test set with m rows and 53 columns src , the original matrix Z src Each column of the trained column mean matrix Z is subtracted mean , get the centralized matrix Z test , and then perform feature extraction:
[0083] The centered matrix Z test By principal component analysis, the trained eigenvector matrix A9 is used to calculate the feature data Y1_test=A9Z test ; The centralized matrix Z test Through independent component analysis and using the trained vector matrix Calculating feature data The centered matrix Z test Through the canonical correlation analysis method, and using the trained eigenvector matrix Σ9 and the trained right singular vector orthogonal basis V9, we substitute k from the first to the last item in the training set into formula (23) and output the feature data Y3_test:
[0084]
[0085] Among them, p k is the centered matrix Z test The kth row of .
[0086] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0087] The centralization preprocessing is to construct an original matrix Z with m rows and 53 columns from the input data. src =[z1,z2,z3,z4……,z 53 ], normalize the 53 dimensions, the operation is:
[0088]
[0089] Where: z i_new is the data after centralization, z i is the column vector of column i, including the data set of the same dimension, mean(z i ) represents zi The average value of the column;
[0090] The centralized preprocessing output is a matrix
[0091] As a further improvement of the data-driven industrial process fault detection method of the present invention:
[0092] The training process of the industrial process fault detection network is as follows: the feature data Y1 is input into the PCA channel, the feature data Y2 is input into the ICA channel, and the feature data Y3 is input into the CCA channel for model training, the learning rate is set to 0.001 and the loss function is the cross entropy loss; a total of 100 epochs are trained and the trained model of each epoch is saved, and a total of 100 trained industrial process fault detection network models are saved, and each model outputs the classification label corresponding to each sample data in the training set, where label 0 represents normal data and labels 1-6 represent fault data;
[0093] The testing process of the industrial process fault detection network is as follows: the feature data Y1_test is used as the input of the PCA channel, the feature data Y2_test is used as the input of the ICA channel, and the feature data Y3_test is used as the input of the CCA channel. The test set is input into the 100 trained industrial process fault detection network models for testing, and the F1 score of the test of each model is obtained. The industrial process fault detection network model with the highest score is taken as the industrial process fault detection network used online.
[0094] The beneficial effects of the present invention are mainly reflected in:
[0095] 1. This invention analyzes complex processes and finds that the data variation patterns generated in a complex process include both Gaussian and non-Gaussian characteristics, and that time series data exhibits certain correlations in the time dimension. Therefore, this invention uses three feature extraction methods to incorporate the signal's Gaussian, non-Gaussian, and autocorrelation characteristics into the data features. Combining this with a three-channel neural network for three-channel input, the results show that it can effectively improve accuracy in multiple classification processes and better trace faults in the production process.
[0096] 2. The present invention uses a data-driven approach to perform fault diagnosis. Compared with knowledge- and model-based methods, it is more versatile. The modeling process is completed by manual feature extraction followed by a deep learning network, which can better adapt to large-scale and complex industrial processes.
[0097] 3. The present invention also achieves data dimensionality reduction through the above feature extraction method, and uses a three-layer convolutional neural network with fewer layers as a model. It can be completed with less calculation without substantially reducing the accuracy of abnormal data judgment. BRIEF DESCRIPTION OF THE DRAWINGS
[0098] Figure 1 This is an overall flow chart of a data-driven industrial process fault detection method of the present invention;
[0099] Figure 2 This is a three-channel convolutional neural network structure diagram;
[0100] Figure 3 This is the structure diagram of the single-channel convolutional neural network in the experiment. DETAILED DESCRIPTION
[0101] The present invention is further described below with reference to specific embodiments, but the protection scope of the present invention is not limited thereto:
[0102] Example 1: The present invention proposes a data-driven industrial process fault detection method to address the problems of complex industrial process fault detection models, large computational complexity, and low accuracy in multiple fault detection.
[0103] The data for offline modeling is the data from the Tennessee Eastman (TE) process. The data from the TE process is collected to complete the modeling process. The built model is then applied to the actual production process of ammonium bisulfite for fault detection. Figure 1 As shown, the following steps are included, steps 1 to 4 are the offline modeling stage, and step 5 is the online processing stage, specifically:
[0104] Step 1: Import the normal data in the historical production process and label it as normal. The same applies to the fault data, and save the data in a CSV format for easy processing;
[0105] The dataset uses data from the TE process. The TE process is based on an open and challenging chemical model simulation platform developed by Eastman Chemical Company in the United States, based on actual chemical reactions. The data generated by the platform exhibits time-varying, strongly coupled, and nonlinear characteristics, making it widely used for testing control and fault diagnosis models for complex industrial processes. The TE process primarily consists of five operating units: reactor, condenser, gas / liquid separator, compressor, and stripper. The chemical reaction process in the TE process involves eight components: A, B, C, D, E, F, G, and H. The reactants include gaseous substances A, C, D, and E and an inert catalyst B, while the products include liquid products G and H and a by-product F. The overall reaction flow is as follows: the reactant gases A, C, D, and E enter the reactor, react over the catalyst, and the products are condensed and cooled in the condenser. After cooling, a gas-liquid mixed stream is formed and enters the separator. The separator separates the gases and recirculates them back into the reactor. Steam must be exhausted before entering the recirculating compressor. The condensed components from the separator are then placed in a gas tower for separation. The reacted components, which have passed through the stripping tower, are then recycled back into the reactor. After the reaction, products G and H are obtained at the bottom of the stripping tower. Continuously measured variables during the process are shown in Table 1:
[0106] Table 1: Continuous measurement variables
[0107]
[0108]
[0109] The composition analysis variables are shown in Table 2:
[0110] Table 2: Compositional analysis variables
[0111]
[0112]
[0113] The control variables are shown in Table 3:
[0114] Table 3: Control variables
[0115] Variable Description serial number D feed amount (stream 2) XMv(1) E feed amount (stream 3) XMv(2) A feed amount (flow l) XMv(3) Total feed amount (stream 4) XMv(4) Compressor recirculation valve XMv(5) Discharge valve (stream 9) XMv(6) Separator tank liquid flow (flow 10) XMv(7) Stripper liquid product flow (stream II) XMv(8) Stripper water flow valve XMv(9) Reactor cooling water flow XMv(10) Condenser cooling water flow XMv(11) stirring speed XMv(12)
[0116] Fault types are shown in Table 4:
[0117] Table 4: Fault types
[0118]
[0119]
[0120] The TE process data consists of 53 dimensions, encompassing 21 types of fault anomalies. The data was obtained through Matlab simulation.
[0121] The following simulations were performed:
[0122] 1. A 73-hour simulation was conducted under normal conditions, and 1,460 normal data points were obtained.
[0123] 2. Simulate 21 abnormal situations, each of which runs for 24 hours, and obtain 21 abnormal situations, with 480 data points for each abnormal situation.
[0124] 3. Simulating the 21 abnormal conditions, running the normal condition first and then the abnormal condition, for 8 hours and 40 hours, yielded 160 normal data points and 800 corresponding abnormal data points. This resulted in 21 simulations of the normal-then-abnormal model, yielding 160*21 normal data points and 800*21 abnormal data points for each of the 21 abnormal conditions.
[0125] The data is labeled according to the values in the "Classification" column in Table 4: normal data is labeled 0, and abnormal data is grouped and merged according to the "Classification" column in Table 4. For example, the abnormal data numbered 8 is labeled 2. The total sample size is 1460 + 21 * (480 + 960) = 31,700 data points, including 4820 normal data points and 1280 each of the 21 types of abnormal data.
[0126] Step 2: Preprocess the data, i.e. perform centralization processing;
[0127] The input data is constructed into an original matrix Z with m rows and 53 columns src =[z1,z2,z3,z4……,z 53 ], the original matrix Z src The number of data rows is m, which corresponds to the number of input data, representing time, and the original matrix Z src The columns correspond to the dimensions of the input data, representing information such as temperature, content, and pressure. The 53 dimensions are normalized using the following operations:
[0128]
[0129] Where: z i_new is the data after centralization, z i is the column vector of column i, including the data set of the same dimension, mean(z i ) represents z i The average value of the column, i∈(1,53);
[0130] The centralized matrix is denoted as Z,
[0131] Step 3: Analyze the centralized data using principal component analysis, independent component analysis, and canonical correlation analysis to obtain three different feature matrices as input for the industrial process fault detection network to be established in the next step.
[0132] Step 3-1: Extract features using principal component analysis:
[0133] Step 3-1-1: Based on the centralized matrix Z in step 2, find the covariance matrix C of Z:
[0134]
[0135] Step 3-1-2: Find the eigenvalue λ of the covariance matrix C i and the corresponding eigenvectors;
[0136] Step 3-1-3: Substitute the eigenvalues λ of the covariance matrix C i Arrange from large to small and record it as λ=[λ1,λ2,λ3,λ4,λ5……λ m ]; Arrange the eigenvalues λ from large to small i As the value of the main diagonal, all other values are 0, which are saved as the eigenvalue matrix and recorded as Λ. The contribution rate η is selected to be greater than a percentage, generally η>85%. The number of selected eigenvalues k is determined according to formula (3):
[0137]
[0138] Step 3-1-4: Subtract the eigenvector from the corresponding eigenvalue λ i The size is arranged in a matrix from top to bottom in descending order and saved as the eigenvector matrix A. The first k rows of the eigenvector matrix A are recorded as A k ;
[0139] Step 3-1-5: Calculate the data after principal component analysis:
[0140] Y1=A k Z (5)
[0141] Among them, Y1 is the characteristic data obtained after principal component analysis, and Z is the centralized matrix;
[0142] The output of the centralized matrix Z after principal component analysis is the characteristic data Y1 and the characteristic vector matrix A k ;
[0143] Step 3-2: Use independent component analysis to extract features and save the feature matrix;
[0144] Step 3-2-1: Get the whitening matrix W. The acquisition method is:
[0145]
[0146] Where Λ is the eigenvalue matrix in step 3-1-3, and A is the eigenvector matrix in step 3-1-5;
[0147] Step 3-2-2: Get the new whitened process data Z new ,
[0148] Z new =WZ (7)
[0149] Z is the centered matrix;
[0150] Step 3-2-3: Let the number of components to be estimated be r, the number of iterations be n, initialize n = 0 and select a random initial vector ω(0);
[0151] Step 3-2-4: Calculate according to formula (7) using the Newton iteration method:
[0152] ω(n+1)=E{Z new g(ω(n) T Z new )}-E{g'(ω T Z new )}ω(n) (8)
[0153] Where E represents the mean, g represents the nonlinear function, and we can take g1(x)=tanhax, g2(x)=x 3 etc., a represents a constant, g'(ω T Z new ) represents the derivative of the function g, n is the number of calculations, and ω(n) represents the result of n times of iterative calculation;
[0154] Step 3-2-5: Normalize the obtained ω(n+1) according to formula (8) (the first iteration is to substitute ω(0), n is 0, and the result is ω(1)), and make a convergence judgment according to formula (9):
[0155] If the condition of formula (9) is not satisfied, then after n=n+1, repeat steps 3-2-4 to calculate ω(n+1);
[0156]
[0157] ||ω(n+1)ω(n) T |-1|<ε (10)
[0158] Where ε is the error;
[0159] If the condition of formula (9) is satisfied, when the number of converged vectors is equal to r, the independent component analysis stops and the vector matrix is obtained
[0160]
[0161] Step 3-2-6: Calculate the feature data after independent component analysis:
[0162]
[0163] Among them, Y2 is the feature data obtained after independent component analysis, and Z is the matrix after centering in step 2
[0164] The output of the centralized matrix Z after independent component analysis is the feature data Y2 and the vector matrix
[0165] Step 3-3: Use canonical correlation analysis to extract features and save the feature matrix;
[0166] Step 3-3-1: Select the history vector length as h, z k is the data z after centering in step 2 i_new The kth row of the constructs the history vector p k With the history matrix P k :
[0167] p k =[z k-1 , z k-2 ,…,z k-h ] T (13)
[0168] P k =[p k-1 ,p k-2 ,…,p k+N-1 ]∈R mh×N (14)
[0169] Among them, N is the total number of data, and P k The covariance matrix of pp ;
[0170] Step 3-3-2: Select the future vector length s and construct the future vector f k and the future matrix F k :
[0171] f k =[z k , z k+1 ,…,z k+s ] T (15)
[0172] F k =[f k ,f k+1 ,…,f k+N-1 ]∈R sh×N (16)
[0173] Remember the future matrix F k The covariance matrix of ff , record the history matrix P k and the future matrix F k The covariance of pf ;
[0174] Step 3-3-3: Use the canonical correlation analysis method to make the historical matrix P k and the future matrix F k The data set formed has the greatest correlation, and the correlation coefficient is decomposed into singular values:
[0175] ρ pf =UΣV T (17)
[0176] According to the singular value decomposition formula, we can get:
[0177]
[0178] Among them, Σ ff is the future matrix F k The covariance matrix, Σ pf is the history matrix P k and the future matrix F k The covariance of pp is the historical dataset P k The covariance matrix of , V is the right singular vector orthogonal basis, U is the left singular vector orthogonal basis, and Σ is the eigenvector matrix.
[0179] We can get:
[0180] Σ=Σ pf (20)
[0181]
[0182] Step 3-3-4: Data obtained by canonical correlation analysis
[0183]
[0184] k∈(1,m) is the number of input data at the current moment, and m is the total number of input data. Substituting k from 1 to m into formula (21), the characteristic data Y3 obtained through the typical association analysis is obtained;
[0185] The output of the centralized matrix Z after the canonical correlation analysis method is the characteristic data Y3, the characteristic vector matrix Σ and the right singular vector orthogonal basis V.
[0186] Step 4: Build and train an industrial process fault detection network
[0187] Step 4-1: Build an industrial process fault detection network
[0188] A three-channel convolutional neural network is constructed as the model of the industrial process fault detection network of the present invention. The structure of the three-channel convolutional neural network model is as follows: Figure 2 As shown in the figure, it includes PCA channel, ICA channel, and CCA channel. The convolution kernels of PCA channel, ICA channel, and CCA channel are the same, so the three channels are equivalent. Each channel consists of four layers: the first layer consists of 16 2x2 convolution kernels with a stride of 1, padding of 1, activation function of ReLU, and output of 16x4x4; the second layer consists of 32 2x2 convolution kernels with a stride of 1, padding of 0, activation function of ReLU, and output of 32x3x3; the third layer consists of 16 2x2 convolution kernels with a stride of 1, padding of 0, activation function of ReLU, and output of 16x2x2; the fourth layer is a fully connected layer, which flattens the 16x2x2 data to 32 dimensions. The input feature data are passed through the PCA channel, ICA channel and CCA channel respectively to obtain 32-dimensional data. The 32-dimensional data of the three channels are connected and then passed through a fully connected layer to output 32-dimensional data. Finally, the output layer outputs 7 types of data, i.e., classification results from 0 to 6. The classification result 0 is normal, and other faults are labeled as shown in Table 4.
[0189] Wherein, the activation function is: ReLU(x)=max(0,x) (23).
[0190] Step 4-2: Model training
[0191] The 31,700 sample data obtained in step 1 and their corresponding labels are divided into a training set and a test set according to an 8:2 ratio, and the normal data and abnormal data are distributed in the training set and the test set according to an 8:2 ratio. The resulting training set has 25,360 sample data and the test set has a total of 6,340 sample data.
[0192] First, the training set is preprocessed according to step 2 to obtain the centralized matrix Z train , and save the mean value of each column of the training set as the trained column mean matrix Z mean =[z mean_1 ,z mean_1 ,…,z mean_53 ], and then extract features:
[0193] 1) Centralized matrix Z train Obtain the eigenvector matrix A through the principal component analysis method in step 3-1, take the first 9 rows of the eigenvector matrix A and save it as the trained eigenvector matrix A9, and output the eigendata Y1=A9Z train ;
[0194] 2) Centralized matrix Z train Obtain the vector matrix through the independent component analysis method in step 3-2 Take the number of vectors r = 9 and save it as the trained vector matrix Output feature data
[0195] 3) Centralized matrix Z train Through step 3-3, the eigenvector matrix Σ and the right singular vector orthogonal basis V are obtained by the canonical correlation analysis method. Then, the dimension is set to n = 9, and the first 9×9 diagonal matrix Σ9 of the eigenvector matrix Σ (i.e., the trained eigenvector matrix Σ9) and the first 9×9 diagonal matrix V9 of the right singular vector orthogonal basis V (i.e., the trained right singular vector orthogonal basis V9) are saved. Equation (21) is updated as follows:
[0196]
[0197] Among them, p k is the centered matrix Z train In the k-th row, substitute k from 1 to 25360 into formula (23) and output feature data Y3.
[0198] The feature data Y1 of the training set obtained above is input into the PCA channel, the feature data Y2 is input into the ICA channel, and the feature data Y3 is input into the CCA channel for model training. The learning rate is set to 0.001 and the loss function is the cross entropy loss. All data in the training set are trained once as one epoch. 100 epochs are trained and the model trained in each epoch is saved. A total of 100 models are saved. The model output is the classification label corresponding to each sample data in the training set, where label 0 represents normal data and labels 1-6 represent fault data.
[0199] Step 4-3: Model testing
[0200] First, the test set is centered according to step 2: the input test set is constructed into an m-row original matrix Z src , the original matrix Z src Each column of is subtracted from the trained column mean matrix Z saved in step 4-2 mean , that is, the original matrix Z of the test set src Subtract z from the first column mean_1 , and so on, we get the centralized matrix Z test, and then perform feature extraction:
[0201] 1): The centralized matrix Z test By principal component analysis, the trained eigenvector matrix A9 is used to calculate the feature data Y1_test=A9Z test ;
[0202] 2): The centralized matrix Z test Through independent component analysis and using the trained vector matrix Calculating feature data
[0203] 3): The centralized matrix Z test The characteristic data Y3_test is calculated by using the canonical correlation analysis method and the trained eigenvector matrix Σ9 and the trained right singular vector orthogonal basis V9:
[0204]
[0205] Among them, p k is the centered matrix Z test In the k-th row, substitute k from 1 to 6340 into formula (23) and output the feature data Y3_test.
[0206] The feature data Y1_test extracted above is used as the input of the PCA channel, the feature data Y2_test is used as the input of the ICA channel, and the feature data Y3_test is used as the input of the CCA channel. The test set is input into the 100 models saved in step 4-2 for testing respectively, and the F1 score of the test of each model is obtained. The model with the highest score is taken and saved as an industrial process fault detection network that can be used online.
[0207] The calculation method of F1 score is:
[0208]
[0209] Where α is a parameter, taking α=1, we get the F1 index, P is the precision, and R is the recall:
[0210]
[0211]
[0212] Among them, TP represents the number of positive classes predicted as positive classes, TN represents the number of negative classes predicted as negative classes, FN represents the number of negative classes predicted as positive classes, and FP represents the number of positive classes predicted as negative classes.
[0213] Step 5: Online processing of industrial process fault detection and early warning
[0214] Online processing differs from offline processing. Offline processing involves training a model offline using saved data, a process known as model building. Online processing, on the other hand, involves actual application. The effectiveness of this model was verified using the ammonium bisulfite production process at a chemical plant. Data from the ammonium bisulfite production process was obtained, and then, based on the correlation matrix and model trained in Step 4, the classification labels for the ammonium bisulfite production process data were output. The corresponding fault "Description" column was obtained by querying the "Classification" column in Table 4.
[0215] Step 5-1: Use the OPC UA protocol to acquire real-time process data from ammonium bisulfite production. Since the factory already has sensor equipment, only OPC UA is needed to acquire process data. The collected real-time process data has the same dimensionality as the TE process in Step 1: 53 dimensions, for a total of 5,000 data items.
[0216] Step 5-2: The online processing method is the same as that of the test set, and all participating operation matrices are derived from the training set calculation.
[0217] First, the collected real-time process data is centralized according to step 2: the input real-time process data is used to construct an m-row original matrix Z src , the original matrix Z src Each column of is subtracted from the trained column mean matrix Z saved in step 4-2 mean , that is, the original matrix Z of real-time process data src First column subtracted column mean matrix z mean_1 , and so on, we get the centralized matrix Z o , and then perform feature extraction:
[0218] 1) The centralized matrix Z O By using the principal component analysis method and the trained eigenvector matrix A9, the feature data Y1_online=A9Z is calculated. O ;
[0219] 2) The centralized matrix Z O Through independent component analysis and using the trained vector matrix Calculating feature data
[0220] 3) The centralized matrix Z O The characteristic data Y3_online is calculated by using the canonical correlation analysis method and the trained eigenvector matrix Σ9 and the trained right singular vector orthogonal basis V9:
[0221]
[0222] Among them, p kis the centered matrix Z o In the k-th row, substitute k from 1 to 5000 into formula (23) and output the feature data Y3_online.
[0223] Step 5-3: The extracted feature data Y1_online is used as the input of the PCA channel, the feature data Y2_online is used as the input of the ICA channel, and the feature data Y3_online is used as the input of the CCA channel. These are respectively input into the online industrial process fault detection network obtained in step 4 to infer the classification labels of the ammonium bisulfite production process data.
[0224] Step 5-4: If the classification label indicates an abnormal inference result, i.e., the judgment label is not 0, the current data, i.e., the 53-dimensional data of the original collected ammonium bisulfite production process data, is labeled abnormal and stored in the database. If the classification label indicates a normal inference result, i.e., the judgment label is 0, the data is labeled normal and stored in the database.
[0225] Experiment 1:
[0226] To verify the effectiveness of the present invention and reduce the impact of different data on the final analysis results, the experimental data in Example 1 were uniformly used for training and testing. The training set contained 25,360 data items and the test set contained 6,340 data items, which are consistent with the data sets and test sets used in the offline modeling phase. The test machine was a MacBook Pro 2020M1 with 16G memory. Three solutions were selected for comparison:
[0227] 1) Detection based on principal component analysis PCA:
[0228] By using principal component analysis, the input training set data is reduced in dimension, according to T 2 The statistics are used to set the threshold, and data exceeding the threshold is considered abnormal:
[0229]
[0230] in, is a probability with A and nA degrees of freedom and a confidence level of The critical value of the F distribution, A represents the dimension after PCA processing, n represents the original dimension, let Methods to derive threshold values for testing;
[0231] 2) Using conventional convolutional neural network CNN
[0232] The matrix Z that centers the training set data train Directly input the convolutional neural network CNN to perform network training, thereby obtaining a trained fault warning model;
[0233] 3) Single-channel convolutional neural network
[0234] The processing steps are exactly the same as those in this method, only one PCA channel is retained, and the other two channels are deleted. Figure 2 The final model diagram is as follows Figure 3 shown.
[0235] 4) The method described in Example 1;
[0236] The test results of the four methods using the test set were statistically analyzed for F1 index and processing time in seconds per 10,000 records. The final results are shown in Table 5:
[0237] Table 5: Comparative test results
[0238]
[0239]
[0240] The results clearly show that the present invention achieves the highest accuracy. Method 1, which uses PCA for prediction, is quick but has low accuracy. The advantage of this method is that, compared to traditional networks, it reduces data dimensionality, computational complexity, and computational time during the construction of a three-channel network. Compared to methods 1 and 3, which both have lower computational complexity, this method effectively improves the accuracy of multiple fault detections.
[0241] Finally, it should be noted that the above examples are merely specific embodiments of the present invention. Obviously, the present invention is not limited to the above examples and is subject to numerous variations. All variations that can be directly derived or conceived by a person of ordinary skill in the art from the disclosure of the present invention are considered to be within the scope of protection of the present invention.
Claims
1. A data-driven industrial process fault detection method, characterized in that : The process included is as follows: S01. Obtain the process data of industrial production. The dimension of the process data is 53 and the total number of entries is m. Then construct the original matrix Z of the process data with m rows and 53 columns. src , the original matrix Z of process data src Each column of the trained column mean matrix Z is subtracted mean , get the centralized matrix Z o ; S02, the centralized matrix Z o Input principal component analysis and use the trained eigenvector matrix A9 to calculate the feature data Y1_online=A9Z O ; The centralized matrix Z o Input independent component analysis and use the trained vector matrix Calculating feature data The centered matrix Z o Input the canonical correlation analysis method and use the trained eigenvector matrix Σ9 and the trained right singular vector orthogonal basis V9 to calculate the feature data Y3_online: Among them, p k is the centered matrix z o kth row of ; k∈(1,m) is the number of process data at the current moment, and after substituting k from 1 to m into formula (23) in sequence, the characteristic data Y3_online is obtained; Σ pp is the historical dataset P k The covariance matrix of The trained column mean matrix Z mean , eigenvector matrix A9, vector matrix The process of obtaining the eigenvector matrix Σ9 and the right singular vector orthogonal basis V9 is: 1) Software simulation is performed on Tennessee Eastman's process data to obtain sample data and label them. Normal data is labeled 0, and abnormal data is labeled 1-6. The sample data and its corresponding labels are divided into training and test sets in an 8:2 ratio. 2) After pre-processing the training set, the centralized matrix Z is obtained train , and save the mean value of each column of the training set as the trained column mean matrix z mean =[z mean_1 ,z mean_2 ,...,z mean_53 ]; 3) Centralized matrix Z train Obtain the eigenvector matrix A through principal component analysis, take the first 9 rows of the eigenvector matrix A and save them as the trained eigenvector matrix A9, and output the eigendata Y1=A9Z train ; 4) Centralized matrix Z train Obtaining vector matrix through independent component analysis Take the number of vectors r=9 and save it as the trained vector matrix Output feature data 5) Centralized matrix Z train The eigenvector matrix Σ and the right singular vector orthogonal basis V are obtained by the canonical correlation analysis method, and then the dimension is set to n=9. The first 9×9 diagonal matrix of the eigenvector matrix Σ is saved as the trained eigenvector matrix Σ9 and the first 9×9 diagonal matrix of the right singular vector orthogonal basis V is saved as the trained right singular vector orthogonal basis V9. k is substituted from the first to the last item in the training set into formula (23) to output the feature data Y3: S03. The industrial process fault detection network includes a three-channel convolutional neural network of PCA channel, ICA channel and CCA channel. The feature data Y1_online is used as the input of the PCA channel, the feature data Y2_online is used as the input of the ICA channel, and the feature data Y3_online is used as the input of the CCA channel. They are respectively input into the industrial process fault detection network to infer the classification labels of the process data. If the classification label is 1-6, the inference result is abnormal, and the data is marked with the abnormal label and stored in the database; if the classification label is 0, the inference result is normal, and the data is marked with the normal label and stored in the database.
2. The data-driven industrial process fault detection method according to claim 1, characterized in that: The process of feature extraction by principal component analysis in step S02 is as follows: S0201. Principal component analysis method to extract features: S020101. Calculate the covariance matrix C based on the input centralized matrix: Among them, Z is the function independent variable, representing the input data matrix S020102. Find the eigenvalue λ of the covariance matrix C i and the corresponding eigenvectors; S020103, the eigenvalue λ of the covariance matrix C i Arrange the values of the main diagonal from large to small, and set all other values to 0, and save them as the eigenvalue matrix Λ; set η>85%, and determine the number of selected eigenvalues r according to formula (3): S020104: The eigenvector is divided into two parts according to the corresponding eigenvalue λ. i The size is arranged in a matrix from top to bottom in descending order and saved as the eigenvector matrix A. The first k rows of the eigenvector matrix A are recorded as A k ; S020105: Feature data Y1 after principal component analysis: Y1=A k From (4) The output of principal component analysis is the feature data Y1 and the feature vector matrix A k .
3. The data-driven industrial process fault detection method according to claim 2, characterized in that: The process of feature extraction using the independent component analysis method in step S02 is as follows: S0202, Independent Component Analysis Feature Extraction S020201. Get the whitening matrix W: S020202: Get new whitened process data WITH new =WZ (6) Among them, Z is the function independent variable, representing the input data matrix; S020203: Let the number of components to be estimated be r, the number of iterations be n, initialize n=0 and select a random initial vector ω(0); S020204: Calculate ω(n+1) using the Newton iteration method according to formula (7): ω(n+1)=E{Z new g(ω(n) T Z new )}-E{g'(ω T Z new )}ω(n) (7) Among them, E represents the mean, g represents the nonlinear function, g'(ω T Z new ) represents the derivative of the function g, n is the number of iterations, and ω(n) represents the result calculated n times by the iterative method; S020205. Normalize the obtained ω(n+1) according to formula (8), and perform convergence judgment according to formula (9): If the condition of formula (9) is not satisfied, then after n=n+1, repeat step S020204 to calculate ω(n+1); ||ω(n+1)ω(n) T |-1|<e (9) Where ε is the error; If the condition of formula (9) is satisfied, when the number of converged vectors is equal to r, the independent component analysis stops and the vector matrix is obtained S020206. The feature data Y2 extracted by the independent component analysis is: The output of independent component analysis is feature data Y2 and vector matrix 4. The data-driven industrial process fault detection method according to claim 3, characterized in that: The process of feature extraction using the typical association analysis method in step S02 is as follows: S0203, Feature extraction using canonical association analysis S020301, build history vector With the historical dataset P k : Among them, h is the length of the history vector, N is the total number of data, z k The kth row of the input matrix is the centralized data, and P is recorded k The covariance matrix of pp ; S020302: Construct future vector f k With the future dataset F k : f k =[z k ,With k+1 ,...,With k+s ] T (14) F k =[f k ,f k+1 ,...,f k+N-1 ]∈R sh×N (15) Where s is the future vector length; Remember the future dataset F k The covariance matrix of ff , record the future vector f k With the future dataset F k The covariance of pf ; S020303, use the canonical correlation analysis method to make the historical data set P k and future dataset F k The data set composed of the largest correlation, the correlation coefficient matrix ρ pf Perform singular value decomposition: ρ pf =UΣV T (16) According to the singular value decomposition formula, we can get: Among them, Σ ff For the future dataset F k The covariance matrix, Σ pf is the historical dataset P k and future dataset F k The covariance of pp is the historical dataset P k The covariance matrix of , V is the right singular vector orthogonal basis, U is the left singular vector orthogonal basis, Σ is the eigenvector matrix; we can get: S = S pf (19) S020304. The characteristic data Y3 obtained by the typical association analysis method is: Wherein, y(k) represents the characteristic data obtained by the typical correlation analysis method at time k, k∈(1,m) represents the number of entries of the input centralized matrix at the current moment, and m is the total number of entries of the input centralized matrix. Substituting k from 1 to m into formula (21), the characteristic data Y3 obtained by the typical correlation analysis is obtained; The output of the typical correlation analysis method is the characteristic data Y3, the characteristic vector matrix Σ and the right singular vector orthogonal basis V.
5. The data-driven industrial process fault detection method according to claim 4, characterized in that: The industrial process fault detection network in step S03 includes a three-channel convolutional neural network with three equivalent channels, namely a PCA channel, an ICA channel, and a CCA channel; each channel includes a four-layer structure: the first layer is 16 2x2 convolution kernels, the step size is 1, the padding is 1, the activation function is ReLU, and the output is 16x4x4; the second layer is 32 2x2 convolution kernels, the step size is 1, the padding is 0, the activation function is also ReLU, and the output is 32x3x3; the third layer is 16 2x2 convolution kernels, the step size is 1, the padding is 0, the activation function is also ReLU, and the output is 16x2x2; the fourth layer is a fully connected layer; The input feature data is converted into 32-dimensional data after passing through the PCA channel, ICA channel, and CCA channel. The 32-dimensional data of the three channels are connected and then passed through a fully connected layer to output the 32-dimensional data. Finally, the classification results of 0 to 6 are output through the output layer.
6. The data-driven industrial process fault detection method according to claim 5, characterized in that: The test set constructs an original matrix Z of the test set with m rows and 53 columns src , the original matrix Z src Each column of the trained column mean matrix Z is subtracted mean , get the centralized matrix Z test , and then perform feature extraction: The centered matrix Z text By principal component analysis, the trained eigenvector matrix A9 is used to calculate the feature data Y1_test=A9Z test ; The centralized matrix Z test Through independent component analysis and using the trained vector matrix Calculating feature data The centered matrix Z text Through the canonical correlation analysis method, and using the trained eigenvector matrix Σ9 and the trained right singular vector orthogonal basis V9, we substitute k from the first to the last item in the training set into formula (23) and output the feature data Y3_test: Among them, p k is the centered matrix Z text The kth row of .
7. The data-driven industrial process fault detection method according to claim 6, characterized in that: The centralization preprocessing is to construct an original matrix Z with m rows and 53 columns from the input data. src =[z1,z2,z3,z4……,z 53 ], normalize the 53 dimensions, the operation is: Where: z i_new is the data after centralization, z i is the column vector of column i, including the data set of the same dimension, mean(z i ) represents z i The average value of the column; The centralized preprocessing output is a matrix 8. The data-driven industrial process fault detection method according to claim 7, characterized in that: The training process of the industrial process fault detection network is as follows: the feature data Y1 is input into the PCA channel, the feature data Y2 is input into the ICA channel, and the feature data Y3 is input into the CCA channel for model training, the learning rate is set to 0.001 and the loss function is the cross entropy loss; a total of 100 epochs are trained and the trained model of each epoch is saved, and a total of 100 trained industrial process fault detection network models are saved, and each model outputs the classification label corresponding to each sample data in the training set, where label 0 represents normal data and labels 1-6 represent fault data; The testing process of the industrial process fault detection network is as follows: the feature data Y1_test is used as the input of the PCA channel, the feature data Y2_test is used as the input of the ICA channel, and the feature data Y3_test is used as the input of the CCA channel. The test set is input into the 100 trained industrial process fault detection network models for testing, and the F1 score of the test of each model is obtained. The industrial process fault detection network model with the highest score is taken as the industrial process fault detection network used online.
Citation Information
Patent Citations
Multi-core correlation integration dimension-reduction based human face recognition method
CN108932501A
Bearing fault diagnosis method based on PCA_CNNS
CN112557034A