• 即将更新图形学,编译原理,机器学习等文章,谢谢关注~
  • 由于算法限制,搜索时注意简化关键字,谢谢支持~
  • 网站不兼容IE5.0及以下,请使用主流浏览器访问.
  • k-means算法概述

    K-means算法思想

    K-MEANS算法是输入聚类个数k,以及包含 n个数据对象的数据库,输出满足方差最小标准k个聚类的一种算法。k-means 算法接受输入量 k ;然后将n个数据对象划分为 k个聚类以便使得所获得的聚类满足:同一聚类中的对象相似度较高;而不同聚类中的对象相似度较小。
    聚类相似度是利用各聚类中对象的均值所获得一个“中心对象”(引力中心)来进行计算的。

    K-means算法步骤与伪代码

    (1) 从 n个数据对象任意选择 k 个对象作为初始聚类中心;
    (2) 根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;
    (3) 重新计算每个(有变化)聚类的均值(中心对象);
    (4) 计算标准测度函数,当满足一定条件,如函数收敛时,则算法终止;如果条件不满足则回到步骤(2)。

    伪码:

    1.选择K个点作为初始质心
    2.repeat
    3.将每个点指派到最近的质心,形成K个簇
    4.重新计算每个簇的质心
    5.until 簇不发生变化或达到最大迭代次数

    优点与缺点

    优点:易于实现
    缺点:可能收敛于局部最小值,在大规模数据收敛慢

    以上是简单理解kmeans算法,深入理解请移步:

    http://blog.csdn.net/taoyanqi8932/article/details/53727841

    读者评分
    [评分人数: 1 平均分: 5]

    评论

    OmegaXYZ