基于模糊等价关系的模糊聚类分析系统
项目简介
本项目是一套基于模糊数学理论开发的聚类分析系统。通过对多指标样本数据进行标准化处理、构建模糊相似矩阵并计算传递闭包,系统能够将样本间的模糊相关性转化为严格的等价关系,从而实现对复杂数据的客观分类。系统内置了研究生考试成绩分析案例,通过四门科目(英语、政治、数学、专业课)的维度,演示了从原始得分到动态分类的全过程,为科研决策和模式识别提供依据。
主要功能特性
- 自动数据标准化:内置极差变换逻辑,能自动处理量纲不统一的问题,将原始测量数据平滑映射至 [0, 1] 区间。
- 多维相似度建模:利用夹角余弦法精确捕捉样本向量间的空间相关性,构建基础模糊相似矩阵。
- 传递闭包自动化计算:采用平方法(合成运算)迭代计算,确保模糊关系满足自反性、对称性和传递性,形成最终的聚类依据。
- 动态阈值分类:支持根据用户指定的多个 Lambda 置信水平自动生成分类结果,展现数据在不同细粒度下的聚类形态。
- 直观可视化呈现:自动生成聚类谱系图(Dendrogram),以图形化方式揭示样本间的亲疏远近关系。
系统逻辑与实现细节
- 数据预处理
系统首先接收原始样本矩阵。通过遍历每一列指标,计算其最大值与最小值,应用极差变换公式进行归一化。若某一指标下所有样本取值相同,则该指标标准化为 1,确保后续计算的稳定性。
- 相似性度量
系统遍历样本对,利用向量内积除以向量模长的积(夹角余弦法)来描述样本间的相似程度。计算结果构成一个对称的模糊相似矩阵,其对角线元素均为 1。
- 二元关系演化(传递闭包)
由于初始相似矩阵可能不满足传递性,系统执行模糊合成运算。该算法基于 Max-Min 合成准则,通过连续的自合成(平方运算),直到矩阵达到稳定状态(即 R = R * R),从而获得模糊等价矩阵。
- 截集分类执行
系统在不同的 Lambda 阈值(如 0.99、0.95 等)下对等价矩阵进行截断。凡是等价程度大于等于该阈值的样本均被归为一类。系统通过查重逻辑确保每个样本在同一阈值下仅属于一个类别。
关键函数解析
- 模糊合成运算函数:该函数实现了矩阵的 Max-Min 运算。它对矩阵 A 的行向量与矩阵 B 的列向量进行两两元素取最小值(Min),并在所有最小值中提取最大值(Max)作为合成矩阵的元素值。
- 截集聚类提取函数:该函数负责将模糊关系转化为离散的集合分类。它维护一个访问状态列表,递归或迭代地搜索满足阈值条件的样本索引,确保分类不重不漏。
- 结果显示函数:负责格式化输出分类结果。它将学生名称与其对应的类别编号关联,清晰地在控制台展示不同置信水平下的分组情况。
- 绘图集成功能:利用等价矩阵提供的不相似度信息(1 - Lambda),结合平均连锁法(Average Linkage)生成层次聚类树。
运行环境要求
- 软件环境:MATLAB R2016b 或更高版本。
- 必备工具箱:Statistics and Machine Learning Toolbox(用于调用 squareform, linkage 和 dendrogram 等可视化函数)。
使用说明
- 数据输入:用户可直接在主程序源代码中修改 rawData 矩阵,更换为自己的实验数据或考评数据。
- 参数调整:在动态聚类分析段落,用户可以自定义 lambdaLevels 数组中的数值,以观察不同分类粒度下的结果变化。
- 结果查看:运行程序后,MATLAB 命令行窗口将按顺序显示标准化矩阵、模糊相似矩阵、传递闭包矩阵以及各 Lambda 值的分类名单。同时,系统会自动弹出包含聚类谱系图的可视化窗口。