李冬輝,趙墨刊,高龍
(天津大學電氣自動化與信息工程學院,天津 300072)
在智能建筑中,冷水機組是制冷空調系統的主要耗能設備,冷水機組傳感器實時監測系統的運行狀況,對實現系統的最優控制和能源管理起到重要的作用.而冷水機組傳感器故障不僅會影響制冷空調系統的運行狀況,也會導致運行能耗的增加.因此冷水機組傳感器故障診斷技術的實現對于確保系統正常運行和降低系統能耗具有十分重要的意義.
近幾年來學者們對基于數據驅動的制冷空調系統傳感器故障診斷方法的研究取得了卓越成果.主成分分析(Principal Components Analysis,PCA)方法是傳感器故障診斷中比較流行的方法[1].文獻[2]首先運用經驗模態分解閾值除噪方法對原始傳感器時序數據中的噪聲進行消除,從而提高傳感器時序數據的質量,然后針對除噪后的傳感器時序數據建立PCA 模型來實現冷水機組傳感器的偏差故障診斷.但PCA 方法不能直接解決空調系統的非線性和多模態問題.其在診斷空調系統傳感器故障的問題上受到了一定限制.針對PCA 方法存在的問題,文獻[3]首先提出了核主成分分析(Kernel Princpal Compo?nent Analysis,KPCA)法.文獻[4]利用KPCA 方法提取空調系統的非線性特征來實現空調系統傳感器故障診斷.然而PCA 方法及KPCA 方法必須通過建立Q 統計量貢獻圖的方式間接的確定故障傳感器,工作量大,費時費力.
深度學習方法也是制冷空調系統傳感器故障診斷中常用方法.遞歸神經網絡(Recurrent Neural Net?work,RNN)引入了記憶單元使網絡具備了一定的記憶性,能夠處理和分析具有時間相關性的數據[5].RNN 的問題是存在梯度消失或爆炸的缺點,長短期記憶網絡[6]及GRU 解決了這個問題.文獻[7]通過利用LSTM 深度學習方法對空調系統傳感器建立傳感器故障診斷模型,從而實現對空調系統傳感器偏差故障診斷.文獻[8]通過對LSTM 的門結構進行改進和簡化來實現冷水機組傳感器偏差故障診斷.文獻[9]通過利用基于GRU 單元的編碼-解碼神經網絡對正常傳感器時序數據特征進行挖掘與提取來診斷傳感器偏差故障.
CNN 是深度學習領域中另一種廣泛應用的方法[10-13].文獻[14]利用CNN 和RNN 深度學習方法通過學習空調傳感器采集的時間序列,進而根據時間序列對溫度進行預測來實現溫度的自適應調節.文獻[15]利用一維卷積神經網絡診斷空調系統中的空氣處理單元傳感器故障,該方法利用卷積神經網絡自動提取時序數據實時特征,并使用小波聚類對其進行分析,通過表示簇對傳感器故障進行檢測和診斷.
由于冷水機組每個傳感器動態響應特性的不同造成冷水機組每個傳感器具有不同的時間相關特性,即每個傳感器當前采樣時刻的讀數都要受到過去采樣時刻讀數的影響,CNN 雖然可以自動提取時間序列實時特征,但由于其自身結構的局限性,導致CNN 難以記憶冷水機組傳感器不同的時間相關性,而具有長短期記憶能力的GRU 能夠實現對傳感器不同時間相關性的記憶,并且在GRU 中加入CNN 也增加了深度學習網絡對時間序列實時特征的提取能力并通過降低參數數量減少了運算量.因此本文針對冷水機組傳感器偏差故障識別率低的問題提出一種基于CNN-GRU 融合網絡模型的冷水機組傳感器偏差故障診斷方法,并且以壓縮式冷水機組為研究對象,通過大量的實驗與對比分析驗證了本文所提方法的有效性.
CNN 和GRU 網絡是深度學習中兩種常見的網絡.與淺層學習相比,深度學習能夠實現數據的逐層轉換,保證了最有效的特征表達和信息提取.
CNN 模型采用權重共享和局部連接的方式,通過對原始數據進行逐層的特征提取,能夠有效自動提取數據內部中的更高級更抽象的特征[16].如圖1所示,一般CNN 是由輸入層、卷積層、池化層和全連接層構成的.

圖1 CNN基本結構Fig.1 Basic structure of CNN
GRU網絡的基本結構見圖2,其公式見式(1).

