zoukankan      html  css  js  c++  java
  • K-means聚类算法

    一、思想

    聚类:人以群分、物以类聚,使得簇内的距离接近,簇间距离远。

    可以做推荐冷启动,区域推荐热榜、用户画像

    二、算法步骤:

    • 1、随机设置K个特征空间内的点作为初始的聚类中心
    • 2、对于其他每个点计算到K个中心的距离,从中选出距离最近的⼀个点作为⾃⼰的标记
    • 3、接着对着标记的聚类中心之后,重新计算出每个聚类的新中心点(平均值或切尾均值)
    • 4、如果计算得出的新中心点与原中心点一样,那么结束,否则重新进行第二步

    如何排除初始值落在异常值的影响:

    可以把数据分为K堆,对每一堆都排序,去掉最小的和最大的25%,取中间的50%的数据取均值作为初始的聚类中心

    三、优缺点:

    优点:
    1)原理比较简单,实现也是很容易,收敛速度快。
    2)聚类效果较优。
    3)算法的可解释度比较强。
    4)主要需要调参的参数仅仅是簇数k

    缺点:
    1)K值的选取不好把握
    2)对于不是凸的数据集比较难收敛
    3)如果各隐含类别的数据不平衡,比如各隐含类别的数据量严重失衡,或者各隐含类别的方差不同,则聚类效果不佳。
    4) 采用迭代方法,得到的结果只是局部最优。
    5) 对噪音和异常点比较的敏感

    四、评估指标

     

     

    参考:1、非监督学习-k-means

          2、【机器学习】K-means(非常详细)

  • 相关阅读:
    bzoj2599
    在Linux下配置jdk的环境变量
    liunx 命令大全
    Liunx下如何使用kettle
    Liunx 解压篇
    Linux下安装MySQL-5.7
    Linux文件权限查看及修改命令chmod,chown
    spring 驱动模式
    Struts2标签之Checkbox
    spring 注解的优点缺点
  • 原文地址:https://www.cnblogs.com/yangms/p/15497425.html
Copyright © 2011-2022 走看看