91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 393KB
    文件類型: .rar
    金幣: 2
    下載: 2 次
    發布日期: 2021-07-11
  • 語言: Matlab
  • 標簽: FCM+KFCM??聚類??

資源簡介

FCM+KFCM模糊C均值聚類分析算法,matlab代碼,有界面,有圖片,運行正常,附pdf說明文檔

資源截圖

代碼片段和文件信息

function?[center?U?obj_fcn]?=?FCMClust(data?cluster_n?options)
%?FCMClust.m???采用模糊C均值對數據集data聚為cluster_n類?
%
%?用法:
%???1.??[centerUobj_fcn]?=?FCMClust(DataN_clusteroptions);
%???2.??[centerUobj_fcn]?=?FCMClust(DataN_cluster);
%???
%?輸入:
%???data????????----?nxm矩陣表示n個樣本每個樣本具有m的維特征值
%???N_cluster???----?標量表示聚合中心數目即類別數
%???options?????----?4x1矩陣,其中
%???????options(1):??隸屬度矩陣U的指數,>1??????????????????(缺省值:?2.0)
%???????options(2):??最大迭代次數???????????????????????????(缺省值:?100)
%???????options(3):??隸屬度最小變化量迭代終止條件???????????(缺省值:?1e-5)
%???????options(4):??每次迭代是否輸出信息標志????????????????(缺省值:?1)
%?輸出:
%???center??????----?聚類中心
%???U???????????----?隸屬度矩陣
%???obj_fcn?????----?目標函數值
%???Example:
%???????data?=?rand(1002);
%???????[centerUobj_fcn]?=?FCMClust(data2);
%???????plot(data(:1)?data(:2)‘o‘);
%???????hold?on;
%???????maxU?=?max(U);
%???????index1?=?find(U(1:)?==?maxU);
%???????index2?=?find(U(2:)?==?maxU);
%???????line(data(index11)data(index12)‘marker‘‘*‘‘color‘‘g‘);
%???????line(data(index21)data(index22)‘marker‘‘*‘‘color‘‘r‘);
%???????plot([center([1?2]1)][center([1?2]2)]‘*‘‘color‘‘k‘)
%???????hold?off;


if?nargin?~=?2?&?nargin?~=?3????%判斷輸入參數個數只能是2個或3個
error(‘Too?many?or?too?few?input?arguments!‘);
end

data_n?=?size(data?1);?%?求出data的第一維(rows)數即樣本個數
in_n?=?size(data?2);???%?求出data的第二維(columns)數,即特征值長度
%?默認操作參數
default_options?=?[2; %?隸屬度矩陣U的指數
????100;????????????????%?最大迭代次數?
????1e-5;???????????????%?隸屬度最小變化量迭代終止條件
????1];?????????????????%?每次迭代是否輸出信息標志?

if?nargin?==?2
options?=?default_options;
?else???????%分析有options做參數時候的情況
%?如果輸入參數個數是二那么就調用默認的option;
if?length(options)? tmp?=?default_options;
tmp(1:length(options))?=?options;
options?=?tmp;
????end
????%?返回options中是數的值為0(如NaN)不是數時為1
nan_index?=?find(isnan(options)==1);
????%將denfault_options中對應位置的參數賦值給options中不是數的位置.
options(nan_index)?=?default_options(nan_index);
if?options(1)?<=?1?%如果模糊矩陣的指數小于等于1
error(‘The?exponent?should?be?greater?than?1!‘);
end
end
%將options?中的分量分別賦值給四個變量;
expo?=?options(1);??????????%?隸屬度矩陣U的指數
max_iter?=?options(2); %?最大迭代次數?
min_impro?=?options(3); %?隸屬度最小變化量迭代終止條件
display?=?options(4); %?每次迭代是否輸出信息標志?

obj_fcn?=?zeros(max_iter?1); %?初始化輸出參數obj_fcn

U?=?initfcm(cluster_n?data_n);?????%?初始化模糊分配矩陣使U滿足列上相加為1
%?Main?loop??主要循環
for?i?=?1:max_iter
????%在第k步循環中改變聚類中心ceneter和分配函數U的隸屬度值;
[U?center?obj_fcn(i)]?=?stepfcm(data?U?cluster_n?expo);
if?display?
fprintf(‘FCM:Iteration?count?=?%d?obj.?fcn?=?%f\n‘?i?obj_fcn(i));
end
%?終止條件判別
if?i?>?1
if?abs(obj_fcn(i)?-?obj_fcn(i-1))?????????????break;
????????end
end
end

iter_n?=?i; %?實際迭代次數?
obj_fcn(iter_n+1:max_iter)?=?[];


%?子函數
function?U?=?initfcm(cluster_n?data_n)
%?初始化fcm的隸屬度函數矩陣
%?輸入:
%???cluster_n???----?聚類中心個數
%???data_n??????----?樣本點數
%?輸出:
%???U???????????----?初始化的隸屬度矩陣
U?=?r

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????4794??2005-05-06?21:43??FCM\FCMClust.m

?????文件??????98226??2005-11-26?14:24??FCM\fcm結果2.jpg

?????文件?????185480??2005-11-26?14:10??FCM\imsdata.mat

?????文件???????6369??2005-09-22?18:45??FCM\KFCMClust.m

?????文件??????15202??2005-11-26?14:37??FCM\MainGUI.fig

?????文件??????29990??2005-11-26?14:43??FCM\MainGUI.m

?????文件?????128731??2005-05-06?11:14??FCM\核聚類算法2.pdf

?????目錄??????????0??2009-05-07?09:15??FCM

-----------?---------??----------?-----??----

???????????????468792????????????????????8


評論

共有 條評論