美文网首页
2016-02-1-kmeans

2016-02-1-kmeans

作者: 大雪封山十几年 | 来源:发表于2016-02-18 10:13 被阅读0次

    layout: post
    title: 数据挖掘经典算法之k-means
    date: 2016-2-1
    categories: blog
    tags: [数据分析算法]
    description: 数据挖掘经典算法之k-means。


    数据掘经典算法 k-means

    常见定义

    聚类:

    按照事物间的相似性进行区分和分类的过程,是无监督的分类(没有预定义的类编号)。
    数据挖掘常用的方法有分类、回归分析、聚类、关联规则、神经网络方法、Web 数据挖掘等。
    k-means属于聚类算法中经典的一种。
    聚类的典型应用就是,在顾客群中寻找有共同个性的顾客。类似购买相机后会立刻购买同品牌的胶卷。
    功能:

    • 做为一个独立的工具来获得数据的分布情况
    • 作为其他算法(如特征和分类)的预处理步骤

    k-means:

    K-means算法是硬聚类算法,是典型的基于原型的目标函数聚类方法的代表,它是数据点到原型的某种距离作为优化的目标函数,利用函数求极值的方法得到迭代运算的调整规则。K-means算法以欧式距离作为相似度测度,它是求对应某一初始聚类中心向量V最优分类,使得评价指标J最小。算法采用误差平方和准则函数作为聚类准则函数.

    过程分析

    基于划分的聚类算法:

    • 基本思想,为N个数据创建k个分割,每个分割代表一个聚类。
    • 每个组必须包含一个对象,每一个对象必须属于一个组。
    • 采用分割法进行聚类,首先要给定分割的数目并创建一个初始分割。然后通过一个优化函数,应用迭代的重定位技术,尝试通过对象在分割间的移动改进分割。

    简单k-means算法

    1. 任意选择k个数据对象作为初始的聚类中心;
    2. 对以下过程进行迭代:
      (a)计算数据集中其余各数据对象到这些聚类中心的距离,然后按照距离最近的原则,把各数据对象分到相应的类中;
      (b)计算各个聚类新的重心,即求新形成的类中所有数据对象的平均值
    3. 重复过程(a)、(b),直到目标函数(标准方差的和)不再发生变化。

    k-means聚类过程:

    选取作为初始聚类中心的对象不用时,会对聚类结果产生很大的影响。

    不同初始中心的结果

    初始点的选取

    因为初始点的选取会对结果产生极大影响,所以通常在k-means使用以前会有一个初始点选取的算法作为预处理。这里暂且不展开讨论。

    对随机数据进行模拟聚类

    1. 随机生成一组数据存入表中作为待处理数据
    2. 去出待处理数据进行聚类
    3. 算法运行完成后将结果存入结果表中

    Oracle中数据分析预处理常用脚本

    !暂时未进行编辑

    源程序

    Github-k-means-Oracle-sqlplus

    流程图

    表结构



    运行结果

    相关文章

      网友评论

          本文标题:2016-02-1-kmeans

          本文链接:https://www.haomeiwen.com/subject/yhpmkttx.html