日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut

發布時間:2025/3/21 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

聚類算法是ML中一個重要分支,一般采用unsupervised learning進行學習,本文根據常見聚類算法分類講解K-Means, K-Medoids, GMM, Spectral clustering,Ncut五個算法在聚類中的應用。




Clustering Algorithms分類

1. Partitioning approach:

? ? ? ? 建立數據的不同分割,然后用相同標準評價聚類結果。(比如最小化平方誤差和)

? ? ? ? 典型算法:K-Means, K-Medoids

2.?Model-based:

? ? ? ?對于每個類假定一個分布模型,試圖找到每個類最好的模型

? ? ? ?典型算法:GMM(混合高斯)?

3. Dimensionality Reduction Approach:

? ? ? ?先降維,再聚類

? ? ? ?典型算法:Spectral clustering,Ncut


下面分別解析~




1. Partitioning approach

1.目標:

? ? ? ?找出一個分割,使得距離平方和最小


2.方法:

? ? ? ?Global optimal : 枚舉所有partition

? ? ? ?Heuristic method:K-Means, K-Medoids


3.K-Means算法:

? ? ? ?1. 將數據分為k個非空子集

? ? ? ?2. 計算每個類中心點(k-means<centroid>中心點是所有點的average),記為seed point

? ? ? ?3. 將每個object聚類到最近seed point

? ? ? ?4. 返回2,當聚類結果不再變化的時候stop


復雜度:

? ? ? ?O(kndt)

? ? ? ?-計算兩點間距離:d

? ? ? ?-指定類:O(kn) ? ,k是類數

? ? ? ?-迭代次數上限:t


4.K-Medoids算法:

? ? ? ?1. 隨機選擇k個點作為初始medoid

? ? ? ?2.將每個object聚類到最近的medoid

? ? ? ?3. 更新每個類的medoid,計算objective function?

? ? ? ?4. 選擇最佳參數

? ? ? ?4. 返回2,當各類medoid不再變化的時候stop


復雜度:

? ? ? ?O((n^2)d)

? ? ? ?-計算各點間兩兩距離O((n^2)d)

? ? ? ?-指定類:O(kn) ? ,k是類數


5.特點:

? ? ? ?-聚類結果與初始點有關(因為是做steepest descent from a random initial starting oint)

? ? ? ?-是局部最優

? ? ? ?-在實際做的時候,隨機選擇多組初始點,最后選擇擁有最低TSD(Totoal Squared Distance)的那組


6.?KMeans和KMedoid的實現





2.?Model-based——GMM(Gaussian Mixture Model)

1.GMM概念:

? ? ? ? ? -將k個高斯模型混合在一起,每個點出現的概率是幾個高斯混合的結果。




? ? ? ? ? -假設有K個高斯分布,每個高斯對data points的影響因子為πk,數據點為x,高斯參數為theta,則


? ? ? ? ? -要估計的模型參數為每個類的影響因子πk,每個類的均值(μk)及協方差矩陣(Σk)




2. GMM的似然函數:

? ? ? ? ? log-likelihood function:

? ? ? ? ? 假設N個點的分布符合i.i.d,則有似然函數


? ? ? ? ? 問題是,對于這樣的一個似然函數,用gradient descent的方法很難進行參數估計(可證明)

? ? ? ? ? 所以用前面我們講過的EM(expectation maximization)算法進行估計:


? ? ? ? ? 引入中間latent項z(i),其分布為Q,用EM算法,就有上面的恒等,那么為什么是恒等呢?來看看講EM的這篇文章,第三張的開頭寫的,=constant,也就是說與z(i)無關了,而等于p(x(i);theta),這也就是說可以用混合高斯模型的概率表示了。





3. EM具體應用到GMM參數求解問題:

E-step: 根據已有observed data和現有模型估計missing data:Qi(zk)

M-step: 已經得到了Q,在M-step中進行最大似然函數估計(可以直接用log-likelihood似然函數對參數求偏導)




4.?GMM的實現



5. K-Means與GMM的比較:

? ? ? ? ??

? ? ? ? ? -KMeans:

1. Objective function:§Minimize the TSD 2. Can be optimized by an EM algorithm. ? ? ? ? ??§E-step: assign points to clusters. ? ? ? ? ??§M-step: optimize clusters. ? ? ? ? ??§Performs hard assignment during E-step. 3. Assumes?spherical clusters?with equal probability of a cluster.


? ? ? ? ? -GMM:

1. Objective function:§Maximize the log-likelihood. 2. EM algorithm: ? ? ? ? ??§E-step: Compute posterior probability of membership. ? ? ? ? ??§M-step: Optimize parameters. ? ? ? ? ??§Perform soft assignment during E-step. 3. Can be used for?non-sphericalclusters. Can generate clusterswith different probabilities.





3. Dimensionality Reduction Approach: Spectral Clustering?


1. Spectral clustering要解決的問題:

上面的KMeans不能能解決一些問題,如圖所示:


而這種問題可以通過譜聚類(spectral clustering)解決。將數據展開到兩個特征向量空間,即得:


下面我們介紹譜分解的算法~





2.clustering objectives:

? ? ? ? ? 將邊權賦值為兩點之間的similarity,做聚類的目標就是最小化類間connection的weight。



比如對于下面這幅圖,分割如下


? ? ? ? ? 但是這樣有可能會有問題,比如:


由于Graph cut criteria 只考慮了類間差小,而沒考慮internal cluster density.所以會有上面分割的問題。這里引入Normalised-cut(Shi & Malik, 97')。



3. 改進版:Ncut

? ? ? ? ? -consider the connection between groups relative to the density of each group:


? ? ? ? ? 其中,vol 是每個group的volume,也就是normalize by group volume.


? ? ? ? ? 最后的目標是最小化Ncut(A,B).



4. Ncut 的求解:

? ? ? ? ? -Matrix Representation:


? ? ? ? ? -Objective Function of Ncut:




詳見wiki上的求解過程,這里不再贅述。


from:?http://blog.csdn.net/abcjennifer/article/details/8170687

總結

以上是生活随笔為你收集整理的聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。