陳海燕, 杜婧涵, 張魏寧
(1. 南京航空航天大學計算機科學與技術學院, 江蘇 南京 211106; 2. 軟件新技術與產業化協同創新中心, 江蘇 南京 211106)
隨著物聯網技術的快速發展,大規模遠程監測被廣泛地應用于各行各業。各種監測系統一般由大量傳感器節點所構成,能夠完成實時數據的采集并將數據傳送到終端。由于硬件設備自身的局限,監測點失效或數據采集錯誤的現象時有發生,導致無法獲取某區域的真實數據。因此,在監測點失效期間,如何通過軟件的方法對監測數據進行修復(填補、補全)成為一個值得關注的問題[1]。
近年來,國內外學者們對監測數據修復(填補、補全)的研究不斷深入,取得了一些可以借鑒的成果。文獻[2]針對歷史質量數據集中缺失數據對軟件質量評估的影響,提出了基于灰色關系分析的K最近鄰(K-nearest neighbor,KNN)數據補全算法。通過灰色關系分析尋找KNN的最優參數,緩解了KNN對K值敏感的問題,進而提高了軟件質量評估精度;然而由于歐氏距離度量方式的局限性,補全算法的穩定性還有待提高。文獻[3]通過構建一種基于屬性的決策圖,進而建立基于屬性重要度的數據補全模型。在將分類問題作為評估標準的標準數據集中,該補全模型效果較好;由于該方法對數據質量要求較高,在含噪聲較多的實際應用場景中無法達到令人滿意的補全效果。文獻[4]基于多維度相似性并考慮順序敏感的填補情況,提出了面向多元感知數據且順序敏感的缺失值填補框架,較好地解決了在缺失數據較為密集的情況下填補準確性難以保證的情況。文獻[5]提出利用高斯混合模型和極限學習機預測模型,設計一種缺失數據多重填補方式的策略。在多個標準數據集中都對缺失數據取得了較好的預測精度。文獻[6]提出基于支持向量機的缺失數據插補算法,利用周圍監測點數據預測缺失數據。預測模型較好地解決了無線傳感器網絡中傳感器節點數據收集過程中存在的缺失問題;然而該方法在待修復數據與有效數據之間存在高度相關關系時,才具有較好的預測精度。文獻[7]提出聯合使用模糊C均值和支持向量回歸預測模型。該混合預測模型在多個標準數據集中對缺失數據達到了合理的估算,較傳統的模糊C均值預測模型和支持向量回歸模型,混合模型具有更好的穩定性。也有部分方法是結合相似性度量和回歸預測模型來進行數據修復的。文獻[8]提出基于KNN的支持向量機回歸預測模型用于無線傳感器網路中的數據異常檢測和補全,先通過KNN篩選相似度高的有效數據,根據有效數據建立回歸預測模型進而對異常數據進行補全。文獻[9]提出基于動態時間規整(dynamic time warping,DTW)相似性度量回歸預測模型,用于滾動軸承的壽命預測。通過DTW算法提取不同健康狀態下的曲線相似度,根據曲線相似度建立支持向量回歸(support vector regression,SVR)預測模型進而對軸承異常狀態的發現和預測。
由于在監測數據修復這一問題中,被挖掘的數據都是實時監測數據,往往含有大量的噪聲值,因此,對所采用的方法提出了更高的要求。深度學習近年來成為機器學習領域的研究熱點[10-12],其理論被應用于解決各種數據挖掘問題。考慮到深度學習在特征提取方面表現出的優勢以及提取相關信息對于數據修復的重要性,本文基于深度學習的思想,利用深度降噪自編碼(deep denoising auto-encoder, DDAE)網絡來挖掘數據間隱含的深層相關信息。這種相關信息一方面具有較少的冗余信息,另一方面能夠很好地反映數據間本征相關性。基于深層相關信息并結合SVR預測算法,提出一種基于DDAE網絡的異常監測點數據修復方法。

(1)

(2)

(3)
式中,hW,b(·)為輸入數據的重構函數。

圖1 DAE網絡結構Fig.1 Structure of DAE network
對于一個含有m個樣本的樣本集{x1,x2,…,xm},為了使輸出結果盡可能重構輸入數據,DAE的目標函數可表示為
(4)
為進一步降低過擬合的風險并提高網絡的泛化性,對DAE的學習參數設置了L2正則化約束,目標函數可進一步改寫為
(5)
式中,θ={W,b};W是所有連接相鄰兩層的權重;b是各層的偏置項;λ則用于度量數據重構程度和正則化約束之間的權重。
DDAE網絡[15]是由多個自編碼網絡或其變形網絡堆疊而成的深度神經網絡,采用上述DAE作為基本結構單元構造了DDAE網絡,網絡結構如圖2所示,其中,輸入層和輸出層的節點個數為數據的維數,最中間的隱含層節點個數通過本征維數估計[16]的方法來確定。

