於立峰,胡凱波,夏志凌,沙建飛
(浙江浙能蘭溪發(fā)電有限責(zé)任公司,浙江 金華 321100)
電力信息物理融合系統(tǒng)(Cyber-Physical-System,CPS)是集人工智能、自動(dòng)化技術(shù)、通信技術(shù)等各項(xiàng)技術(shù)為一體,將各項(xiàng)設(shè)備融合在一起,形成多層、動(dòng)態(tài)感知和智能控制的大型系統(tǒng)。由于涉及設(shè)備多,技術(shù)復(fù)雜,傳統(tǒng)的物理機(jī)制很難保證CPS絕對(duì)安全。因此,CPS的安全性成為當(dāng)前研究的重點(diǎn)。與傳統(tǒng)的互聯(lián)網(wǎng)網(wǎng)絡(luò)攻擊不同,對(duì)電力CPS的網(wǎng)絡(luò)攻擊不是為了獲取用戶數(shù)據(jù),而是通過攻擊使網(wǎng)絡(luò)癱瘓,進(jìn)而引發(fā)一系列的連鎖反應(yīng)。對(duì)此,周秀瑩等[1]采用卡爾曼濾波對(duì)拒絕服務(wù)攻擊的CPS網(wǎng)絡(luò)安全進(jìn)行評(píng)估,結(jié)果驗(yàn)證了該模型的有效性;武津園等[2]則提出構(gòu)造與雅克比矩陣列向量線性相關(guān)的攻擊矢量,從而實(shí)現(xiàn)對(duì)虛假數(shù)據(jù)注入攻擊(false data injection attacks,F(xiàn)DIA)進(jìn)行狀態(tài)估計(jì)檢測(cè),結(jié)果表明傳統(tǒng)不良檢測(cè)對(duì)FDIA具有局限性;部分研究者也提出采用支持向量機(jī)(Support Vector Machines,SVM)、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)、生成式對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)和極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)等對(duì)CPS網(wǎng)絡(luò)安全進(jìn)行檢測(cè)[3-6],均取得良好效果。但冗余特征的存在在一定程度上降低了算法的精度。而集成算法作為機(jī)器學(xué)習(xí)算法的重要組成部分,其在識(shí)別精度和海量數(shù)據(jù)處理效率上的優(yōu)勢(shì),非常適用于網(wǎng)絡(luò)攻擊識(shí)別。基于此,本研究提出一種基于改進(jìn)集成學(xué)習(xí)算法的CPS網(wǎng)絡(luò)攻擊識(shí)別方法,并對(duì)該方法的適用性進(jìn)行驗(yàn)證。
作為一種經(jīng)典的集成學(xué)習(xí)算法,隨機(jī)梯度提升機(jī)(Light Gradient Boosting Machine,Lightgbm)集成算法是通過梯度提升的方式對(duì)每一棵決策樹進(jìn)行訓(xùn)練,直至遍歷全部決策樹的訓(xùn)練過程。其憑借可支持并行學(xué)習(xí)、占用較少內(nèi)存、訓(xùn)練效率高、數(shù)據(jù)處理快等特點(diǎn),能滿足海量的電力CPS網(wǎng)絡(luò)攻擊數(shù)據(jù)的處理需求。因此,將其應(yīng)用于網(wǎng)絡(luò)攻擊識(shí)別模型,可以大幅度提升網(wǎng)絡(luò)攻擊識(shí)別效率。Lightgbm算法在梯度提升樹(Gradient Boosting Decision Tree,GBDT)算法的基礎(chǔ)上,融入了直方圖算法、帶深度限制的leaf-wise的葉子生長方式,從而實(shí)現(xiàn)更優(yōu)異的算法性能。
在CPS網(wǎng)絡(luò)攻擊中,部分網(wǎng)絡(luò)攻擊樣本空間分布異常,導(dǎo)致對(duì)樣本的分類難度較大。為了提高Lightgbm分類器對(duì)困難樣本的分類精度,引入焦點(diǎn)損失函數(shù)對(duì)Lightgbm算法進(jìn)行改進(jìn),從而提高Lightgbm分類器的學(xué)習(xí)能力。
Lightgbm算法的原始對(duì)數(shù)損失函數(shù)為[7]
式(1)中,L[yi,F(xiàn)m-1(xi;Am-1)]是真實(shí)值yi與預(yù)測(cè)值之間的誤差函數(shù),pj是樣本i被預(yù)測(cè)為類別j的概率,Am-1是前m-1棵樹的參數(shù)集合,F(xiàn)m-1(xi;Am-1)是由當(dāng)前m-1棵決策樹組成的模型在參數(shù)為Am-1的條件下對(duì)輸入樣本xi的預(yù)測(cè)值。
改進(jìn)的焦點(diǎn)損失函數(shù)為
式(2)中,(1-pj)表示調(diào)節(jié)因子。
在樣本被錯(cuò)分下,pj≈0,(1-pj)≈1,表示損失不受影響;在樣本被正確分類下,pj≈1,(1-pj)≈0,表示正確分類概率較大的樣本其權(quán)重被降低。
引入焦點(diǎn)損失函數(shù)后,利用錯(cuò)分樣本對(duì)分類器進(jìn)行訓(xùn)練,這樣可提高分類器下一次迭代的分類精度。
利用經(jīng)焦點(diǎn)損失函數(shù)改進(jìn)的Lightgbm算法構(gòu)建攻擊檢測(cè)模型,具體數(shù)學(xué)描述:設(shè)網(wǎng)絡(luò)攻擊數(shù)據(jù)集為T={(x1,y1),(x2,y2),…,(xN,yN)},利用改進(jìn)后的Lightgbm算法構(gòu)建電力CPS網(wǎng)絡(luò)攻擊的識(shí)別模型,其輸出值為
如果網(wǎng)絡(luò)攻擊識(shí)別模型的輸出結(jié)果是0,意味著電力CPS并未遭受網(wǎng)絡(luò)攻擊;如果輸出結(jié)果是1,意味著電力CPS遭受量測(cè)數(shù)據(jù)篡改攻擊;如果輸出結(jié)果是2,意味著電力CPS遭受控制信號(hào)篡改攻擊;如果輸出結(jié)果是3,意味著電力CPS遭受設(shè)備信息篡改攻擊。
以上網(wǎng)絡(luò)攻擊識(shí)別步驟如圖1所示。首先是網(wǎng)絡(luò)攻擊數(shù)據(jù)預(yù)處理,其次是網(wǎng)絡(luò)攻擊識(shí)別最優(yōu)特征子集,最后是網(wǎng)絡(luò)攻擊識(shí)別模型構(gòu)建。前兩步是為了攻擊識(shí)別做數(shù)據(jù)處理準(zhǔn)備,先通過引用中心化K均值聚類(K-means clustering algorithm,K-means)算法對(duì)數(shù)據(jù)進(jìn)行聚類,降低網(wǎng)絡(luò)攻擊識(shí)別的誤報(bào)率[8];再通過引用最大聯(lián)合互信息(Joint Mutual Information Maximisation,JMIM)算法,提高了網(wǎng)絡(luò)攻擊的識(shí)別精度及識(shí)別效率[9];最后利用改進(jìn)的焦點(diǎn)損失函數(shù)對(duì)Lightgbm分類器進(jìn)行改進(jìn),并在最優(yōu)特征子集上進(jìn)行訓(xùn)練,由此構(gòu)建起網(wǎng)絡(luò)攻擊識(shí)別模型。
圖1識(shí)別模型的特點(diǎn)在于,一是加強(qiáng)了對(duì)數(shù)據(jù)的預(yù)處理,從而為攻擊精度的提高奠定基礎(chǔ);二是引入焦點(diǎn)損失函數(shù)和貝葉斯網(wǎng)絡(luò),以此得到最優(yōu)分類器。
本試驗(yàn)數(shù)據(jù)通過Uttam Adhikari等收集,具體網(wǎng)絡(luò)采集拓?fù)浣Y(jié)構(gòu)如圖2所示。
通過以上采集,得到112032條數(shù)據(jù),涵蓋控制信號(hào)篡改攻擊樣本(CSTA)、量測(cè)數(shù)據(jù)篡改攻擊樣本(MDTA)、非攻擊事件樣本(NO-ATT)、設(shè)備信息篡改樣本(DITA)等四種類型。
同時(shí),K均值采用獲取的偽樣本滿足電力數(shù)據(jù)特性,因此未對(duì)偽樣本和原始數(shù)據(jù)進(jìn)行劃分,而是將它們隨機(jī)混合,建立新的數(shù)據(jù)集。
試驗(yàn)平臺(tái)選擇Python3.7,并應(yīng)用Bayesianoptimization、Matplotlib等工具包。
3.2.1 最優(yōu)特征子集選擇
為使模型輕量化,對(duì)數(shù)據(jù)進(jìn)行降維和去冗余處理,以縮減模型的訓(xùn)練時(shí)間,提高模型的識(shí)別效率。參考王達(dá)等[10]的經(jīng)驗(yàn),引入JMIM特征選擇算法,從原始數(shù)據(jù)中篩選出K個(gè)與數(shù)據(jù)標(biāo)注互信息最高的特征,將之構(gòu)造出網(wǎng)絡(luò)攻擊識(shí)別最優(yōu)特征子集。同時(shí)通過K均值算法合成少數(shù)類樣本,解決因數(shù)據(jù)缺失造成的干擾問題。
3.2.2 網(wǎng)絡(luò)攻擊識(shí)別方法指標(biāo)評(píng)價(jià)
本次試驗(yàn)選用精度(Precision,Pre)、準(zhǔn)確率(Accuracy,Acc)、召回率(Recall,Rec)、F1值對(duì)網(wǎng)絡(luò)攻擊識(shí)別方法的性能進(jìn)行評(píng)價(jià)[7]。
3.3.1 Lightgbm參數(shù)設(shè)置
n_estimators參數(shù)直接影響Lightgbm算法的應(yīng)用性能。為得到最優(yōu)參數(shù),引入貝葉斯算法優(yōu)化參數(shù)。通過優(yōu)化,參數(shù) num_leaves=19,Max_bin=185,min 5phl gain=0.78,Lambda_11=0.07,min_data_in_leaf=19,Bagging_fraction=0.47,F(xiàn)eature_fraction=0.48,Lambda_12=0.06,max_depth=5,learning_rate=0.013。
3.3.2 網(wǎng)絡(luò)攻擊識(shí)別性能分析
根據(jù)圖1中的模型,對(duì)CSTA、MDTA、NO-ATT、DITA的四種數(shù)據(jù)類型進(jìn)行識(shí)別,得到圖3的識(shí)別結(jié)果。
由圖3可見,DITA、MDTA、CSTA的網(wǎng)絡(luò)攻擊識(shí)別精度依次是97.03%、96.16%、98.85%,整體水平良好。另外,NO-ATT的識(shí)別精度達(dá)到98.02%,這意味著該方法的誤報(bào)率比較低。
依據(jù)圖3的數(shù)據(jù),構(gòu)建受試者工作特征曲線(receiver operating characteristic curve,ROC)、精度-召回率曲線,具體如圖4和圖5所示。
由圖4中的ROC曲線可知,四種數(shù)據(jù)類型所對(duì)應(yīng)的ROC曲線均在低FP值的條件下實(shí)現(xiàn)快速收斂,最終收斂至(0,1)點(diǎn),此外,MDTA、CSTA、DITA攻擊識(shí)別的Acc值均高于0.99,說明本研究構(gòu)建的方法具有誤報(bào)率低的應(yīng)用優(yōu)勢(shì)。根據(jù)精度-召回率曲線來看,MDTA、CSTA、DITA、NO-ATT所對(duì)應(yīng)的精度-召回率曲線均在高召回率的條件下實(shí)現(xiàn)快速收斂,最終收斂至(1,1)點(diǎn),再次驗(yàn)證了本研究所構(gòu)建的方法的可靠性。
3.3.3 小樣本下的模型性能驗(yàn)證
以上模型是針對(duì)海量采集的數(shù)據(jù),不一定適用于少量的數(shù)據(jù)分類。對(duì)此,以上述數(shù)據(jù)為基礎(chǔ),構(gòu)建15個(gè)小樣本的CPS網(wǎng)絡(luò)攻擊數(shù)據(jù)對(duì)本方法的應(yīng)用性能進(jìn)行檢驗(yàn),以證實(shí)模型對(duì)小樣本同樣具有較高的適用性。試驗(yàn)采用F1值指標(biāo)進(jìn)行評(píng)價(jià),具體結(jié)果如圖6所示。
從圖6看出,針對(duì)小樣本數(shù)據(jù)集,算法對(duì)于網(wǎng)絡(luò)攻擊識(shí)別的平均F1值分別是96.82%和92.66%,而K-means-Lightgbm方法、K-means-JMIM-Lightgbm方法的平均F1值分別是94.92%、96.06%。由此可見,與Lightgbm算法相比,執(zhí)行每一步優(yōu)化,網(wǎng)絡(luò)攻擊識(shí)別F1值都有所提升。因此,本研究構(gòu)建的方法在小樣本數(shù)據(jù)集下的適用性良好,不受樣本規(guī)模的限制。
3.3.4 不同算法對(duì)比
同樣以上述數(shù)據(jù)集為基礎(chǔ),比較分析本方法與多種機(jī)器學(xué)習(xí)算法[決策樹(Decision Trees,DT)、SVM、人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)、邏輯回歸(Logistic regression,LR)、最鄰近分類算法(K-Nearest Neighbor,KNN)]以及集成學(xué)習(xí)算法(GBDT算法、Xgboost算法、Adaboost算法、投票分類器)的識(shí)別指標(biāo),結(jié)果如圖7所示。
從圖7看出,本研究提出的模型相較于其他傳統(tǒng)算法在網(wǎng)絡(luò)攻擊識(shí)別精度以及算法適用性方面具有優(yōu)勢(shì)。具體來說,本模型相較于傳統(tǒng)集成學(xué)習(xí)算法對(duì)于網(wǎng)絡(luò)攻擊的識(shí)別準(zhǔn)確率高出10.78%,平均精度高出8.67%,平均召回率高出17.29%,以及平均F1值高出14.2%;本模型相較于傳統(tǒng)機(jī)器學(xué)習(xí)算法對(duì)網(wǎng)絡(luò)攻擊的識(shí)別準(zhǔn)確率高出29.08%,平均精度高出51.44%,平均召回率高出52.14%,以及平均F1值高出53.75%。
3.3.5 模型抗噪聲性能驗(yàn)證
向最優(yōu)網(wǎng)絡(luò)攻擊識(shí)別特征子集中添加噪聲,從而模擬PMU的量測(cè)誤差,用以檢驗(yàn)?zāi)P驮诓煌肼晱?qiáng)度下對(duì)網(wǎng)絡(luò)攻擊的識(shí)別精度。遵照IEEEC37.118標(biāo)準(zhǔn),信噪比為45 dB、40 dB、30 dB、20 dB的高斯白噪聲對(duì)應(yīng)于PMU的量測(cè)誤差是0.01%、0.1%、1%、3%。在添加噪聲的條件下,利用本模型進(jìn)行網(wǎng)絡(luò)攻擊識(shí)別的F1值具體評(píng)估結(jié)果,如圖8所示。
在逐步提高噪聲強(qiáng)度的過程中,F(xiàn)1值緩慢降低,說明本模型具備強(qiáng)大的抗噪聲性能,雖然受到高斯白噪聲的干擾,但仍然保持著較為理想的識(shí)別性能。同時(shí)在小樣本中,該方法得到的指標(biāo)也明顯降低。由此得出,本模型無論是針對(duì)大樣本還是小樣本,都具有抗噪特性,能夠在噪聲干擾下對(duì)CPS網(wǎng)絡(luò)攻擊進(jìn)行精準(zhǔn)識(shí)別,具有強(qiáng)大的適用性。
綜上所述,本研究構(gòu)建的模型針對(duì)不同攻擊樣本的識(shí)別精度具有明顯的優(yōu)勢(shì),都超過95%的識(shí)別準(zhǔn)確度,且通過精度-召回率曲線看出,該算法能快速收斂。通過與其他算法的對(duì)比,該模型在精度、F1值等方面較高,而且本模型也表現(xiàn)出良好的抗干擾能力。說明本研究所構(gòu)建的模型不僅表現(xiàn)出良好的性能,還具有很強(qiáng)的適用性。