数据挖掘笔记(3)——聚类、离群点分析

聚类

基本概念

聚类:

      将对象分成相似的类,聚类中 一个样本可属于多个类别

特征:

      不考虑数据的类标号,而是通过聚类产生新类标号

评价:

        最大化类内相似性(similarity),最小化类间相似性。相似性需要定义,作为聚类的标准

数据挖掘的要求

        可解释性  

        发现任意形状的聚类

        处理不同类型属性的能力

        可伸缩性

        对于决定输入参数的领域知识需求最小

什么不是聚类:

        分类:有类标

            聚类最优分类组是未知的

            聚类结果是动态的

            可能没有关于聚类的先验知识

        简单分组:有定义(根据姓名进行分组)

        检索结果:有确定结果

        图分割


数据结构

    矩阵(表): 列标示特征、行标示记录,待处理的数据

    相异度矩阵(对称矩阵):  d(i,j):标示对象i和j的相异度,多数聚类算法都是对相异度矩阵运行

区间标度变量

        粗略的线性、连续变量,如高度、气温,选用的单位会影响聚类结果,度量单位(数值比较大,特征就会影响)

         解决: 度量标准化(转换为无单位的值):1.  计算均值绝对偏差(反应数据离散度)   2. 计算标准度量值

计算相异度(距离度量)

           闵可夫斯基距离

           曼哈顿距离

           欧几里得距离

           加权的欧几里得距离(放大特征)

二元变量

      变量只有两种取值,如0或1 

计算相异度:

      如果二元变量具有相同的权重,则得到一个两行两列的相异表

      对称二元相异度(两个状态等权重):(b+c)/(a+b+c+d)

      非对称二元相异度(两个权重不等,几率较小的编码1): (b+c)/(a+b+c)

      非对称二元相似度(特征一样,类别不一样,抛弃掉):1-d(i,j)  数据是否矛盾

分类变量

        二元变量的推广,可取M种状态,例如颜色变量

        使用1——M来处理,不代表顺序

计算相异度:

           简单计算:  (p-m)/p   p是全部变量的数目,m是相同值的数目

           复杂计算: 

序列变量 :有顺序的变量 ,如文字

        离散型: 类似于分类变量,但M个值以有意义的序列排列,如金牌、银牌、铜牌

        连续性:类似于一个刻度未知的连续数据的集合,值得相对次序是基本的,如比赛名称

计算相似度:

        将序列变量转化为数字,使用区间标度变量进行处理

比例变量:

        y和x是非线性关系,如指数刻度,y=Ae^x

        典型实例包括细菌的增长或放射性元素的衰变

计算相异度: 

        进行对数变换,转换为线性变量,使用区间标度变量处理

混合类型数据:

        要聚类的对象有多重类型的属性

计算相异度: 

       把所有变量一块处理,只进行一次聚类分析(复杂公式)

向量对象:

        信息检索、文本文档聚类或生物分类中,包含大量符号实体的复杂对象

计算相异度:

       余弦度量、Tanimoto系数

聚类分析中类之间的距离

        min (两个类间样本点的最小距离)也叫singlelink, 优点: 发现球状以外的其他形状类;缺点:对噪声和离群点敏感

        max:(最远距离) 也叫complete link ,优点:可以有效地处理噪声;缺点:容易分裂大的组

        中心点

        质心点

聚类高维数据

        问题:有些特征是无用的,如何处理这些噪声

        方法:使用数据处理,进行属性变换、属性投影和选择 、子空间变换(降维)          

聚类-主要方法     

划分方法:

        创建k个划分的初始集合,其中k是分类数目

        采用迭代重定位(具体算法)技术,设法通过将一个样本从一个类转移到另一个来提高划分的质量

        典型的划分方法包括 k均值,k中心点,clarans和它们的改进

       终止条件

k均值法

           使用类的均值度量,可看做质心

           平方误差为准

           优点: 大数据集有很好的伸缩性;解决球星,圆形比较方便

           缺点: 经常终止于局部最优解; 对噪声和离群点比较敏感;用户要事先给出要生成的类的数目K

           一般做多次: K值、随机点都是试多次

k中心点

           针对离群点进行改进,方法是:不使用均值,使用中心点;使用距离对每个点判断

Clara算法

           从样本中抽样,使用 K中心点(减少K中心点 方法的计算量)

层次方法:

        将数据对象集转化为树形结构,有凝聚(叶子到根, 先找两个类之间距离最近的,类似于霍夫曼树的构造);分裂(根到叶子:将所有容器放在一个类中,然后逐渐细分为越来越小的类,直到每个对象自成一类,或者达到某个终止条件)

        优点:不需要指定K,在聚类过程中得到想要的数目;对层次数据(如动物发展,族谱)比较有利

        缺点:纯粹的层次方法,不能更正错误的决定

        改进:减少合并的严格性,使用微聚类(综合使用凝聚和迭代);BIRCH ROCK 变色龙

方向:将多种方法进行融合

密度方法:

        指导思想: 一个区域内点的密度达到某个阀值,就把它加到与之相近的聚类中去

        优点:发现各种形状的聚类结构,而不只是球形

DBSCAN(高密度联通区域)

           随机选择一个点,判断是否为中心点; 对其中的每个点画园,从而实现两个中心点的链接(密度可达)

           约束条件: 半径和点个数

OPTICS(通过点排序识别聚类结构)

           每个样本点,附加两个属性 核心距离   可达距离

DENCLUDE(基于密度分布函数)

           定义f(x,y) 为影响函数,画出三维图;  多维图使用梯度下降的方法

           特点: 运算速度快; 对参数选择要求较高

网络方法:

        指导思想:先对空间进行分割,数据点分布在网格中; 对网格进行聚类

        有三种:

           空间变换; 统计; 增长子空间

模型方法:

        指导思想:假设每个类满足一个函数形式,找出数据与该模型的最佳组合

        有三种:    

           神元网络, 统计

约束方法:

        指导思想: 分类是要考虑用户指定的约束

       CLTree

离群点分析

定义离群点:

        与一般行为不一致的

如何发现离群点

      统计分布;  

      密度(局部离群点,适用于非均匀分布数据); 

      距离(参数设置);  

      偏差;

你可能感兴趣的:(JAVA技术)