圖2 GRU隱含層細胞結構Fig.2 Cell structure of the hidden layer of GRU
GRU[17]網絡由更新門和重置門構成.在時間序列處理任務中,GRU 能夠記憶各個傳感器不同的時間相關性.

圖2 與式(1)中,xt為當前時刻的輸入向量;ht和ht-1分別為當前時刻和上一時刻的狀態記憶變量;rt、zt分別為重置門狀態、更新門狀態;為當前時刻候選集狀態;Wr、Wz和Wh表示可訓練權重參數矩陣;I表示單位矩陣;·表示矩陣點乘;[]表示向量連接;×表示矩陣乘積;σ表示sigmoid 激活函數.tanh 與sig?moid的表達分別見式(2)和式(3):


冷水機組傳感器時間序列是高度時間相關性的時序數據.傳統方法提取高維時間序列潛在特征的能力有限,從而影響偏差故障診斷效果.CNN-GRU融合網絡模型利用CNN 其特殊的卷積-池化運算,可以自動挖掘出時間序列的實時特征,為提高傳感器偏差故障診斷精度奠定基礎;GRU 神經網絡具有獨特的門結構,能夠記憶冷水機組因每個傳感器動態響應特性不同造成的其每個傳感器不同的時間相關性,從而充分對時序進行表征建模,進而實現冷水機組傳感器偏差故障診斷.
圖3為CNN-GRU 融合網絡模型具體結構,其包括輸入層、CNN 網絡層與GRU 網絡層和輸出層.其每層描述如下:

圖3 CNN-GRU融合網絡模型結構Fig.3 Structure of CNN-GRU fusion network model
輸入層:輸入層將冷水機組傳感器采集的時間序列經歸一化處理后作為CNN-GRU 融合網絡模型的輸入,如公式(4)所示:

CNN層:CNN層對輸入數據進行特征提取,本文采用Valid 卷積方式并將卷積操作后輸出進行批量標準化操作[18],再與偏置相加通過Relu 函數計算后作為卷積層的輸出.Relu函數公式為:

池化層采用最大池化和Valid 池化方式.卷積池化見式(6):

其中y、Ci和Pi分別表示經BN 操作后的輸出矩陣、卷積層i的輸出和池化層i的輸出,1≤i≤3,且i為整數;P1*和P2*是分別對P1和P2里所有的特征圖相加求平均值;W1、W2和W3為權重矩陣;b1、b2、b3、b4、b5和b6為偏置項;*和Maxpool()分別為卷積運算和最大值池化函數.
GRU層:將卷積得到的高維抽象特征矩陣,經過reshape 函數處理后作為三層GRU 網絡的輸入,re?shape函數表達式為:

其含義為將A矩陣重構成與A元素相同的多維數組B,其維數由向量size來決定.
該文對卷積層的輸出重構為二維特征矩陣,維數為a×b,第sam 個樣本經CNN 輸出后再reshape 后的矩陣用向量表示為:


將b個維數為a的特征向量輸入到三層GRU中,得到輸出h3b.
輸出層:輸出層的輸入為上一層的輸出h3b,輸出通過全連接層和softmax計算輸出的概率值.
softmax公式表示為:

式中:xi表示第i個節點的輸出值,n為輸出節點個數,g(xi)表示第i個元素屬于第i個類別的概率值,1≤i≤n.
表1 為傳感器的故障類型及表征方法.本文主要診斷11 種冷水機組傳感器的偏差故障.因為冷水機組系統中多個傳感器同一時刻發生故障的概率非常小,所以本文只針對同一時刻至多有一個故障傳感器的情況進行研究.將每一種傳感器偏差故障對應一類標簽,本文的表征方式為:在發生偏差故障的傳感器對應位置上標1,其余位置都標0.本文標簽為診斷11 種傳感器偏差故障再加上正常情況總共分為12類.

表1 故障類型及表征方法Tab.1 Fault types and characterization method
圖4為偏差故障診斷流程圖,其具體步驟如下:

圖4 偏差故障診斷流程Fig.4 Deviation fault diagnosis process
1)冷水機組實驗平臺持續采集不同負荷下正常運行的傳感器時間序列,去除掉異常數據,建立傳感器數據集,并將數據集分割成n+1 等份,其中n為傳感器個數,將n個數據集隨機對應n個傳感器,剩下一份作為正常樣本;
2)將這n+1 份數據集的每一份都拆分為訓練、測試和驗證樣本:隨機在每份數據集中選取70%和20%的連續樣本分別作為訓練樣本和測試樣本,10%作為驗證樣本,用于驗證該方法的泛化能力;
3)對第i份數據集的訓練樣本和測試樣本的第i個傳感器時序上分別隨機模擬加入超出誤差允許范圍的一定大小偏差故障,其中1≤i≤n,i為整數;
4)由于不同傳感器的讀數具有不同的量綱,將步驟3 處理過的n+1 份數據集按照均值為0、方差為1進行歸一化處理;
5)設置主要參數的初始值.其包括輸入輸出的維數、CNN的參數、GRU的參數、權重、學習速率等參數的初始值;
6)將訓練樣本輸入到模型中進行模型訓練.選用交叉熵損失函數并選用自適應矩估計算法進行反向傳播,優化權重和偏置項.損失函數表達式為:

