• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于動態(tài)層次K-Modes的電網(wǎng)數(shù)據(jù)聚類分析

      2019-04-14 07:37:12林紅陽1翼1林1楊1馬漢斌
      四川電力技術(shù) 2019年6期
      關(guān)鍵詞:系譜聚類動態(tài)

      林紅陽1,杜 翼1,劉 林1,易 楊1,蔡 菁,馬漢斌

      (1. 國網(wǎng)福建省電力有限公司經(jīng)濟(jì)技術(shù)研究院,福建 福州 350012;2. 國網(wǎng)信通億力科技有限責(zé)任公司,福建 福州 350000)

      隨著電力工業(yè)的發(fā)展與電力計(jì)量體系的不斷完善,在電力用戶側(cè)積累了海量的歷史數(shù)據(jù)。針對既有數(shù)據(jù),展開用戶用電行為特性的挖掘,可以為電力公司開展相應(yīng)電價制定與需求側(cè)管理工作提供有益指導(dǎo)[1]。聚類分析是數(shù)據(jù)挖掘(data mining)的重要組成部分,作為一種無監(jiān)督學(xué)習(xí)方法,根據(jù)其思想的不同,聚類算法主要可分為以下5種方法:劃分法(partitioning method)、層次法(hierarchical method)、基于密度法(density-based method)、基于網(wǎng)格的方法(grid-based method)、基于模型法(model-based method),并且在此基礎(chǔ)上發(fā)展出更為靈活的組合及變形。而K-means算法作為一種基礎(chǔ)的劃分法,從提出以來就受到人們的普遍關(guān)注,至今仍有不少學(xué)者對K-means及其同類型方法在應(yīng)用及算法上做出研究貢獻(xiàn)[2-11]。K-modes作為K-means的一種變形,能夠?qū)︻悓傩蛿?shù)據(jù)進(jìn)行分類,其主要區(qū)別在于中心和距離的定義[12]。而層次聚類法作為另一種廣泛被人們使用的算法,其優(yōu)勢在于分類準(zhǔn)確且可以生成直觀的分類樹,便于判斷類的數(shù)目;但其計(jì)算量過大,算法復(fù)雜度至少為O(n2),僅適用于小規(guī)模數(shù)據(jù)聚類。也有將兩種或多種傳統(tǒng)聚類算法結(jié)合而成的新算法,例如層次K-means算法[3,11]。此類算法能夠保留每種算法的優(yōu)良性并彌補(bǔ)算法缺陷,使得算法的適應(yīng)性和準(zhǔn)確性都得到提升。下面通過引入合適的聚類算法對廈門島內(nèi)地區(qū)電力用戶數(shù)據(jù)進(jìn)行試驗(yàn),以驗(yàn)證算法的可行性,為進(jìn)一步推廣至其他數(shù)據(jù)集籌備基礎(chǔ)。

      1 算法介紹

      1.1 K-modes算法

      作為一種被普遍運(yùn)用于各類問題的聚類算法,K-means常用于數(shù)值型數(shù)據(jù)的分類,距離一般采用歐氏距離,所以對其他類型數(shù)據(jù),例如類屬型(0-1型)數(shù)據(jù)并不適用。作為改進(jìn),由Huang在1998年提出的K-modes算法在K-means的算法基礎(chǔ)上引入modes取代means(中心),并提出差異匹配(matching dissimilarity)替代傳統(tǒng)的歐氏度量(距離)。正是引入差異度量(dissimilarity measure)這種距離計(jì)算方式,使得其能對類屬型數(shù)據(jù)進(jìn)行有效的劃分。

      K-modes算法從構(gòu)造思想上與K-means基本一致[6,9]。定義信息集合(X,A,Q),其中X={xi|i=1,2,…,n}表示數(shù)據(jù)集合;A={ai|i=1,2,…,m}表示數(shù)據(jù)每一維度的屬性;Q={qi|i=1,2,…,k}表示k個分類,而{qi|i=1,2,…,k}表示每個類的中心(mode)。其中xij∈z,(i=1,2,…,n;j=1,2,…,m)表示樣本點(diǎn)xi在aj屬性上的取值。

      定義任意兩點(diǎn)x,y的差異度量為d:

      其中,

      定義目標(biāo)函數(shù)為

      其中,

      在上述3個條件下使目標(biāo)函數(shù)F達(dá)到最小值,K-modes基本實(shí)現(xiàn)步驟如下:

      1) 隨機(jī)選取k個modes。

      2)計(jì)算每個數(shù)據(jù)點(diǎn)與k個modes的差異度量d(距離),將每個數(shù)據(jù)點(diǎn)分入度量值最小的類。

      3)判斷是否達(dá)到迭代終止條件(一般設(shè)置終止條件為分類結(jié)果不再改變),若終止迭代則返回結(jié)果,否則進(jìn)入步驟4)。

      4)對每一類中所有數(shù)據(jù)點(diǎn)在每一維度上取眾數(shù),更新每個類的mode:qzj=mode(xij|xi∈Qz),j=1,2,…,m,返回步驟2)。

      1.2 層次K-means算法

      K-means聚類算法復(fù)雜度為O(n)階,即不需要進(jìn)行樣本點(diǎn)的兩兩距離計(jì)算,在處理一般聚類問題時速度較快。但K-means算法也存在2個公開問題:1)類數(shù)目無法自適應(yīng)得到;2)算法僅能保證收斂到局部最優(yōu)解。而層次聚類算法能夠得到較好的聚類結(jié)果,同時可以通過聚類系譜圖來指導(dǎo)確定類的數(shù)目,但由于其算法復(fù)雜度過大,當(dāng)處理大規(guī)模數(shù)據(jù)時就會遇到困難。

      由Arai于2007年提出的層次K-means[3]從一定程度上解決了這些問題。其利用所有在特定k值下運(yùn)行K-means所得到的結(jié)果,這些結(jié)果可能均收斂到局部最優(yōu)解,但通過大量結(jié)果所帶來的信息,結(jié)合層次聚類算法對其進(jìn)行轉(zhuǎn)換便能確定出更為準(zhǔn)確的K-means初始值中心點(diǎn)。

      層次K-means算法主要步驟如下:

      1) 取定k值,并進(jìn)行p次重復(fù)的K-means計(jì)算,得到聚類中心點(diǎn)集合;

      2)結(jié)合層次聚類法,對步驟1)所得的聚類中心點(diǎn)集合進(jìn)行再聚類;

      3)將步驟2)所得的聚類中心點(diǎn)作為K-means的初始聚類中心點(diǎn),并運(yùn)行K-means算法得到最終聚類結(jié)果。

      1.3 層次K-modes算法

      考慮到K-modes算法對類屬型數(shù)據(jù)的適應(yīng)性,以及其在迭代過程中與K-means算法的相似性,因此提出層次K-modes算法。將K-modes算法與層次聚類算法進(jìn)行結(jié)合,繼承兩種算法的優(yōu)點(diǎn)而直接作用于類屬型數(shù)據(jù)。值得注意的一點(diǎn)是差異度量(dissimilarity measure)的計(jì)算快于同等維度的二范數(shù)計(jì)算,因此從速度上層次K-modes也比層次K-means更具優(yōu)勢。其算法實(shí)步驟與層次K-means類似,不過類中心必須使用mode,并且在層次聚類時也必須選取適合類屬型數(shù)據(jù)的距離公式進(jìn)行計(jì)算。

      1.4 動態(tài)層次K-modes算法

      進(jìn)一步,還希望借助聚類系譜圖來選取適合的k值。層次K-modes中,由于固定了k值,因此進(jìn)行p次相同k值的K-modes并完成層次聚類后所生成的系譜圖所呈現(xiàn)的劃分很大程度上受到所選取k的影響,通常與初始選取的k值相同。為了克服這個弱點(diǎn),提出讓每次K-modes的k值變動起來,從而弱化人為選取k值的影響[14]。在這種改動下,p次K-modes帶來更多的分類信息,從而能從更廣范圍內(nèi)尋找更優(yōu)的k值。

      動態(tài)層次K-modes主要算法步驟如下:

      2)利用層次聚類法對集合M中的modes進(jìn)行分類;

      3)通過系譜圖選定適當(dāng)?shù)膋值以及對應(yīng)的modes;

      4)利用步驟3)中結(jié)果作為初始條件進(jìn)行一次K-modes,并返回結(jié)果。

      2 數(shù)據(jù)特征提取

      將曲線數(shù)據(jù)按照曲線形態(tài)進(jìn)行聚類,考慮到直接利用原始數(shù)據(jù)進(jìn)行聚類會忽略掉時間序列上段與段間的形態(tài)差異,造成聚類結(jié)果不合理。

      如文獻(xiàn)[13]將原始數(shù)據(jù)進(jìn)行平滑后取一階差分值,將原始矩陣X轉(zhuǎn)化為差分矩陣D,其每一行為di,由一個m維行向量構(gòu)成,表示第i個差分后樣本;更進(jìn)一步,分別將“±0.1×差分樣本極差”作為閾值t(di)。

      (1)

      式中,j=1,2,…,m。

      對所有差分樣本進(jìn)行式(1)處理后得到類屬型矩陣C,為n×m維的矩陣。其每一行為ci,由一個m維行向量構(gòu)成,以此來反映曲線形態(tài)。

      圖1 特征提取

      圖1為數(shù)據(jù)特征提取圖,圖中的曲線為某樣本xi在經(jīng)過平滑后得到,經(jīng)過差分及式(1)處理后得到的圓點(diǎn),表示在每一時刻該樣本曲線的升、平、降3種狀態(tài),將連續(xù)型的時間序列數(shù)據(jù)轉(zhuǎn)化成類屬型的離散狀態(tài)值,從而提取出樣本的形態(tài)特征,可利用動態(tài)層次K-modes算法進(jìn)行聚類。

      3 算法實(shí)驗(yàn)

      3.1 模擬數(shù)據(jù)試驗(yàn)

      為了檢驗(yàn)動態(tài)層次K-modes相較于傳統(tǒng)K-modes的優(yōu)良性,首先使用計(jì)算機(jī)模擬出一個維度為10,類數(shù)目為3,類內(nèi)樣本量分別為500、200、50的曲線數(shù)據(jù)集,如圖2至圖4所示,其中雙峰形類樣本數(shù)為500,單峰型類樣本數(shù)為200,單谷型類樣本數(shù)為50。

      圖2 雙峰型類

      圖3 單峰型類

      圖4 單谷型類

      進(jìn)行算法比較前,首先給出分類準(zhǔn)確率的計(jì)算規(guī)則為

      式中,ni為當(dāng)前聚類結(jié)果中第i類包含正確分類中最多一類的數(shù)目。

      對于傳統(tǒng)的K-modes算法而言,k必須經(jīng)由人工進(jìn)行初始化。為了進(jìn)行更客觀的比較,假定已知類數(shù)目為k=3,并利用K-modes算法對該模擬數(shù)據(jù)進(jìn)行聚類,聚類結(jié)果如圖5所示。

      圖5 普通K-modes聚類(k=3)

      如圖5中各子圖以及圖2至圖4,分類準(zhǔn)確度僅達(dá)到CE=47.87%,即該聚類結(jié)果大部分類都未能準(zhǔn)確對應(yīng)正確分類情況。

      而使用動態(tài)層次K-modes算法對此模擬數(shù)據(jù)進(jìn)行聚類,并不需要人為取定k值,而僅需通過返回的系譜圖來決定所希望的k值以及初始modes。取K-modes運(yùn)行次數(shù)p=8,因此8次計(jì)算的k值分別為2~9。在層次聚類時選擇“hamming”距離,應(yīng)用“average”的類間距計(jì)算方式,得到如圖6所示系譜圖。

      圖6 聚類系譜

      從圖6中可見,聚類樹在k=3時的高度差最為明顯,可從k=3處進(jìn)行截取,同時返回對應(yīng)的中心(modes)。在此基礎(chǔ)上進(jìn)行一次K-modes可得到如圖7所示層次K-Modes聚類圖。

      如圖7所示,在同樣k=3的情形下,動態(tài)層次K-modes相較于傳統(tǒng)K-modes,分類準(zhǔn)確度達(dá)到CE=76.93%,明顯高于傳統(tǒng)K-modes;并且類數(shù)目k也能被正確確定,因此其分類效果明顯優(yōu)于傳統(tǒng)K-modes。

      圖7 層次K-modes聚類

      3.2 真實(shí)數(shù)據(jù)試驗(yàn)

      所采用的真實(shí)數(shù)據(jù)為來自廈門某地區(qū)2016年3月1日至4月13日的用戶電流數(shù)據(jù),為曲線數(shù)據(jù)。數(shù)據(jù)規(guī)模為44×9026×96,每一維度含義分別為:采集天數(shù)為44,用戶變壓器數(shù)目為9026,每日共96個觀測值(每日隔15 min一次觀測)。

      考慮到用戶用電曲線基本以日為周期,因此對44天內(nèi)所有用戶的每日96次觀測分別取平均值,將數(shù)據(jù)降維,得到矩陣X(9026×96),其中矩陣每行xi為一個樣本,由一個96維行向量構(gòu)成。

      對X運(yùn)用式(1)的數(shù)據(jù)處理方法,將其轉(zhuǎn)化成類屬型數(shù)據(jù)矩陣,并利用動態(tài)層次K-modes對數(shù)據(jù)進(jìn)行分類。取K-modes的運(yùn)行次數(shù)p=8,在層次聚類時同樣選擇“hamming”距離,類間距計(jì)算方式選擇“average”得到聚類系譜圖,如圖8所示。

      對圖8聚類樹進(jìn)行水平截?cái)?,具有明顯高度差的分類情形為k=3、k=6。因此分別選取k=3和k=6的情形,給出中心(modes)作為初始值,進(jìn)行K-modes聚類。

      在k值為3的情形中,得到圖9所示分類結(jié)果。

      圖9 層次K-modes聚類(k=3)

      如圖9中3個子圖所示,前兩個類特征明顯,屬于雙峰型類,但峰型卻有差異;第一個類雙峰集中在30~70時段內(nèi),第二類中兩個峰在分布在24~50以及65至85時段內(nèi)。在k=3的情形中,此算法抓住了曲線數(shù)據(jù)的主要形態(tài)特征給出合理的分類結(jié)果。

      在k值為6的情形中,得到如圖10所示的分類結(jié)果。

      圖10 層次K-modes聚類(k=6)

      相較下,圖10所示的各類峰型均表現(xiàn)出較明顯的差異。相較于模擬數(shù)據(jù),真實(shí)數(shù)據(jù)表現(xiàn)出了更復(fù)雜的分布特性。正是由于這種復(fù)雜性,很難簡單給出唯一的分類結(jié)果;正如圖8中聚類樹的枝干在k=3、k=6時都有明顯分化。

      4 結(jié) 語

      傳統(tǒng)K-modes算法與層次聚類算法結(jié)合,成功地將層次K-means的算法優(yōu)點(diǎn)移植到類屬型數(shù)據(jù)中。并且所提出的動態(tài)層次K-modes算法還可以通過聚類系譜圖確定k值,一定程度上解決了k值須初始給定的公開問題。算法也具有更強(qiáng)的適應(yīng)性和異常點(diǎn)識別等優(yōu)良性質(zhì),可以對真實(shí)數(shù)據(jù)給出有效聚類結(jié)果。

      考慮到動態(tài)層次K-modes算法從結(jié)果上雖然明顯優(yōu)于傳統(tǒng)K-modes算法,但在進(jìn)行聚類時仍會出現(xiàn)一定的錯分現(xiàn)象,在后續(xù)工作中考慮引入robust思想,無須將所有樣本帶入聚類迭代過程,而是僅選取一部分重要樣本進(jìn)行迭代,以此提高算法準(zhǔn)確度。同時在特征提取方面,也希望引入更精細(xì)化的自適應(yīng)閾值給定,從數(shù)據(jù)角度提高聚類質(zhì)量。

      猜你喜歡
      系譜聚類動態(tài)
      國內(nèi)動態(tài)
      國內(nèi)動態(tài)
      國內(nèi)動態(tài)
      《論風(fēng)格》文本系譜與論爭
      動態(tài)
      基于DBSACN聚類算法的XML文檔聚類
      電子測試(2017年15期)2017-12-18 07:19:27
      中國荷斯坦公牛系譜完整性研究
      中國奶牛(2017年2期)2017-03-22 02:04:46
      教你如何治好“遺傳病”
      基于改進(jìn)的遺傳算法的模糊聚類算法
      一種層次初始的聚類個數(shù)自適應(yīng)的聚類方法研究
      扬州市| 鄂温| 蒙自县| 伊宁市| 乌拉特前旗| 万年县| 衢州市| 磐安县| 广宁县| 长泰县| 元氏县| 关岭| 青河县| 大荔县| 隆昌县| 玉龙| 延长县| 健康| 郑州市| 夹江县| 惠州市| 永仁县| 和龙市| 阿克| 云和县| 古丈县| 讷河市| 崇明县| 德惠市| 子长县| 双桥区| 托里县| 石屏县| 临洮县| 清原| 莫力| 乌什县| 九江县| 德江县| 陈巴尔虎旗| 九台市|