kmeans Go 的现用 Kmeans 算法包开源项目

我要开发同款
匿名用户2016年09月16日
38阅读
所属分类Google Go、程序开发、数学计算
授权协议MIT

作品详情

kmeans算法,即k均值聚类算法(k-meansclusteringalgorithm),是一种迭代求解的聚类分析算法。其步骤是,预将数据分为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))}
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论