模糊 C 均值聚类的 MATLAB 实现,功能还挺全的,打包了 10 个函数,适合搞聚类的朋友直接上手。尤其你要那种数据边界模糊、不太好一刀切的分类问题,用Fuzzy C-Means就比 K 均值更合适。这个资源的代码结构也比较清晰,变量命名还不错,不至于看不懂。
里面的核心函数像fcm.m
、initfcm.m
、distfcm.m
这些,基本都是围绕聚类中心更新、隶属度矩阵迭代来的,跑一套流程也就几秒,效率还行。你想换数据格式、加点可视化,都比较容易扩展。
如果你想搞清楚原理,也可以顺着这些函数调试看。对了,FCM在图像分割、医疗数据里挺常见的,这套实现放在那种项目里也能用。
顺手也给你贴几个相关资源,有的侧重数据挖掘场景,有的是 K 均值和 FCM 对比讲得比较清楚,可以参考着看:
- FCM 模糊 C 均值聚类 MATLAB 实现
- 基于模糊 C 均值算法的数据聚类及 Matlab 实现
- Matlab 实现 K 均值与模糊 C 均值聚类及其可视化
- MATLAB 代码实现 KNN、层次聚类、C 均值与最邻近算法
如果你刚好在学聚类算法,或者项目里要分群,直接拿这套改一改就能用,不用重头写。嗯,用的时候注意数据标准化,不然聚类效果会歪。