王言國(guó),秦冠軍,蘭金江
(1.南京南瑞繼保電氣有限公司,江蘇 南京 211101;2.中國(guó)三峽新能源(集團(tuán))股份有限公司,北京 100032)
近年來,國(guó)內(nèi)風(fēng)電行業(yè)發(fā)展迅速,隨著風(fēng)電裝機(jī)容量的增加和精細(xì)化運(yùn)維要求的提升,風(fēng)機(jī)故障成為業(yè)主越來越關(guān)注的問題。發(fā)電機(jī)作為核心部件,其溫度過熱往往是發(fā)電機(jī)故障的綜合表現(xiàn)[1]。目前學(xué)術(shù)界已開展了發(fā)電機(jī)溫升故障預(yù)警和風(fēng)機(jī)主軸承故障預(yù)測(cè)的研究[1-5]、風(fēng)機(jī)齒輪箱故障預(yù)測(cè)的研究[6-8]。上述研究在篩選智能算法的自變量時(shí),尚未交代自變量篩選的原則。同時(shí),工程中正常的風(fēng)機(jī)scada樣本數(shù)據(jù)本身存在著數(shù)據(jù)缺失、數(shù)據(jù)異常等各種情況[9],這些異常數(shù)據(jù)會(huì)對(duì)機(jī)器學(xué)習(xí)算法的精度產(chǎn)生很大的影響,但實(shí)際生產(chǎn)環(huán)境下,又無法僅靠人工和固定規(guī)則做數(shù)據(jù)剔除,而上述文獻(xiàn)也尚未給出剔除異常數(shù)據(jù)的自動(dòng)化手段。除了風(fēng)機(jī)本體部件健康狀況外,環(huán)境因素(如風(fēng)速、氣壓、環(huán)境溫度等)是決定風(fēng)機(jī)運(yùn)行工況的重要原因[2,10],而環(huán)境因素的變化趨勢(shì)在小時(shí)級(jí)時(shí)間粒度上是隨機(jī)性的,ARIMA(差分整合移動(dòng)平均自回歸模型,Autoregressive Integrated Moving Average model)等單維度的時(shí)序預(yù)測(cè)算法很難收到預(yù)期的效果,風(fēng)力發(fā)電機(jī)溫度時(shí)序預(yù)測(cè)的研究中必須考慮多維度的影響因素。
該文基于業(yè)務(wù)場(chǎng)景明確了自變量和因變量的非線性關(guān)系,并在此基礎(chǔ)上采用合適的算法做特征篩選;分析了多維時(shí)序數(shù)據(jù)集到有監(jiān)督學(xué)習(xí)數(shù)據(jù)集變換的可行性,從而把多維時(shí)序預(yù)測(cè)轉(zhuǎn)化為回歸算法模型;隨著風(fēng)機(jī)的老化、環(huán)境的變化等影響,風(fēng)機(jī)發(fā)電機(jī)溫度與其特征變量之間的對(duì)應(yīng)關(guān)系也在發(fā)生變化,工程中需要定期基于近期數(shù)據(jù)自動(dòng)更新預(yù)測(cè)模型,面對(duì)龐大的樣本集和多樣的異常數(shù)據(jù),該文把iForest(孤立森林,Isolation Forest)算法[11-12]引入模型訓(xùn)練流程,實(shí)現(xiàn)了異常數(shù)據(jù)剔除的自動(dòng)化;最后通過多種算法的對(duì)比,明確了2階Ridge回歸、XGBoost(極端梯度提升,eXtreme Gradient Boosting)算法[13-14]在本場(chǎng)景中的優(yōu)越性。
本場(chǎng)景的原始數(shù)據(jù)為時(shí)間序列數(shù)據(jù)集,時(shí)序預(yù)測(cè)是根據(jù)前k步的數(shù)據(jù)來預(yù)測(cè)第k+1步至第k+h步的值。對(duì)此,可以把前k步的數(shù)據(jù)視為自變量X,第k+1~第k+h步的數(shù)據(jù)視為因變量Y,轉(zhuǎn)化為有監(jiān)督學(xué)習(xí)數(shù)據(jù)集,進(jìn)而使用有監(jiān)督學(xué)習(xí)算法。
首先,根據(jù)業(yè)務(wù)規(guī)律和預(yù)測(cè)需求確定參數(shù)k和h(為簡(jiǎn)化說明,該文以h=1為例做說明)。對(duì)于時(shí)間序列數(shù)據(jù)集中相鄰的k+1個(gè)向量Xt,Xt+1,…,Xt+k-1,Xt+k,構(gòu)建Xt,Xt+1,…,Xt+k-1與Xt+k的子集Yt+k之間的對(duì)應(yīng)關(guān)系矩陣,如公式(1)。則對(duì)于樣本數(shù)量為n的時(shí)間序列數(shù)據(jù)集,構(gòu)建出的有監(jiān)督學(xué)習(xí)數(shù)據(jù)集樣本數(shù)量為n-k。
(1)
其中,左側(cè)自變量矩陣中每個(gè)X元素為r維向量(r≥1),整個(gè)矩陣為(n-k)*k*r的3D張量,在利用回歸算法構(gòu)建預(yù)測(cè)模型時(shí),自變量矩陣需進(jìn)一步轉(zhuǎn)化為(n-k)*(k*r)的2D張量。實(shí)際使用中,可根據(jù)需要舍棄第2~k列,以便簡(jiǎn)化自變量矩陣;右側(cè)因變量矩陣中每個(gè)Y元素為s維向量(r≥s≥1),整個(gè)矩陣為(n-k)*s的2D張量。
風(fēng)機(jī)的實(shí)時(shí)測(cè)量值有數(shù)百個(gè)之多,若把這些數(shù)據(jù)全用于模型輸入,會(huì)大大增加建模計(jì)算的復(fù)雜度,并極易引起過擬合問題。對(duì)此需要特征優(yōu)選,剔除與預(yù)測(cè)目標(biāo)弱相關(guān)或不相關(guān)的特征。
(2)
其中,n為樣本數(shù)量。
iForest算法[11-12]是基于集成學(xué)習(xí)的快速異常檢測(cè)方法,屬于無監(jiān)督學(xué)習(xí),由多個(gè)iTree(isolation Tree,孤立樹)分類器組成,每個(gè)iTree是一個(gè)二叉樹結(jié)構(gòu)。在構(gòu)建iTree時(shí),先對(duì)數(shù)據(jù)集D隨機(jī)選取一個(gè)特征f,并在該特征的取值范圍內(nèi)隨機(jī)選取一個(gè)分割點(diǎn)p,按特征f把D分割為左右兩部分,若di(f)>p,則數(shù)據(jù)di被劃分在右子樹,反之則劃分在左子樹,循環(huán)遞歸直到每個(gè)數(shù)據(jù)與其他數(shù)據(jù)完全分割開或達(dá)到最大樹層次。風(fēng)電scada數(shù)據(jù)中,異常數(shù)據(jù)要遠(yuǎn)少于正常數(shù)據(jù),則異常數(shù)據(jù)會(huì)更靠近樹的根節(jié)點(diǎn),根據(jù)實(shí)際數(shù)據(jù)集中異常數(shù)據(jù)的出現(xiàn)機(jī)率實(shí)現(xiàn)數(shù)據(jù)過濾。
所述優(yōu)化方法的完整流程如圖1所示。本節(jié)選用風(fēng)電集控系統(tǒng)中某風(fēng)場(chǎng)某風(fēng)機(jī)2021年10月的125個(gè)遙測(cè)量每10分鐘采樣的共計(jì)4 464條記錄為樣本數(shù)據(jù)集,以未來30分鐘的最高發(fā)電機(jī)溫度最大值為預(yù)測(cè)目標(biāo)進(jìn)行建模。
圖1 風(fēng)力發(fā)電機(jī)溫度時(shí)序預(yù)測(cè)方法優(yōu)化流程
先從業(yè)務(wù)角度出發(fā),選擇2021年10月1日到10日之間的“最高發(fā)電機(jī)溫度最大值”以及與此緊密相關(guān)的“平均風(fēng)速”“平均有功功率”“平均發(fā)電機(jī)轉(zhuǎn)速”4個(gè)數(shù)據(jù)每個(gè)整30分鐘1條記錄,共計(jì)480條記錄進(jìn)行數(shù)據(jù)透視(見圖2,橫軸為測(cè)點(diǎn)記錄序號(hào))和ADF檢驗(yàn)(見表1)[21-22],可知除發(fā)電機(jī)轉(zhuǎn)速外,其他數(shù)據(jù)本身非平穩(wěn)序列,即:本數(shù)據(jù)集中選取k大于1的連續(xù)多步自變量數(shù)據(jù),對(duì)因變量的預(yù)測(cè)精度提升并沒有幫助,該文選取k=1。
表1 樣本集關(guān)鍵數(shù)據(jù)ADF檢驗(yàn)
圖2 關(guān)鍵量測(cè)值曲線
首先,從125個(gè)遙測(cè)特征向量中基于業(yè)務(wù)背景去除明顯與目標(biāo)無關(guān)的特征,比如風(fēng)向角度、故障累積時(shí)長(zhǎng)初值等;然后做數(shù)據(jù)重采樣,基于10分鐘數(shù)據(jù)集構(gòu)建30分鐘數(shù)據(jù)集,再按照1.1節(jié)所述的數(shù)據(jù)集變換方法以k=1把2021年10月1日0點(diǎn)0分~2021年10月31日23點(diǎn)0分時(shí)間序列樣本數(shù)據(jù)集轉(zhuǎn)換為包含1 487條記錄的有監(jiān)督學(xué)習(xí)樣本數(shù)據(jù)集。
把數(shù)據(jù)變換得到的有監(jiān)督學(xué)習(xí)樣本數(shù)據(jù)集經(jīng)spearman相關(guān)系數(shù)算法[15-17]得到特征向量與目標(biāo)向量之間的相關(guān)性見表2,經(jīng)隨機(jī)森林算法得到的特征權(quán)重見表3。
表2 各特征與目標(biāo)向量的spearman相關(guān)系數(shù)
表3 基于隨機(jī)森林平均不純度減少方法的特征權(quán)重
在隨機(jī)森林平均不純度減少方法中,對(duì)于相關(guān)聯(lián)的多個(gè)特征,其中任意一個(gè)都可以作為指示器(優(yōu)秀的特征),并且一旦某個(gè)特征被選擇之后,其他相關(guān)聯(lián)特征的重要度就會(huì)急劇下降,因?yàn)椴患兌纫呀?jīng)被選中的那個(gè)特征降下來了,其他的特征就很難再降低更多不純度,這樣一來只有先被選中的那個(gè)特征重要度很高,其他的關(guān)聯(lián)特征重要度往往較低,比如“平均變槳電容2溫度”在表2中排第16位,而在表3中排在第26位,即為此原因。綜合表2、3的特征權(quán)重量化數(shù)據(jù),兼顧“減少特征向量中相關(guān)聯(lián)的多個(gè)特征”和“去除權(quán)重小的特征”兩個(gè)原則,最終剔除“平均變槳電容2溫度”“平均變槳電容3溫度”“平均變槳逆變器2溫度”“最高Topbox溫度”“平均發(fā)電機(jī)后軸承溫度1”共計(jì)5個(gè)向量,特征個(gè)數(shù)縮小為21個(gè)。
風(fēng)場(chǎng)scada系統(tǒng)中的數(shù)據(jù)質(zhì)量受到以下因素的影響:
(1)作為數(shù)據(jù)源頭的風(fēng)機(jī)主控送出的數(shù)據(jù)本身存在小概率的錯(cuò)誤,比如在諸多風(fēng)機(jī)型號(hào)上都發(fā)現(xiàn)過的發(fā)電量數(shù)據(jù)跳變問題。
(2)數(shù)據(jù)以風(fēng)機(jī)主控為源頭,經(jīng)過風(fēng)機(jī)能量管理系統(tǒng)、風(fēng)場(chǎng)網(wǎng)關(guān)機(jī)、集控通信服務(wù)器等多個(gè)數(shù)據(jù)傳輸環(huán)節(jié),中間難免出現(xiàn)通信中斷等異常情況,造成最終的數(shù)據(jù)失真或錯(cuò)誤。
經(jīng)過對(duì)多個(gè)風(fēng)電集控項(xiàng)目中數(shù)十個(gè)風(fēng)場(chǎng)數(shù)據(jù)質(zhì)量的研究統(tǒng)計(jì),得到風(fēng)電集控scada中壞數(shù)據(jù)出現(xiàn)的機(jī)率一般在3%~5%之間,該文的場(chǎng)景可用數(shù)據(jù)充足,以臟數(shù)據(jù)過濾比例為5%做iForest模型訓(xùn)練和預(yù)測(cè),做臟數(shù)據(jù)的剔除。
以4∶1的比例把上述數(shù)據(jù)集切分為訓(xùn)練集和測(cè)試集,分別構(gòu)建2階多項(xiàng)式ridge回歸[23]、多層感知機(jī)(MLP)回歸[24]、XGBoost回歸[13-14]、基于LSTM構(gòu)建深度學(xué)習(xí)多維時(shí)序預(yù)測(cè)網(wǎng)絡(luò)模型[25-27],在同一計(jì)算環(huán)境下進(jìn)行橫向?qū)Ρ葘?shí)驗(yàn),以均方誤差、解釋方差、R2 score作為衡量模型精度的指標(biāo)。以上4種預(yù)測(cè)模型超參數(shù)全部經(jīng)網(wǎng)格搜索得到近似最優(yōu)模型,最終各模型精度見表4。模型精度指標(biāo)中,均方誤差MSE是Mean Squared Error的簡(jiǎn)寫,是預(yù)測(cè)數(shù)據(jù)偏離真實(shí)值差值的平方和的平均數(shù),值越小代表模型預(yù)測(cè)越準(zhǔn)確,算法見公式(3)??山忉尫讲頔var是Explained Variance的簡(jiǎn)寫,衡量的是所有預(yù)測(cè)值和樣本之間的差的分散程度與樣本本身的分散程度的相近程度,值越接近1表示預(yù)測(cè)值和樣本值的分散分布程度越相近,模型預(yù)測(cè)越準(zhǔn)確,算法見公式(4)。R2 score又名決定系數(shù),算法見公式(5),值可以為負(fù)值,值越接近1,代表模型預(yù)測(cè)效果越好。分析可知在該場(chǎng)景下深度學(xué)習(xí)模型比MLP簡(jiǎn)單神經(jīng)網(wǎng)絡(luò)要好,但2階Ridge回歸、XGBoost回歸在更少的計(jì)算資源消耗下,取得了更好的效果。圖3展示了對(duì)1 487條樣本按1/5的比例取得的297條測(cè)試集用4種方法建模預(yù)測(cè)數(shù)據(jù)與實(shí)際數(shù)據(jù)的對(duì)比。
表4 各模型預(yù)測(cè)精度
圖3 測(cè)試實(shí)際數(shù)據(jù)與各模型預(yù)測(cè)數(shù)據(jù)曲線對(duì)比
(3)
(4)
(5)
以單純spearman做特征優(yōu)選過濾掉最后5個(gè)特征、不做臟數(shù)據(jù)過濾,以2階Ridge回歸、XGBoost回歸構(gòu)建預(yù)測(cè)模型,在同一計(jì)算環(huán)境下進(jìn)行橫向?qū)Ρ葘?shí)驗(yàn),其模型精度見表5優(yōu)化前后的對(duì)比。
表5 優(yōu)化前后各模型預(yù)測(cè)精度
由表5可知,優(yōu)化后2階Ridge回歸模型的均方誤差降低了0.8,可解釋方差、R2 score在0.870精度基礎(chǔ)上分別提高了0.014、0.012,計(jì)算耗時(shí)降低了5%左右。XGBoost回歸模型的均方誤差降低了0.8,可解釋方差、R2 score在0.910精度基礎(chǔ)上分別提高了0.010、0.009,計(jì)算耗時(shí)降低了3%左右。
該文在前人研究的基礎(chǔ)上對(duì)風(fēng)力發(fā)電機(jī)溫度時(shí)序預(yù)測(cè)建模過程進(jìn)行了多環(huán)節(jié)的優(yōu)化,通過數(shù)據(jù)集轉(zhuǎn)換將時(shí)間序列數(shù)據(jù)集轉(zhuǎn)換為有監(jiān)督學(xué)習(xí)數(shù)據(jù)集,通過量化自變量和因變量之間的非線性關(guān)系進(jìn)行更合理的特征篩選,基于無監(jiān)督學(xué)習(xí)算法實(shí)現(xiàn)了異常數(shù)據(jù)剔除的自動(dòng)化,通過多種回歸模型的對(duì)比優(yōu)選出精度更高的預(yù)測(cè)算法。本研究成果已應(yīng)用于多個(gè)新能源集控工程項(xiàng)目,實(shí)現(xiàn)了風(fēng)力發(fā)電機(jī)溫度超限提前預(yù)警,預(yù)測(cè)效果良好。同時(shí),作者把該優(yōu)化方法應(yīng)用于風(fēng)機(jī)軸承溫度超限提前預(yù)警、風(fēng)力發(fā)電機(jī)機(jī)艙溫度超限提前預(yù)警等多個(gè)類似的場(chǎng)景,同樣提高了預(yù)測(cè)精度。該數(shù)據(jù)轉(zhuǎn)換案例是以時(shí)間步數(shù)k=1、預(yù)測(cè)步數(shù)h=1來組織數(shù)據(jù)集的,未來可結(jié)合不同應(yīng)用場(chǎng)景,研究更長(zhǎng)時(shí)間步數(shù)的數(shù)據(jù)集轉(zhuǎn)換應(yīng)用效果。