式中:y和表示模型預測的概率分布和實際的概率分布.
7)當k>kmax,終止訓練并保存模型,否則返回步驟6,其中kmax=5,k表示當前輸出準確率連續高于歷史輸出最高準確率的次數;
8)將測試樣本輸入到訓練好的模型中進行冷水機組傳感器偏差故障診斷.
本文在圖5 所示的壓縮式冷水機組實驗平臺持續采集無故障的傳感器時序數據.該研究通過利用水箱中的電加熱管對水箱溫度進行調節來改變冷水機組的負荷,從而得到冷水機組在不同負荷下的時序數據.接下來進行數據采集,首先開啟實驗設備使其正常工作,上位機軟件讀取冷水機組每個傳感器時間序列.設備正常工作1 000 h,采樣周期為2 min,并通過數據清理的方法來對所采集的數據進行預處理,獲得了28 594組樣本數據.將樣本數據按照采集順序分為12等份,然后將12份樣本數據分別隨機匹配11 種傳感器和1 種正常情況.對每一份樣本數據都隨機選擇其中70%和20%的連續樣本數據分別作為訓練樣本和測試樣本,剩下的10%作為驗證樣本用于對診斷模型的性能進行評估.依據每個傳感器的精度不同,本文給出了對第i份樣本數據的訓練樣本和測試樣的第i個傳感器數據分別模擬偏差故障的情況,其中1≤i≤n,i為整數.如表2 和表3 所示.最后對訓練樣本和測試樣本進行歸一化處理.
網絡模型的參數選取,首先將各個參數都分別設置為幾個不同的取值,從每個參數中選取的每一個預設值分別組合在一起,然后再分別進行傳感器故診斷測試實驗,最終找到所有參數組合中偏差故障識別率最高的網絡參數組合作為本文所選定的參數.具體參數如下:輸入維度為11×20(n×T),三層卷積核和三層池化核尺寸大小分別設為3×3 和2×2;三層卷積核的數量分別為64、128、128;卷積步長和池化步長分別設為1;三層GRU 的輸入為128 個22 維向量;全連接維度為12×45;學習速率為0.001;drop?out=0.5;batch size=64.
5.2.1 偏差故障識別率實驗及分析
將加入偏差故障的測試集數據輸入到訓練好的模型中測試模型性能,該方法的實驗結果如圖6、表4-5和圖7、表6-7所示.

圖7 壓力類傳感器在不同程度偏差故障下的故障識別率分布Fig.7 Distribution of deviation fault recognition rate of pressure sensors under different degrees of deviation fault

表4 T1、T5、T6和T7在不同偏差故障的故障識別率Tab.4 The fault identification rate of T1,T5,T6 and T7 at different deviation faults

表5 T2、T3和T4在不同程度偏差故障下的故障識別率Tab.5 Fault recognition rates of T2,T3 and T4 with different degrees of deviation

表6 P1和P4在不同程度偏差故障下的故障識別率Tab.6 Fault recognition rates of P1 and P4 in different deviation faults

表7 P2和P3在不同程度偏差故障下的故障識別率Tab.7 The fault recognition rate of P2 and P3 under different deviation faults