圖2 DDAE網絡結構Fig.2 Structure of DDAE network
DDAE網絡在輸出層重構輸入數據,在隱含層學到輸入數據的壓縮表示。深度學習理論認為這種壓縮表示通過學習獲得的可表征樣本集深層特征的新的表達形式。這種表達形式一方面具有較少的冗余信息,另一方面能夠有效地反映輸入數據的特性。用壓縮表示作為新的特征向量代替原始特征向量輸入到回歸模型中,在很多任務中可以大大提高預測模型的準確度和魯棒性[17-18]。
一般地,一個DDAE網絡的訓練過程分為逐層訓練和微調兩個步驟進行。
(1) 逐層訓練
初始化整個網絡參數W和b為服從標準正態分布的隨機值,采用貪婪算法來逐層訓練網絡。即先利用輸入數據訓練DDAE網絡的第一層,生成第一層網絡的參數W(1)和b(1);然后將第一層的輸出作為第二層的輸入,繼續訓練得到第二層的參數W(2)和b(2);最后對后面各層采用同樣的策略,即將前層的輸出作為下一層輸入的方式依次訓練。對于上述訓練方式,在訓練每一層參數的時候,會固定其他各層參數保持不變。為了學習到更加魯棒的特征,逐層訓練時每一層的輸入都需要加入噪聲,即以一定的概率將神經元的取值重置為0。
(2) 微調
通過反向傳播算法調整DDAE網絡的參數,即利用梯度下降法迭代更新權重,更新過程可表示為
(6)
式中,α為學習速率。當目標函數達到一定閾值即完成微調整個網絡過程。
從首都機場15個機場噪聲監測點的監測數據中隨機選取了1 000條監測數據作為網絡的訓練集,152條作為網絡的測試集。考慮到實際數據規模以及自編碼網絡的表達能力,為了對比不同自編碼網絡在重構數據性能上的差異,本文設置了3種自編碼網絡,分別是傳統的DAE網絡(15-6-15,簡稱DAE)、5層DDAE網絡(15-10-6-10-15,簡稱DDAE-5)和7層DDAE網絡(15-11-9-6-9-11-15,簡稱DDAE-7)。利用第1.2節提到的訓練方式,訓練上述3種自編碼網絡。為了分析自編碼網絡重構數據的效果,實驗對比了不同自編碼網絡的重構數據與訓練數據的相對誤差,結果如圖3所示。
從圖3中可以看出,DDAE-5網絡重構數據的效果最好,重構誤差大都在5%以內。值得一提的是,DDAE-7網絡沒有取得很好的重構效果,這可能由于訓練數據規模相比于網絡復雜度而言過小,網絡參數沒有得到充分有效的學習。而傳統DAE網絡的重構效果介于DDAE-5和DDAE-7之間。
為了檢驗上述3種自編碼網絡的泛化能力,在未參與訓練的測試集中對比了3種網絡的學習效果,其重構誤差如圖4所示。通過對比可以看出,DDAE-5在測試集中的泛化性能最好,這說明該網絡學到的隱層特征可以較好地表征輸入數據。同樣地,對于DDAE-7來說,由于在訓練階段網絡沒有得到充分的學習,導致沒有挖掘到適合輸入數據的特征表示,從而使得該網絡在測試集中的泛化性能最差。

圖3 不同自編碼網絡的訓練集重構誤差Fig.3 Reconstruction error in training set for different AE network

圖4 不同自編碼網絡的測試集重構誤差Fig.4 Reconstruction error in test set for different AE network
進一步,選取誤差平方和(sum of squares for error,SSE)作為數據重構效果好壞的定量評價指標。3種自編碼網絡在訓練集和測試集的SSE結果如表1所示。明顯地,DDAE-5在訓練集和測試集的SSE均取得了最小值,也進一步說明DDAE-5的隱層特征提取結果最好,能夠在一定程度上代替原始輸入數據。

