模糊聚类分析的一般步骤为:
(1)确定分类数,指数m的值,确定迭代次数(;
(2)初始化一个隶属度U;
(3)根据U计算聚类中心C;
data(:,1) = rand(100,1);
data(:,2) = rand(100,1);%随机生成数据
cluster_n = 2;%类别数
iter = 50;%迭代次数
m = 2;%指数
num_data = size(data,1);%样本个数
num_d = size(data,2);%样本维度
%初始化隶属度u,条件是每一列和为1
U = rand(cluster_n,num_data);
col_sum = sum(U);
U = U./col_sum(ones(cluster_n,1),:);
%% 循环规定迭代次数作为结束条件
for i = 1:iter
%更新c
for j = 1:cluster_n
u_ij_m = U(j,:).^m;
sum_u_ij = sum(u_ij_m);
sum_1d = u_ij_m./sum_u_ij;
c(j,:) =