- 1
- 0
- 约3.21千字
- 约 32页
- 2018-02-07 发布于河南
- 举报
第八次课 聚类分析
第八讲 聚类分析 分类 物以类聚、人以群分; 但根据什么分类呢? 如要想把中国的县分类,就有多种方法 可以按照自然条件来分,比如考虑降水、土地、日照、湿度等, 也可考虑收入、教育水准、医疗条件、基础设施等指标; 既可以用某一项来分类,也可以同时考虑多项指标来分类。 聚类分析 对一个数据,既可以对变量(指标)进行分类(相当于对数据中的列分类),也可以对观测值(事件,样品)来分类(相当于对数据中的行分类)。 当然,不一定事先假定有多少类,完全可以按照数据本身的规律来分类。 本章要介绍的分类的方法称为聚类分析(cluster analysis)。对变量的聚类称为R型聚类,而对观测值聚类称为Q型聚类。它们在数学上是无区别的。 饮料数据(drink.txt ) 16种饮料的热量、咖啡因、钠及价格四种变量 8.1如何度量距离远近? 如果想要对100个学生进行分类,而仅知道他们的数学成绩,则只好按照数学成绩分类;这些成绩在直线上形成100个点。这样就可以把接近的点放到一类。 如果还知道他们的物理成绩,这样数学和物理成绩就形成二维平面上的100个点,也可以按照距离远近来分类。 8.1如何度量距离远近? 三维或者更高维的情况也是类似;只不过三维以上的图形无法直观地画出来而已。 在饮料数据中,每种饮料都有四个变量值。这就是四维空间点的问题了。 8.2 两个距离概念 按照远近程度来聚类需要明确两个概念:一个是点和点之间的距离,一个是类和类之间的距离。 点间距离有很多定义方式。最简单的是欧氏距离。 当然还有一些和距离相反但起同样作用的概念,比如相似性等,两点越相似度越大,就相当于距离越短。 8.2 两个距离概念 由一个点组成的类是最基本的类;如果每一类都由一个点组成,那么点间的距离就是类间距离。但是如果某一类包含不止一个点,那么就要确定类间距离, 类间距离是基于点间距离定义的:比如两类之间最近点之间的距离可以作为这两类之间的距离,也可以用两类中最远点之间的距离或各类的中心之间的距离来作为类间距离。 8.2 两个距离概念 在计算时,各种点间距离和类间距离的选择是通过统计软件的选项实现的。不同的选择的结果会不同,但一般不会差太多。 向量x=(x1,…, xp)与y=(y1,…, yp)之间的距离或相似系数: 类Gp与类Gq之间的距离Dpq(d(xi,xj)表示点xi∈ Gp和xj ∈ Gq之间的距离) 最短距离(Nearest Neighbor) 最长距离(Furthest Neighbor ) 组内平均连接法(Within-group Linkage) 重心法(Centroid clustering):均值点的距离 离差平方和法连接 红绿(2,4,6,5)8.75 离差平方和增加8.75-2.5=6.25 黄绿(6,5,1,5)14.75 离差平方和增加14.75-8.5=6.25 黄红(2,4,1,5)10-10=0 故按该方法的连接和黄红首先连接。 有了上面的点间距离和类间距离的概念,就可以介绍聚类的方法了。这里介绍两个简单的方法。 8.3 事先要确定分多少类:k-均值聚类 前面说过,聚类可以走着瞧,不一定事先确定有多少类;但是这里的k-均值聚类(k-means cluster,也叫快速聚类,quick cluster)却要求你先说好要分多少类。看起来有些主观,是吧! 假定你说分3类,这个方法还进一步要求你事先确定3个点为“聚类种子”(SPSS软件自动为你选种子);也就是说,把这3个点作为三类中每一类的基石。 8.3 事先要确定分多少类:k-均值聚类 然后,根据和这三个点的距离远近,把所有点分成三类。再把这三类的中心(均值)作为新的基石或种子(原来 “种子”就没用了),再重新按照距离分类。 如此叠代下去,直到达到停止叠代的要求(比如,各类最后变化不大了,或者叠代次数太多了)。显然,前面的聚类种子的选择并不必太认真,它们很可能最后还会分到同一类中呢。下面用饮料例的数据来做k-均值聚类。 SPSS实现(聚类分析) K-均值聚类 以数据drink.sav为例,在SPSS中选择Analyze-Classify-K-Menas Cluster, 然后把calorie(热量)、caffeine(咖啡因)、sodium(钠)、price(价格)选入Variables, 在Number of Clusters处选择3(想要分的类数), 如果想要知道哪种饮料分到哪类,则选Save,再选Cluster Membership等。 注意k-均值聚类只能做Q型聚类,如要做R型聚类,需要把数据阵进行转置。 8.4 事先不用确定分多少类:分层聚类 另一种聚类称为分层聚类或系统聚类(hierarchical cl
原创力文档

文档评论(0)