四川大學 魏燁敏 蔣子元
在機器學習中,系統(tǒng)聚類算法和K-means聚類算法是兩種常用的聚類算法,并具有各自的特征,將兩者特征結合到一起設計的組合聚類算法,可以發(fā)揮兩種算法的優(yōu)勢作用,提高機器學習聚類算法的分析和判斷能力。目前關于機器學習聚類組合算法的研究已經(jīng)得到了廣泛關注,比如在電力工業(yè)中,可以利用機器學習聚類算法實現(xiàn)用戶負荷類型分析,完成電價制定和負荷預測等工作。
系統(tǒng)聚類算法通過將樣品劃分成若干類,選擇各類中距離最小的類進行合并,指導將所有類合并成一個類,完成機器學習過程。系統(tǒng)聚類算法的主要步驟包括:(1)構建M個初始模式樣本類,用Y1(0)、Y2(0)、…Ym(0)表示,并對類與類間的距離進行計算;(2)根據(jù)類與類間的距離計算結構,構建距離矩陣D(m),求取D(m)中的最小元素,根據(jù)最小元素建立新的分類,比如最小元素是Yi(m)和Yj(m)之間的距離,則根據(jù)Yi(m)與Yj(m)間距建立新分類Y1(m+1)、Y2(m+1)、…Ym(m+1);(3)計算合并新類之間的距離,得到距離矩陣D(m+1),再對Yij(m+1)與其它未合并類Y1(m+1)、Y2(m+1)、…Ym(m+1)之間的距離進行計算;(4)如果經(jīng)過上述計算和合并沒有得到預期聚類結果,則返回第二步進行迭代計算,直到得到預期聚類結果。該聚類算法的主要優(yōu)點是可以由系統(tǒng)根據(jù)數(shù)據(jù)間距離自動列出類別[1]。
K-means聚類算法法即最小最大聚類算法,通過綜合考慮各簇之間的簇內(nèi)方差值關系,確定聚類目標函數(shù),在最小化K各簇中的最大簇內(nèi)方差值下進行聚類。具體是對公式:
進行聚類最小化,通過迭代方式,得到松弛化公式:
可以將其聚類過程看作簇與聚類中心的迭代更新過程,在權重增加下,可以將接近中心的樣本劃分到簇k中。由于0≤p≤1,1/(1-p)>0,方差越大則權重越高[2]。
在機器學習過程中,如果負荷樣本數(shù)量過高,特征向量的維數(shù)往往也較多,單獨采用任意一種聚類方法,都難以獲得理想的聚類效果。為了得到更加可靠的聚類分析結果,客觀描述樣本類型,準確識別樣本并提高分類效率,可以通過聚類算法組合設計,找到適合對大數(shù)量和高維度樣本進行聚類分析的方法,實現(xiàn)負荷特性的有效聚類。
通過對上述兩種聚類算法進行分析可以看出,初始聚類中心設計對聚類算法的應用效果有重要影響,如果初始聚類中心的設計不合理,將導致聚類結果出現(xiàn)不穩(wěn)定現(xiàn)象。而且在處理大數(shù)量樣本數(shù)據(jù)時,聚類算法的重復性步驟非常多,但其整體流程較為簡單,原理較為直觀和清晰,能夠在計算機軟件的輔助下,實現(xiàn)快速分類。采用組合算法的優(yōu)勢是不需要初始設定經(jīng)典聚類算法,解決傳統(tǒng)單一聚類算法在應用過程中容易出現(xiàn)局部最優(yōu)解的問題。
基于上述考慮,設計系統(tǒng)聚類算法和K-means聚類算法的組合算法,通過二次組合,對機器學習過程中的負荷特性進行進一步的計算分析。將系統(tǒng)聚類算法作為一次聚類算法,利用其對負荷特性進行分類,然后在采用K-means聚類算法進行二次聚類分析,將一次聚類計算結果直接作為二次聚類分析的聚類中心,解決傳統(tǒng)聚類算法的初始參數(shù)敏感性問題,同時為二次聚類分析結果的客觀性和準確性提供保障。
聚類組合算法的關鍵步驟包括平滑處理、量綱差別判斷、歸一化處理、加權處理、系統(tǒng)聚類、相關系數(shù)判斷、最優(yōu)系統(tǒng)聚類、最小最大聚類、有效性驗證、矩陣還原及加權、最優(yōu)分類數(shù)確定、質(zhì)控特殊數(shù)據(jù)、加權矩陣還原等。
根據(jù)上述聚類組合算法設計方式,及其學習聚類組合算法的應用流程可以分為三大步驟,一是對初始數(shù)據(jù)進行處理,并完成特征向量設置,二是應用組合聚類算法,三是對聚類分析結果進行展示?;谶@一基本流程,聚類組合算法的詳細應用流程如下:(1)在第一階段,完成數(shù)據(jù)導入和壞數(shù)處理工作,并對導入的數(shù)據(jù)樣本進行歸一化處理,得到樣本特征向量;(2)在第二階段的聚類組合算法應用過程中,首先對分類數(shù)進行初始化,然后由系統(tǒng)執(zhí)行聚類算法,確定初始化聚類中心,完成最小最大k均值聚類,利用有效性函數(shù)對聚類結果進行檢驗,如果不滿足聚類分析要求,則返回初始分類數(shù)步驟進行迭代計算,直到得到預期的聚類計算分析結果;(3)在第三階段,將得到的滿意聚類結果導出,并由計算機軟件輔助繪制聚類效果圖,對聚類結果進行展示。
本次選取的算例為某工業(yè)園電子元件制造企業(yè)的每日負荷數(shù)據(jù)聚類組合算法應用。在數(shù)據(jù)搜集過程中,選取該電子元件制造企業(yè)在近5個月內(nèi)每日24時的負荷數(shù)據(jù),經(jīng)過處理后得到聚類特征向量,共得到152組數(shù)據(jù),將非正常數(shù)據(jù)剔除后,剩余130組有效數(shù)據(jù)。將130組有效數(shù)據(jù)制作成分析樣本,共分為6類,提取出三組特殊數(shù)據(jù),基于上述聚類組合算法對其進行聚類分析。從本次算例分析結果來看,根據(jù)聚類組合算法最終得到的負荷曲線,負荷高峰值分別出現(xiàn)在8~11時和14~16時,部分為迎峰負荷。通過對各類別情況進行分析可以看出,第一類和第二類是減產(chǎn)或停產(chǎn)的特殊情況,得到的聚類分析曲線也較為特殊,其他負荷曲線形態(tài)則較為相似。通過進行聚類組合分析和計算,可以確定負荷高峰為1200kW,最低時也可達到800kW,平時基本穩(wěn)定在1000kW左右,而且沒有隨季節(jié)變化出現(xiàn)較大波動。基于上述分析結果,該企業(yè)通過在高峰時采取減產(chǎn)等措施,可以使負荷峰值下降約200~300kW。聚類組合算法的應用可以完成負荷分析人物,為移峰填谷、優(yōu)化系統(tǒng)運行提供支持。
綜上所述,單一的聚類算法難以完成大數(shù)量和高維度樣本的聚類分析任務,通過設計和應用聚類組合算法,可以發(fā)揮不同聚類算法的優(yōu)勢,同時解決初始聚類中心設置問題,從而得到更加可靠的聚類分析結果。通過對系統(tǒng)聚類算法與K-means聚類算法的組合設計和應用進行研究,可以為相關機器學習聚類算法的改進提供參考。