⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gk_all.m

📁 k-means算法(matlab编写),其中包含测试数据集,可以使用.
💻 M
字号:
function [U, dist] = gk_all(nclass,data,phi,centroid, W)
% allocation of fuzzy k means Gustafson-Kessel algorithm
% [U, dist] = gk_fkm(nclass,data,U,phi,centroid,W)
% input
%   nclass      = number of class
%   data        = data matrix                   data(ndata,ndim)
%   U           = initial membership matrix     U(ndata,nclass)
%   phi         = fuzzy exponent        >1
%   W           = distance norm matrix          W(nclass,ndim,ndim)
%   centroid    = centroid
%
% output:
%   U           = new membership matrix
%   dist        = distance matrix           dist(ndata,nclass)
    
ndata = size(data, 1);         % number of data 
ndim = size(data, 2);         % number of dimension

dist=zeros(ndata,nclass);

% calculate distance between data & centroid
dist = GKdist(data, centroid, W);
    
% calculate membership matrix
tmp = dist.^(-1/(phi-1));      
t1=sum(tmp')';
t2=t1(:,ones(nclass,1));
U = tmp./t2;

dist=sqrt(dist);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -