2015-03-24 36 views
1

截至http://faculty.uscupstate.edu/atzacheva/SHIM450/KMeansExample.dock表示產生空簇

描述對於某些數據集我發現簇的數目產生不總是等於初始K I已經實現了一個k均值聚類算法。這是預期的嗎?

我認爲這是可以預料的,因爲在每次迭代之後,每個數據點都被添加到最近的簇中,但是這並不能保證所有的簇將被填充。每個集羣在每次迭代後都會重新初始化,因此某些集羣可能沒有足夠接近點以添加任何點。

+0

這不應該發生。你是否從這組對象中獲取了第一個K中心?它們應該是隨機對象(來自集合),但不是隨機座標。 – Tilo 2015-03-24 22:16:06

+0

@Tilo我從這組對象中隨機抽取k個質心,從所選的隨機點中選擇座標。座標本身不是隨機的。 – 2015-03-24 22:20:10

+0

@Tilo請參閱問題更新 – 2015-03-24 22:23:57

回答

2

本文描述了對於k手段空簇可發生http://www.academypublisher.com/ijrte/vol01/no01/ijrte0101220226.pdf

之一的主要問題K-means算法是,它可能產生 取決於初始中心向量空簇。對於k-means的靜態執行,這個問題被認爲是不重要的,並且可以通過多次執行該算法來解決該問題。

+0

我面臨同樣的問題,所以每當我找到一個空集羣時,我都會簡單地重做kmeans。大部分時間都解決了。 – tuxdna 2015-03-30 10:02:47

+0

@tuxdna根據我的經驗,隨着K值的增加,空簇的產生概率也會增加。 – 2015-03-30 10:04:52

+0

我得到的另一個觀察結果是,空集羣的出現在縮小維度上更高,同時保持樣本數量和K與原始維度相同。這只是一個觀察。 – tuxdna 2015-03-30 10:21:41