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(非常详细)

  • 相关阅读:
    004 使用文本编辑器
    003 第一个Python程序
    002 Python解释器
    001 安装Python
    000 Python教程
    001 Java环境变量配置
    002 基础语法1
    003 基础语法2
    dede首页调用会员积分和头像代码
    DEDE 会员调用方法
  • 原文地址:https://www.cnblogs.com/yangms/p/15497425.html
Copyright © 2011-2022 走看看