1、 空间分析空间分析 系统聚类算法及编程实系统聚类算法及编程实现现 学院:地质工程与测绘学院 专业:遥感科学与技术 班级: 学号: 学生姓名: 指导老师: 目录目录 第 1 章 前言3 第 2 章 算法设计背景3 2.1 聚类要素的数据处理3 2.2 距离的计算5 第 3 章 算法思想与编程实现5 3.1 算法思想5 3.2 用Matlab编程实现7 3.2.1 程序代码7 3.2.2 编程操作结果12 第 4 章 K-均值算法应用与优缺点13 4.1 K-均值聚类法的应用13 4.2 K-均值聚类法的优缺点14 第 5 章 课程设计总结14 主要参考文献15 第一章 前言 本课题是根据*老师所
2、教授的空间分析课程内容及要求而选定的,是 对于系统聚类算法的分析研究及利用相关软件的编程而实现系统聚类。研究 的是系统聚类算法的分析及编程实现,空间聚类的目的是对空间物体的集群 性进行分析,将其分为几个不同的子群(类) 。子群的形成的是地理系统运作 的结果,根据此可以揭示某种地理机制。此外,子群可以作为其它分析的基 础,例如,公共设施的建立一般地说是根据居民点群的分布,而不是具体的 居民住宅的分布来布置的,因此需要对居民点群进行聚类分析以形成若干居 民点子群,这样便于简化问题,突出重点。 空间聚类可以采用不同的算法过程。在分析之初假定 n 个点自成一类,然 后逐步合并,这样在聚类的过程中,分类
3、将越来越少,直至聚至一个适当的分 类数目,这一聚类过程称之为系统聚类。 常见的聚类分析方法有系统聚类法、 动态聚类法和模糊聚类法等。下面主要介绍系统聚类算法,并基于 Matlab 软 件用 K-means 算法(即 k-均值算法)来实现系统聚类的算法编程。 第二章 算法设计背景 2.1 聚类要素的数据处理 假设有 m 个聚类的对象, 每一个聚类对象都有 个要素构成。 它们所对应的 要素数据可用 表 3.4.1 给出。 在聚类分析中,常用的聚类要素的数据处理方 法有如下几种。 总和标准化 标准差标准化 极大值标准化 经过这种标准化所得的新数据,各要素的极大值为 1,其余各数值小于 1。 极差的标
4、准化 经过这种标准化所得的新数据,各要素的极大值为 1,极小值为 0,其余的数值 均在 0 与 1 之间。 2.2 距离的计算 距离是事物之间差异性的测度,差异性越大,则相似性越小,所以距离是系统 聚类分析的依据和基础。 选择不同的距离,聚类结果会有所差异。在地理分区和分类研究中,往往采用 几种距离进行计算、对比,选择一种较为合适的距离进行聚类。 第三章 算法思想与编程实现 3.1 算法思想 我们已经指出系统聚类方法首先将 n 个空间点看做是 n 个子群, 然后根据所选 用的聚类统计量来计算 n 个子群之间的关系。对于距离,计算 n 个子群两两之间 的距离,首先选择距离最近的两个子群(点)归为
5、一个新的子群,这样就得到 n-1 个子群两两之间的聚类统计量,继续选择距离最近的子群合并,再得到 n-2 个子群,依此类推,直到所有的子群全部合并。 K-means 算法是硬聚类算法,是典型的局域原型的目标函数聚类方法的代表, 它是数据点到原型的某种距离作为优化的目标函数, 利用函数求极值的方法得到 迭代运算的调整规则。K-means 算法以欧式距离作为相似度测度,它是求对应某 一初始聚类中心向量 V 最有分类,使得评价指标 J 最小。算法采用误差平方和准 则函数作为聚类准则函数。 K-均值算法的聚类准则是使每一聚类中, 多模式点到该类别的中心的距离的平 方和最小。 其基本思想是: 通过迭代, 主次移动各类的中心, 直到得到最好的 聚 类为止。其算法框图如图所示。 开始 选择 m 个中心 Z1,Z2, Zm 所有像元分到 m 个集群中心 计算新的集群中心 聚类中心不变 结束 具体的计算步骤如下:假设图像上的目标要分为 m 类,m 为已知数。 第一步:适当地选取 m 个类的初始中心 Z1 (1),Z 2 (1), ,Z M (1),初始中心的选 择对聚类结果有一定的影响,初始中心的选择一般有如下几种方法: 1) 根据问题的性质和经验确定类别数 m, 从数据中找出直观上看来比 较适合的 m 个类的初始中心。 2)