張佳楠 薛安榮
(江蘇大學(xué)計(jì)算機(jī)科學(xué)與通信工程學(xué)院 鎮(zhèn)江 212013)
風(fēng)能作為可再生的清潔能源是“十四五”碳中和能源戰(zhàn)略的重要組成部分,風(fēng)電場(chǎng)規(guī)模及數(shù)量不斷擴(kuò)大。但風(fēng)能自身的不確定性致使風(fēng)電并網(wǎng)后,電網(wǎng)系統(tǒng)易出現(xiàn)大規(guī)模的功率波動(dòng),影響安全運(yùn)行。為使風(fēng)能成為可靠的能源來源,通過風(fēng)電機(jī)組運(yùn)行數(shù)據(jù)建立高效、精準(zhǔn)的風(fēng)電監(jiān)測(cè)和預(yù)測(cè)模型十分重要。但受環(huán)境、調(diào)控等因素影響,采集的風(fēng)電機(jī)組運(yùn)行數(shù)據(jù)中會(huì)存在大量不符合風(fēng)電機(jī)組正常輸出特性的異常數(shù)據(jù)。這些“臟數(shù)據(jù)”的會(huì)影響進(jìn)一步的預(yù)測(cè)建模分析,甚至對(duì)電網(wǎng)系統(tǒng)的安全運(yùn)行產(chǎn)生不利影響,因此對(duì)風(fēng)電機(jī)組運(yùn)行數(shù)據(jù)中的異常數(shù)據(jù)進(jìn)行準(zhǔn)確的檢測(cè)與清洗是提高預(yù)測(cè)建模分析精度的必要前提。通過風(fēng)電場(chǎng)的數(shù)據(jù)采集與監(jiān)視(SCADA)系統(tǒng)收集風(fēng)電機(jī)組運(yùn)行數(shù)據(jù)是常見手段。當(dāng)前許多研究人員基于SCADA 系統(tǒng)數(shù)據(jù)構(gòu)建的風(fēng)電機(jī)組異常數(shù)據(jù)檢測(cè)方法主要可分為兩類:
1)基于數(shù)理統(tǒng)計(jì)的方法:這類方法主要通過數(shù)據(jù)的分布特征結(jié)合先驗(yàn)的理論知識(shí)使用數(shù)理統(tǒng)計(jì)的方法進(jìn)行異常數(shù)據(jù)檢測(cè)。如ZHENG L 等[1]利用局部離群因子算法構(gòu)建風(fēng)速-功率曲線模型中曲線附近的相對(duì)密度實(shí)現(xiàn)異常檢測(cè);董興輝等[2]使用統(tǒng)計(jì)方法構(gòu)建輸出功率模型量化分析功率以實(shí)現(xiàn)異常檢測(cè)功能。該類方法在建模時(shí)忽略了SCADA 系統(tǒng)數(shù)據(jù)的時(shí)序性,很難準(zhǔn)確地識(shí)別風(fēng)電機(jī)組運(yùn)行狀態(tài)變化趨勢(shì)導(dǎo)致的異常。
2)基于人工智能的方法:這類方法從數(shù)據(jù)自身的特性與結(jié)構(gòu)出發(fā),能有效發(fā)掘原始數(shù)據(jù)間的相關(guān)性。自編碼器(AE)[3]、去噪自編碼器(DAE)[4]等無監(jiān)督學(xué)習(xí)的方法模型可以在訓(xùn)練時(shí)脫離對(duì)數(shù)據(jù)標(biāo)簽的需求,更貼近實(shí)際應(yīng)用領(lǐng)域,但難以識(shí)別風(fēng)電機(jī)組運(yùn)行狀態(tài)變化趨勢(shì)導(dǎo)致的異常。長短時(shí)記憶(LSTM)[5]神經(jīng)網(wǎng)絡(luò)作為循環(huán)神經(jīng)網(wǎng)絡(luò)的一個(gè)變體,通過門的結(jié)構(gòu)將時(shí)序數(shù)據(jù)間的長依賴性以及非線性特性引入模型訓(xùn)練?;谝陨希嘈愕龋?]提出了一種基于LSTM-AE的風(fēng)電機(jī)組數(shù)據(jù)異常檢測(cè)方法,結(jié)合LSTM 有效處理多維數(shù)據(jù)時(shí)序性的特點(diǎn)與AE 能有效提取數(shù)據(jù)的本質(zhì)特征的優(yōu)勢(shì),學(xué)習(xí)并重建輸入序列并通過重建誤差進(jìn)行異常檢測(cè)。但在實(shí)際應(yīng)用過程中原始數(shù)據(jù)的部分機(jī)組可能會(huì)出現(xiàn)異常數(shù)據(jù)占整體比重過大的情況,導(dǎo)致基于單機(jī)組的運(yùn)行數(shù)據(jù)建模時(shí)在檢測(cè)階段對(duì)正常數(shù)據(jù)與異常數(shù)據(jù)不能明顯分化。同一時(shí)間段內(nèi)的鄰近風(fēng)電機(jī)組的工況是相近的,可在訓(xùn)練過程中聯(lián)合近鄰機(jī)組的數(shù)據(jù)訓(xùn)練。因此,本文提出一種能在模型訓(xùn)練過程中優(yōu)化參數(shù)調(diào)整各個(gè)機(jī)組數(shù)據(jù)影響比重的隱藏狀態(tài)共享模塊,并結(jié)合LSTM-AE 網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)了能有效進(jìn)行多機(jī)組模型聯(lián)合訓(xùn)練的集成共享框架,用于異常檢測(cè)。
風(fēng)電機(jī)組運(yùn)行數(shù)據(jù)的各個(gè)性能參數(shù)在不同的工況下變化幅度差異較大,不同的工況下對(duì)異常的判定標(biāo)準(zhǔn)是不同的,傳統(tǒng)的通過固定閾值對(duì)重構(gòu)誤差進(jìn)行異常清洗的方式具有局限性,容易出現(xiàn)錯(cuò)判與漏判現(xiàn)象。陳俊生等[7]在基于滑動(dòng)窗口的堆棧降噪自編碼(SDAE)模型上通過核密度估計(jì)方法分析機(jī)組正常數(shù)據(jù)監(jiān)測(cè)指標(biāo)的概率密度分布,比較參數(shù)對(duì)監(jiān)測(cè)指標(biāo)超限的貢獻(xiàn)度確定異常閾值,但該方法中窗口區(qū)間長度對(duì)判定結(jié)果精度影響較大。柳青秀等[6]通過支持向量回歸(SVR)自適應(yīng)的確定異常指標(biāo)與設(shè)備工況間的非線性關(guān)系,提出了自適應(yīng)閾值的清洗方法。但該方法對(duì)中核函數(shù)的選擇會(huì)結(jié)果影響較大且選擇合適的核函數(shù)較為困難。自動(dòng)編碼器能自適應(yīng)確定重構(gòu)誤差的多元高斯分布中的概率密度與重構(gòu)值的非線性期望函數(shù),本文通過重構(gòu)值的期望誤差概率密度與實(shí)際誤差的概率密度間的差值得到異常清洗過程中的自適應(yīng)閾值。在不同工況下性能參數(shù)對(duì)整體異常的貢獻(xiàn)度不同,根據(jù)異常數(shù)據(jù)可進(jìn)一步確定與異常高度相關(guān)的性能參數(shù),對(duì)清洗結(jié)果做出異常原因解釋,可幫助風(fēng)電機(jī)組定位故障原因。本文通過對(duì)比重構(gòu)誤差中不同性能參數(shù)與概率密度差值的互信息量,確定異常關(guān)鍵性能參數(shù)。
LSTM-AE 模型[6,8]結(jié)合了LSTM 有效處理多維數(shù)據(jù)時(shí)序性的特點(diǎn)與AE能有效提取數(shù)據(jù)的本質(zhì)特征的優(yōu)勢(shì),其結(jié)構(gòu)如圖1。
圖1 LSTM-AE模型結(jié)構(gòu)圖
LSTM-AE 模型由編碼器(Encode,E)與解碼器(Decode,D)組成,兩者呈對(duì)稱關(guān)系,處理多維時(shí)序序列時(shí),在編碼層中由基本LSTM 神經(jīng)單元對(duì)輸入的數(shù)據(jù)進(jìn)行編碼和隱藏狀態(tài)信息的傳遞,基本LSTM神經(jīng)元結(jié)構(gòu)如圖2。
圖2 基本LSTM神經(jīng)單元結(jié)構(gòu)圖
LSTM神經(jīng)單元可以進(jìn)行長時(shí)間記憶的關(guān)鍵是單元狀態(tài)(Ct)的傳遞,分別通過別輸入門(i)、遺忘門(f)和輸出門(o)來實(shí)現(xiàn)移除和添加信息到單元狀態(tài)(Ct)。
其中W為LSTM 神經(jīng)單元各個(gè)門結(jié)構(gòu)權(quán)重系數(shù)矩陣,bi,bf,bo,bs分別代表各節(jié)點(diǎn)的偏置項(xiàng),具體公式如下:
在編碼階段中,編碼器接收維度為(l,M)的矩陣作為輸入,其中l(wèi)為單次訓(xùn)練輸入的多維時(shí)間序列T=(s1,s2…sn)中的向量個(gè)數(shù)。M即對(duì)應(yīng)的是序列中的向量維度。LSTM單元接受當(dāng)前時(shí)刻的輸入向量st以及上一單元的輸出的狀態(tài)信息,編碼后得到當(dāng)前時(shí)刻的輸出狀態(tài)信息,依次傳遞到第l個(gè)LSTM 單元,完成輸入編碼。將最后一個(gè)編碼單元的輸出的作為第一個(gè)解碼單元的初始輸入,通過非線性層重構(gòu)輸入sc對(duì)應(yīng)的輸出,并計(jì)算得到該LSTM 單元的隱藏狀態(tài)。將輸出以及隱藏狀態(tài)作為下一個(gè)LSTM 單元的輸入,以此類推,得到重構(gòu)輸入的序列T'=(s1'…s'n-1,s'
n),完成解碼。LSTM-AE模型中損失函數(shù)loss選用均方差(Mean Square Error,MES)如下:
針對(duì)實(shí)際應(yīng)用過程中原始數(shù)據(jù)的部分機(jī)組可能會(huì)出現(xiàn)異常數(shù)據(jù)占整體比重過大的情況,導(dǎo)致該機(jī)組在LSTM-AE模型的檢測(cè)階段對(duì)正常數(shù)據(jù)與異常數(shù)據(jù)的重構(gòu)誤差不能明顯分化的問題,本文提出一種能在模型訓(xùn)練過程中最優(yōu)化參數(shù)調(diào)整各個(gè)機(jī)組數(shù)據(jù)影響比重的隱藏狀態(tài)共享模塊,并結(jié)合LSTM-AE 網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)了能有效進(jìn)行多機(jī)組模型聯(lián)合訓(xùn)練的集成共享框架?;贚STM-AE集成共享框架結(jié)構(gòu)圖如圖3。
圖3 基于LSTM-AE集成共享框架結(jié)構(gòu)圖
2.2.1 數(shù)據(jù)預(yù)處理
同一時(shí)間段,鄰近風(fēng)電機(jī)組的工況是相似的,因此在同構(gòu)模型中的隱藏狀態(tài)信息也是相似的。對(duì)SCADA 系統(tǒng)數(shù)據(jù)按照機(jī)組進(jìn)行分組,并對(duì)分組后的數(shù)據(jù)按照時(shí)間戳進(jìn)行數(shù)據(jù)對(duì)齊,保證在后續(xù)聯(lián)合訓(xùn)練時(shí)輸入數(shù)據(jù)在時(shí)序上的一致性。
2.2.2 構(gòu)建集成共享框架
框架包括滑動(dòng)窗口擴(kuò)增層、編碼層、隱藏狀態(tài)共享層和解碼層;滑動(dòng)窗口擴(kuò)增層在輸入的每個(gè)機(jī)組的原始序列T=(S1,S2…Sn)上使用跨度2d,以d為間隔的窗口進(jìn)行滑動(dòng)[9],并計(jì)算每個(gè)窗口區(qū)間內(nèi)向量集合中每向量參數(shù)的統(tǒng)計(jì)特征與衍生特征作為新的擴(kuò)增向量得到新的短時(shí)相關(guān)性擴(kuò)增時(shí)序序列T'=(H1,H2…Hk),統(tǒng)計(jì)特征與衍生特征[10]包括均值(MEA)、最大值(MAX)、最小值(MIN)、標(biāo)準(zhǔn)差(STD)、峰間距(P2P)以及三個(gè)四分位數(shù),得到的擴(kuò)增時(shí)序序列的特征空間比原始序列大得多,有助于在模型訓(xùn)練過程中自動(dòng)編碼器識(shí)別出最具代表性的特征。
編碼層與解碼層由多個(gè)相同結(jié)構(gòu)的LSTM-AE模型的E與D構(gòu)成,記作ES=(E1,E2…En) 與DS=(D1,D2…Dn)。將機(jī)組i經(jīng)過滑動(dòng)窗口擴(kuò)增后的擴(kuò)增序列輸入編碼層E中對(duì)應(yīng)的編碼器Ei中,編碼層中編碼器對(duì)輸入序列進(jìn)行學(xué)習(xí)得到隱藏狀態(tài),解碼層D中的解碼器Di接受隱藏狀態(tài)后對(duì)輸入序列進(jìn)行重構(gòu)得到
隱藏狀態(tài)共享模塊位于在ES與DS中間,分別為ES中的每個(gè)E設(shè)計(jì)一個(gè)線性權(quán)重矩陣,共享隱藏狀態(tài)通過疊加每個(gè)隱藏狀態(tài)與對(duì)應(yīng)線性權(quán)重矩陣的積組成,具體公式如下:
2.2.3 訓(xùn)練及檢測(cè)
集成共享框架中參數(shù)眾多,故在最小化損失函數(shù)的過程中,容易出現(xiàn)過擬合現(xiàn)象。本文中集成共享框架損失函數(shù)由多個(gè)LSTM-AE模型的損失函數(shù)疊加,并引入作為懲罰項(xiàng)構(gòu)成,具體公式如下:
其中l(wèi)ossi表示機(jī)組i的基本LSTM-AE模型的損失函數(shù),‖·‖2為L2正則化函數(shù)[11],loss表示集成共享框架損失函數(shù),為懲罰項(xiàng),λ是控制在損失函數(shù)中懲罰效果的重要權(quán)重。本文中通過在損失函數(shù)中添加懲罰項(xiàng),可有效減小編碼器對(duì)原始序列的過擬合影響,可以使得解碼器更加健壯,在檢測(cè)階段,可以使得正常數(shù)據(jù)與異常數(shù)據(jù)的重構(gòu)誤差明顯分化。
將完成訓(xùn)練后集成共享框架中ES=(E1,E2…En)與DS=(D1,D2…Dn)中的Ei與Di的拆分并按照LSTM-AE 模型的架構(gòu),組成機(jī)組i的LSTM-AE模型進(jìn)行異常數(shù)據(jù)檢測(cè)。使用機(jī)組i經(jīng)過滑動(dòng)窗口擴(kuò)增后的擴(kuò)增序列作為機(jī)組i的LSTM-AE 模型輸入,模型輸出得到重構(gòu)序列,計(jì)算輸入序列與重構(gòu)序列的誤差得到誤差向量序列,具體公式如下:
其中 |· |為絕對(duì)值函數(shù),?j及?'j分別是擴(kuò)增向量與重構(gòu)向量中第j個(gè)參數(shù)。誤差向量序列Ei作為機(jī)組i的異常指標(biāo)。
針對(duì)固定閾值清洗方法沒有考慮異常指標(biāo)與設(shè)備工況間的非線性關(guān)系具有局限性,容易出現(xiàn)錯(cuò)判與漏判現(xiàn)象。本文通過結(jié)合集成共享框架得到的異常指標(biāo)誤差向量序列Ei與重構(gòu)序列Ri' 之間的非線性關(guān)系,采用自適應(yīng)閾值的方式對(duì)SCADA系統(tǒng)數(shù)據(jù)進(jìn)行清洗。直接建立兩個(gè)多維向量間的映射函數(shù)難度較大,本文通過建立誤差向量序列Ei的多元高斯分布模型Ei~N(μ,∑),使用最大似然法給出模型參數(shù)μ和∑的估計(jì)量,并計(jì)算重構(gòu)誤差的概率密度函數(shù)PEi',具體公式如下:
其中g(shù)為誤差向量維度,得到重構(gòu)誤差概率密度序列PEi=(PE1i,'PE2i'…PEki'),利用AE 網(wǎng)絡(luò)[12]擬合重構(gòu)誤差概率密度序列PEi與重構(gòu)序列的映射函數(shù),即期望誤差概率密度估計(jì)器:
其中WP為擬合AE 網(wǎng)絡(luò)的權(quán)重系數(shù)矩陣,bP為其偏移量,f為期望誤差概率密度估計(jì)函數(shù)。
本文通過對(duì)比重構(gòu)值的期望誤差概率密度與實(shí)際誤差的概率密度進(jìn)行異常的差值進(jìn)行異常數(shù)據(jù)清洗,具體公式如下:
其中f(·)為期望誤差概率密度估計(jì)器,η為設(shè)定的誤差偏移量。通過設(shè)置η,自適應(yīng)調(diào)整誤差閾值,若ξ為正,則表示該誤差向量所對(duì)應(yīng)的輸入向量為異常數(shù)據(jù)。
為確定異常數(shù)據(jù)中不同性能指標(biāo)對(duì)異常的貢獻(xiàn)度,本文通過對(duì)比重構(gòu)誤差=(e1,e2…) 中不同性能參數(shù)ej與概率密度差值?i的互信息量Ij(ej;?i),確定異常關(guān)鍵性能參數(shù),具體公式如下:
其中ej表示在重構(gòu)誤差E'i中的第j個(gè)參數(shù),P為分布函數(shù),Ij(ej;?i)表示該參數(shù)在概率密度差值?i中的互信息量。Ij(ej;?i)值越大,表明在重構(gòu)誤差中的第j個(gè)參數(shù)與異常的相關(guān)度越高,由此確定異常關(guān)鍵性能參數(shù)。
4.1.1 實(shí)驗(yàn)數(shù)據(jù)
本文使用的數(shù)據(jù)集為某風(fēng)電場(chǎng)群共12 臺(tái)風(fēng)電機(jī)組全年SCADA 系統(tǒng)數(shù)據(jù)(來自國家電投)。數(shù)據(jù)集分為兩個(gè)部分:風(fēng)電機(jī)組工況數(shù)據(jù)、風(fēng)電機(jī)組規(guī)范參數(shù)。其中風(fēng)電機(jī)組的工況數(shù)據(jù)的采集周期為2017 年11 月-2018 年10 月,采集時(shí)間間隔為10min,監(jiān)測(cè)的性能參數(shù)為風(fēng)速、功率以及風(fēng)輪轉(zhuǎn)速;數(shù)據(jù)集時(shí)序數(shù)據(jù)共計(jì)497837條。
4.1.2 實(shí)驗(yàn)參數(shù)
本次訓(xùn)練是無監(jiān)督學(xué)習(xí)的方式,使用完整數(shù)據(jù)集作為訓(xùn)練集與驗(yàn)證集。本文使用的網(wǎng)絡(luò)模型參數(shù)設(shè)置如下:LSTM 網(wǎng)絡(luò)步長為20,LSTM 神經(jīng)單元隱藏狀態(tài)大小為64,優(yōu)化器使用Adam,學(xué)習(xí)效率選用0.01,目標(biāo)誤差選用0.1,AE 網(wǎng)絡(luò)層數(shù)為2,其余參數(shù)為默認(rèn)值。在集成共享框架中,將滑動(dòng)窗口的步長設(shè)置為24,λ設(shè)置為0.005。
4.2.1 異常檢測(cè)指標(biāo)精度比較
異常數(shù)據(jù)得檢測(cè)是清洗與解釋的基石,其輸出的異常指標(biāo)精度直接影響了清洗結(jié)果的準(zhǔn)確性。為了驗(yàn)證集成共享框架的有效性,本文分別搭建了Bi-RNN[13],SDAE[14]以及LSTM[15]模型作為對(duì)照試驗(yàn),對(duì)比檢測(cè)階段正常數(shù)據(jù)與異常數(shù)據(jù)的重構(gòu)誤差的分化性能,本文通過對(duì)比兩類數(shù)據(jù)的重構(gòu)誤差的均方根誤差(RMSE)評(píng)估模型的異常指標(biāo)精度,RMSE差值越大,模型精度越好。公式如下:
其中為重構(gòu)誤差。風(fēng)電機(jī)組群的性能指標(biāo)均值作為最終結(jié)果數(shù)據(jù)如表1。
表1 不同模型的RMSE對(duì)比
據(jù)表2 可知,LSTM 及LSTM-AE 模型在正常數(shù)據(jù)與異常數(shù)據(jù)的分化上性能明顯優(yōu)于Bi-RNN 與SDAE,這體現(xiàn)出LSTM網(wǎng)絡(luò)對(duì)數(shù)據(jù)時(shí)序性較強(qiáng)的學(xué)習(xí)能力。集成共享框架對(duì)比LSTM-AE 模型RMSE差值明顯提高,驗(yàn)證了集成共享框架對(duì)提升異常檢測(cè)精度的有效性。
4.2.2 不同閾值清洗結(jié)果準(zhǔn)確性比較
異常數(shù)據(jù)清洗算法常見的模型評(píng)價(jià)指標(biāo)矩陣如表2。
自適應(yīng)閾值的性能評(píng)估從以下指標(biāo)中體現(xiàn):
F值為綜合評(píng)Precision和Recall的性能指標(biāo),越大越好。分別計(jì)算固定閾值與自適應(yīng)閾值下模型清洗的性能評(píng)估指標(biāo),將風(fēng)電機(jī)組群的性能指標(biāo)均值作為最終結(jié)果如表3。
表3 不同閾值的F 值對(duì)比
據(jù)表3可知,采用自適應(yīng)閾值得到的F值明顯高于傳統(tǒng)的固定閾值的清洗方法,故本文提出的自適應(yīng)閾值的清洗方法可有效提高對(duì)異常數(shù)據(jù)判定的準(zhǔn)確率。
4.2.3 異常關(guān)鍵性能參數(shù)識(shí)別比較
為驗(yàn)證基于互信息的異常原因解釋方法的有效性,根據(jù)互信息計(jì)算異常數(shù)據(jù)中不同關(guān)鍵性能參數(shù)的占比,結(jié)果如圖4。
圖4 異常關(guān)鍵性能參數(shù)比重圖
據(jù)圖4 可知,風(fēng)速是風(fēng)電機(jī)組的異常關(guān)鍵性能參數(shù)。風(fēng)電機(jī)組作為成熟可靠的大型設(shè)備,風(fēng)速作為外在環(huán)境變量是導(dǎo)致風(fēng)電機(jī)組工況異常的主要原因,符合預(yù)期。風(fēng)輪轉(zhuǎn)速受調(diào)控策略影響,在調(diào)控時(shí)會(huì)出現(xiàn)功率和風(fēng)輪轉(zhuǎn)速的聯(lián)合異常,與圖4 的計(jì)算結(jié)果基本相符,且與風(fēng)電故障診斷研究[16]相符,驗(yàn)證了方法的有效性。
本文針對(duì)實(shí)際應(yīng)用過程中原始數(shù)據(jù)的部分機(jī)組可能會(huì)出現(xiàn)異常數(shù)據(jù)占整體比重過大的情況及傳統(tǒng)固定閾值清洗準(zhǔn)確率較低的問題,提出一種基于LSTM-AE集成共享框架的風(fēng)電機(jī)組異常數(shù)據(jù)檢測(cè)、清洗與解釋方法。通過在訓(xùn)練過程中使用其他機(jī)組的數(shù)據(jù)幫助機(jī)組進(jìn)行模型訓(xùn)練,提高了正常數(shù)據(jù)與異常數(shù)據(jù)的重構(gòu)誤差的分化性能,提升了異常檢測(cè)精度。通過AE網(wǎng)絡(luò)重構(gòu)誤差的在多元高斯分布中的概率密度與重構(gòu)值的非線性期望函數(shù)設(shè)置自適應(yīng)閾值進(jìn)行異常數(shù)據(jù)清洗方法,能根據(jù)運(yùn)行工況自適應(yīng)調(diào)整閾值。通過對(duì)比重構(gòu)誤差中不同性能參數(shù)與概率密度差值的互信息量,給出了異常關(guān)鍵性能參數(shù),可有效幫助風(fēng)電機(jī)組定位故障原因。下一步將針對(duì)數(shù)據(jù)插補(bǔ)的方式修正異常數(shù)據(jù)展開深入研究。