当前位置:首页 > 基于MATLAB的模糊ISODATA算法设计
四、模糊ISODATA算法MATLAB程序实现
(一)模糊ISODATA算法MATLAB程序流程图
开始 设定参数 选择初始聚类中心 计算初始隶属度矩阵 求各类的新的聚类中心Zi(L) 计算新的隶属度矩阵U(L?1) N max{?(L?1)??(L)}??ijiji,jY Y 类别调整: 合并、分解或删除 N 分类清晰化 结束
(二)模糊ISODATA算法程序运行结果及分析
以前29组数据样本为参考,调节参数
7
标准答案35003000第二特征250020001500050010001500第一特征200025003000 1、初始化数据
Nc = 4; % 初始聚类中心数目 m = 2; % 控制聚类结果模糊程度 L = 0; % 迭代次数
Lmax = 1000; % 最大迭代次数
Nc_all = ones(Lmax,2); % 各次迭代的分类数
Udmax = 10; %最后一次的隶属度与前一次的隶属度的差值的初始值 e = 0.00005; % 收敛参数 a = 0.33; % 合并阈值系数
b = 1; % 模糊化方差参数(通常取1)
r = 0.1; % 分解阈值参数(算法使用者掌握的参数,控制G(K)的上升速度) f = 0.68; % 隶属度阈值(一般取值0-0.5之间)
Avms = 0.83; % 平均隶属度阈值(一般应大于0.5,0.55-0.6之间取值比较适宜) k_divide = 0.9; %分裂1数(取0-1之间)
8
w = 0.2; % 删除条件参数
标准答案35003000第二特征250020001500050010001500第一特征200025003000 1.1、在上述初始化数据条件下程序运行结果如下:
程序运行结果35003000第二特征250020001500050010001500第一特征9
200025003000
程序运行结果350030002500第三特征2000150010005000100020003000第一特征350030002500第二特征20001500 1.2、初始Nc=5时聚类结果如下:
标准答案35003000第二特征250020001500050010001500第一特征200025003000 10
共分享92篇相关文档