原创R语言聚类分析k-means和层次聚类附代码数据_第1页
原创R语言聚类分析k-means和层次聚类附代码数据_第2页
原创R语言聚类分析k-means和层次聚类附代码数据_第3页
原创R语言聚类分析k-means和层次聚类附代码数据_第4页
原创R语言聚类分析k-means和层次聚类附代码数据_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、机器学习算法主要都是分类和回归,这两类的应用场景都很清晰,就是对分类型变量或者数值型变量的预测。聚类分析是一种根据样本之间的距离或者说是相似性(亲疏性),把越相似、差异越小的样本聚成一类(簇),最后形成多个簇,使同一个簇内部的样本相似度高,不同簇之间差异性高。有人不理解分类和聚类的差别,其实这个很简单:分类是一个已知具体有几种情况的变量,预测它到底是哪种情况;聚类则是尽量把类似的样本聚在一起,不同的样本分开。举个例子,一个人你判断他是男是女这是分类,让男人站一排女人站一排这是聚类。聚类分析算法很多,比较经典的有k-means和层次聚类法。k-meansk-means聚类分析算法k-meansk

2、-means 的 k k 就是最终聚集的簇数,这个要你事先自己指定。k-meansk-means 在常见的机器学习算法中算是相当简单的,基本过程如下:.首先任取(你没看错,就是任取)k k 个样本点作为 k k 个簇的初始中心;.对每一个样本点,计算它们与 k k 个中心的距离,把它归入距离最小的中心所在的簇;,等到所有的样本点归类完毕,重新计算 k k 个簇的中心;,重复以上过程直至样本点归入的簇不再变动。k-meansk-means 的聚类过程演示如下:DataStepDataStep1 1rteratlonrteratlon1,1,Step2aStep2aIteration1.Step2

3、bderationIteration1.Step2bderation2 2f fStep2aFinalResultsStep2aFinalResultsk-means聚类过程k-meansk-means 聚类分析的原理虽然简单,但缺点也比较明显:.首先聚成几类这个 k k 值你要自己定,但在对数据一无所知的情况下你自己也不知道 k k 应该定多少;,初始质心也要自己选,而这个初始质心直接决定最终的聚类效果;,每一次迭代都要重新计算各个点与质心的距离,然后排序,时间成本较高。值得一提的是,计算距离的方式有很多种,不一定非得是笛卡尔距离;计算距离前要归一化。层次聚类法尽管 k-meansk-mea

4、ns 的原理很简单,然而层次聚类法的原理更简单。它的基本过程如下:,每一个样本点视为一个簇;计算各个簇之间的距离,最近的两个簇聚合成一个新簇;重复以上过程直至最后只有一簇。层次聚类不指定具体的簇数,而只关注簇之间的远近,最终会形成一个树形图通过这张树形图,无论想划分成几个簇都可以很快地划出。以下以癌细胞细据为例,演示 K-meansK-means 和层次聚类法的过程。library(ISLR)nci.labels=NCI60$labsnci.data=NCI60$datasd.data=scale(nci.data)data.dist=dist(sd.data)plot(hclust(data

5、.dist),labels=nci.labels,main=CompleteLinkage,xlab=,sub=,ylab=)#默认按最长距离聚类plot(hclust(data.dist,method=average),labels=nci.labels,main=AverageLinkage,xlab=,sub=,ylab=)#类平均法plot(hclust(data.dist),labels=nci.labels,main=SingleLinkage,xlab=,sub=,ylab二)#最短距离法CompleteLintCompleteLintI010SNszoX-rszozs0rNMO

6、NXNn,NLOWNWBOKSNIO1OSNWONKWrWNWY2OSNIHC04山比CDWN 山 H1-GN。-1wzoLI154w蛊ls4 山比AverageLinkAverageLinkNMONXNnIz50CHOSNzE0zE0Ip-WON4HH1-ONqlLUN-14z0N41山运-MamrHwsamI5OZ5乏 ON,山至JJszNO180岛.。工ls山ocmdqzLLOHHlljxnw,009SingleLinkage可见选择不同的距离指标,最终的聚类效果也不同。其中最长距离和类平均距离用得比较多,因为产生的谱系图较为均衡。#指定聚类数hc.out=hclust(dist(sd.data)hc.clusters=cutree(hc.outj)table(hc.clusters,nci.labels)nci.labelshc.clustersBREASTCNSCOLONK562A-reproK562B-reproLEUKEMIAMCF7A-repro12320000SingleLinkaSingleLinka一嗑二LcIQ1OSNj-SNOSNOSNOudsNl-zs0NMONXNrlINN 山支I|who

温馨提示

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

评论

0/150

提交评论