黃冬梅,林孝鑲,胡安鐸,孫錦中
(1. 上海電力大學電子與信息工程學院,上海市 200090;2. 上海電力大學電氣工程學院,上海市 200090)
隨著泛在電力物聯網的建設,智能電表等智能傳感設備的大量接入,電力負荷數據的時空范圍不斷擴展。電力負荷的監測范圍從配電站延伸到用戶以及終端設備,造成電力負荷的數據量巨增,并且類型更加豐富。挖掘電力負荷數據的價值是電力行業的重要課題之一。負荷聚類是電力大數據分析的重要基礎,可以用于用電行為研究[1]、電價制定[2]、負荷建模[3]、負荷預測[4]等多方面。精準的負荷聚類也有助于電力系統的優化運行[5]和電力需求側管理水平的提升[6]。
電力負荷聚類方法大致包括直接聚類和間接聚類2種。直接聚類方法對歸一化處理后的負荷數據,采用基于歐氏距離的層次聚類算法、模糊C均值聚類算法等傳統聚類算法對負荷進行聚類[7-10]。文獻[7-8]分別采用遺傳算法和引力搜索算法尋找最優聚類中心,提高聚類質量和聚類穩定性。文獻[9-10]分別采用層次聚類算法、模糊聚類算法對負荷進行分類。但是上述方法多以歐氏距離作為負荷的相似性度量,聚類質量難以保證,特別是在高維數據空間[11]。另一方面,隨著智能電表等高級電力計量裝置廣泛安裝在配用電側[12],電力公司信息采集能力不斷提升,電力負荷數據呈現海量、高維的特征。因此,直接聚類方法面臨著計算效率和聚類質量的挑戰。
間接聚類算法首先通過降維算法對負荷數據進行降維處理,然后提取特征,再依據提取的數據特征進行聚類。文獻[13-16]以日負荷率、日峰谷差率等電力指標作為低維特征和采用離散小波變換進行特征提取;文獻[17]采用分位數和差分算法對原始負荷數據進行特征提取;文獻[18]提出了核方法對原始數據進行特征空間變換。但是上述方法將特征提取和聚類任務分離,無法保證提取的特征適合聚類任務,因而可能降低聚類的質量。文獻[19]提出基于堆疊式編碼器的深度嵌入聚類方法(deep embedding clustering method based on stacked auto-encoder,DEC-SAE)將特征提取和聚類任務聯合優化,從而提升了圖像數據聚類質量,但是對于蘊含時序特征的電力負荷數據卻難以保證聚類質量。
針對現有方法在負荷時序特征提取能力及高維負荷數據聚類有效性的不足,以及負荷時序特征提取與聚類任務分離處理的問題,本文提出一種采用一維卷積自編碼器的日負荷深度嵌入聚類方法(deep embedding clustering method based on one dimensional convolutional auto-encoder,DEC-1D-CAE)。首先,利用一維卷積自編碼器網絡的一維卷積和池化運算,自動提取負荷曲線蘊含的時序特性,降低數據維度。然后,在自定義聚類層中,通過自定義的相似度衡量公式對提取的負荷特征向量進行軟劃分,并采用KL散度(Kullback-Leibler divergence,KLD),也稱作相對熵,對特征提取與聚類劃分進行聯合優化,以提升負荷聚類質量,輸出聚類結果。最后,通過算例仿真比較不同聚類方法的有效性評價指標,驗證本文所提方法的有效性。
一維卷積自編碼器是一種基于編碼-解碼思想的無監督神經網絡,通過卷積、池化運算,將輸入層的高維數據轉換到隱藏層,從而降低原始數據集維度并有效提取數據時序特征。在負荷聚類研究中引入一維卷積自編碼器,利用其良好的數據重構能力,提取負荷數據時序特征,獲得數據的有效表示,并降低數據維度,提升聚類效率。
電力負荷曲線聚類主要依據負荷曲線的形狀特征,而不是負荷本身實際值大小。同時,為了進行深度神經網絡訓練和計算效率提升,因此需要對電力負荷數據進行歸一化處理,采用最大最小值法,將原始日負荷的每一個特征分量歸一化到0~1范圍內。歸一化的表達式為:
(1)
式中:P為歸一化前的負荷數據序列;P′為歸一化后的負荷數據序列;Pmax、Pmin分別表示負荷數據序列的最大值與最小值。
為了準確提取負荷數據時序特征,根據自編碼神經網絡理論[20],構建一維卷積自編碼器對負荷數據進行時序特征提取,其模型結構如圖1所示。

