閆亞男,韓長霖,陳小松,郭 潔,李亦凡
(1.北京中水科水電科技開發(fā)有限公司,北京 100038;2.中國水利水電科學(xué)研究院,北京 100038)
隨著我國水電建設(shè)以及裝備制造水平的提高,大型水電機(jī)組的運(yùn)維工作逐漸向智能智慧運(yùn)維方式轉(zhuǎn)變[1-2]。水電設(shè)備運(yùn)行故障智能診斷和預(yù)警是運(yùn)維工作重點(diǎn)之一。在水電設(shè)備運(yùn)行狀態(tài)參數(shù)采集,遙測量是水電廠安全運(yùn)行維護(hù)的重點(diǎn)研究類型之一[3]。遙測是指通過傳感技術(shù)實(shí)現(xiàn)目標(biāo)參數(shù)的遠(yuǎn)距離測量,如推力軸瓦溫度、振動(dòng)擺度、油位等,采集的數(shù)據(jù)屬于連續(xù)型時(shí)間序列數(shù)據(jù)[4-5]。然而,數(shù)據(jù)采集傳感器損壞、電磁信號(hào)干擾、運(yùn)行或通訊設(shè)備故障等均會(huì)產(chǎn)生部分沖突、異?;蛉笔У臄?shù)據(jù),嚴(yán)重影響數(shù)據(jù)整體質(zhì)量,給后續(xù)模型準(zhǔn)確度造成極為不利的影響[6]。這些“不合格”數(shù)據(jù)只有經(jīng)過合理清洗后,數(shù)據(jù)質(zhì)量滿足分析模型的構(gòu)建,才能發(fā)揮出數(shù)據(jù)真正價(jià)值,輔助后續(xù)決策與分析[7]。
針對水電廠設(shè)備運(yùn)行數(shù)據(jù)的清洗,主要?dú)w納為異常值識(shí)別、缺失重構(gòu)和隨機(jī)擾動(dòng)濾波。異常數(shù)據(jù)主要指由于外界干擾、測量儀器自身問題或數(shù)據(jù)傳輸問題等造成的違反規(guī)則的值,或是超出指定集合范圍的值[8-9]。用于識(shí)別異常值的方法分為數(shù)學(xué)方法、組合模型法以及人工智能法等[6]。水電工程上常用人為經(jīng)驗(yàn)、狀態(tài)估計(jì)、描述統(tǒng)計(jì)等傳統(tǒng)手段對異常數(shù)據(jù)進(jìn)行識(shí)別[9],如均值方差法、3σ原則法、箱型圖等。隨著人工智能技術(shù)的成熟,基于密度模式的空間數(shù)據(jù)聚類(Density-based Spatial Clustering of Applications with Noise,DBSCAN)[10]、K-means聚類、孤立森林等算法逐漸在異常值檢測中使用[6]。目前新能源領(lǐng)域數(shù)據(jù)清洗研究較多,水電行業(yè)較少。如臧鵬等提出了基于K-means的功率特性測試數(shù)據(jù)清洗方法,成功應(yīng)用于風(fēng)電功率曲線模擬流程中數(shù)據(jù)預(yù)處理中,提升了功率曲線模擬的準(zhǔn)確性[11];王一妹等人提出的基于多階段遞進(jìn)識(shí)別風(fēng)電機(jī)組異常運(yùn)行數(shù)據(jù)清洗方法[12]等。但上述異常值清洗方法均未考慮時(shí)間序列在時(shí)序上因果相關(guān)的特性[13],導(dǎo)致其在水電遙測數(shù)據(jù)的異常值檢測中存在不足。
缺失數(shù)據(jù)的主要原因是SCADA(Supervisory Control and Data Acquisition)采集過程中錄入系統(tǒng)時(shí)波動(dòng)、數(shù)據(jù)傳輸丟失或手工遺漏造成的數(shù)據(jù)部分缺失。對于缺失值的處理,除了直接刪除缺失嚴(yán)重的特征外,還可以選擇合適的填充方法。常見方法包括填充默認(rèn)值、均值、眾數(shù)等[14]。隨著數(shù)據(jù)挖掘算法的發(fā)展,把缺失值作為新的標(biāo)簽通過模型來預(yù)測的方式也是提高數(shù)據(jù)質(zhì)量的可靠方法,包括邏輯回歸、時(shí)間序列預(yù)測[15]、隨機(jī)森林預(yù)測[16]等。如Little等[17]用貝葉斯邏輯回歸法進(jìn)行多重插補(bǔ);李建強(qiáng)等[18]針對電站數(shù)據(jù)庫存在數(shù)據(jù)缺失的問題,提出了支持向量回歸與遺傳算法優(yōu)化的模糊聚類填補(bǔ)算法,成功用于火電站機(jī)組運(yùn)行數(shù)據(jù)的填補(bǔ)。上述方法很少考慮到兩個(gè)相鄰數(shù)據(jù)間的時(shí)序信息。
數(shù)據(jù)波動(dòng)不穩(wěn)定是指在高頻地?cái)?shù)據(jù)采集方式及傳感器自身隨機(jī)誤差的影響下時(shí)間序列數(shù)據(jù)常具有小幅度波動(dòng)性,數(shù)據(jù)看起來幾乎是雜亂無章的[14]。由隨機(jī)擾動(dòng)性產(chǎn)生的數(shù)據(jù)是正常的,但影響變量的真值,不利于趨勢分析,需要對其進(jìn)行濾波降低隨機(jī)擾動(dòng)性。常用濾波方法有均值平滑、回歸法、小波去噪等[14]。近年來,卡爾曼濾波法[19],通過提供高效、可計(jì)算的方法來估計(jì)過程狀態(tài),其不僅可以計(jì)算出信號(hào)的過去和當(dāng)前狀態(tài),而且可以預(yù)測信號(hào)下一步的狀態(tài),應(yīng)用廣泛且功能強(qiáng)大。如,程麗等[20]引入了卡爾曼濾波法去除由于算法特性產(chǎn)生的噪聲,數(shù)據(jù)優(yōu)化后,曲線更為光滑且與實(shí)際沖擊時(shí)程曲線的擬合度更高;譚宇航等[21]將卡爾曼濾波應(yīng)用到水輪機(jī)調(diào)節(jié)系統(tǒng)中,利用其的自適應(yīng)性和預(yù)測精度高的特點(diǎn),大幅提高了水輪機(jī)發(fā)電機(jī)組在干擾環(huán)境下頻率測量的準(zhǔn)確性。
綜上所述,現(xiàn)階段亟需水電遙測量的完整數(shù)據(jù)清洗框架研究。本文提出融合時(shí)間序列特性的改進(jìn)水電遙測數(shù)據(jù)清洗框架,旨在達(dá)到精確清洗數(shù)據(jù)的目的,使數(shù)據(jù)能更加清晰地反應(yīng)設(shè)備運(yùn)行趨勢,更加準(zhǔn)確的預(yù)測未來,并且為水電智慧化建設(shè)高級(jí)應(yīng)用發(fā)展提供更有力的支持。
遙測量時(shí)間序列有著嚴(yán)格的時(shí)間先后順序,在此基礎(chǔ)上建模時(shí),獲得的樣本不在具有從總體中隨機(jī)抽取的性質(zhì)。在應(yīng)用異常檢測算法時(shí),需要結(jié)合時(shí)間因素對建模過程進(jìn)行優(yōu)化。本文考慮到基礎(chǔ)數(shù)據(jù)的時(shí)間特性,優(yōu)化了距離(相似度)的度量方法,利用DBSCAN[10]算法開展遙測量異常數(shù)據(jù)識(shí)別,并將異常點(diǎn)數(shù)據(jù)作為缺失值來進(jìn)行后續(xù)處理。
DBSCAN是一種具有噪聲的基于密度的聚類算法[10,22],該算法假定類別可以通過樣本分布的緊密程度決定,同一類別樣本之間是緊密相連的。通過將所有各組緊密相連的樣本劃為各個(gè)不同的類別,則得到了最終的所有聚類類別結(jié)果,沒有被歸為一類的數(shù)據(jù)為噪聲點(diǎn)[22]。
歐氏距離[10]是常用的距離計(jì)算方法,針對一維數(shù)據(jù)的聚類,距離計(jì)算如式(1)所示,其中xi,xj分別是數(shù)據(jù)集中的值。
(1)
然而,將上述距離計(jì)算方法應(yīng)用于水電遙測時(shí)間序列數(shù)據(jù)的DBSCAN聚類時(shí),會(huì)因未考慮時(shí)間順序特性而造成誤差。圖1為多種距離計(jì)算方法與DBSCAN相結(jié)合的時(shí)間序列異常值檢測結(jié)果,研究模擬了一段包含異常數(shù)據(jù)的時(shí)間序列,共計(jì)100個(gè)點(diǎn),其中正常數(shù)據(jù)89個(gè),異常數(shù)據(jù)11個(gè),如圖1a所示。如果利用式(1)距離計(jì)算方法,即將樣本統(tǒng)一投影到縱軸上,異常點(diǎn)與正常數(shù)據(jù)點(diǎn)是距離可達(dá)的,應(yīng)用DBSCAN算法識(shí)別不出異常值位置(見圖1b),通過調(diào)整參數(shù)閾值,得到的結(jié)果也較差。
圖1 多種距離計(jì)算方法與DBSCAN相結(jié)合的時(shí)間序列異常值檢測
本文首先嘗試通過時(shí)間序列一階差分平穩(wěn)化的方式,得到相鄰序列元素的變化值,在此基礎(chǔ)上利用DBSCAN檢測異常值,結(jié)果如圖1c所示,表明該方法從一定程度上提高了異常值的檢出率,但是對于連續(xù)異常值的檢測精度較低,比較適合單一突變類型的異常值檢測。
為了解決上述問題,本文提出了一種簡單易行的策略,即把序號(hào)化的時(shí)間索引作為新的維度添加到數(shù)據(jù)中,從而將一維時(shí)間序列轉(zhuǎn)換為兩維數(shù)據(jù)集。并且為了避免數(shù)據(jù)值與序號(hào)值量綱的差異,對數(shù)據(jù)值與序號(hào)值進(jìn)行歸一化處理,然后采用歐式距離進(jìn)行相似度度量。如時(shí)間序列TS={(tst,i,tsv,i)|i=1,2,3,…,n},tst,i代表第i個(gè)序列元素的時(shí)標(biāo),tsv,i代表第i個(gè)序列元素的值。新的距離計(jì)算方法為
(2)
式中,index(tst,i)′代表第i個(gè)時(shí)序元素tsi的時(shí)標(biāo)先經(jīng)過序號(hào)化再歸一化后的值,ts′v,i代表第i個(gè)時(shí)序元素tsi的歸一化值。
采用新的距離計(jì)算方法,對模擬數(shù)據(jù)(見圖1a)進(jìn)行了異常值檢測。結(jié)果表明使用本文提出的針對時(shí)間序列內(nèi)部元素的距離計(jì)算優(yōu)化方法準(zhǔn)確地檢測出了異常值的位置(見圖1d)。新策略將時(shí)間序列順序特性融入距離計(jì)算中,不僅解決了應(yīng)用傳統(tǒng)方法難以識(shí)別值域范圍內(nèi)異常值的問題,而且改善了僅利用時(shí)序變化值難以識(shí)別連續(xù)異常的情況。
通過將一維時(shí)間序列切割為多段子序列,組成多段時(shí)間序列樣本集,進(jìn)而將缺失值填充問題轉(zhuǎn)化為數(shù)據(jù)預(yù)測問題進(jìn)行解決,開展基于隨機(jī)森林與時(shí)間序列分析的缺失值填充。
隨機(jī)森林是一個(gè)由多個(gè)隨機(jī)決策樹組成Bagging框架的集成算法,其輸出的類別是根據(jù)決策樹輸出類別標(biāo)簽的眾數(shù)而定,不僅適用于回歸問題也可以用于分類[16,23]。
基于隨機(jī)森林與時(shí)間序列分析的缺失值填充的具體流程為:
(1)利用時(shí)間序列數(shù)據(jù)在時(shí)序上的因果關(guān)聯(lián)特性,選用寬度為W的時(shí)間窗口對一維時(shí)序數(shù)據(jù)(長度L)進(jìn)行截取,得到由L/W個(gè)子序列組合形成矩陣數(shù)據(jù)[L/W,W],缺少項(xiàng)設(shè)為缺失值。
(2)將矩陣中已知變量數(shù)據(jù)當(dāng)作特征,將缺失值的變量作為標(biāo)簽,其中標(biāo)簽變量中有數(shù)值的數(shù)據(jù)為訓(xùn)練集,而缺失部分作為測試集。
(3)通過隨機(jī)森林預(yù)測算法進(jìn)行填充缺失值。
(4)將填充缺失值后的矩陣數(shù)據(jù),轉(zhuǎn)換為帶時(shí)標(biāo)的一維時(shí)間序列數(shù)據(jù)。
本文設(shè)計(jì)了一種融合時(shí)間序列特性的水電遙測數(shù)據(jù)清洗框架,在上述異常值檢測、缺失值填充的基礎(chǔ)上,考慮高頻采樣數(shù)據(jù)的隨機(jī)擾動(dòng)性,引入卡爾曼濾波技術(shù),進(jìn)一步提升數(shù)據(jù)質(zhì)量,從而構(gòu)建完整、有效、可信的數(shù)據(jù)集,為后續(xù)趨勢分析等高級(jí)應(yīng)用打下堅(jiān)實(shí)基礎(chǔ)。整體數(shù)據(jù)清洗流程框架如圖2所示。
研究將從水電監(jiān)控系統(tǒng)獲取的指定時(shí)間段內(nèi)的遙測點(diǎn)歷史數(shù)據(jù)作為待清洗數(shù)據(jù)集。由于期間存在開停機(jī)狀況,剔除停機(jī)狀態(tài)歷史數(shù)據(jù)后,待清洗數(shù)據(jù)集并非是時(shí)間序列連續(xù)的一串?dāng)?shù)據(jù),而是由若干段時(shí)間序列構(gòu)成。應(yīng)用上述數(shù)據(jù)清洗框架(見圖2)對水電機(jī)組遙測量數(shù)據(jù)進(jìn)行清洗的具體流程如下:
圖2 融合時(shí)間序列特性的水電遙測數(shù)據(jù)清洗框架
(1)針對每段時(shí)間序列,利用優(yōu)化距離計(jì)算的DBSCAN方法進(jìn)行異常值檢測,并將檢測結(jié)果作為缺失值待后續(xù)處理。
(2)遍歷每個(gè)子時(shí)間序列,剔除缺失值連續(xù)時(shí)長超規(guī)定的數(shù)據(jù)段,得到由系列新子時(shí)間序列構(gòu)成的數(shù)據(jù)集。研究將缺失值連續(xù)時(shí)間過長的情況,認(rèn)定為無效數(shù)據(jù)段,剔除比嘗試數(shù)據(jù)填充對后續(xù)研究更有意義。
(3)開展結(jié)合隨機(jī)森林預(yù)測和時(shí)間序列分析方法進(jìn)行缺失值填補(bǔ)。
(4)經(jīng)過異常值識(shí)別和缺失值補(bǔ)償?shù)乃娺b測數(shù)據(jù),受高頻地?cái)?shù)據(jù)采集方式及傳感器自身誤差的影響,還會(huì)具有小幅抖動(dòng)性。為了避免這種數(shù)據(jù)特性給后續(xù)趨勢分析造成負(fù)面影響,本文利用卡爾曼濾波技術(shù)對數(shù)據(jù)進(jìn)行了進(jìn)一步的清洗??柭鼮V波[19,24-25]是一種利用線性系統(tǒng)狀態(tài)方程,通過系統(tǒng)輸入輸出觀測數(shù)據(jù),對系統(tǒng)狀態(tài)進(jìn)行最優(yōu)估計(jì)的算法。由于觀測數(shù)據(jù)中包括系統(tǒng)中的噪聲和干擾的影響,所以最優(yōu)估計(jì)也可看作是濾波過程[24]。
以某水電廠1號(hào)機(jī)組下導(dǎo)油槽油位(壓力式)歷史數(shù)據(jù)為研究樣本,對本文提出的數(shù)據(jù)清洗框架展開了適用性研究。選取該測點(diǎn)在2019年11月21日~11月24日內(nèi)的分鐘級(jí)數(shù)據(jù)作為待清洗數(shù)據(jù),共計(jì)5 760條數(shù)據(jù)記錄,如圖3所示。圖4為影響下導(dǎo)油槽油位數(shù)據(jù)質(zhì)量的主要因素有異常值(圖3中方框部分)、缺失值(系統(tǒng)默認(rèn)為0),以及圖5的數(shù)據(jù)噪聲抖動(dòng)(圖3橢圓部分)。
圖3 2019年11月21~至11月24日內(nèi)某水電廠1號(hào)機(jī)組下導(dǎo)油槽油位數(shù)據(jù)
圖4 異常值示意
圖5 隨機(jī)擾動(dòng)性示意
在數(shù)據(jù)清洗過程中,異常值檢測結(jié)果如圖6所示(剔除0值)。距離優(yōu)化的DBSCAN方法較好地將異常值檢測出來。與傳統(tǒng)的閾值法相比,油位位于570~630 mm內(nèi)的異常值很難檢測出來,而利用優(yōu)化方法可以根據(jù)數(shù)據(jù)的密度關(guān)聯(lián)分布特征,準(zhǔn)確識(shí)別出異常點(diǎn)。
圖6 異常值檢測結(jié)果
完成異常值識(shí)別后,將異常點(diǎn)合并為缺失值,開展基于隨機(jī)森林與時(shí)間序列分析的缺失值填充,結(jié)果如圖7所示。該方法較好地對缺失值進(jìn)行了填補(bǔ),對于發(fā)生在工況改變的缺失值,能利用學(xué)習(xí)出的數(shù)據(jù)運(yùn)行規(guī)律,依然準(zhǔn)確地對其進(jìn)行填充。針對低頻、高變率的數(shù)據(jù),簡單的統(tǒng)計(jì)填充,不能獲得準(zhǔn)確填充效果,應(yīng)用本文方法依然可以保持較好的填充精度。
圖7 異常值識(shí)別后缺失值填充效果
異常值與缺失值均被準(zhǔn)確清洗,數(shù)據(jù)質(zhì)量得到了較大提升。但數(shù)據(jù)的抖動(dòng)現(xiàn)象很明顯(見圖5),抖動(dòng)區(qū)間達(dá)到15 mm,嚴(yán)重影響后續(xù)數(shù)據(jù)趨勢分析的準(zhǔn)確性。研究進(jìn)一步應(yīng)用卡爾曼濾波算法,對數(shù)據(jù)進(jìn)行清洗,得到結(jié)果如圖8所示。數(shù)據(jù)的抖動(dòng)噪聲較好地被濾除,有益于后續(xù)構(gòu)建數(shù)據(jù)趨勢分析與預(yù)測模型,可以提升模型構(gòu)建的效率。
圖8 本文框架清洗效果
針對水電遙測量數(shù)據(jù)質(zhì)量常見問題,融合時(shí)間序列特性,本文設(shè)計(jì)了涵蓋異常值剔除、缺失值填充和噪聲濾波的數(shù)據(jù)清洗框架。該框架優(yōu)化了聚類算法在時(shí)序數(shù)據(jù)異常值檢測中的應(yīng)用不足,并結(jié)合隨機(jī)森林與時(shí)間序列預(yù)測的優(yōu)勢,提升了缺失值填充的精度,同時(shí)采用卡爾曼濾波降低了數(shù)據(jù)的隨機(jī)擾動(dòng)性。通過實(shí)測數(shù)據(jù)驗(yàn)證了方法的穩(wěn)定性和有效性,清洗后的數(shù)據(jù)質(zhì)量得到了較大程序的提升,為后續(xù)水電設(shè)備故障診斷與預(yù)警構(gòu)建可靠數(shù)據(jù)基礎(chǔ),具有重要的應(yīng)用及推廣意義。此外,遙信量也是水電設(shè)備運(yùn)行數(shù)據(jù)類型之一,對其的數(shù)據(jù)清洗研究將在后續(xù)工作中展開。