黃冬梅,葛書陽,胡安鐸,孫錦中,時(shí) 帥,孫 園
(1.上海電力大學(xué)電子與信息工程學(xué)院,上海 201306;2.上海電力大學(xué)電氣工程學(xué)院,上海 200090;3.上海電力大學(xué)數(shù)理學(xué)院,上海 201306)
隨著社會經(jīng)濟(jì)發(fā)展和智能電網(wǎng)建設(shè),電力負(fù)荷的數(shù)據(jù)量不斷增長、類型日益多樣化。大量電力負(fù)荷數(shù)據(jù)中蘊(yùn)含著差異化的用電信息,然而這些信息卻不被直接利用,需要進(jìn)行數(shù)據(jù)挖掘[1]。電力負(fù)荷聚類是按照負(fù)荷之間的相似度,將相似度大的負(fù)荷歸為同一類,從而得到不同類別的電力使用情況和典型用電模式,進(jìn)而有效識別不同的用電規(guī)律和負(fù)荷特性。電力負(fù)荷聚類可以應(yīng)用于電價(jià)劃分與制定、負(fù)荷預(yù)測、負(fù)荷模型建立、電能質(zhì)量檢測等多種場合[2]。
電力負(fù)荷曲線聚類領(lǐng)域中應(yīng)用較廣的算法有K-means算法、具有噪聲的基于密度的聚類DB-SCAN(density-based spatial clustering of applications with noise)算法、模糊C均值FCM(fuzzy C-means)算法等[3]。其中,K-means等劃分聚類算法具有可解釋度強(qiáng)、時(shí)間復(fù)雜度低的優(yōu)點(diǎn),作為基本算法被廣泛應(yīng)用,但是在處理大量負(fù)荷數(shù)據(jù)時(shí),最優(yōu)聚類數(shù)目需要人為給定,每次運(yùn)行隨機(jī)初始化不同的中心容易使算法收斂異常,影響聚類穩(wěn)定性和質(zhì)量,此外,采用歐氏距離作為相似性度量時(shí),容易忽略負(fù)荷變化信息,導(dǎo)致聚類不準(zhǔn)確等問題。
針對上述缺陷,文獻(xiàn)[4]通過對中心點(diǎn)篩選融合后使用層次K-means算法聚類,在一定程度上解決初始聚類中心的選取問題。文獻(xiàn)[5-6]利用遺傳算法等啟發(fā)式算法初始化聚類中心來優(yōu)化劃分聚類算法,但由于使用了啟發(fā)式算法,存在耗時(shí)增大的問題。文獻(xiàn)[7]利用密度峰值法自動確定了聚類數(shù)目和初始聚類中心,避免人為選取聚類數(shù)目,優(yōu)化了K-means聚類的效果。文獻(xiàn)[8]利用自定義的指標(biāo)函數(shù)與粒子群優(yōu)化PSO(particle swarm optimization)算法自動確定聚類數(shù)目和聚類中心。文獻(xiàn)[9]利用分位數(shù)和差分的思想,對負(fù)荷曲線進(jìn)行形態(tài)離散化,并自定義相似性度量對負(fù)荷進(jìn)行聚類分析。文獻(xiàn)[10]引入免疫濃度機(jī)制、變異機(jī)制,改進(jìn)K-means算法對初始中心敏感的問題。文獻(xiàn)[11]采用非線性映射的方法,把數(shù)據(jù)映射到高維空間,從而加大數(shù)據(jù)的可分離性。文獻(xiàn)[12]利用6個負(fù)荷特性指標(biāo)對曲線進(jìn)行特征提取,并利用德爾菲法對特征的歐氏距離加權(quán),然后進(jìn)行聚類,方法提升了效率和聚類質(zhì)量。
現(xiàn)有文獻(xiàn)大多通過降維和確定初始中心來提升算法的聚類效果,而在相似性度量方面采用歐氏距離作為相似度的判據(jù),但歐氏距離只計(jì)及曲線數(shù)值距離忽略了曲線趨勢的判別。通過改進(jìn)相似性度量方法,也可以有效提升聚類效果[13-15]?,F(xiàn)有對負(fù)荷序列的相似性度量方法中,動態(tài)時(shí)間規(guī)整DTW(dynamic time warping)距離的聚類效果較好,其允許負(fù)荷序列時(shí)間維度不一致,通過彎曲時(shí)間軸來對序列中不同時(shí)間點(diǎn)的負(fù)荷進(jìn)行匹配,在形態(tài)聚類方面有一定的優(yōu)異性,但對時(shí)間軸過度規(guī)整可能會降低相似性判別的準(zhǔn)確度,使得聚類效果不佳。此外,DTW距離的計(jì)算量較大,往往會降低聚類的效率[16-17]。
鑒于初始中心影響聚類效果和歐氏距離難以有效度量負(fù)荷趨勢的相似性的問題,本文結(jié)合局部密度和差分提取的思想,提出一種采用中心優(yōu)化和雙尺度相似性度量的改進(jìn)K-means負(fù)荷聚類方法。首先,利用局部密度思想來獲得負(fù)荷曲線的初始中心;然后使用一階差分向量來提取曲線的趨勢特征;最后把兩者的歐氏距離組合作為新的相似性度量,利用K-means算法使用此度量方式開展聚類分析。與傳統(tǒng)K-means聚類算法相比,本文方法能夠有效分辨負(fù)荷曲線趨勢之間的相似性,較為準(zhǔn)確地識別電力用戶用電模式。
在劃分聚類算法中,初始聚類中心的隨機(jī)選取極大地影響了聚類結(jié)果[18]。針對這個問題,本文利用局部密度思想對初始中心進(jìn)行優(yōu)化。
(1)定義負(fù)荷曲線間鄰近元素的平均距離mdist為
式中:Xi和Xj分別為第i條和第j條負(fù)荷曲線;d(Xi,Xj)為兩個負(fù)荷曲線之間的歐氏距離;KNN(Xi)為第i個數(shù)據(jù)最近的k個元素組成的區(qū)域;n為負(fù)荷曲線樣本的個數(shù)。
(2)定義負(fù)荷曲線的局部密度。以任一負(fù)荷曲線Xc為例,與Xc的歐氏距離小于鄰近平均距離的負(fù)荷曲線的數(shù)量定義為局部密度參數(shù),記為ρ(mdist,Xc),其表達(dá)式為
式中,u(x)為負(fù)荷曲線局部密度的更新量。ρ(mdist,Xc)越大表示該曲線的局部密度越大,作為聚類中心的概率越大。mdist表示對曲線Xc密度計(jì)算的限定范圍,若Xi和Xc的歐式距離超出mdist限定的范圍,則Xi不參與Xc的密度計(jì)算。
本文選取ρ(mdist,Xc)降序排列的前K個值對應(yīng)的負(fù)荷曲線作為聚類的K個初始中心。
負(fù)荷聚類主要依據(jù)負(fù)荷之間的相似性將大量無序、無規(guī)則的負(fù)荷樣本劃分為多個類。因此,選取合適的相似性度量方式是負(fù)荷聚類是否準(zhǔn)確的關(guān)鍵環(huán)節(jié)之一。
對于兩條負(fù)荷序列曲線W=(w1,w2,…,wm)和V=(v1,v2,…,vm),若用 Minkowski距離DMinkowski來度量,則有
式中:m為負(fù)荷曲線的維度;P為距離系數(shù),當(dāng)P為不同值時(shí),DMinkowski表示不同距離;當(dāng)P=2時(shí)為歐氏距離,此時(shí)DMinkowski記為Deu。
歐氏距離為兩組序列對應(yīng)位置的空間數(shù)值距離,在負(fù)荷趨勢的相似性判斷中效果欠佳,而差分向量能夠反映負(fù)荷曲線在各個等間隔時(shí)間段內(nèi)的上升、下降等變化信息。因此,對于m維度的負(fù)荷曲線W=(w1,w2,…,wm),本文利用一階差分向量,將其轉(zhuǎn)換為m-1維的負(fù)荷趨勢序列,用來描述曲線的局部動態(tài)特性。
一階差分運(yùn)算定義為
本文綜合考慮負(fù)荷序列的數(shù)值特征與趨勢特征兩個因素,采用負(fù)荷數(shù)據(jù)歐氏距離和負(fù)荷差分向量的歐氏距離作為綜合相似性判據(jù),代替歐氏距離來衡量曲線之間的相似性,兼顧距離和趨勢兩種特征。
雙尺度相似性距離的衡量方法可表示為
式中:Deu(W,V)為曲線W、V之間的歐氏距離;Deu(W′,V′)為式(5)所示的兩個差分序列之間的歐式距離;Dall(W,V)為曲線W、V的雙尺度相似性距離,Dall(W,V)越小表示兩條曲線的距離越近,相似度越高;α和β分別為歐氏距離和差分歐式距離所占的權(quán)重。
K-means聚類以原始負(fù)荷數(shù)據(jù)的歐氏距離來衡量兩序列之間的相似性,但原始數(shù)據(jù)的歐氏距離在衡量趨勢相似性方面存在一定的局限[19-20]。由于差分向量可反映負(fù)荷曲線在各個等間隔時(shí)間段內(nèi)的負(fù)荷變化信息,本文采用差分向量度量負(fù)荷趨勢變化,并綜合考慮負(fù)荷歐氏距離與負(fù)荷差分向量的歐式距離,以雙尺度相似性距離度量Dall代替負(fù)荷數(shù)據(jù)間的歐氏距離作為K-means的相似性度量來衡量負(fù)荷總體的相似性,對K-means算法進(jìn)行改進(jìn)。
聚類評價(jià)主要是從緊密性、離散性等角度使用某些性能指標(biāo)來對實(shí)驗(yàn)中不同算法的聚類效果進(jìn)行判斷和評價(jià)[21]。考慮到戴維森堡丁指數(shù)DBI(Davies-Bouldin index)和輪廓系數(shù)SIL(silhouette coefficient)變化范圍小,容易進(jìn)行判斷,相比其他指標(biāo)更適合于負(fù)荷聚類質(zhì)量評判,因此本文選取DBI和SIL兩個指標(biāo)來評判聚類質(zhì)量。
DBI指標(biāo)表示每個簇和其最相似簇之間的平均相似度,其中相似度通過簇內(nèi)距離與簇間距離的比值來表示。DBI的最小值為0,DBI越小表示聚類效果越好[22]。具體計(jì)算公式為
“不要急,先聽我說完。在現(xiàn)實(shí)里,男主人公不是帶著兩個疑問黯然離去嗎?在現(xiàn)實(shí)結(jié)束的地方正是小說的開端,這也是小說家的用武之地。S返回果城,跟蹤監(jiān)控那個情敵。有大半年,他一無所獲,他看到的全是其夫唱婦隨的恩愛鏡頭。S涌起了對前妻的刻骨思念,又為她被‘霸占’而火冒三丈。功夫不負(fù)有心人,S終于拍攝到了情敵出軌的鏡頭,S激動得渾身顫栗,想起了昔日看著那個女人掏出那個大牛皮信封的情景。就要一報(bào)還一報(bào)了。S曾猜想那沓照片肯定跟那個男人有關(guān),只是苦于沒有真憑實(shí)據(jù),也沒有蛛絲馬跡?!?/p>
式中:IDBI為DBI指標(biāo)的值;Ci為第i個簇;d(Ci)為Ci類內(nèi)樣本間的平均距離;ui為第i個聚類中心;‖ui-uj‖2為第i類中心與第j類中心數(shù)據(jù)點(diǎn)的分散程度;K為聚類數(shù)。
樣本SIL指標(biāo)表示單個數(shù)據(jù)聚類效果,其取值范圍為[-1,1],若SIL越接近1則表示聚類效果越好,SIL為負(fù)值則表示聚類幾乎無效。具體計(jì)算公式為
式中:ISIL為樣本SIL指標(biāo)的值;bi為第i個樣本到其非同類簇的所有樣本的平均距離的最小值,反映非同類簇之間的離散度;ai為第i個樣本所在簇的平均距離,反映同類簇內(nèi)的緊密度[23]。
所有樣本的平均輪廓系數(shù)ISILmean可表示為
式中:ISILmean為評估聚類的總體質(zhì)量;n為負(fù)荷曲線樣本個數(shù)。
改進(jìn)的K-means算法包含負(fù)荷數(shù)據(jù)預(yù)處理、確定算法的聚類中心及聚類分析3個部分,其流程如圖1所示,其中,輸入為原始負(fù)荷數(shù)據(jù)、聚類數(shù)K、權(quán)重、鄰近參數(shù)個數(shù)、最大迭代次數(shù);輸出為聚類結(jié)果。具體流程描述如下。
圖1 改進(jìn)的K-means負(fù)荷聚類方法流程Fig.1 Flow chart of improved K-means load clustering method
步驟1數(shù)據(jù)預(yù)處理。首先對聚類的曲線進(jìn)行插值補(bǔ)全,之后對完整數(shù)據(jù)進(jìn)行極值歸一化操作。具體計(jì)算公式為
步驟3利用第1節(jié)提出的局部密度方法獲得前K個最大局部密度值對應(yīng)的負(fù)荷曲線作為算法的初始中心。
步驟4相似度判定。用歐氏距離和差分歐式距離組成的雙尺度相似性度量Dall作為距離度量,計(jì)算每條曲線與K個中心的相似度,并將每條負(fù)荷曲線與相似性最大(距離度量Dall最?。┑闹行姆譃橐活?。
步驟5計(jì)算各類的樣本均值作為新的中心點(diǎn)和本次迭代的類內(nèi)離散度。計(jì)算公式分別為
式中:SSET為第T次迭代的簇內(nèi)誤差平方和SSE(within-cluster sum of squared errors);|Ci|為簇內(nèi)曲線的數(shù)量;XL為簇Ci的負(fù)荷曲線;T為迭代次數(shù)。
步驟6若滿足以下任意一個條件時(shí),輸出聚類結(jié)果,否則以新得到的點(diǎn)作為中心重新執(zhí)行步驟4。條件包括:①兩次迭代得到的中心點(diǎn)不再變化;②兩次迭代的SSE滿足 |SSET+1-SSET|<ε,其中ε為收斂閾值;③達(dá)到最大迭代次數(shù)。
以中國南方某市1 156個用戶的日負(fù)荷曲線為實(shí)驗(yàn)對象,日負(fù)荷曲線采樣頻率為1 h,即每條負(fù)荷曲線由24個功率點(diǎn)組成。為了驗(yàn)證本文方法的有效性,利用上述數(shù)據(jù)分別運(yùn)用傳統(tǒng)K-means算法、雙尺度K-means算法、中心優(yōu)化的K-means、中心優(yōu)化的DTW-K-means算法和本文算法進(jìn)行聚類,對聚類結(jié)果和質(zhì)量進(jìn)行分析。
圖2為10次運(yùn)行K-means算法的SIL指標(biāo)變化,可以看出,K-means算法隨機(jī)初始中心帶來了不穩(wěn)定問題,而優(yōu)化后的算法由于給定了初始中心,所以只執(zhí)行一次。因此本文對K-means算法及雙尺度K-means算法重復(fù)運(yùn)行10次,取其中較好的結(jié)果用于對比實(shí)驗(yàn)。聚類結(jié)果通過直觀的最優(yōu)聚類數(shù)目下的聚類類別圖來反映;聚類質(zhì)量則通過選用本文所選用的評判指標(biāo)(DBI和SIL)來反映。在本算例中,為了反映負(fù)荷歐式距離和差分歐式距離權(quán)重對聚類效果的影響,設(shè)計(jì)了不同權(quán)重配比的聚類實(shí)驗(yàn),以優(yōu)選權(quán)重配比。對于鄰近參數(shù),本文根據(jù)密度峰值法的思想,選取了數(shù)據(jù)總量的2%作為鄰近元素的數(shù)量。算例的編程語言為Python,框架為scikit-learn。
圖2 10次K-means的SIL指標(biāo)Fig.2 SIL index of K-means repeated for 10 times
如圖3所示,通過觀察不同聚類數(shù)目下DBI指標(biāo)變化曲線,可以發(fā)現(xiàn)算法在K=5時(shí)有明顯的極小值拐點(diǎn)。圖4為基于T-sne的可視化圖像,可見,數(shù)據(jù)大致可以區(qū)分為5個區(qū)域,且區(qū)域間距離大,區(qū)域內(nèi)距離小,所以本算例的最佳聚類數(shù)取為5。
圖3 不同聚類數(shù)下DBI指標(biāo)Fig.3 DBI index under different cluster numbers
圖4 基于T-sne的可視化圖像Fig.4 Data visualization image based on T-sne
使用K-means和本文方法進(jìn)行聚類分析,得到5類負(fù)荷如圖5和圖6所示。5類負(fù)荷包括:①避峰型負(fù)荷,負(fù)荷使用集中于凌晨和夜晚,而白天使用量較少,一般為酒吧、KTV等夜間場所;②雙峰Ⅰ型負(fù)荷,集中在早晚用電且其余時(shí)間負(fù)荷水平較低,早晨用電也較晚上少,一般為公寓等早晚用電的用戶;③雙峰Ⅱ型負(fù)荷,從早上開始持續(xù)用電,且飯后用電適當(dāng)降低,一般為公司、企業(yè)等用戶;④重工業(yè)負(fù)荷,用電一直維持在一個較高的水平;⑤單峰型負(fù)荷,一般是輕工業(yè)和商業(yè)用戶。從圖5可以發(fā)現(xiàn),使用K-means進(jìn)行聚類時(shí),對類別5單峰型負(fù)荷進(jìn)行了誤判,把兩類形態(tài)不同的負(fù)荷誤分成了一類,且把同為重工業(yè)負(fù)荷的類別1和類別2判斷為不同的類別。從圖6可以看出,本文算法能夠?qū)?類數(shù)據(jù)進(jìn)行有效識別。
圖5 K-means聚類結(jié)果Fig.5 Clustering results obtained using K-means method
圖6 本文方法聚類結(jié)果Fig.6 Clustering results obtained using the proposed method
使用T-sne降維對輸出類別進(jìn)行可視化,如圖7和圖8所示。從圖7可以看出,K-means誤把兩個相距較遠(yuǎn)的區(qū)域分為了同一類(類別5),且把同一個區(qū)域的負(fù)荷劃分到了不同的類別(類別1和類別2)。圖8為本文方法類別可視化,可以看出,劃分情況大致滿足類內(nèi)相似度高,類間相似度低的聚類要求。因此,本文方法效果優(yōu)于K-means算法。
圖7 K-means類別可視化Fig.7 Label visualization obtained using K-means method
圖8 本文方法類別可視化Fig.8 Label visualization obtained using the proposed method
表1展示了5種方法的SIL與DBI指標(biāo),可以看出,在確定最佳聚類數(shù)的前提下,中心優(yōu)化的K-means算法相比于傳統(tǒng)K-means算法DBI要更優(yōu);雙尺度K-means算法比傳統(tǒng)K-means算法DBI指標(biāo)有提升;本文所提方法DBI指標(biāo)最小且SIL指標(biāo)最大,聚類質(zhì)量最佳,說明使用局部密度來優(yōu)化中心和使用一階差分向量來提取曲線形態(tài)的有效性。
表1 不同算法的聚類指標(biāo)Tab.1 Clustering indexes of different algorithms
為了研究相似度權(quán)重選取對聚類質(zhì)量的影響,對不同情況下的權(quán)重分配進(jìn)行比較。對權(quán)重進(jìn)行等間隔分配的實(shí)驗(yàn)。不同權(quán)重分配下的聚類指標(biāo)如表2所示。
表2 不同權(quán)重下的聚類指標(biāo)Tab.2 Clustering indexes under different weights
從表2可以看出,給予度量不同的權(quán)重,聚類的最終效果明顯不同,且權(quán)重配置α=0.3及β=0.7,α=0.2及β=0.8時(shí)聚類指標(biāo)最優(yōu),本文算例中選用了α=0.3及β=0.7這一權(quán)重參數(shù)。對于使用多種相似性度量的聚類算法,有必要對每個相似性度量進(jìn)行度量權(quán)重配置,且權(quán)重系數(shù)的不同配置會導(dǎo)致聚類結(jié)果的差異性,所以需要根據(jù)實(shí)際情況對不同的距離度量分配不同的權(quán)重。
本文針對電力大數(shù)據(jù)平臺背景下負(fù)荷模式的識別需求,提出一種采用中心優(yōu)化和雙尺度相似性度量的改進(jìn)K-means負(fù)荷聚類方法。引入局部密度思想獲得負(fù)荷曲線的初始中心解決了K-means隨機(jī)化帶來的不穩(wěn)定問題;一階差分向量提取了曲線的趨勢特征,實(shí)現(xiàn)了不同曲線形態(tài)的準(zhǔn)確度量,提升了聚類的準(zhǔn)確性。算例分析表明,采用局部密度對中心進(jìn)行優(yōu)化,增強(qiáng)了算法的穩(wěn)健性,改進(jìn)了傳統(tǒng)K-means算法中初始中心影響聚類效果的問題,且使用一階差分向量提取曲線的趨勢特征,以雙尺度相似性作為依據(jù)兼顧了負(fù)荷的數(shù)值特征和趨勢特征。本文算法相較于傳統(tǒng)算法具有更好的識別負(fù)荷趨勢的能力。后續(xù)計(jì)劃應(yīng)用本文方法開展負(fù)荷預(yù)測、氣象災(zāi)害條件下電力負(fù)荷特征提取等方面的研究。