方 舟,裘煒浩,季 超,夏鵬飛,龔康家,周后盤
(1.國網(wǎng)浙江省電力有限公司信息通信分公司,杭州 310007;2.杭州電子科技大學,杭州 310018)
線損率是電力企業(yè)一項重要的綜合性技術(shù)經(jīng)濟指標,不但能反映電網(wǎng)結(jié)構(gòu)和運行方面的合理性,而且可以反映電力企業(yè)的技術(shù)和經(jīng)營管理水平[1]。低壓臺區(qū)作為電力系統(tǒng)的末端環(huán)節(jié),快速準確預測低壓臺區(qū)線損率,為制定合理的降損措施提供依據(jù)是供電企業(yè)的重要任務[2]。在實際電力生產(chǎn)中,影響線損率的因素是復雜的,這給線損率預測帶來一定難度。因此,如何建立一個合理有效的線損率預測模型值得進一步研究。
為了建立一個合理有效的線損率預測模型,學者們進行了許多研究,提出了各種預測模型。文獻[3]采用核偏最小二乘法進行線損率預測,核偏最小二乘回歸可以看做是多元線性回歸分析、典型相關分析、主成分分析三者的結(jié)合,該預測模型適合特征值較少的方法,特征值較多使該預測模型計算量過大。文獻[4]采用GM(1,1)灰色模型,能夠在歷史數(shù)據(jù)不多的情況下,找到線損率預測量的內(nèi)在規(guī)律,但它只在影響電力系統(tǒng)線損的因素不出現(xiàn)很大變化的前提下適用。多元線性回歸法在實際應用中,由于選擇的變量之間往往存在很強的相互關系,導致其在建模精度和回歸精度上都存在一定的不足。文獻[5]提出了一種基于快速獨立成分分析和支持向量回歸的計算方法。智能算法的一個不可避免的問題是特征的選擇,而特征多為有功功率、無功功率、線路長度、配電變壓器容量等,沒有綜合考慮上月線損率、同期線損率、同期累計線損率等歷史線損數(shù)據(jù)對線損的影響。
聚類是一種無監(jiān)督的學習,即聚類是不需要類別的標注,通過聚類可以實現(xiàn)在大量數(shù)據(jù)中歸類相似的數(shù)據(jù)[6]。最常見的聚類方法是K-Means算法,而K-Means++算法是基于K-Means 算法改進的,K-Means++在選取第1 個聚類中心時是隨機產(chǎn)生的,與K-Means 算法相同,但是在選取第n+1(n是正整數(shù))個聚類中心時,K-Means++算法是選擇距離當前n個聚類中心最遠的點做為第n+1 個聚類中心,可以說這也符合我們的直覺:聚類中心當然是互相離得越遠越好[7]。這個改進雖然直觀簡單,但是卻非常有效。
K-Means++算法中的K 表示的是聚類為K個簇,Means 代表取每一個聚類中數(shù)據(jù)值的均值作為該簇的中心,或者稱為質(zhì)心,即用每一類的質(zhì)心對該簇進行描述。通過計算各個K 值對應的輪廓系數(shù)來確定最優(yōu)聚類數(shù)K[8]。輪廓系數(shù)計算公式:
式中:a(i)是樣本x與簇內(nèi)的其他點之間的平均距離;b(i)是樣本x與最近簇中所有點之間的平均距離。
由輪廓系數(shù)計算公式可分析得s(i)接近1 則說明樣本聚類合理,則選擇輪廓系數(shù)接近1 的聚類數(shù)為最優(yōu)聚類數(shù)K。
GAN(對抗生成網(wǎng)絡)是一種深度學習模型,是近年來最具前景的無監(jiān)督學習之一[9]。對抗生成網(wǎng)絡中包含兩個網(wǎng)絡:生成網(wǎng)絡和判別網(wǎng)絡,對抗生成網(wǎng)絡結(jié)構(gòu)如圖1 所示[10]。
圖1 對抗生成網(wǎng)絡結(jié)構(gòu)
生成網(wǎng)絡G:不斷學習訓練集中真實數(shù)據(jù)的概率分布,目標是將輸入的隨機噪聲數(shù)據(jù)轉(zhuǎn)化為可以以假亂真的數(shù)據(jù)。判別網(wǎng)絡D:判斷一個數(shù)據(jù)是否是真實的數(shù)據(jù),目標是將生成網(wǎng)絡G產(chǎn)生的“假”數(shù)據(jù)與訓練集中的“真”數(shù)據(jù)分辨開[11]。訓練過程中通過相互競爭讓這兩個網(wǎng)絡同時得到增強,G和D構(gòu)成一個動態(tài)的“博弈過程”[12]。對于對抗生成網(wǎng)絡來說,其判別網(wǎng)絡、生成網(wǎng)絡的損失函數(shù)分別定義為:
式中:z為噪音數(shù)據(jù);x為真實數(shù)據(jù);D為判別網(wǎng)絡;G為生成網(wǎng)絡。
隨著時間的推移生成網(wǎng)絡和判別網(wǎng)絡不斷進行對抗,最終兩個網(wǎng)絡達到一個動態(tài)平衡:生成網(wǎng)絡生成的數(shù)據(jù)G(z)接近于真實數(shù)據(jù)分布,而判別網(wǎng)絡識別不出生成網(wǎng)絡生成的數(shù)據(jù)G(z)。最后,我們就可以使用生成網(wǎng)絡來生成數(shù)據(jù)。
BP 神經(jīng)網(wǎng)絡是由Rumelhart 和McClelland 為首的科學家提出的概念,它是一種按照誤差逆向傳播算法訓練的多層前饋神經(jīng)網(wǎng)[13]。BP 神經(jīng)網(wǎng)絡的過程主要分為兩個階段,第一階段是信號的前向傳播,從輸入層經(jīng)過隱含層,最后到達輸出層;第二階段是誤差的反向傳播,從輸出層到隱含層,最后到輸入層,依次調(diào)節(jié)隱含層到輸出層的權(quán)重和偏置以及輸入層到隱含層的權(quán)重和偏置[14]。
本文結(jié)合低壓臺區(qū)歷史線損數(shù)據(jù),提出了一種基于對抗生成網(wǎng)絡與BP 神經(jīng)網(wǎng)絡的低壓臺區(qū)線損率預測模型,如圖2 所示。
圖2 低壓臺區(qū)線損預測模型結(jié)構(gòu)
某市電網(wǎng)公司提供了50 000 條低壓臺區(qū)線損相關數(shù)據(jù),臺區(qū)線損率按月統(tǒng)計,空間范圍是某市所有低壓臺區(qū),時間范圍是2016 年1 月至2018 年9 月。選取的特征屬性包括:合計供電量(T_PPQ)、線損率(L_LLR)、上月線損率(L_LM_LLR)、同期線損率(L_PERIOD_LLR)、同期累計線損率(ACCU_PERIOD_LLR)、臺區(qū)容量(TG_CAP)、總戶數(shù)(TOTAL_USER_NUM)。
2.2.1 數(shù)據(jù)預處理
首先對原始數(shù)據(jù)進行預處理,包括刪除空數(shù)據(jù)、去掉不符合業(yè)務實際的異常數(shù)據(jù),再將這些處理后的數(shù)據(jù)進行歸一化處理,最后整理在一張表中保存以備用。歸一化處理格式如式(4)所示:
式中:x 為樣本數(shù)據(jù),x=[x1,x2,x3,…,xn],n 為樣本個數(shù);xmax為樣本中的最大值;xmin為樣本中的最小值;xi為單個樣本。
2.2.2 低壓臺區(qū)數(shù)據(jù)分類
對于相似的低壓臺區(qū),其線損率應該是相似的。從保存的表中取出T_PPQ、TOTAL_USER_NUM 兩個特征值,對所有臺區(qū)進行K-Means++聚類,計算各個K 值對應的輪廓系數(shù),并選擇輪廓系數(shù)最接近1 的聚類數(shù)為最優(yōu)聚類數(shù)。各個K值對應的輪廓系數(shù)見圖3。由圖3 可知K=2 時輪廓系數(shù)更接近1。
圖3 輪廓系數(shù)柱狀圖
通過K-Means++算法把低壓臺區(qū)分為2 類,分別記為A 類和B 類。A 類和B 類的數(shù)據(jù)數(shù)量見圖4。對比A 類、B 類臺區(qū)數(shù)據(jù)發(fā)現(xiàn),A 類低壓臺區(qū)大部分是用戶數(shù)量、供電量均較多的,B 類低壓臺區(qū)大部分用戶數(shù)量、供電量均較少的。
圖4 聚類后數(shù)量比例餅圖
2.2.3 低壓臺區(qū)數(shù)據(jù)增加
從圖4 可知A 類臺區(qū)數(shù)量為10 679 條、B類臺區(qū)數(shù)量為8 393 條,對于BP 神經(jīng)網(wǎng)絡來說訓練的樣本數(shù)量較少,則可以利用對抗生成網(wǎng)絡來訓練一個判別網(wǎng)絡和一個生成網(wǎng)絡,通過生成網(wǎng)絡增大樣本數(shù)據(jù)。
真實數(shù)據(jù)是由L_LLR、L_LM_LLR、L_PERIOD_LLR、ACCU_PERIOD_LLR、TG_CAP 組成的向量,對抗生成網(wǎng)絡噪音數(shù)據(jù)是(-1,1)之間的隨機數(shù),維度與真實數(shù)據(jù)相同。將噪音數(shù)據(jù)輸入生成網(wǎng)絡里產(chǎn)生偽造數(shù)據(jù),判別網(wǎng)絡對偽造數(shù)據(jù)和真實數(shù)據(jù)進行分辨。生成對抗網(wǎng)絡結(jié)構(gòu)如圖5所示。
圖5 生成對抗網(wǎng)絡結(jié)構(gòu)
隨著時間的推移生成網(wǎng)絡和判別網(wǎng)絡不斷進行對抗,使生成網(wǎng)絡、判別網(wǎng)絡損失函數(shù)下降直到得到最小值。A 類、B 類對抗生成網(wǎng)絡損失函數(shù)分別如圖6、7 所示。從圖中可以看出,A 類、B 類對抗生成網(wǎng)絡中判別網(wǎng)絡均在訓練到300 輪左右時損失函數(shù)接近1,此時獲得較好分類效果。在訓練到400 輪時,A 類、B 類對抗生成網(wǎng)絡中生成器的參數(shù)優(yōu)化到可以使得損失函數(shù)結(jié)果較低的程度,說明其可以較為穩(wěn)定地輸出樣本數(shù)據(jù)。
圖6 A 類對抗生成網(wǎng)絡損失函數(shù)
通過生成器來增加A 類、B 類低壓臺區(qū)的線損數(shù)據(jù),根據(jù)實驗的實際情況,使用A 類生成網(wǎng)絡、B 類生成網(wǎng)絡分別產(chǎn)生6 000 條線損數(shù)據(jù)時實驗效果最佳。
圖7 B 類對抗生成網(wǎng)絡損失函數(shù)
BP 神經(jīng)網(wǎng)絡具有結(jié)構(gòu)簡單、使用方便、易于理解等特點,函數(shù)的逼近能力較強。BP 神經(jīng)網(wǎng)絡的學習過程主要包括信號的前向傳播及誤差的反向傳播兩部分。
2.3.1 BP 神經(jīng)網(wǎng)絡超參數(shù)選擇
BP 神經(jīng)網(wǎng)絡由3 層全連接的神經(jīng)網(wǎng)絡組成,分別為兩層隱藏層和一層輸出層。隱藏層神經(jīng)元個數(shù)通常根據(jù)經(jīng)驗以及實驗嘗試獲取,本次實驗中隱藏層神經(jīng)元數(shù)分別為64 和128 個。隱藏層采用RELU 函數(shù)進行激活,增強模型的非線性,初始值選取(-1,1)之間的隨機數(shù)。輸出層外加一層softmax 層使神經(jīng)網(wǎng)絡輸出變成一個概率分布,最終完成分類預測。經(jīng)softmax 回歸處理之后的輸出為:
式中:y1,y2,y3,…,yn為原始神經(jīng)網(wǎng)絡的輸出;為輸出的概率分布。
學習率直接反映了每次神經(jīng)網(wǎng)絡訓練過程中相鄰神經(jīng)元之間連接權(quán)值變化速度的快慢,根據(jù)實際的訓練需要將學習率設置為0.001,既不會導致函數(shù)震蕩,也不會延長網(wǎng)絡訓練的時間。
2.3.2 BP 神經(jīng)網(wǎng)絡的輸入數(shù)據(jù)
數(shù)據(jù)增加后A 類、B 類低壓臺區(qū)數(shù)據(jù)分別為14 393、16 679 條。把A 類里的14 393 個低壓臺區(qū)和B 類里的16 679 個低壓臺區(qū)分別拆分為訓練集和測試集,拆分比例為3:1,具體數(shù)據(jù)數(shù)量如表1 所示。
為A 類、B 類低壓臺區(qū)數(shù)據(jù)分別建立預測模型,每個預測模型選取L_LM_LLR、L_PERIOD_LLR、ACCU_PERIOD_LLR、TG_CAP 組成向量,并將此向量數(shù)據(jù)輸入BP 神經(jīng)網(wǎng)絡進行訓練;選取L_LLR 作為為標簽值,根據(jù)某電網(wǎng)線損參考數(shù)據(jù)將線損率分為四類:合格線損率(0
表1 各數(shù)據(jù)數(shù)量
2.3.3 損失函數(shù)與梯度優(yōu)化
本文使用損失函數(shù)作為模型的誤差計算方式。通過計算損失函數(shù)的值,對模型中的權(quán)重進行反饋調(diào)節(jié),調(diào)整整個模型的參數(shù)設置。本次實驗所用的損失函數(shù)為交叉熵損失函數(shù):
式中:給定兩個概率分布p和q,通過q來表示p的交叉熵。
對于上述模型,求導、反饋等操作由Tensorflow 后端完成,對權(quán)重矩陣進行優(yōu)化,使梯度逐步下降直到得到最小的損失函數(shù)值。
按本文提出的預測模型分別進行10 次低壓臺區(qū)線損預測實驗,實驗結(jié)果為:A 類低壓臺區(qū)的平均預測準確率約為92.1%,B 類低壓臺區(qū)的平均預測準確率約91.5%。
為了說明對抗生成網(wǎng)絡增大的樣本數(shù)據(jù)有效提高預測準確率,在不使用對抗生成網(wǎng)絡生成的數(shù)據(jù)前提下,使用基于BP 神經(jīng)網(wǎng)絡的低壓臺區(qū)線損預測模型做了平行對比實驗,實驗的準確率對比如表2 所示。
表2 兩種模型的準確率對比 %
本文提出一種基于對抗生成網(wǎng)絡與BP 神經(jīng)網(wǎng)絡的低壓臺區(qū)線損預測模型。該模型既充分考慮了合計供電量、臺區(qū)容量、總用戶等特征數(shù)據(jù)與當前線損率之間的關系,又使用了上月線損率、同期線損率、同期累計線損率等歷史線損數(shù)據(jù)來提高預測的準確性。所做工作如下:使用Tensorflow 框架成功搭建了一個低壓臺區(qū)線損預測模型;某市電網(wǎng)公司提供了某市從2016 年1 月至2018 年9 月共50 000 條低壓臺區(qū)線損相關數(shù)據(jù),其中選取了合計供電量、上月線損、臺區(qū)容量、總用戶等特征屬性作為特征值,實際中存在大量低壓臺區(qū)缺失特征數(shù)據(jù),剔除這些特征數(shù)據(jù)后還剩下近20 000 條實驗的低壓臺區(qū)線損相關數(shù)據(jù)。根據(jù)相似低壓臺區(qū)線損率相似原則,通過KMeans++算法將低壓臺區(qū)分類,分別記為A 類、B類;其數(shù)據(jù)分別為10 679 條、8 393 條;為解決BP 神經(jīng)網(wǎng)絡訓練數(shù)據(jù)樣本偏少的問題,分類后利用對抗生成網(wǎng)絡來增加訓練的數(shù)據(jù)樣本,經(jīng)試驗發(fā)現(xiàn)A 類生成網(wǎng)絡、B 類生成網(wǎng)絡分別產(chǎn)生6 000 條線損數(shù)據(jù)時實驗結(jié)果最佳,再使用增大的樣本數(shù)據(jù)訓練BP 神經(jīng)網(wǎng)絡從而搭建線損的預測模型。
將有無使用對抗生成網(wǎng)絡增大的樣本數(shù)據(jù)做了平行對比實驗,實驗結(jié)果表明,本文提出的基于對抗生成網(wǎng)絡與BP 神經(jīng)網(wǎng)絡的低壓臺區(qū)線損預測模型具有更加準確的預測效果,表明通過對抗生成網(wǎng)絡增大樣本數(shù)據(jù)可以改善低壓臺區(qū)有效線損數(shù)據(jù)量偏小的問題,從而可以減小不符合業(yè)務實際的異常數(shù)據(jù)、空數(shù)據(jù)等對線損率研究的影響;快速準確預測低壓臺區(qū)線損率,會幫助供電企業(yè)制定合理的降損措施,從而提高企業(yè)的經(jīng)濟效益。