張立峰, 王 智, 吳思橙
(華北電力大學 自動化系,河北 保定 071003)
兩相流系統(tǒng)廣泛存在于自然界與工業(yè)生產(chǎn)當中,準確實現(xiàn)流型識別對石油開采、火力發(fā)電等工業(yè)領(lǐng)域的安全生產(chǎn)與穩(wěn)定運行具有重要意義[1~4],對流態(tài)的了解有助于選擇合理的控制措施來優(yōu)化產(chǎn)能,甚至緩解危險情況。實際工程應用中,常用于流型在線識別的方法有2類:一類是基于圖像確定流型,如高速攝像法、目測法、過程層析成像技術(shù)等;另一類則基于傳感器測量數(shù)據(jù)進行流型識別[5~7]。由于兩相流流動特性復雜多變,測量數(shù)據(jù)具有非線性、混沌性特點,使得依靠測量數(shù)據(jù)提取流型特征較為困難。目測法受人為主觀影響,高速攝像法受光線影響嚴重,且數(shù)據(jù)量過大[8],電阻層析成像技術(shù)(electrical resistance tomography,ERT)是過程層析成像技術(shù)的一種,具有非侵入性、非輻射等優(yōu)點,可以在不干擾流動狀態(tài)的情況下實現(xiàn)氣液兩相流的實時截面電導率分布重建,以此顯示流型。由于ERT圖像重建精度仍有待提高,直接從重建圖像判別流型存在一定的局限性與誤判,因此,本文基于ERT重建圖像序列數(shù)據(jù)特征參數(shù)并結(jié)合深度學習網(wǎng)絡,對氣液兩相流進行了流型識別研究。
近年來,機器學習的快速發(fā)展與廣泛應用為數(shù)據(jù)特征提取提供了新途徑,已有多種成熟的機器學習框架用于流型識別[9~11]。傳統(tǒng)的機器學習方法如支持向量機(support vector machine,SVM)[12]、人工神經(jīng)網(wǎng)絡(artificial neural network,ANN)[13]等雖然可以較好地處理非線性問題,但難以學習時序數(shù)據(jù)的相關(guān)性,保持時序數(shù)據(jù)的連續(xù)性對流型識別有著積極影響。循環(huán)神經(jīng)網(wǎng)絡(recurrent neural network,RNN)可以很好地對動態(tài)時序數(shù)據(jù)進行建模[14],長短期記憶(long short-term memory,LSTM)網(wǎng)絡是RNN的一種,有效解決了傳播過程中的梯度消失問題,且考慮到了輸入數(shù)據(jù)的長期依賴關(guān)系,門控循環(huán)單元(gated recurrent unit,GRU)網(wǎng)絡相比于LSTM網(wǎng)絡結(jié)構(gòu)更加簡單,訓練參數(shù)更少,且能達到相同的效果[15]。CNN是一種典型的具有深度結(jié)構(gòu)的神經(jīng)網(wǎng)絡,已廣泛用于計算機視覺、語音識別等方面[16],相對于淺層神經(jīng)網(wǎng)絡能更好的提取輸入數(shù)據(jù)特征,可以在一定程度上提高流型識別精度。文獻[17]基于魯棒正則化極限學習機提出一種電容層析成像圖像重建方法,明顯提升了圖像質(zhì)量。
為提高流型識別準確率,本文提出了一種基于卷積神經(jīng)網(wǎng)絡與門控循環(huán)單元(convolutional neural network and gated recurrent unit,CNN-GRU)的垂直管道氣液兩相流流型識別方法?;跀?shù)字化ERT系統(tǒng)的重建圖像像素值數(shù)據(jù),對其填充處理后進行離散余弦變換(discrete cosine transform, DCT)變換,提取DCT系數(shù)矩陣統(tǒng)計信息,并通過CNN進一步提取特征,有效簡化了分類器的輸入特征復雜度。通過分析輸入向量長度對網(wǎng)絡性能的影響,確定了最佳輸入幀數(shù),采用實驗數(shù)據(jù)對CNN-GRU網(wǎng)絡進行訓練后,網(wǎng)絡對測試集分類準確率可以達到99.40%。本文提出的方法具有分類準確率高且算法簡單的特點。
DCT變換是一種實數(shù)域正交變換,常用于圖像壓縮,可以有效剔除圖像的冗余信息,將圖像信息從時域轉(zhuǎn)換到頻域,便于提取主要特征。
對于一幅大小為M×N,各點像素值為f(i,j)的圖像,其二維DCT變換如下:
(1)
變換后的圖像能量分布發(fā)生了變化,大部分能量集中在少量的DCT系數(shù)上,這有利于特征提取。
CNN通過感受野與權(quán)值共享,不僅考慮到了輸入數(shù)據(jù)的空間信息,還減少了網(wǎng)絡參數(shù)數(shù)量,在高效提取數(shù)據(jù)內(nèi)部信息的同時,降低了模型的復雜程度。CNN主要由卷積層、池化層及全連接層組成,如圖1所示。
圖1 CNN結(jié)構(gòu)圖Fig.1 CNN structure
本文選取一定幀數(shù)的差值序列作為網(wǎng)絡輸入,因此用到的卷積層結(jié)構(gòu)為一維卷積,且選用ReLU函數(shù)作為激活函數(shù)。
RNN網(wǎng)絡具有記憶能力與動態(tài)特性,循環(huán)單元的引入使其適用于處理時序數(shù)據(jù)。LSTM解決了RNN網(wǎng)絡的梯度消失問題,GRU是對LSTM的改進形式,減少了訓練參數(shù),能夠在保證預測精度的同時提高網(wǎng)絡效率,GRU結(jié)構(gòu)如圖2所示。
圖2 GRU結(jié)構(gòu)圖Fig.2 GRU structure
GRU包含更新門ri與重置門zi。更新門用于控制上一時刻狀態(tài)信息保留到當前狀態(tài)中的程度,其值越大表明保留的信息越多;重置門控制當前狀態(tài)信息與上一時刻信息的結(jié)合程度,其值越小表明忽略的信息越多。圖2中,σ、tanh為激活函數(shù)Sigmoid函數(shù)與tanh函數(shù),xi為GRU單元的輸入,hi為GRU單元的輸出。
zi=σ(W(z)xi+U(z)hi-1)
(2)
ri=σ(W(r)xi+U(r)hi-1)
(3)
(4)
式中:W(z)、W(r)、W、U(z)、U(r)、U為網(wǎng)絡的可訓練參數(shù)矩陣。
圖3 流型辨識步驟Fig.3 Flow pattern identification steps
圖4 CNN-GRU網(wǎng)絡結(jié)構(gòu)Fig.4 CNN-GRU network structure
對模型中每1層的描述如下:
1) 輸入層。選取一定幀數(shù)的差值序列作為CNN-GRU網(wǎng)絡輸入,用X=[x1,x2,…,xn]表示。
2) CNN層。CNN層對輸入數(shù)據(jù)進行特征提取,這里選用3個卷積層、2個池化層與1個全連接層構(gòu)成CNN框架。卷積層均采用大小為3的卷積核,卷積步長為1,激活函數(shù)為ReLU。2個池化層均為最大池化,采用步長為3、池化核為3的不重疊下采樣。全連接層激活函數(shù)選定為Sigmoid函數(shù)。CNN層的輸出Hc計算過程為:
C1=f(X?W1+b1)=
ReLU(X?W1+b1)
(5)
C2=f(C1?W2+b2)=
ReLU(C1?W2+b2)
(6)
P1=max(C2)
(7)
C3=f(P1?W3+b3)=
ReLU(P1?W3+b3)
(8)
P2=max(C3)
(9)
Hc=f(P2×W4+b4)=
Sigmoid(P2×W4+b4)
(10)
式中:C1、C2、C3分別為3個卷積層的輸出;P1、P2分別為2個池化層輸出;W1、W2、W3、W4為權(quán)值矩陣;b1、b2、b3、b4為神經(jīng)元偏置;max()為最大值函數(shù);?為卷積運算。
3) GRU層。GRU層對提取出的特征進行學習,揭示其內(nèi)部特征隨時間變化的規(guī)律。GRU層框架由兩層GRU單元組成,激活函數(shù)均選用tanh函數(shù),循環(huán)步驟激活函數(shù)選用Sigmoid函數(shù),第2層采用0.2的概率丟失輸出,防止網(wǎng)絡過擬合。t時刻時GRU層的輸出計算如下:
H1=GRU(Hc,t-1,Hc,t),t∈[1,T]
(11)
H2=GRU(H1,t-1,H1,t),t∈[1,T]
(12)
式中:H1、H2為GRU層1、2的輸出;T為時間序列長度。
4) 輸出層。輸出層的輸入為GRU層輸出,通過全連接實現(xiàn)流型識別。激活函數(shù)采用Softmax函數(shù)。
在華北電力大學先進測量實驗室的可移動氣水兩相流實驗裝置上進行實驗操作。圖5為實驗裝置示意圖。
圖5 實驗裝置示意圖Fig.5 Schematic of experimental device
通過空氣壓縮機將氣體壓縮至儲氣罐內(nèi),依靠穩(wěn)壓閥維持氣相壓力穩(wěn)定。調(diào)整閥門開度改變氣相、液相流速,水氣混合后可以在試驗段觀測到流動狀態(tài)。水箱、水泵與管道系統(tǒng)構(gòu)成水循環(huán)回路。
試驗段管道內(nèi)徑為50 mm,安裝16電極ERT陣列傳感器,通過數(shù)字化ERT系統(tǒng)將采集的模擬量轉(zhuǎn)換為數(shù)字量,連接計算機并進行圖像重建。ERT系統(tǒng)內(nèi)置算法設置為等位線反投影算法,該算法可以快速成像,這是保證流型識別實時性的前提,圖6為ERT重建圖像,每幅圖像包含812個像素點。
圖6 ERT系統(tǒng)成像Fig.6 ERT system imaging
調(diào)整氣相、液相流速,得到4種流型。每種流型采集10 000幀(120幀/s)圖像,從計算機導出圖像像素值。圖7(a)~圖7(d)分別為泡狀流、泡狀-彈狀過渡流型、彈狀流、段塞流流動圖像。
圖7 流動圖像Fig.7 Flow image
將重建圖像的812個像素填充至32×32像素,重建圖像之外的像素值填充0,得到方形圖像,才可進行DCT變換,以3種氣泡大小的流型為例,對其進行DCT變換,并將其結(jié)果使用對數(shù)比例顯示,結(jié)果如圖8所示。
從圖8中可以發(fā)現(xiàn)小氣泡圖像能量信號比較分散,原圖像中有用區(qū)域較少,隨著氣泡區(qū)域變大,能量向左上角低頻區(qū)域集中,并且由于偽影以及氣泡大小影響,DCT結(jié)果圖像的能量范圍也會有一定的變化。
圖9 不同流型變化Fig.9 Variation of under different flow patterns
對于每種流型的10 000幀ERT重建圖像,進行特征提取之后,若網(wǎng)絡輸入向量長度越大,即選取的幀數(shù)越多,則樣本數(shù)越少,為研究不同幀數(shù)的數(shù)據(jù)對CNN-GRU、CNN及GRU網(wǎng)絡性能的影響,均選取每種流型9 000個樣本,其中7 500個作為訓練集,1 500 個作為測試集。
通過改變輸入幀數(shù)長度,對網(wǎng)絡完成訓練,并采用測試集對3種網(wǎng)絡進行性能測試,4種流型平均的分類準確率影響如圖10所示。
圖10 幀數(shù)對網(wǎng)絡分類準確率影響Fig.10 Effect of frame number on network classification accuracy
從圖10可知,CNN-GRU、CNN及GRU網(wǎng)絡性能分別在輸入幀數(shù)長度大于60、65及50時趨于穩(wěn)定。持續(xù)增加輸入序列長度對網(wǎng)絡分類準確率并無太大提升,卻可因輸出維度過大而加重網(wǎng)絡負擔,使訓練參數(shù)變多,降低網(wǎng)絡性能,因此選擇GRU-CNN、CNN及GRU網(wǎng)絡的最佳輸入幀數(shù)分別為60幀、65幀及50幀。CNN-GRU、CNN及GRU網(wǎng)絡對各流型測試樣本的流型識別準確率如表1所示。
表1 流型辨識準確率Tab.1 Classification accuracy of each flow pattern (%)
從表1結(jié)果可見,CNN-GRU網(wǎng)絡的分類準確率最高。CNN-GRU網(wǎng)絡結(jié)合了2種網(wǎng)絡的優(yōu)點,相比于CNN網(wǎng)絡,GRU單元的引入可以兼顧時域數(shù)據(jù)的相關(guān)性,相比于GRU網(wǎng)絡,由于加入了卷積層,可以高效提取數(shù)據(jù)內(nèi)部特征,減少了人為主觀影響,因而有著更高的辨識能力。
泡狀流數(shù)據(jù)序列波動范圍小,其流型數(shù)據(jù)序列特點明顯,3種網(wǎng)絡框架識別準確率均可達100%;泡狀-彈狀過渡流型與彈狀流的數(shù)據(jù)集波動情況類似,CNN-GRU網(wǎng)絡對泡狀-彈狀過渡流型識別準確率可達98.60%,對彈狀流的識別準確率可達99.00%,相對于CNN,其分類準確率分別提高了0.57%及0.16%,相對于GRU網(wǎng)絡,其分類準確率分別提高了4.33%及9.58%;段塞流時數(shù)據(jù)在波動中向大數(shù)值集中更加明顯,3種網(wǎng)絡結(jié)構(gòu)也都有著較好的識別能力,CNN-GRU網(wǎng)絡識別準確率達到100%,相比于CNN及GRU網(wǎng)絡分別提高了0.27%及0.40%。綜上所述,本文構(gòu)建的CNN-GRU網(wǎng)絡流型識別準確率均高于CNN及GRU網(wǎng)絡,平均識別率可達99.40%。
本文提出了一種基于CNN-GRU的垂直管道氣液兩相流流型識別方法。該方法通過對重建圖像填充后轉(zhuǎn)換到頻域分析,提取最大DCT系數(shù)差值,選取60幀數(shù)據(jù)作為CNN-GRU網(wǎng)絡輸入,有效實現(xiàn)了流型識別。相對于直接將圖像作為網(wǎng)絡輸入的傳統(tǒng)方法,DCT處理使得提取圖像特征信息更為簡單,計算DCT系數(shù)統(tǒng)計量可以有效降低網(wǎng)絡輸入向量長度。CNN有著良好的特征提取能力,將CNN輸出作為GRU網(wǎng)絡的輸入使得分類準確率有了顯著提高。CNN-GRU網(wǎng)絡對泡狀流、泡狀-彈狀過渡流型、彈狀流、段塞流的分類準確率分別為100%、98.60%、99.00%、100%。