zoukankan      html  css  js  c++  java
  • 【聚类】 聚类之Kmeans基础

    一、相异度计算
     
     
        基于空间的距离
     
     
        1、欧几里得距离:
     
                
        2、曼哈顿距离:
        
                
        3、闵科夫斯基距离:
        
                
        
        (可见:欧氏距离和曼哈顿距离都是闵科夫斯基距离在P=1,2下的特例)
     
     
        标量规格化
     
        
        由于标量大小不一致导致对空间映射会同质化,所以需要对属性在[0,1]空间上映射,以来规格化。
     
        映射公式为:     (ai 是一个属性)
     
     
    二、二元变量
     
        
        二元变量就是只能取0、1 的变量。
     
        二元相异度计算公式: 取值不同的同位属性个数 所有属性个数
        
        例如:X={1,0,0,0,1,0,1,1},Y={0,0,0,1,1,1,1,1}。 二元相异度为 3/8
     
        非对称二元相异度计算公式:取值不同的同位属性个数 / 所有属性个数 - 值为0的同位属性个数 
     
        非对称二元相似度计算公式: 1 -  非对称二元相异度
     
        jaccard系数:非对称二元相似度
     
     
    三、分类变量
     
        
           是二元变量的扩展 只不过枚举种类个数为多个
     
            分类变量相异度计算公式:取值不同的同为属性个数 /  所有属性个数
     
     
    四、K均值聚类
     
            所谓聚类问题,就是给定一个元素集合D,其中每个元素具有n个可观察属性,使用某种算法将D划分成k个子集,要求每个子集内部的元素之间相异度尽可能低,而不同子集的元素相异度尽可能高。其中每个子集叫做一个簇。
     
     
        K-means聚类算法
     
           1、从D中随机取k个元素,作为k个簇的各自的中心。

          2、分别计算剩下的元素到k个簇中心的相异度,将这些元素分别划归到相异度最低的簇。

          3、根据聚类结果,重新计算k个簇各自的中心,计算方法是取簇中所有元素各自维度的算术平均数。

          4、将D中全部元素按照新的中心重新聚类。

          5、重复第4步,直到聚类结果不再变化。

          6、将结果输出。

    五、MAHOUT中的分布式Kmeans算法实现

       稍后给出

  • 相关阅读:
    RocketMQ系列(一)基本概念
    怎样实现登录?| Cookie or JWT
    Hotspot GC研发工程师也许漏掉了一块逻辑
    初级Java工程师也能轻松进行JVM调优了
    自动化不知如何参数化(二)?xlrd来帮你解决
    自动化不知如何参数化(一)?xlrd来帮你解决
    SpringCloud系列之API网关(Gateway)服务Zuul
    SpringCloud系列之客户端负载均衡Netflix Ribbon
    SpringCloud系列之使用Feign进行服务调用
    Spring Security系列之极速入门与实践教程
  • 原文地址:https://www.cnblogs.com/lixusign/p/2550239.html
Copyright © 2011-2022 走看看