kmeans Go 的现用 Kmeans 算法包

kmeans 算法,即k 均值聚类算法(k-means clustering algorithm),是一种迭代求解的聚类分析算法。其步骤是,预将数据分为 K 组,则随机选取 K 个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。

kmeans,Go 的现用 Kmeans 算法包:

package mainimport (    
    \"fmt\"
    \"github.com/salkj/kmeans\")
func main() {    
    data := []kmeans.Point{}
    data = append(data, kmeans.Point{[]float64{1.0,3.0,5.0,2.0}})
    data = append(data, kmeans.Point{[]float64{43.0,7.0,12.0,7.0}})
    data = append(data, kmeans.Point{[]float64{2.0,12.0,5.0,8.0}})
    data = append(data, kmeans.Point{[]float64{12.0,1945.0,34.0,65.0}})
    fmt.Println(kmeans.KMEANS(data, 2, 0.001))
}

© 版权声明
THE END
喜欢就支持一下吧
点赞808 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容