2011-06-29 179 views
4

Plot of 2 - Dimensional data期望最大化問題 - 如何找到高斯的數據

內的最佳數量是有如何確定應的一組數據中被識別高斯數量的任何算法或招應用預期之前最大化算法?例如,在上面所示的二維數據圖中,當我應用期望最大化算法時,我嘗試對數據擬合4個高斯,我會得到以下結果。

enter image description here

但如果我不知道高斯的數據中的數字?是否有任何算法或技巧可以應用,以便我可以找出這些細節?

+2

你應該閱讀維基百科頁面:http://en.wikipedia.org/wiki/Determining_the_number_of_clusters_in_a_data_set,也研究「羣集驗證」技術 – Amro

+1

也是這個問題可能更適合於:HTTP://stats.stackexchange .com/ – Amro

+0

看看['kmeans'](http://www.mathworks.com/help/toolbox/stats/kmeans.html)函數,如果你有統計工具箱。 – abcd

回答

1

有關此主題的維基百科有一個article。我對這個主題不太瞭解,但是我被告知不需要指定簇數量的聚類算法需要一些關於簇的密度信息或簇間的最小距離。

+1

使用例如'DBSCAN'或'OPTICS'。詳情請參閱維基百科。 –

8

這可能有點翻新,因爲其他人已經鏈接了實際集羣號確定的wiki文章,但是我發現這篇文章過於密集,所以我想我會提供一個簡短而直觀的答案:

基本上,對於數據集中的聚類數目沒有普遍的「正確」答案 - 聚類越少,描述長度越小但方差越高,在所有非平凡數據集中,方差不會完全消失,除非你對每個點都有一個高斯分佈,這使得聚類無用(這是一種更普遍的現象,稱爲「無偏學習的無用性」:一個學習者不會做出先驗假設關於目標概念的身份沒有合理的依據分類任何看不見的實例)。

所以你基本上要挑選你的數據集的一些功能通過集羣的數量最大化(見歸納偏置維基article一些實例特徵)

在其他的噩耗,在所有這些情況下找到集羣的數量是known to be NP-hard,所以你可以期望的最好的是一個很好的啓發式方法。

+1

非常感謝回覆,非常有用。 – Simon

1
  1. 非參數貝葉斯聚類現在得到了很多關注。你不需要指定集羣。
  2. Autoclass是一種算法,可自動識別來自混合的羣集數量。