圖6 溫度類傳感器在不同程度偏差故障下的故障識別率分布Fig.6 Distribution of deviation fault recognition rate of temperature sensors under different degrees of deviation fault
1)本文所提方法對于同一傳感器、故障大小互為相反數的偏差故障的故障識別率均具有良好的對稱性;
2)由圖6和表4-5可知,采用本文所提方法診斷溫度類傳感器偏差故障時,對于偏差故障大小為±1.2 ℃、±0.9 ℃(針對T1、T5、T6 和T7)和±2.5 ℃、±2 ℃(針對T2、T3和T4),各個傳感器的偏差故障識別率均在97%以上;對于偏差故障大小±0.6 ℃、±0.3 ℃(針對T1、T5、T6 和T7)和±1.5 ℃、±1 ℃(針對T2、T3和T4),各個傳感器的偏差故障識別率均可達到85%以上;
3)由圖7和表6-7可知,采用本文所提方法診斷壓力類傳感器偏差故障時,對于偏差故障大小為±0.08 MPa、±0.065 MPa、±0.05 MPa(針對P1 和P4)和±0.1 MPa、±0.09 MPa、±0.08 MPa(針對P2 和P3),各個傳感器的偏差故障識別率基本上都達到或接近100%;對于偏差故障大小為±0.035 MPa(針對P1 和P4)和±0.07 MPa(針對P2 和P3),各個傳感器的偏差故障識別率均在90%以上.
5.2.2 泛化能力實驗及分析
為了驗證本文已保存好的網絡模型的泛化性能,本文以節流前溫度傳感器T4 為例,對前文提到的10%驗證樣本,隨機加入不同數量的±0.9 ℃、±1.4 ℃、±1.9 ℃和±2.4 ℃大小的偏差故障并進行歸一化處理,輸入到該網絡中進行泛化能力的驗證,診斷結果見表8.
由表8 得出,T4 的偏差故障識別率均在83%以上;偏差故障識別率能保持較好的對稱性.因此該方法具有良好的泛化性能.

表8 T4在不同程度偏差故障下的故障識別率Tab.8 Fault recognition rates of T4 under different deviation faults
將CNN、PCA 與自動編碼器(Autoencoder)方法和該方法進行對比.3 種方法的設置參數如下:CNN輸出端選用全連接層和softmax 進行12 種偏差故障標簽分類,其他參數與CNN-GRU 所提方法所選參數相同;將Q 統計量作為PCA 的偏差故障診斷標準,將Q 的閾值設置為3.065 2,累計貢獻率設置為88%,主成分數設置為6 個;自動編碼器采用兩層編碼網絡,將節點設置為10、5,輸出端選用softmax 進行分類.該文選擇T5 進行分析對比,實驗結果見圖8 和表9.

圖8 不同程度偏差故障下4種方法對T5的故障識別率分布Fig.8 Distribution of deviation fault recognition rate of four methods for T5 under different degreesof deviation fault
從圖8 和表9 中可以看出,T5 對于±1.2 ℃和±0.9 ℃的偏差故障,CNN-GRU 方法與CNN 方法的偏差故障識別率都接近或達到100%,自動編碼器方法的偏差故障識別率高于80%,但PCA 方法就本實驗而言正向偏差故障識別率要優于負向偏差的故障識別率;對于±0.6 ℃的偏差故障,CNN-GRU 方法和CNN 方法的偏差故障識別率分別超過95%和80%,PCA 方法以及自動編碼器方法的偏差故障識別率均低于20%;對于±0.3 ℃的偏差故障,CNNGRU 方法和CNN 方法的偏差故障識別率分別超過90%和50%,PCA 方法和自動編碼器方法此時均失效;相比于其他3 種方法,CNN-GRU 方法對于很小的偏差故障的識別率具有更明顯的優勢;本文所提方法對于T5 的偏差故障識別率具有較好的對稱性,其他3種方法都不具有較好的對稱性.

表9 不同程度偏差故障下4種方法對T5的故障識別率Tab.9 Deviation fault identification rate of T5 by four methods under different degrees of deviation fault
1)本文方法對于溫度類傳感器的偏差故障識別率均在85%以上;對于壓力類傳感器的偏差故障識別率均在90%以上,均具有良好的診斷效果;該方法對于同一傳感器、故障大小互為相反數的偏差故障的故障識別率均具有良好的對稱性;
2)本文方法在診斷未經訓練過的傳感器偏差故障時,仍能保持較高的偏差故障識別率,因此具有良好的泛化能力;
3)相比于其他方法,本文所提方法具有更高的偏差故障識別率,尤其對于很小的偏差故障的識別率具有更明顯的優勢;
4)CNN 方法在冷水機組傳感器偏差故障診斷中僅能提取時序的實時特征,CNN-GRU 方法加入了GRU 網絡,能夠記憶冷水機組因每個傳感器動態響應特性不同造成的其每個傳感器不同的時間相關性,從而更充分地利用時間序列中的特征信息進行表征建模,進而提升了偏差故障識別率.
綜上所述,本文提出CNN-GRU 診斷方法取得了較高的偏差故障識別率.但在搭建該模型時采取手動遍歷的方式進行參數選取,缺乏理論依據.因此探尋一種行之有效的參數選取方法是接下來將要進行深入研究的側重點之一.