圖1 1D-CAE模型結構Fig.1 Structure of 1D-CAE model
假設x=[x1,x2,…,xt,…,xn](xt表示t時刻的特征值)為歸一化后輸入的日負荷的時間序列數據,圖1中左邊虛線框表示1D-CAE的編碼過程,其表達式為:
h1=σf(W*x+b1)
(2)
z=p(h1)
(3)
式中:x∈R1×n為時間序列,n為時間序列長度;*表示一維卷積運算;W和b1分別表示編碼過程中的一維卷積核和偏置;σf為激活函數,這里采用激活函數Relu;p表示池化運算,本文采用最大池化(max-pooling);z為低維度的負荷特征向量,z維度遠遠小于x。
圖1中右邊虛線框部分表示1D-CAE的解碼過程,其解碼過程表達式為:
h2=S(z)
(4)
x′=σe(U*h2+b2)
(5)
(6)
式中:S表示上采樣;h2為上采樣得到的特征;U和b2分別表示解碼過程中的一維卷積核和偏置;x′為輸入x的重構數據;σe是解碼器中的激活函數,為Sigmoid函數。
通過訓練過程,損失函數不斷調整優化一維卷積自編碼器的參數,使得損失函數Lr均方誤差最小,使重構的日負荷數據x′接近原始輸入數據x,從而提取精確的時序特征。
(7)
利用梯度下降法求解最優化問題Lr,獲得最佳的自編碼器網絡參數,從而實現一維卷積自編碼器的構建。
在實現一維卷積自編碼器的構建與訓練后,為了對負荷特征提取與聚類分析進行聯合優化,保留一維卷積編碼器的編碼部分,并在編碼部分自定義聚類層,以計算提取的負荷特征向量與聚類中心的軟分配度,從而計算目標概率分布,并以KL散度為目標函數,對編碼部分的網絡參數和聚類層的聚類中心進行聯合優化,得到負荷聚類結果,具體流程如圖2所示。
在完成一維卷積自編碼器的初始特征提取階段后,解除負荷初始特征提取階段的一維卷積編碼器的解碼網絡,只保留特征提取的編碼部分,并在此基礎上自定義聚類層。將編碼器提取的負荷特征向量作為輸入,并通過自定義的相似度衡量公式,獲得負荷聚類結果。
傳統的劃分方法如K-means、層次聚類等采用硬性劃分方式衡量負荷數據與聚類中心相似度,但無法衡量負荷數據到聚類中心的不確定度,尤其是離群點的分配準確度較低,從而可能降低聚類質量。由于高斯分布屬于輕尾分布,易受離群數據點和邊緣數據值影響。因此,本文采用更穩健的長尾t分布衡量低維度的負荷特征向量與聚類中心的相似程度[21],其軟分配度為:

圖2 基于一維卷積自編碼器的日負荷深度嵌入聚類方法流程Fig.2 Flowchart of deep embedding clustering method of daily load applying one-dimensional convolutional auto-encoder
(8)
式中:‖zj-ci‖2為zj到聚類中心ci的距離;qij為將低維負荷特征向量zj劃分到聚類中心ci的概率;α為t分布的自由度,設定為1。
為了提高負荷聚類質量,規范每個聚類中心的損失貢獻,強化負荷曲線分配的高置信度數據,模型定義一個基于聚類中心的高置信度目標概率分布,采用式(9)作為輔助負荷聚類目標概率分布。
(9)
(10)
式中:qi′j為低維負荷特征向量zj分配到不同聚類中心的概率;fi和fi′分別表示所有低維負荷特征向量分配到聚類中心ci的概率和以及分配到不同聚類中心的概率和;pij為聚類優化目標,通過qij的二次冪提升聚類的準確度。
為了使聚類層軟分配度的概率分布qij與輔助目標分布pij一致,因此定義KL散度作為一維卷積自編碼器的損失函數,其損失函數為:
(11)
利用KL散度訓練網絡,從而同時優化聚類層的聚類中心ci和一維卷積自編碼器的編碼網絡參數θ,從而提高聚類分配的準確度。損失函數L關于低維負荷特征點zi和聚類中心ci的梯度計算公式為:

(12)

(13)

使用某地區實際電網負荷數據為研究對象,實測1 156條日負荷數據,日負荷采樣頻率為30 min,每日采集點48個。
為了對比1D-CAE網絡與堆疊式編碼器網絡(stacked auto-encoder,SAE)對負荷曲線深層特征提取的效果,利用SAE網絡和1D-CAE網絡,重構了某典型日負荷曲線,日負荷曲線的重構結果如圖3所示。