表1 不同自編碼網絡的SSE
結合DDAE網絡的隱層特征提取方法及SVR預測算法,提出了一種新的數據修復模型,利用基于DDAE網絡的SVR預測(簡稱DDAE_SVR)算法,將預測值作為異常數據修復的結果,DDAE_SVR算法主要步驟如下。
步驟1給定樣本個數為ntr訓練樣本集Tr={(x1,y1),(x2,y2),…,(xntr,yntr)}和樣本個數為nte測試樣本集Te={(x1,y1),(x2,y2),…,(xnte,ynte)},并設置候選DDAE網絡層數M={m1,m2,…,mk}。
步驟2從M中選擇一個mi模型,并初始化DDAE網絡權重θmi={W,b}~N(0,1)。
步驟3對訓練數據xtr={x1,x2,…,xntr}采用貪婪算法逐層訓練DDAE網絡參數θ(j)(j=1,2,…,mi),利用梯度下降法根據損失函數的梯度值迭代更新權重,得到學習后的參數值θmi。
步驟4對測試數據xte={x1,x2,…,xnte}根據式(4)計算mi模型的數據重構誤差Rmi。
步驟5令M=M{mi},如果M=?跳轉到步驟6,否則跳轉到步驟2。
步驟6從Rmi(i=1,2,…,k)中選取值最小的模型mmin。分別提取xtr和xte在mmin模型中的隱含深度特征dtr和dte。
步驟7利用ε-SVR回歸預測算法對(dtr,ytr)進行訓練并得到回歸預測模型。
步驟8根據步驟7學習到的回歸預測模型,利用測試數據的隱含深度特征dte預測yte。
利用第1.3節提到的機場噪聲監測數據,并根據上述建立的基于DDAE網絡的數據修復模型,進行了監測數據的預測實驗。由于該方法屬于結合相關關系和回歸預測模型的數據修復方法,為了對比回歸預測效果,設置了4組實驗。其中,基于皮爾遜系數的回歸預測(簡稱CORR_SVR)模型是此類方法的基本模型,基于DTW相似性度量[19]的回歸預測(簡稱DTW_SVR)模型是該類方法中適用范圍最廣預測效果最好的模型。同時,為了對比深度網絡對回歸預測效果的影響,設置了基于DAE網絡的回歸預測(簡稱DAE_SVR)以及基于DDAE網絡的回歸預測(簡稱DDAE_SVR)兩種模型。其中DAE網絡和DDAE網絡采取第1.3節訓練好的DAE網絡和DDAE-5網絡。4種模型在測試集上的預測結果如圖5所示。

圖5 各模型在測試集中的噪聲預測結果Fig.5 Prediction results in the test set for different models
根據實驗結果分析,使用DTW相似性度量方法比使用皮爾遜相似性度量方法的預測結果更精確,這說明了DTW相似性度量方法的優越性。對比傳統相似性度量方法,本文提出的DDAE_SVR模型在整體的預測趨勢來看,更好地捕獲了測試集的變化趨勢;在對峰值的預測情況來看,使用DDAE_SVR模型的預測結果更為理想。對比上述4個實驗結果,一定程度上說明了基于DDAE網絡提取到的隱層特征能夠較好地代表原始數據進行回歸預測,同時也體現了隱層特征具有較好的抗噪性和魯棒性。
表2顯示了4個模型在測試階段的表現能力,評價指標有均方誤差和決定系數。均方誤差(mean squared error,MSE)直接反應了預測結果的好壞程度。決定系數(squared correlation coefficient,SCC)是相關系數的平方,反映了列入模型的所有解釋變量對因變量的聯合的影響程度,表征模型的擬合優度,取值范圍在0~1,值越接近于1,表明擬合模型的參考價值越高;相反越接近0,表明參考價值越低。通過定量的對比發現,本文提出的DDAE_SVR模型相比傳統的回歸預測模型更好,較DTW_SVR模型在MSE和SCC評價指標上分別提高了25.1%和11.4%。

表2 測試集中的性能指標
對于DDAE_SVR模型,分別可視化了測試集中的預測誤差和相對誤差。如圖6所示,測試數據的預測誤差大部分都在2 dB左右,誤差控制在5%以內,這較好地符合當前對機場噪聲預測的要求,也進一步表明了本文提出的基于DDAE網絡的SVR預測算法在預測精度上的優越性。

圖6 DDAE_SVR模型誤差分析Fig.6 Error analysis for DDAE_SVR model
考慮到模型在實際應用場景中噪聲較多的情況,為了驗證模型對噪聲的魯棒性,針對不同噪聲水平進行了對比實驗。通過對測試階段的輸入數據增加不同程度的高斯噪聲,獲得含不同噪聲水平下DDAE_SVR模型的MSE情況。如圖7所示,相比不含噪聲的DDAE_SVR預測模型的測試結果,在噪聲程度較小時,該模型的MSE僅有少量增加,模型具有較好的抗噪能力;當噪聲程度較大時,盡管MSE有一定程度的增加,但相比較其他模型仍具有較小的MSE。對比實驗結果表明,本文提出的DDAE_SVR模型具有一定的魯棒性和抗噪能力。

