2012-04-02 102 views
2

我試圖在3個維度上實現K-means聚類算法。 現在的要求是我想要靈活地在任何特定的維度上定義我自己的距離度量。例如,在維度1中,我想要定義一個簡單的歐式距離度量,跨越維度2我想定義我自己的自定義距離度量等等。覆蓋聚類算法中的距離度量

是否有可用於K均值聚類的JAVA實現,可讓我重寫我選擇的任何維度的距離度量標準?

感謝 阿布舍克小號

回答

3

看看ELKI。它允許您使用大多數算法的任意距離函數。包括K-手段,雖然這只是部分明智的(K-手段實際上設計是歐氏距離,並可能會停止與其它的距離會聚,當平均不再最小距離!)

事實上,ELKI人們甚至有一個Tutorial on adding a custom distance function幾乎可以回答你的問題,對吧?

1

嘗試Weka它有一個簡單的K-means實施和支持所有類型的屬性(不僅是數字的),所以我以爲他們掀掉某種API,可以讓你的插件你的距離實現。