圖3 負荷序列重構對比Fig.3 Comparison of load sequence reconstruction
在Keras框架下,將歸一化的負荷樣本訓練1D-CAE網絡與SAE網絡,采用Adam優化器。1D-CAE網絡與SAE網絡均采用均方誤差(mean square error,MSE)作為損失函數,設置學習率為0.001,迭代100次,設置批尺寸為8,將48個點的日負荷數據降維至12個深層特征參數。其中,SAE網絡編碼側包括3層神經網絡,神經單元個數分別設置為48、24、12,解碼側也為3層神經網絡,神經單元個數分別為12、24、48。1D-CAE網絡編碼側含有1個1D卷積層和1D池化層,其中,1D卷積層的1D卷積核尺寸為9,個數為32,步長為1,池化層的池化窗口大小為4,步長為1。在解碼層含有2個1D卷積層和1D上采樣層,2個1D卷積核尺寸均為9,個數分別為32和1,步長均為1,1D上采樣層的上采樣因子為4。
由圖3可以看出,相比SAE重構序列,1D-CAE解碼過程所輸出的重構序列與原輸入序列吻合度更高,尤其是在負荷峰谷變化區域,說明輸入負荷序列通過1D-CAE的編碼步驟獲得深層特征表示序列,然后對深層特征表示序列解碼,輸出重構負荷序列這一過程中,輸入負荷序列與重構負荷序列的誤差很小。
圖4給出了使用SAE網絡和1D-CAE網絡重構原始負荷的相對誤差,SAE對原始日負荷曲線數據各點重構相對誤差為0.08%~4.19%,平均重構相對誤差為1.66%,而1D-CAE對原始日負荷曲線數據各點重構相對誤差介于0.02%與1.30%之間,平均重構相對誤差僅為0.47%。從相對誤差的分布來看,SAE解碼重構過程在負荷的峰谷處相對誤差較大,而1D-CAE對負荷曲線的重構相對誤差較小。因此,1D-CAE負荷時序特征提取能力比SAE更強。

圖4 負荷重構相對誤差Fig.4 Relative error of load reconstruction
在使用1D-CAE對負荷曲線進行特征提取,將1 156×48階原日負荷矩陣轉化為1 156×12階低維特征矩陣。在此基礎上,使用DEC-CD-1AE算法對日用戶負荷數據對應的低維特征序列進行聚類,得到如圖5所示的負荷聚類結果。

圖5 本文方法聚類結果Fig.5 Clustering results of the proposed method
圖5所示的4類曲線用電特性多樣,差異性大。其中,類1與類2皆是單峰,曲線形狀較為相似,但負荷曲線數值差異較大,屬于不同類別的負荷。類3和類4負荷曲線數值差異較小但曲線形態差異大,分別為單峰和雙峰。本文所提方法對負荷序列時序特征有效提取和聚類分析進行聯合優化,對負荷曲線實現了準確劃分,各類曲線形態一致。
使用傳統的K-means聚類算法對日用戶負荷數據進行直接聚類,得到如圖6所示的聚類結果。其中,類1含有2種形狀較為相似,但數值差異較大的單峰用電特性曲線。類2與類4,曲線形狀高度相似,且負荷曲線數值相近,屬于同一類別的負荷,K-means算法無法處理為同一類別,存在嚴重錯分現象。因此,K-means算法無法有效劃分4類曲線。

圖6 K-means算法聚類結果Fig.6 Clustering results of K-means algorithm
為進一步驗證所提算法的有效性,本文采用DBI(Davies-Bouldin index)指標和CHI(Calinski-Harabasz index)指標[22]定量分析聚類結果。其中,DBI指標代表類別內部距離與類外部距離之比,其值越小表示聚類效果越好。CHI指標表示類間分離度和類內緊湊度之比,其值越大表示聚類效果越佳。
現分別采用K-means算法、1D-CAE負荷特征提取后再K-means算法、DEC-SAE算法和DEC-1D-CAE算法對1 156條日負荷曲線進行聚類分析對比,各種指標對比如表1所示。

表1 4種聚類方法指標對比Table 1 Comparison of four clustering methods
根據K-means和1D-CAE+K-means處理結果,在DBI指標和CHI指標上,K-means均優于1D-CAE+K-means,說明經1D-CAE提取的低維負荷數據特征不適合于K-means算法,即特征提取和聚類任務分離,二者獨立進行,無法保證提取的數據特征適合聚類處理,從而降低了聚類指標。
K-means與DEC-SAE處理結果相比,在DBI指標上,1D-CAE+K-means優于K-means。由于DEC-SAE算法保證了特征提取和聚類處理的同時優化,使得DBI評價指標進一步提升。
另外,對比DEC-SAE和DEC-1D-CAE處理后的DBI、CHI聚類指標,可知DEC-1D-CAE聚類評價指標均優于DEC-SAE。因為DEC-SAE采用堆疊式編碼器,而DEC-1D-CAE采用一維卷積編碼器,由3.1節可知,相比SAE,1D-CAE在負荷數據時序特征提取能力更強,平均相對誤差更低。因此,DEC-1D-CAE聚類結果優于DEC-SAE。
由上述分析及表1可知,本文所提方法的聚類評價指標均優于K-means、1D-CAE+K-means和DEC-SAE方法。
1)一維卷積自編碼網絡能有效提取日負荷曲線蘊含的時序特征,并實現有效降維。相比堆疊式編碼器,負荷重構相對誤差更小,時序特征提取能力更強。
2)與先降維提取特征再聚類的高維日負荷數據聚類方法相比,本文所提的DEC-1DC-AE方法能實現特征提取和聚類同時優化,保證提取的負荷特征適合聚類任務,從而提高了聚類質量。
3)算例結果表明,在DBI、CHI聚類指標上,本文所提DEC-1D-CAE方法均優于K-means、1D-CAE+K-means和DEC-SAE。