在实验2.3.2中曾对iris数据集进行描述和展示,在实验2.3.4中曾对iris数据集进行可视化.以下将对iris数据集进行进行聚类分析.根据实验2.3.4,我们只知道数据集内有三个品种鸢尾花而不知道每朵花的真正分类,只能凭借花萼及花瓣的长度和宽度分类.以下对鸢尾花iris数据集进行聚类分析,代码如下:>data(iris);attach(iris)>iris.hc1<-hclust(dist(......
2023-11-18
本节在Hadoop平台上提出了一种基于MapReduce编程思想设计与优化的KMeans并行算法。与传统的KMeans算法相比,设计的并行算法在聚类结果的准确性、加速比、扩展性、收敛性等方面都有显著的提高,降低了因簇密度不均引起误分的概率,提高了算法的聚类精度,并且数据规模越大、节点越多,优化的效果就越明显。
1.基于Hadoop的心律失常数据集的KMeans算法
算法执行过程如下:
Step1执行命令,准备输入文件和加载算法程序文件
Step1.1执行命令cd/usr/local/run,进入hadoop运行路径;
Step1.2执行命令hadoop fs-mkdir-p/jobs/bayes/input/data,创建输入文件目录;
Step1.3执行命令hadoop fs-put test.txt/jobs/bayes/input/data/,进入本地txt文件所在目录,上传txt文件到hdfs;
Step1.4执行命令hadoop jar hadoop-streaming.jar-D stream.non.zero.exit.is.failure=false-input/jobs/Kmeans/input/test.txt-output/output-file Kmeans.py-mapper"python Kmeans.py mapper"--reducer"python Kmeans.py reducer",运行hadoop Streaming命令。
Step2:预处理数据(Mapper阶段)
Step 2.1 line.rstrip('\n').split(',')解析全数据;
Step 2.2 x.append(list(map(eval,item))[1:280])将特征向量加入列表x;
Step 2.3 y.append(list(map(eval,item))[280])将数据特征加入列表y。
Step3在Hadoop平台进行聚类过程(Reducer阶段)
Step3.1 Kmn=KMeans(n_clusters=16,random_state=16).fit(x):设置k=16,并随机选取16个数据作为初始聚类中心,然后重新计算聚类中心,直到距离最小停止计算。
Step4输出聚类中心和聚类结果(Reducer阶段)
Step4.1 ptint(kmn.cluster_centers_)打印聚类中心;
Step4.2 print(kmn.labels_)打印聚类结果。(www.chuimin.cn)
2.实验设计
本节采用的实验环境和Hadoop平台配置与前节相同,实验数据是原数据集,具体类别如表5-5所示。
3.实验及结果本节实验过程:(1)启动hadoop-master;(2)启动hadoop-slave1;(3)启动hadoop-slave2;(4)启动MobaXterm并连接到主机;(5)启动hadoop集群;(6)启动hadoop集群;(7)创建目录并将.txt上传到HDFS中的路径;(8)运行hadoopStreaming命令,与5.5.1节相似。
KMeans聚类实验结果如图5-43所示。
图5-43 KMeans聚类运行结果
图5-43是KMeans聚类运行结果,运行结果的上半部分是得到的16类簇的聚类中心,如表5-13所示;下半部分是对452条数据的聚类结果,聚类结果中的数字1~16表示聚类的标签,如表5-5所示。整理统计KMeans聚类运行结果,如表5-14所示。
表5-13 聚类中心
表5-14 聚类结果
(续表)
表5-14是对聚类结果的统计与说明。与原数据集对比可以推测,14类簇可能代表“正常”这一类;7、8、10、12、15类簇中可能有三个类簇代表“1度房室传导阻滞”“2度房室传导阻滞”“3度房室传导阻滞”;因聚类结果不明显,无法推测出其他类簇代表的类别。
本节在进行基于Hadoop的医学数据聚类算法研究时,以心律失常数据作为实验数据集,利用KMeans聚类算法在Hadoop平台上实现算法。实验结果分为聚类中心和聚类结果两部分,因为16个初始聚类中心是随机选取的,所以每次的结果都不确定,最终的聚类效果不太理想。
有关大数据挖掘技术及其在医药领域的应用的文章
在实验2.3.2中曾对iris数据集进行描述和展示,在实验2.3.4中曾对iris数据集进行可视化.以下将对iris数据集进行进行聚类分析.根据实验2.3.4,我们只知道数据集内有三个品种鸢尾花而不知道每朵花的真正分类,只能凭借花萼及花瓣的长度和宽度分类.以下对鸢尾花iris数据集进行聚类分析,代码如下:>data(iris);attach(iris)>iris.hc1<-hclust(dist(......
2023-11-18
multcomp包中的cholesterol数据集,有50个患者均接受降低胆固醇药物治疗五种方法对患者的效果.五种方法分别是:20 mg一天一次、10 mg一天两次和5 mg一天四次,其中前三种所用药物相同,剩下的drugD 和drugE是候选药物.哪种药物疗法降低胆固醇最多?......
2023-11-18
实验数据本书采用的数据集是心律失常数据集,曾被用于“一种用于心律失常分析的有监督的机器学习算法”,目的是用心电图记录来确定心律失常的类型。表5-4所示的是心律失常数据集的部分数据。表5-4心律失常数据集表5-5手工标记的实验数据类别此心律失常数据集有452条数据,每条数据有279个属性。在幼儿及心动过速的情况下,PR间期相应缩短。在老年人及心动过缓的情况下,PR间期可略延长,但不超过0.22s。......
2023-11-08
心律失常数据集的决策树分类效果如表5-10所示。根据测评机制和实验结果可以看出,整体的决策树的分类效果良好。表5-11基于决策树的心律失常数据集的十折交叉验证分类效果表5-12基于决策树的心律失常数据集的十折交叉验证分类效果从表5-12中的F1看出,决策树分类器对“正常”这一类样本的分类效果最佳;从总平均值看,此分类效果较好。......
2023-11-08
KDDCUP99数据集是网络访问数据记录集[117],它包含了若干个数据集,本书选用的是corrected.gz。每个记录有42个属性,前41个是访问特征属性,最后一个属性是记录的类别标识。从corrected中按比例分别选择两类记录来构造若干子集,其中攻击记录所占比例均小于10%,以使其为特异记录。分别在30+300、50+500、100+1000、200+2000、300+3000共5个子集上分别运行PecuFind算法程序和CpecuFind算法程序。很明显,Cpecu Find发现攻击记录的能力强于Pecu Find。表3.330+300和50+500上的实验结果比较......
2023-06-16
前述测试主要是对利用特征数据进行分类精度对比,由于数据集大小、类分布不同等因素影响,精度只能在一定程度上代表数据对分类的支持情况。为探索特征数据的性能,更深入的分析是必要的。这组分析表明,特征数据集具有较好的线性可分特性。表5.11Fisher线性判别的分类结果2.特异分析在数据集中,一些数据或对象与其中其他数据或对象显著不同,则称是特异数据或特异对象。......
2023-06-16
表4-2某大型医院三年住院治疗情况(续表)医学图像数据聚类分析。中医药数据聚类分析。图4-1聚类数据示例聚类分析在数据挖掘中的作用:作为一个独立的工具来获得数据集中数据的分布情况。Q型聚类分析是对样本进行分类处理。根据变量的分类结果以及它们之间的关系,可以选择主要变量进行回归分析或Q型聚类分析。......
2023-11-08
MASS包中包含Boston数据集(波士顿房价),它记录了波士顿周围506个街区的medv(房价中位数).我们将设法用13个预测变量如rm(每栋住宅的平均房间数),age(平均房龄),lstat(社会经济地位低的家庭所占比例)等来预测medv(房价中位数).(1)首先查看Boston数据集(波士顿房价)中的变量>library(MASS)>fix(Boston)>names(Boston)结果如下......
2023-11-18
相关推荐