2017-02-18 119 views
0

我有一個疑問,在我的會議中我也被問過很多次,我沒有回答它。我希望你能幫助我瞭解這個問題的見解。爲什麼同一組聚類的數據點在Kmeans聚類中遠離或分散?

我已經在我的項目中使用kmeans聚類來聚集各個問題區域的大量文檔。我還使用matplotlib來繪製數據點的座標。更常見的是落在同一個簇中的數據點分散或遠離屬於同一個簇中的其他文檔或數據點。一般人們問我的問題是,如果文檔或數據點來自同一個羣集/組,那麼它們需要彼此靠得更近,爲什麼沒有發生關於同一羣組/羣集的文檔。

我如何說服他們,有時我會無言以對他們說什麼。

除了同樣的問題,我無法控制集羣的形成,但作爲我的領域的專家,我非常清楚文檔屬於哪個領域。那麼,如何使用Kmeans或任何其他集羣機器或通過使用超參數來準確地將這幾千個文檔配置/集羣到這些問題區域。請幫助我。 enter image description here

我從http://brandonrose.org/clustering

enter image description here

父親,紐約起飛參考,哥哥是一個簇的紫色。如果它屬於同一個集羣,那麼它們都需要位於一側靠近彼此的繪圖屏幕上。爲什麼它分散在繪圖屏幕中的任何地方。多數民衆贊成在我的情況也發生了什麼。

+0

以我的經驗,文本上的k-means不太適用。 **永遠不要相信**結果。最多使用它給你一個*想法*有什麼,因爲通常至少有50%的點位於錯誤的聚類中。 –

+0

ok,在這種情況下,什麼算法適合文本。讓我的問題要求更加寬泛。我有成千上萬的文件/問題來自不同的方面,比如bugzilla,socialcast,salesforce等等......我想將這些文檔或PR集成到一個尖銳的問題領域。舉例來說,在JAVA中,人們每天面臨着許多問題,他們會發布他們的問題,我需要把所有這些文檔都集中到特定的問題領域,比如nullpointerexception應該都集中在一個集羣中,並且集合相關的問題應該放在其他集合中簇。什麼阿爾戈套房很好集羣這一點。 –

+0

我懷疑任何聚類都能做到這一點。由於您使用了多個數據源,因此您很可能會看到羣集對應於:bugzilla,socialcast,salesforce。這將是一個成功的集羣,但對你來說毫無用處。 –

回答

1

您只提供有關您的數據的很少信息,因此,此答案有點推測。但我確信你的數據點有兩個以上的組件,並且你至少在三維空間中進行k-means聚類。然後你使用某種投影來以二維方式顯示它們。由於投影,原本彼此遠離的點似乎彼此靠近。二維圖很少說明原始的高維空間中的鄰域關係。

+0

我引用此鏈接來解決我的問題 http://brandonrose.org/clustering 即使在這裏,我看到一個特定的羣集電影散落。我也會上傳上面的圖片。我看到集羣名稱是Father,紐約,兄弟是紫色的,這些數據點分散在劇情中的每一處。爲什麼會這樣,如果它的所有相同的羣集,那麼它需要更接近正確。 –

+0

@Niteshkumar:鏈接的文檔證實了我的假設,即實際的聚類是在高維向量空間中完成的。在這個空間中,一個集羣的點實際上是靠近在一起的。你展示的圖只是這個空間的二維可視化。 –

+0

好,但爲什麼落在同一個簇下的數據點的二維可視化效果很差。我問的原因是,我真的很難在我的會議中解釋。是否有任何可能的方式來解釋高維向量空間以及爲什麼這些數據點對商業人士來說很遙遠。如果你用一些比喻和深入的方式解釋我,那將是非常棒的。 非常感謝您的時間和解釋,你迄今爲止所做的。 –