最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【數(shù)據(jù)分析】基于FCM進(jìn)行交通數(shù)據(jù)聚類分析matlab源碼

2021-08-24 12:15 作者:Matlab工程師  | 我要投稿

事物間的界線,有些是明確的,有些則是模糊的。當(dāng)聚類涉及到事物之間的模糊界線時(shí),需要運(yùn)用模糊聚類分析方法。
如何理解模糊聚類的“模糊”呢:假設(shè)有兩個(gè)集合分別是A、B,有一成員a,傳統(tǒng)的分類概念a要么屬于A要么屬于B,在模糊聚類的概念中a可以0.3屬于A,0.7屬于B,這就是其中的“模糊”概念。

模糊聚類分析有兩種基本方法:系統(tǒng)聚類法和逐步聚類法。

系統(tǒng)聚類法個(gè)人理解類似于密度聚類算法,逐步聚類法類是中心點(diǎn)聚類法。(這里有不對(duì)的地方請(qǐng)指正)

逐步聚類法是一種基于模糊劃分的模糊聚類分析法。它是預(yù)先確定好待分類的樣本應(yīng)分成幾類,然后按照最優(yōu)原則進(jìn)行在分類,經(jīng)多次迭代直到分類比較合理為止。在分類過(guò)程中可認(rèn)為某個(gè)樣本以某一隸屬度隸屬某一類,又以某一隸屬度隸屬于另一類。這樣,樣本就不是明確的屬于或不屬于某一類。若樣本集有n個(gè)樣本要分成c類,則他的模糊劃分矩陣為c×n。
該矩陣有如下特性:
①. 每一樣本屬于各類的隸屬度之和為1。
②. 每一類模糊子集都不是空集。

模糊C-means聚類算法

模糊c-均值聚類算法fuzzy c-means (FCM)。在眾多模糊聚類算法中,模糊C-均值(FCM)算法應(yīng)用最廣泛且成功,它通過(guò)優(yōu)化目標(biāo)函數(shù)得到每個(gè)樣本點(diǎn)對(duì)所有類中心的隸屬度,從而對(duì)樣本進(jìn)行自動(dòng)分類。

FCM算法原理

假定我們有數(shù)據(jù)集X,我們要對(duì)X中的數(shù)據(jù)進(jìn)行分類,如果把這些數(shù)據(jù)劃分成c個(gè)類的話,那么對(duì)應(yīng)的就有c個(gè)類中心為Ci,每個(gè)樣本Xj屬于某一類Ci的隸屬度定為Uij,那么定義一個(gè)FCM目標(biāo)函數(shù)及其約束條件如下:

在這里插入圖片描述


在這里插入圖片描述


目標(biāo)函數(shù)(式1)由相應(yīng)樣本的隸屬度與該樣本到各類中心的距離相乘組成的,式2為約束條件,也就是一個(gè)樣本屬于所有類的隸屬度之和要為 1 。
式1中的m是一個(gè)隸屬度的因子,一般為2 ,||Xj - Ci|| 表示Xj到中心點(diǎn)Ci的歐式距離。

目標(biāo)函數(shù)J越小越好,說(shuō)以我們要求得目標(biāo)函數(shù)J的極小值,這里如何求極小值就不推導(dǎo)了(對(duì)推導(dǎo)感興趣的可以看這篇文章:https://blog.csdn.net/on2way/article/details/47087201),直接給出結(jié)論:

Uij的迭代公式:

在這里插入圖片描述

Ci的迭代公式:

在這里插入圖片描述

我們發(fā)現(xiàn)Uij和Ci是相互關(guān)聯(lián)的,彼此包含對(duì)方,那么問(wèn)題來(lái)了,fcm算法開(kāi)始的時(shí)候既沒(méi)有Uij也沒(méi)有Ci,那么如何求解呢?很簡(jiǎn)單,程序一開(kāi)始的時(shí)候我們會(huì)隨機(jī)生成一個(gè)Uij,只要數(shù)值滿足條件即可,然后開(kāi)始迭代,通過(guò)Uij計(jì)算出Ci,有了Ci又可以計(jì)算出Uij,反反復(fù)復(fù),這個(gè)過(guò)程中目標(biāo)函數(shù)J一直在變化,逐漸縐向穩(wěn)定。那么當(dāng)J不在變化時(shí)就認(rèn)為算法收斂到一個(gè)較好的結(jié)果了。

clear clc % 注釋中前面帶數(shù)字的地方是您可能需要改的地方。 xls_name = '實(shí)驗(yàn)數(shù)據(jù)匯總.xls'; ?% 1.要讀取的Excel表格的名字 %df = xlsread(xls_name); [df,date]=xlsread(xls_name); %data = df(:,2:4); data=df(:,1:3); plot3(data(:,1),data(:,2),data(:,3),'o');hold on; %% 時(shí)間處理 %time = df(:,1)'; %date=cell2mat(date) %time=date{3,1}; time=1:609; %% 聚類處理 % 加權(quán)重在這一部分 % weight = [1.5,3,2]; % 2.權(quán)重向量,因?yàn)槟臄?shù)據(jù)有三列,所以權(quán)重向量有三個(gè)分量,1.5,1,1 % [U,V,objFun] = myfcm(weight, data, 3); % 3.這條語(yǔ)句括號(hào)中的4設(shè)置聚成4類,改成3則聚為3類。 options=[3,20,1e-6,0]; cn=4; X=data; [center,U,obj_fcn]=fcm(X,cn,options); Jb=obj_fcn(end); maxU = max(U); index1 = find(U(1,:) == maxU); index2 = find(U(2, :) == maxU); index3 = find(U(3, :) == maxU); %% 分類情況 % 在前三類樣本數(shù)據(jù)中分別畫上不同記號(hào) 不加記號(hào)的就是第四類了 plot3(X(index1,1), X(index1, 2), X(index1, 3), 'linestyle', 'none', 'marker', 'x', 'color', 'g'); hold on; plot3(X(index2,1), X(index2, 2), X(index2, 3), 'linestyle', 'none', 'marker', '*', 'color', 'r'); hold on; plot3(X(index3,1), X(index3, 2), X(index3, 3), 'linestyle', 'none', 'marker', '+', 'color', 'b'); hold on; xlabel('speed','fontsize',12); ylabel('volume','fontsize',12); zlabel('occu','fontsize',12); title('FCM方法聚類結(jié)果'); ?

?


【數(shù)據(jù)分析】基于FCM進(jìn)行交通數(shù)據(jù)聚類分析matlab源碼的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
祁连县| 呼伦贝尔市| 普洱| 景泰县| 江北区| 漯河市| 瓮安县| 龙南县| 双牌县| 高州市| 长武县| 芜湖市| 张家口市| 新平| 滦南县| 睢宁县| 石楼县| 韶山市| 松阳县| 故城县| 康乐县| 南皮县| 汶川县| 安义县| 深州市| 金平| 两当县| 遂溪县| 自治县| 广饶县| 社会| 保靖县| 黄浦区| 达尔| 会理县| 隆德县| 惠州市| 大渡口区| 垫江县| 江安县| 丰宁|