圖7 DDAE_SVR模型魯棒性分析Fig.7 Robustness analysis for DDAE_SVR model
針對物聯網實時監測數據的異常修復問題,提出了一種基于深度降噪自編碼網絡和支持向量回歸算法的異常監測數據修復方法。該方法通過重構輸入數據和學習輸入數據的壓縮表示,獲得樣本集深層特征的新表達形式,不僅充分反映了輸入數據的特性,還極大地減少了相關信息之間存在的冗余。比較了3種不同深度的自編碼網絡在重構數據上的性能差異。在實測的首都機場噪聲監測數據集上進行的實驗表明,所提出的基于深度降噪自編碼網絡的異常監測數據修復方法具有較好的抗噪性和魯棒性,能有效提高異常數據的預測精度。
本文所提出的方法主要針對物聯網中單監測點失效或少量監測數據缺失而需修復的場景。對于多監測點同時失效而導致的大面積數據缺失問題,由于關聯數據的缺失,可能無法較好地提取數據的隱含特征,進而使得預測數據準確率不高。該問題將作為未來的研究內容之一。
[1] BARALDI A N, ENDERS C K. An introduction to modern missing data analyses[J]. Journal of School Psychology, 2010, 48(1): 5-37.
[2] HUANG J, SUN H. Grey relational analysis basedknearest neighbor missing data imputation for software quality datasets[C]∥Proc.of the IEEE International Conference on Software Quality, Reliability and Security, 2016: 86-91.
[3] BERTINI J R, DO CARMO NICOLETTI M, ZHAO L. Imputation of missing data supported by complete p-partite attribute-based decision graphs[C]∥Proc.of the IEEE International Joint Conference on Neural Networks, 2014: 1100-1106.
[4] 馬茜,谷峪,李芳芳,等.順序敏感的多源感知數據填補技術[J]. 軟件學報, 2016, 27(9): 2332-2347.
MA Q, GU Y, LI F F, et al. Order-sensitive missing value imputation technology for multi-source sensory data[J]. Journal of Software, 2016, 27(9): 2332-2347.
[5] SOVILJ D, EIROLA E, MICHE Y, et al. Extreme learning machine for missing data using multiple imputations[J]. Neurocomputing, 2016, 174(PA): 220-231.
[6] GAO S, TANG Y, QU X. LSSVM based missing data imputation in nuclear power plants environmental radiation monitor sensor network[C]∥Proc.of the 5th IEEE International Conference on Advanced Computational Intelligence, 2012: 479-484.
[7] AYDILEK I B, ARSLAN A. A hybrid method for imputation of missing values using optimized fuzzy C-means with support vector regression and a genetic algorithm[J]. Information Sciences, 2013, 233(4): 25-35.
[8] XU S, HU C, WANG L, et al. Support vector machines based on K nearest neighbor algorithm for outlier detection in WSNs[C]∥Proc.of the 8th IEEE International Conference on Wireless Communications, Networking and Mobile Computing, 2012: 1-4.
[9] ZHANG L, LU C, TAO L. Curve similarity recognition based rolling bearing degradation state estimation and lifetime prediction[J]. Journal of Vibroengineering, 2016, 18(5):2089.
[10] LECUN Y, BENGIO Y, HINTON G. Deep learning[J]. Nature, 2015, 521(7553): 436-444.
[11] SUK H I, LEE S W, SHEN D, et al. Latent feature representation with stacked auto-encoder for AD/MCI diagnosis[J]. Brain Structure and Function, 2015, 220(2): 841-859.
[12] 劉揚, 付征葉, 鄭逢斌. 基于神經認知計算模型的高分辨率遙感圖像場景分類[J]. 系統工程與電子技術, 2015, 37(11): 2623-2633.
LIU Y, FU Z Y, ZHENG F B. Scene classification of high-resolution remote sensing image based on multimedia neural cognitive computing[J]. Systems Engineering and Electronics, 2015, 37(11): 2623-2633.
[13] WILLIAMS D, HINTON G E. Learning representtations by back-propagating errors[J].Nature,1986,323(6088):533-536.
[14] VINCENT P, LAROCHELLE H, BENGIO Y, et al. Extracting and composing robust features with denoising autoencoders[C]∥Proc.of the 25th ACM International Conference on Machine Learning, 2008: 1096-1103.
[15] VINCENT P, LAROCHELLE H, LAJOIE I, et al. Stacked denoising autoencoders: learning useful representations in a deep network with a local denoising criterion[J]. Journal of Machine Learning Research, 2010, 11(12): 3371-3408.
[16] CAMASTRA F. Data dimensionality estimation methods: a survey[J]. Pattern Recognition, 2003, 36(12): 2945-2954.
[17] GEHRING J, MIAO Y, METZE F, et al. Extracting deep bottleneck features using stacked auto-encoders[C]∥Proc.of the IEEE International Conference on Acoustics, Speech and Signal Processing, 2013: 3377-3381.
[18] RIFAI S, VINCENT P, MULLER X, et al. Contractive auto-encoders: explicit invariance during feature extraction[C]∥Proc.of the 28th International Conference on Machine Learning, 2011: 833-840.
[19] BERNDT D J, CLIFFORD J. Using dynamic time warping to find patterns in time series[J]. KDD Workshop,1994, 10(16): 359-370.