聚类分析最新版本_第1页
聚类分析最新版本_第2页
聚类分析最新版本_第3页
聚类分析最新版本_第4页
聚类分析最新版本_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,数据的分类聚类分析,韩猛,.,饮料数据(drink.txt),16种饮料的热量、咖啡因、钠及价格四种变量,.,如何根据以上数据对16种饮料进行分类呢?对数据进行分类就需要知道距离?你知道那些距离?,.,如何度量距离远近?,如果想要对100个学生进行分类,而仅知道他们的数学成绩,则只好按照数学成绩分类;这些成绩在直线上形成100个点。这样就可以把接近的点放到一类。如果还知道他们的物理成绩,这样数学和物理成绩就形成二维平面上的100个点,也可以按照距离远近来分类。三维或者更高维的情况也是类似;只不过三维以上的图形无法直观地画出来而已。在饮料数据中,每种饮料都有四个变量值。这就是四维空间点的问题了。,.,两个距离概念,按照远近程度来聚类需要明确两个概念:一个是点和点之间的距离,一个是类和类之间的距离。点间距离有很多定义方式。最简单的是歐氏距离。当然还有一些和距离相反但起同样作用的概念,比如相似性等,两点越相似度越大,就相当于距离越短。,.,两个距离概念,由一个点组成的类是最基本的类;如果每一类都由一个点组成,那么点间的距离就是类间距离。但是如果某一类包含不止一个点,那么就要确定类间距离,类间距离是基于点间距离定义的:比如两类之间最近点之间的距离可以作为这两类之间的距离,也可以用两类中最远点之间的距离或各类的中心之间的距离来作为类间距离。在计算时,各种点间距离和类间距离的选择是通过统计软件的选项实现的。不同的选择的结果会不同,但一般不会差太多。,.,向量x=(x1,xp)与y=(y1,yp)之间的距离或相似系数:,欧氏距离:Euclidean,平方欧氏距离:SquaredEuclidean,夹角余弦(相似系数1):cosine,Pearsoncorrelation(相似系数2):,Chebychev:Maxi|xi-yi|,Block(绝对距离):Si|xi-yi|,Minkowski:,当变量的测量值相差悬殊时,要先进行标准化.如R为极差,s为标准差,则标准化的数据为每个观测值减去均值后再除以R或s.当观测值大于0时,有人采用Lance和Williams的距离,.,类Gp与类Gq之间的距离Dpq(d(xi,xj)表示点xiGp和xjGq之间的距离),最短距离法:,最长距离法:,重心法:,离差平方和:(Wald),类平均法:,(中间距离,可变平均法,可变法等可参考各书).在用欧氏距离时,有统一的递推公式,.,最短距离(NearestNeighbor),.,最长距离(FurthestNeighbor),.,组间平均连接(Between-groupLinkage),.,组内平均连接法(Within-groupLinkage),.,重心法(Centroidclustering):均值点的距离,.,离差平方和法连接,2,4,1,5,6,5,.,红绿(2,4,6,5)8.75离差平方和增加8.752.56.25黄绿(6,5,1,5)14.75离差平方和增加14.758.56.25黄红(2,4,1,5)10100故按该方法的连接和黄红首先连接。,.,有了上面的点间距离和类间距离的概念,就可以介绍聚类的方法了。这里介绍两个简单的方法。,.,系统聚类法,系统聚类法(hierarchicalclusteringmethod)是聚类分析中用的最多的一种。基本思想:开始将n个样本各自作为一类,并规定样本之间的距离与类之间的距离,然后将距离最近的两类合并成一个新类,并计算新类与其他类之间的距离,重复进行两个最近类的合并,每次减少一类,直至所有的样本合并为一类。当然我们可以选择以上距离的任意一种进行聚类。,.,系统聚类的R实现,在R中计算距离的函数:dist(x,method=euclidean,diag=FALSE,upper=FALSE,p=2)“euclidean”Euclide距离“maximum”距离“manhattan”绝对值距离“canberra”Lance距离“minkowski”Minkowski距离“binary”定性变量距离,.,R中数据的标准函数为:scale(x,center=TRUE,scale=TRUE)在R中hclust()函数提供了系统聚类的函数,plot()可以画出树状图。hclust(d,method=complete,members=NULL)“single”最短距离法“complete”-最长距离法,.,“median”中间距离法“mcquitty”Mcquitty相似法“average”类平均法“centroid”重心法“ward”离差平方法,.,plot()画出树状图的格式为plot(x,labels=NULL,hang=0.1,axes=TRUE,frame.plot=FALSE,ann=TRUE,main=ClusterDendrogram,sub=NULL,xlab=NULL,ylab=Height,.),.,例1续读入数据d-read.table(C:UsersnfDesktopdrink.txt,h=T)dist()的作用是将原始数据转化为距离结构的矩阵hc=hclust(dist(d),ave)Plot(hc),.,R中有一个确定类个数的函数,rect.hclust()。rect.hclust(tree,k=NULL,which=NULL,x=NULL,h=NULL,border=2,cluster=NULL)Tree是hclust()生成的数据结构。plclust(hc,hang=-1);re-rect.hclust(hc,k=3)plclust()类似于plot()plclust(tree,hang=0.1,unit=FALSE,level=FALSE,hmin=0,square=TRUE,labels=NULL,plot.=TRUE,axes=TRUE,frame.plot=FALSE,ann=TRUE,main=,sub=NULL,xlab=NULL,ylab=Height),.,动态聚类法(K均值聚类),前面说过,聚类可以走着瞧,不一定事先确定有多少类;但是这里的k-均值聚类(k-meanscluster,也叫快速聚类,quickcluster)却要求你先说好要分多少类。看起来有些主观,是吧!假定你说分3类,这个方法还进一步要求你事先确定3个点为“聚类种子”(SPSS软件自动为你选种子);也就是说,把这3个点作为三类中每一类的基石。,.,然后,根据和这三个点的距离远近,把所有点分成三类。再把这三类的中心(均值)作为新的基石或种子(原来“种子”就没用了),再重新按照距离分类。如此叠代下去,直到达到停止叠代的要求(比如,各类最后变化不大了,或者叠代次数太多了)。显然,前面的聚类种子的选择并不必太认真,它们很可能最后还会分到同一类中呢。下面用饮料例的数据来做k-均值聚类。,.,例1续动态聚类的函数为kmeans()Kmeans(x,centers,iter.max=10,nstart=1,algorithm=c(“Hartigan-Wong”,”Lloyd”,”Forgy”,MacQueen”)Iter.max为最大迭代次数,centers为聚类个数Algorithm为动态聚类的算法,默认为第一个。km=kmeans(dist(d),5,20)sort(km$cluster),.,SPSS实现(聚类分析),K-均值聚类以数据drink.sav为例,在SPSS中选择AnalyzeClassifyK-MenasCluster,然后把calorie(热量)、caffeine(咖啡因)、sodium(钠)、price(价格)选入Variables,在NumberofClusters处选择3(想要分的类数),如果想要知道哪种饮料分到哪类,则选Save,再选ClusterMembership等。注意k-均值聚类只能做Q型聚类,如要做R型聚类,需要把数据阵进行转置。,.,SPSS实现(聚类分析),分层聚类对drink.sav数据在SPSS中选择AnalyzeClassifyHierarchicalCluster,然后把calorie(热量)、caffeine(咖啡因)、sodium(钠)、price(价格)选入Variables,在Cluster选Cases(这是Q型聚类:对观测值聚类),如果要对变量聚类(R型聚类)则选Variables,为了画出树状图,选Plots,再点Dendrogram等。,.,“冰柱图”(icicle),.,聚类要注意的问题,聚类结果主要受所选择的变量影响。如果

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论