劉 新,常英賢,孫莉莉,張方哲
(1.國(guó)網(wǎng)山東省電力公司電力科學(xué)研究院,山東 濟(jì)南 250003;2.國(guó)網(wǎng)山東省電力公司,山東 濟(jì)南 250001)
信息物理系統(tǒng)[1-2](cyber physical system,CPS)致力于將物理世界與網(wǎng)絡(luò)世界相連,并廣泛應(yīng)用于工業(yè)控制系統(tǒng)(industrial control system,ICS)、配電網(wǎng)、交通、能源等領(lǐng)域。CPS基于通信、計(jì)算機(jī)、網(wǎng)絡(luò)[3]等技術(shù),使人們能夠?qū)崟r(shí)掌握所需的各種信息。結(jié)合CPS的智能電網(wǎng)負(fù)責(zé)電力的傳輸、分配、監(jiān)測(cè)和控制,可以顯著提高電力系統(tǒng)的效率和可靠性。然而,CPS存在一定網(wǎng)絡(luò)安全威脅。黑客可以釋放漏洞,故意造成分支過載跳閘,觸發(fā)級(jí)聯(lián)故障,從而對(duì)智能電網(wǎng)造成重大損害。這些損害輕則影響電力系統(tǒng)正常供電,重則導(dǎo)致重要基礎(chǔ)設(shè)施的快速崩潰。為此,有必要對(duì)智能電網(wǎng)的CPS網(wǎng)絡(luò)安全進(jìn)行研究,從而為電力系統(tǒng)的安全運(yùn)行提供保障。
隨著機(jī)器學(xué)習(xí)技術(shù)的不斷發(fā)展,許多學(xué)者將其引入電力網(wǎng)絡(luò)安全領(lǐng)域,充分挖掘其模式識(shí)別精度高、學(xué)習(xí)能力強(qiáng)和魯棒性強(qiáng)等優(yōu)勢(shì)。文獻(xiàn)[4]從攻防2個(gè)角度對(duì)機(jī)器學(xué)習(xí)在電力CPS網(wǎng)絡(luò)安全領(lǐng)域的應(yīng)用進(jìn)行了歸納總結(jié),探討了機(jī)器學(xué)習(xí)在電力CPS網(wǎng)絡(luò)安全中的應(yīng)用。文獻(xiàn)[5]針對(duì)電力CPS中信息的網(wǎng)絡(luò)故障,利用潮流傳輸、故障潮流分布、系統(tǒng)安全影響3個(gè)指標(biāo)提出電力節(jié)點(diǎn)辨識(shí)模型。文獻(xiàn)[6]提出了容忍階段性故障的協(xié)同網(wǎng)絡(luò)攻擊引發(fā)電網(wǎng)級(jí)聯(lián)故障預(yù)警方法。然而,目前大部分網(wǎng)絡(luò)安全檢查方法仍存在一些缺陷,如電力數(shù)據(jù)高緯度、數(shù)據(jù)不均衡等特點(diǎn)使得傳統(tǒng)機(jī)器學(xué)習(xí)方法無法直接應(yīng)用于電力數(shù)據(jù)檢測(cè)。此外,現(xiàn)有方法的檢測(cè)性能仍有巨大提升空間。
本文設(shè)計(jì)了基于深度學(xué)習(xí)的電力系統(tǒng)網(wǎng)絡(luò)攻擊檢測(cè)模型。該模型主要通過學(xué)習(xí)歷史數(shù)據(jù)和相關(guān)日志信息來檢測(cè)系統(tǒng)中的異常信息。
電力系統(tǒng)網(wǎng)絡(luò)攻擊檢測(cè)模型主要包括4個(gè)部分,分別為特征選擇、數(shù)據(jù)處理、分類模型搭建和多層集成極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)集成學(xué)習(xí)。電力系統(tǒng)網(wǎng)絡(luò)攻擊檢測(cè)模型如圖1所示。
特征重構(gòu)的意義在于通過原始數(shù)據(jù)獲得更靈活的特征信息,從而提高數(shù)據(jù)的敏感性,并增強(qiáng)模型訓(xùn)練和分類的分析能力。此外,在機(jī)器學(xué)習(xí)問題中,訓(xùn)練如包含太多特征,將會(huì)消耗大量計(jì)算開銷,并且容易過度擬合,從而導(dǎo)致模型性能下降。為了減少高維學(xué)習(xí)問題帶來的影響,本文采用改進(jìn)的自適應(yīng)彈性網(wǎng)絡(luò)的方法來選擇特征。
令電力數(shù)據(jù)表示為(xi,yi),i=1,2,…,N。其中:xi=(xi1,xi2,…,xip)為電力變量信息;yi為類別標(biāo)簽。此時(shí),回歸模型可構(gòu)建如下:
(1)
式中:β0和βj分別為截距系數(shù)和回歸系數(shù)。
(2)
(3)
(4)
式中:γ為正實(shí)數(shù)。
根據(jù)上述計(jì)算,可從大量特征中提取重要程度相對(duì)較高的重要特征。進(jìn)一步將這些重要特征組成特征向量并代入深度網(wǎng)絡(luò)學(xué)習(xí)模型,可以在保證低計(jì)算和操作成本前提下,獲取更為精確的分類結(jié)果。
1.2.1 歸一化處理和數(shù)據(jù)填充
數(shù)據(jù)在送入深度學(xué)習(xí)模型之前需要進(jìn)行預(yù)處理操作。數(shù)據(jù)歸一化是數(shù)據(jù)處理的基本操作。其優(yōu)點(diǎn)是可以提高迭代的速度和精度,從而獲得梯度搜索的最優(yōu)解。數(shù)據(jù)歸一化方法主要包括min-max和z-score歸一化操作。本文主要選取z-score歸一化操作,具體描述為:
(5)
式中:X為z-score歸一化后數(shù)據(jù)值;μ為數(shù)據(jù)均值;σ為數(shù)據(jù)標(biāo)準(zhǔn)差。
此外,考慮到電力數(shù)據(jù)中通常存在非數(shù)值(non-numerical,NAN)或無窮大(infinity,INF)值,傳統(tǒng)方法通常采用平均值或0進(jìn)行填充。在處理試驗(yàn)中使用的數(shù)據(jù)集時(shí),本文提出了1種新的邏輯平均值填充方法,以避免數(shù)據(jù)過于離散。邏輯平均值計(jì)算方法為:
(6)
式中:Nki為數(shù)據(jù)中第k個(gè)數(shù)據(jù)序列的第i個(gè)數(shù)據(jù);κ為正實(shí)數(shù)系數(shù);Γ(·)為符號(hào)函數(shù)。
(7)
1.2.2 噪聲數(shù)據(jù)處理
數(shù)據(jù)集中的噪聲問題一直是影響分類或回歸精度的重要難題。通常,電力數(shù)據(jù)中主要存在2種類型的噪聲,分別為類別噪聲和屬性噪聲。類別噪聲是具有錯(cuò)誤類標(biāo)簽的數(shù)據(jù)。屬性噪聲是具有錯(cuò)誤屬性值的數(shù)據(jù)。
考慮到在實(shí)際情況下,與數(shù)據(jù)空間中密集區(qū)域的數(shù)據(jù)相比,位于數(shù)據(jù)稀疏分布區(qū)域的數(shù)據(jù)點(diǎn)出現(xiàn)的概率值更低。因此,可將這些噪聲數(shù)據(jù)視為異常值。為此,本文提出了基于粒子群優(yōu)化(particle swarm optimization,PSO)算法[7]的PSO-K均值(PSO-Kmeans)聚類算法噪聲數(shù)據(jù)處理方法。該方法首先計(jì)算每個(gè)數(shù)據(jù)點(diǎn)的離群值分?jǐn)?shù),從而檢測(cè)噪聲數(shù)據(jù)。隨后,這些噪聲數(shù)據(jù)將在訓(xùn)練集中得到增強(qiáng),以形成噪聲自適應(yīng)訓(xùn)練集。噪聲自適應(yīng)訓(xùn)練集比原始數(shù)據(jù)集具有更多的噪聲數(shù)據(jù)。這將增強(qiáng)模型對(duì)噪聲數(shù)據(jù)的適應(yīng)性,并在一定程度上緩解模型的過擬合問題。PSO-Kmeans算法執(zhí)行流程如圖2所示。
首先,本文隨機(jī)選取K個(gè)節(jié)點(diǎn)作為聚類的初始中心。對(duì)于任意粒子i的編碼,可表示為:
Pi={li,vi,fi}
(8)
式中:li、vi和fi分別為粒子i的位置、速度和適應(yīng)度函數(shù)。
(9)
vi=[v1,v2,...,vk]
(10)
式中:v為粒子計(jì)算聚類中心時(shí)的速度。
(11)
根據(jù)適應(yīng)度函數(shù),計(jì)算任意粒子的局部位置最優(yōu)解lid以及所有粒子的全局位置最優(yōu)解lgd,并更新粒子i的位置以及速度。
v′i=ζvi-c1r1(lid-li)+c2r2(lgd-li)
(12)
式中:v′i為更新后粒子速度;ζ為速度慣性權(quán)重;c1和c2為加速度系數(shù);r1和r2為隨機(jī)向量,且r1和r2中各元素均在[0,1]之間。
l′i=li+vit
(13)
式中:l′i為更新后粒子位置;t為時(shí)間步長(zhǎng)。
ELM[8]模型作為1種單隱層前饋神經(jīng)網(wǎng)絡(luò)(single-hidden layer feedforward neural network,SLFN),可以在不進(jìn)行任何調(diào)整的情況下隨機(jī)選擇輸入權(quán)值和隱含偏差。
對(duì)于任意電力數(shù)據(jù)(xi,yi),輸入向量xi=(xi1,xi2,…,xip)T∈Rp為具有p維特征的第i個(gè)樣本。樣本標(biāo)簽為Y=[y1,y2,…,yN]。其中,p為輸入神經(jīng)元的數(shù)量,即輸入特征個(gè)數(shù)。令:L為隱藏神經(jīng)元的數(shù)量;C為輸出神經(jīng)元的數(shù)量,即輸出類別個(gè)數(shù)。同時(shí),令:輸入權(quán)重矩陣為K=[k1,k2,…,kL];kj=[kj1,kj2,…,kjn]為連接p個(gè)輸入神經(jīng)元和第j個(gè)隱藏神經(jīng)元的向量;b=[b1,b2,…,bj,…,kL]為隱藏神經(jīng)元的偏差;bj為第j個(gè)隱藏神經(jīng)元的偏差。因此,模型中任意輸入xi的輸出為:
h(xi)=G(Kxi+b)
(14)
式中:G(·)為激活函數(shù)。
令H為所有樣本的輸出,則:
(15)
式中:列表示相對(duì)于輸入x1到xN的隱藏節(jié)點(diǎn)的輸出向量;行表示相對(duì)于輸入xj的隱藏層的輸出。
ELM的輸出為:
(16)
式中:αi=[αi1,αi2,…,αiC]T為連接第i個(gè)隱藏節(jié)點(diǎn)與輸出節(jié)點(diǎn)的權(quán)重向量。
當(dāng)對(duì)ELM模型輸出的多組分類器進(jìn)行組合優(yōu)化時(shí),傳統(tǒng)投票或堆疊方法存在一定缺陷。比如,當(dāng)某個(gè)分類器性能明顯低于其他分類器時(shí),將會(huì)對(duì)整個(gè)模型性能產(chǎn)生顯著影響。為此,本節(jié)提出了1種多層集成學(xué)習(xí)模型對(duì)ELM模型分類器進(jìn)行組合優(yōu)化,從而改善“壞值”分類器帶來的不利影響。多層集成ELM模型結(jié)構(gòu)如圖3所示。
令ELM模型輸出的分類器為(Cf1,Cf2,…,CfM)。首先,按順序?qū)?個(gè)分類器利用集成分類器進(jìn)行訓(xùn)練。3個(gè)分類器訓(xùn)練過程可表示為:
(17)
同時(shí),在驗(yàn)證集上對(duì)第一層中的所有集成分類器輸出結(jié)果進(jìn)行驗(yàn)證,從而比較不同分類器的相對(duì)性能。
同理,在下一層集成學(xué)習(xí)中,按順序?qū)?個(gè)上一層集成分類器輸出的結(jié)果再利用集成分類器進(jìn)行訓(xùn)練。4個(gè)第一層集成分類器再次集成訓(xùn)練過程可表示為:
(18)
執(zhí)行完上述過程后,對(duì)下一層輸出的所有分類器進(jìn)行排名統(tǒng)計(jì),即將每個(gè)分類器從獲得最佳性能到獲得最差性能進(jìn)行排名,從而確定每個(gè)分類器在不同評(píng)估度量中的性能指標(biāo)。進(jìn)一步根據(jù)每個(gè)分類器在多個(gè)評(píng)估度量中的平均排名,在測(cè)試集上對(duì)平均排名最高的集成模型進(jìn)行測(cè)試,從而獲得最佳分類結(jié)果。因此,集成模型能夠消除性能持續(xù)性較差的分類器,從而改善模型訓(xùn)練效果。
2.1.1 數(shù)據(jù)集
本文研究所用數(shù)據(jù)集為中國(guó)某變電站通過電源管理單位(power managment unit,PMU)、Snort、控制面板和繼電器等記錄系統(tǒng)記錄運(yùn)行產(chǎn)生的數(shù)據(jù),統(tǒng)計(jì)時(shí)間為2019年1月至2020年12月,采樣頻率為30 min/次。首先,對(duì)原始數(shù)據(jù)集進(jìn)行數(shù)據(jù)清洗,刪除不正確(缺失值超過80%)的數(shù)據(jù)。數(shù)據(jù)清洗后,有效樣本共計(jì)51 809個(gè),可分為正常、單相接地(single-line-to-ground,SLG)故障、線路維護(hù)、數(shù)據(jù)注入攻擊、遠(yuǎn)程跳閘命令注入攻擊、中繼設(shè)置更改攻擊6類。其中,SLG指系統(tǒng)電壓、電流和頻率異常時(shí)導(dǎo)致的故障。電力系統(tǒng)中的SLG故障大部分是線對(duì)地和線對(duì)線(line-to-line,LL)產(chǎn)生的故障。線路維護(hù)指系統(tǒng)維護(hù)時(shí)1條特定線路上的1個(gè)或多個(gè)繼電器被禁用,從而引起的電力數(shù)據(jù)異常。數(shù)據(jù)注入攻擊是1種與電力系統(tǒng)狀態(tài)估計(jì)過程相結(jié)合的重要網(wǎng)絡(luò)攻擊類型。攻擊者通過改變相位角來產(chǎn)生虛假的傳感器信號(hào)。這種類型的攻擊可能對(duì)電力系統(tǒng)造成物理或經(jīng)濟(jì)影響。遠(yuǎn)程跳閘命令注入攻擊是在從通信網(wǎng)絡(luò)上的攻擊計(jì)算機(jī)向傳輸線末端的繼電器發(fā)送繼電器跳閘命令時(shí)引起的電力系統(tǒng)故障。中繼設(shè)置更改攻擊會(huì)改變中繼運(yùn)行狀態(tài),導(dǎo)致繼電器對(duì)有效故障的響應(yīng)不及時(shí),使得電力系統(tǒng)造成無法挽回的經(jīng)濟(jì)損失或安全威脅。
各類數(shù)據(jù)統(tǒng)計(jì)結(jié)果如下:正常數(shù)據(jù)43 472個(gè)、SLG故障4 966個(gè)、線路維護(hù)792個(gè)、注入攻擊891個(gè)、遠(yuǎn)程跳閘命令注入攻擊890個(gè)、中繼設(shè)置更改攻擊798個(gè)。由此可知,該數(shù)據(jù)集具有嚴(yán)重的樣本不均衡性,異常與正常的電力數(shù)據(jù)比約為1∶6.21。
試驗(yàn)環(huán)境設(shè)置如下:硬件為64 GB內(nèi)存和英特爾至強(qiáng)(R)E5-2620 CPU的Ubuntu系統(tǒng)。算法仿真環(huán)境主要基于Python進(jìn)行開發(fā)。
首先,基于PSO-Kmeans算法生成噪聲自適應(yīng)訓(xùn)練集,增強(qiáng)模型對(duì)噪聲數(shù)據(jù)的適應(yīng)性,從而在一定程度上緩解模型的過擬合問題。接著,將噪聲自適應(yīng)訓(xùn)練集代入ELM分類器完成基礎(chǔ)分類器訓(xùn)練,從而消除數(shù)據(jù)不均衡造成的影響。最后,基于多層學(xué)習(xí)機(jī)制,根據(jù)每個(gè)分類器在多個(gè)評(píng)估度量中的平均排名,在測(cè)試集中對(duì)平均排名最高的集成模型進(jìn)行測(cè)試,從而獲得最佳的分類結(jié)果。需注意,為了增強(qiáng)試驗(yàn)的穩(wěn)健性和減少偶然性,對(duì)每組試驗(yàn)重復(fù)執(zhí)行30次,并取所有試驗(yàn)結(jié)果的平均值用于評(píng)估模型的性能。
此外,為綜合分析模型性能,研究選取準(zhǔn)確率、Brier分?jǐn)?shù)、接收者操作特征(receiver operating characterisic,ROC)、曲線下面積(area under curve,AUC)等指標(biāo)對(duì)K最近鄰(K-nearest neighbor,KNN)、隨機(jī)森林(random forest,RF)、支持向量機(jī)(support vector machine,SVM)、卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)、ELM模型進(jìn)行對(duì)比。
2.3.1 特征選擇性能分析
本小節(jié)綜合對(duì)比特征選擇對(duì)模型性能的影響。表1所示為特征提取前后不同模型性能綜合對(duì)比結(jié)果。
表1 特征提取前后不同模型性能綜合對(duì)比結(jié)果
由表1可知,經(jīng)特征提取后,KNN、RF、SVM、CNN、ELM等模型準(zhǔn)確率均有所提升。因此,本文所提的改進(jìn)自適應(yīng)彈性網(wǎng)絡(luò)特征提取方法有助于提高分類器的分類效果。分析原因可知,特征選擇能有效剔除冗余變量以及不相關(guān)的變量,從而有助于提高模型訓(xùn)練效率。
2.3.2 數(shù)據(jù)處理前后對(duì)比分析
本小節(jié)分別對(duì)比、分析了應(yīng)用數(shù)據(jù)處理方法(歸一化和PSO-Kmeans)前后不同模型的性能。噪聲數(shù)據(jù)處理前后不同模型性能對(duì)比結(jié)果如表2所示。
表2 噪聲數(shù)據(jù)處理前后不同模型性能對(duì)比結(jié)果
由表2可知,經(jīng)數(shù)據(jù)處理后,除RF模型準(zhǔn)確率降低外,其余模型準(zhǔn)確率均有所提升。
分析原因可知,RF在嚴(yán)重不平衡數(shù)據(jù)集中獲取有效信息和識(shí)別正樣本的能力相對(duì)較弱,故模型性能無明顯提升。因此,數(shù)據(jù)處理有助于提高分類模型的性能并減少其隨機(jī)性。
2.3.3 多層集成學(xué)習(xí)性能分析
本小節(jié)采用所提方法分別執(zhí)行改進(jìn)自適應(yīng)彈性網(wǎng)絡(luò)特征提取和數(shù)據(jù)處理,并基于多層集成學(xué)習(xí)模型進(jìn)行分類。多層分類器性能統(tǒng)計(jì)結(jié)果如表3所示。與表1和表2相比,多層集成分類器在性能指標(biāo)上均具有明顯優(yōu)勢(shì),最優(yōu)分類器準(zhǔn)確率達(dá)到88.91%。由表3可知,分類器準(zhǔn)確率、Brier分?jǐn)?shù)、AUC等性能指標(biāo)并不是隨著分類器層數(shù)的增加而更優(yōu)。分析原因可知:分類器層數(shù)增多將擴(kuò)大模型規(guī)模,使得需要訓(xùn)練的參數(shù)量呈幾何倍數(shù)增加,從而導(dǎo)致模型調(diào)參困難,使模型容易陷入局部最優(yōu)。
表3 多層分類器性能統(tǒng)計(jì)結(jié)果
本文建立了1種基于深度學(xué)習(xí)的電網(wǎng)網(wǎng)絡(luò)攻擊檢測(cè)模型。該模型可基于改進(jìn)自適應(yīng)彈性網(wǎng)絡(luò)特征提取、歸一化、PSO-Kmeans數(shù)據(jù)處理方法和基于ELM的多層集成學(xué)習(xí)模型有效分類電力數(shù)據(jù),從而提高電力系統(tǒng)網(wǎng)絡(luò)攻擊檢測(cè)能力。首先,本文基于改進(jìn)的自適應(yīng)彈性網(wǎng)絡(luò)模型,從大量電力數(shù)據(jù)中提取重要特征。其次,本文提出了歸一化和PSO-Kmeans噪聲數(shù)據(jù)處理方法,從而增強(qiáng)模型對(duì)噪聲數(shù)據(jù)的適應(yīng)性,并在一定程度上緩解模型過擬合問題。最后,本文基于多層集成模型對(duì)ELM模型分類器進(jìn)行組合優(yōu)化,從而改善“壞值”分類器帶來的不利影響,提高模型分類性能。該模型為電力系統(tǒng)安全管理及穩(wěn)定運(yùn)行提供了一定的借鑒。
未來研究方向包括電力用戶隱私保護(hù)、配電網(wǎng)網(wǎng)絡(luò)安全等方面,從而進(jìn)一步提升配電網(wǎng)數(shù)據(jù)安全與服務(wù)管理水平。