zoukankan      html  css  js  c++  java
  • K-means

    一种用于度量聚类效果的指标使SSE(误差平方和),SSE值越小表示数据点越接近于他们的质心,聚类效果也越好。因为对误差取了平方,因此更加重视那些远离中心的点。一种肯定可以降低SSE值的方法是增加簇的个数,但这违背了聚类的目标。聚类的目标是在保持簇数目不变的情况下提高簇的质量

    二分 K-均值算法

    为克服K-均值算法收敛于局部最小值的问题,有人提出了另一个称为二分—K均值的算法。该算法首先将所有点作为一个簇,然后将该簇一分为二。之后选择其中一个簇继续进行划分,选择哪一个簇进行划分取决于对其划分是否可以最大程度降低SSE的值,上述基于SSE的划分过程不断重复,直到得到用户指定的簇数目为止。

    另一种做法是选择SSE最大的簇进行划分,直到簇数目达到用户指定的数目为止。

    总结:聚类是一种无监督的学习方法。所谓无监督学习是指事先并不知道要寻找的内容,即没有目标变量。聚类将数据点归到多个簇中,其中相似数据点处于同一簇,而不相似数据点处于不同簇中。聚类中可以使用多种不同的方法来计算相似度。一种广泛使用的聚类算法是K-均值算法,其中k是用户指定要创建的簇的数目。k-均值聚类算法以k个随机质心开始。算法会计算每个点到质心的距离。每个点会被分配到距其最近的簇质心,然后紧接着基于新分配到簇的点更新簇质心。以上过程重复数次,直到簇质心不再改变。这个简单的算法非常有效但是也容易收到初始簇质心的影响。为了获得更好的聚类效果,可以使用另一种称为二分k—均值的聚类算法。二分K-均值算法首先将所有点作为一个簇,然后使用k-均值算法(k=2)对其划分。下一次迭代时,选择有最大误差的簇进行划分。该过程重复直到k个簇创建成功为止,二分-k均值的聚类效果要好于k-均值算法。

  • 相关阅读:
    tensorFlow(二)线性回归
    tensorFlow(一)相关重要函数理解
    Java NIO学习笔记-通道&缓冲区
    Code Plus插件开发笔记
    Java NIO框架Netty demo
    前端React开发入门笔记
    Tomcat性能优化
    Spring Boot整合Dubbo框架demo
    Spring Boot入门实例
    简单的RPC原型与实现原理
  • 原文地址:https://www.cnblogs.com/zhibei/p/9356721.html
Copyright © 2011-2022 走看看