无监督分类:聚类分析(K均值)
生活随笔
收集整理的這篇文章主要介紹了
无监督分类:聚类分析(K均值)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.K均值聚類
K均值聚類是最基礎的一種聚類方法。K均值聚類,就是把看起來最集中、最不分散的簇標簽分配到輸入訓練樣本{xi}中。具體而言就是通過下式計算簇y的分散狀況:在這里,∑i,yi=y表示的是滿足yi=y的y的和。
μy是指簇y的中心。ny為屬于簇y的樣本總數。利用上述定義,對于所有的簇y=1,2,3,..,c的下式和最小時,決定其所屬的簇標簽。
然而,上述的最優化過程的計算時間隨著樣本數目n的增加呈現指數級的增長,當n為較大的數值的時候,很難對其進行高精度的求解。因此在實際應用中,一般將樣本逐個分類到距離最近的聚類中,并重復這一操作,直到最終求得其局部最優解。
K均值聚類的算法流程如下所示:
K均值聚類的一個實例:
K均值聚類算法的實例。方框表示的是簇中心
2.核K均值聚類
由于K均值聚類是依據歐氏距離||x-μy||的大小來決定樣本所屬的簇,因此只能處理線性可分得聚類問題。 同理,我們可以采用核映射的方法,可以處理非線性可分的聚類問題(核K均值聚類算法)。具體而言,就是把上市的歐式距離的平方用樣本間的內積來表示,如下:接著,把上式的內積置換為核函數K(x,x'),就變成了核K均值聚類算法。
在這里,與(x,x')相對應的K(x,x')是與最小化無關的常數,因此實際計算過程中可以忽略。 利用核K均值聚類可以得到非線性的簇的分類結果。然而,采用核函數的非線性核K均值聚類的方法,最終的聚類結果強烈依賴于初始值的選取,因此在實際應用中想要得到理想的解并非易事。
3.譜聚類
核K均值聚類方法,最終的聚類結果強烈以來與初始值的選取,當由核函數決定的特征空間的緯度比較高的時候,這種依賴尤其明顯。對此,可以使用降維的方法來解決這個問題,這種方法稱為譜聚類。 前面也介紹了很多的無監督聚類方法。其中也包括可以很好地保護原始數據中的簇構造的局部保持投影法,作為聚類分析的前處理是一種很好的選擇。譜聚類,首先在核特征空間中應用局部保持投影法,然后直接應用常規的K均值聚類方法(并非核函數的方法)。 譜聚類的具體算法流程如下:利用譜聚類的一則實例如下:
a表示的原始二維數據應用拉普拉斯特征映射法向一維部分空間進行映射,就可以得到b所示的只有兩點的數據結果。對得到的b結果,利用K均值聚類處理后,就可以得到c那樣的兩個點分別代表一個聚類結果,再把得到的簇標簽映射到原始的二維數據中,就可以得到d所示的自然地聚類結果。
4.調整參數的自動選取
核K均值聚類法和譜聚類的結果依賴于高斯核函數的帶寬等核參數的選擇。這一塊重點討論聚類方法中根據更重客觀條件自動決定這些參數的方法。 聚類算法中,通過d次維的實向量樣本{xi},求得c中標量值1,...,c對應的簇標簽{yi}。這一操作可以被理解為將d次維的實向量中包含的信息,通過標量c進行壓縮。如下所示:基于這樣的觀點,一般認為簇標簽{yi}比原始的樣本{xi}包含更多的信息,可以得到更好的聚類結果。 簇標簽{yi}包含的樣本{xi}的信息量,可以通過互信息來進行測算。互信息是信息論中的一個基本概念定義如下:
互信息一般為非負的數值,只有當變量在統計上相互獨立的時候,互信息為0.因此,可以通過互信息的大小推導出x,y的從屬性的強弱。綜上可知,互信息越大,簇標簽{yi}包含樣本{xi}的信息越多。 互信息的值,可以采用KL散度密度比估計法進行高精度的計算。但是由于互信息的計算公式中包含對數函數,對異常值的反應相當的明顯,所以經常采用沒有對數的平方損失互信息來加以替換(泰勒公式):
接下來主要討論樣本{xi}和簇標簽{yi}之間的平方損失互信息的最小二乘互信息估計法。平方損失互信息最小二乘互信息估計法,不需要計算p(x,y)/p(x)/p(y)等概率,而是對將其組合而成的密度比函數進行學習。
為了對上述的密度比函數進行近似,采用與參數相關的線性模型:
然后對下式的J(a)為最小時對應的參數a進行最小二乘學習:
上式中,C是無關的常數,計算過程可以忽略。然后,對第一項和第二項中包含的期望值進行樣本平均近似,再加上L2正則化項,就可以的帶下面的學習規則:
其中,G是b*b階矩陣;h是b次維向量:
對于上面的凸的二次式,進行簡單的偏微分求導即可得到最優解:
將上面得到的密度比估計量,帶入與平方損失互信息等價的下式:
就可以得到如下的平方損失互信息的估計量:
正則化參數λ和基函數中包含的參數,可以通過與規則J相關的交叉驗證法加以確定。 下面是與各個簇的高斯模型相對應的最小二乘互信息估計法的實例:
使用k近鄰相似度的譜聚類中,當k=10的時候平方損失互信息的估計值達到最大值 由此可以得到最優的聚類效果
總結
以上是生活随笔為你收集整理的无监督分类:聚类分析(K均值)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DOM3 textInput事件-sof
- 下一篇: 新兴机器学习算法:在线学习