1、学校的学生成绩进行聚类分析学校的学生成绩进行聚类分析1、背景随着我国经济的发展,网络已被应用到各个行业, 人们对网络带来的高效率越来越重视,然而大量数据信息给人们带来方便的同时, 也随之带来了许多新问题,大量数据资源的背后隐藏着许多重要的信息,人们希望能对其进行更深入的分析, 以便更好地利用这些数据,从中找出潜在的规律. 那么,如何从大量的数据中提取并发现有用信息以提供决策的依据, 已成为一个新的研究课题。目前普遍使用的成绩分析方法一般只能得到均值、方差等一类信息,且仅仅是从一门课 程独立数据进行的分析, 但在实际教学中,比如学生在学习某一门课程时, 是哪一门或者几门课程对其影响很大,包括教学
2、以外的哪些因素对学生成绩造成了较大的影响等各种有价值 的信息往往无法获知。2、聚类分析在数据库中的知识发现和数据挖掘 (KDDM)受到目前人工智能与数据库界的广泛重视。 KDDM的目的是从海量的数据中提取人们感兴趣的、 有价值的知识和重要的信息, 聚类则是KDDM领域中的一个重要分支。所谓聚类是将物理或抽象的集合分组成为类似的对象组成的 多个类的过程。聚类分析就是将一组数据分组,使其具有最大的组内相似性和最小的组间相似性。简单 的说就是达到不同聚类中的数据尽可能不同, 而同一聚类中的数据尽可能相似, 它与分类不同,分类是对于目标数据库中存在哪些类这一信息是知道的, 所要做的就是将每一条记录分别
3、属于哪一类标记出来;而聚类是在预先不知道目标数据库到底有多少类的情况下, 希望将所有的记录组成不同的簇或者说“聚类” ,并且使得在这种分类情况下,以某种度量为标准的相似性,在同一聚类之间最小化, 而在不同聚类之间最大化.事实上,聚类算法中很多算 法的相似性都基于距离而且由于现实数据库中数据类型的多样性, 关于如何度量两个含有非数值型字段的记录之间的距离的讨论有很多, 并提出了相应的算法. 聚类分析的算法可以分为以下几类:划分方法、层次方法、基于密度方法等。这里只描述一种: Kmea ns算法,如下3、Kmeans 算法K均值聚类,即数据挖掘中的 C均值聚类,属于聚类分析方法中一种基本的且应用最
4、广 泛的划分算法。t 2e=l者K-means算法是JBMaCQUeen在1967年提出的,是聚类方法中一个基本的划分方法, 也 是目前诸多聚类算法中极有影响的一种技术。 K-均值算法以k为参数,把N个对象分为k个簇,以使簇内具有较高的相似度。相似度的计算根据一个簇中对象的平均值来进行。算法首先随机地选择 K个对象,每个对象初始地代表了一个簇的平均值或中心。 对剩余的每个对象根据其与各个簇中心的距离, 将它赋给最近的簇。然后重新计算每个簇的平均值。这 个过程不断重复,直到准则函数收敛。KMeans算法的准则函数定义为:即E是数据库所有对象的平方误差的总和。 其中X是空间中的点,表示给定的数据对
5、象, 是簇的平均值。Kmeans算法描述为:输入:簇的数目k和包含n个对象的数据库输出:k个簇,使平方误差准则最小(1) assigninitial value for means ;/任意选择k个对象作为初始的簇中心(2) REPEAT(3) FoR j=ito n DO assign each Xj to the CIUSter WhiCh has the closest mean ;/根据簇中对象的平均值,将每个对象赋给最类似的簇(4) FORi=I to k DO=l/更新簇的平均值,即计算每个对象簇中对象的平均值(5) COmPUteE ; /计算准则函数E(6)UNTILE不再明显
6、地发生变化;从上面的算法思想和算法框架,我们不难看出, K个初始聚类中心点的选取对聚类结果具有较大的影响,因为在该算法中是随机地选取任意 K个点作为初始聚类中心.如果有先验知识,可以选取具有代表性的点作为初始中心点。 在上面这个算法中,一次迭代中把每一个数据对象分到离它最近的聚类中心所在的类中, 这个过程的时间复杂度为 0(nkd),这里n指的是总的数据对象的个数,k是指定的聚类数也叫簇数, d是数据对象的维数;新的分类产生以后需要计算新的聚类中心,这个过程的时间复杂度为 0(nd)。所以这个算法一次迭代需要的总的时间复杂度为 0( nkd)。4、数据准备与数据预处理(1) 聚类数据的预处理现
7、实世界中的数据库存在大量的噪声数据、 空缺数据和不一致数据. 基因表达数据也存在这 种情况。有很多数据预处理技术可以去掉数据中的噪声, 纠正不一致.为了提高涉及距离度 量的聚类算法的精度和有效性,可以采用数据规范化的一些方法。(2) 数据清理在实际数据库中往往存在着一些空缺值和噪音数据。 对于空缺值,可以采用以下方法填写空缺值.1)人工填写空缺值。这种方法对操作人员要求较高.并且,该方法很费时,当数据集很大 时,该方法可能行不通.2)使用该空缺值所在属性的平均值来填充。比如当进行样本聚类时,如果某个样本在某个 指标值上的值空缺,可使用其它样本在该指标上的平均值来填充该空缺值。对于噪声数据, 我
8、们可以采用一些数据平滑技术来平滑数据。3)数据规范化。如果数据库中的各属性的量纲和单位不同,在计算机对象间的距离之前, 必须把不同的度量单位统一成相同的度量单位。 由于属于不同概念范畴的属性具有不同的含义,把所有的属性转化成某个特定的度量单位是不可能的. 常用的方法是把属性的值域映射为一个相同的区间(通常是 0,1区间),这个过程成为属性的标准化或规范化。准备500学生的成绩包含:数学、英语、语文、物理、化学、历史、地理等丈件 碩 自L Ki 1;帖 kew, 7 奁算l1CCa v4feAfl T ldk Uli fp T1 Hil if! fl”CCdrJ UPeaaal 匚 T匚归临 A
9、ftrlBk ia,CH*i,nMl KMeans标签到白板中,聚类算 法插件,用于数据的聚类分析1)配置聚类算法的参数:簇数、迭代次数等NCPlad ? ParBmBIlflinl国I CIUSlefIlIQ s)IX 2tMdugtoIIlITlbUtPrsrr ulbfhd氐 3 Hi 盘ErLanE 10der=rmi good! 1aftv uem4ur tn BngminDiviirgf T IrClhllefOefICe SfluaredEyciidiee. T Gma oHmiZ3lto steps 1 G咛 cfl fe Seed,4、存储文件:拖曳左侧中的 Data ACC
10、eSS-Files-Write标签到白板中,存储文件插件,用于分析结果的存储 然后在右侧CSV file配置存储路径nMlpPiiidHIMHJi WftlpniiuUniuriLEffllXmEc3丄 W RWMi J(HF *irtMWrf bM MB akLM3IpPaHaf4mw 号 r.fW TBW*i lfc * f i5、分析流程图-规划,通过连接线连接整个的执行流程,并点击执行按钮如图所示6、执行结果1) 、分析具体结果数据2) 、统计数据:最大、最小、平均值、聚类 3)、聚类分析图isnut cf6Jju6M0SotSIaSdu soeq) lSt1x) IU4K XAiNl
11、rtplteCIAUArV44Eifdhbrraf fftfiChWMt 曲Ei的PhFllHI*flP PftiriCtf F-SBWr Iid日 UHlH1Uje; nh14tIaUTQQclS7”99Mfi?闻42 59dfTTS料Q3SraEIMES3 3-Mr4?tMtff.冀。4?S-苗Fh fii ”5A A Illr M” (f faWQ 1ttJ IMfrJlWlrifci 8nNM DeBwt 。 EqPi LoE RE Ii CIWd7、结果分析:第一个图可以看出:1) 每科目的最低分、最高分、平均分等信息2) 聚类:三簇数据,每簇数据的学生个数第二个图可以看出:1)每科
12、分值的分布情况,看出大部分学生的成绩分布在【 7080】之间,90分以上的偏少第三个图可以看出:1) 聚类按三簇进行聚类,也就是说分为了三类学生2) CIUSter_0结合第一个图有378个学生实例,从成绩上分析学习情况:地理成绩不及格; 语文、化学成绩偏差;物理、英语较好;数学最好CIUSter_1结合第一个图有136个学生实例,从成绩上分析学习情况:地理成绩不及格;历史、 化学成绩偏差;语文较好;物理、英语、数学最好CIUSter_2结合第一个图有26个学生实例,从成绩上分析学习情况: 地理成绩不及格;历史、化学成绩偏差;语文、数学、物理较好;英语最好进行分类着重辅导。因此,根据分析的数据来看,这三类的学生,老师可以根据不同的情况,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1