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

  • 大小: 2KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-18
  • 語言: Matlab
  • 標簽: MATLAB??DBSCAN??

資源簡介

密度聚類中的DBSCAN代碼,根據周志華的《機器學習》中的偽代碼編寫,直接調用就可以使用,內部有注釋

資源截圖

代碼片段和文件信息

function?[kC]?=?DBSCAN(epsMinPtsD)
%?k?聚類個數
%?C?聚類得到的簇
%D?數據集
%eps??鄰域參數
%MinPts??領域參數

%設置參數

O?=?zeros(1?size(D?1));??????????????%核心對象集
C?=?cell(size(D1));???????????????????%聚類簇
%%?找出核心對象
d?=?zeros(size(D?1)?size(D?1));?
distance?=?‘euclidean‘;
for?i?=?1:size(D?1)
?????for?j?=?size(D?1):-1:i
????????if?pdist(D([i?j]:)distance)?<=?eps???%計算樣本行與行之間的距離,樣本之間的距離小于eps元素值為1,反之0
????????????d(i?j)?=?1;
????????end
????????d(j?i)?=?d(i?j);???%d為對稱矩陣
????end
????%d(ii)?=?0;
????if?sum(d(:i))?>=?MinPts
????????????O(i)?=?i;????????%找到核心對象
????end
end
%?O(O==0)?=?[];??%O中的元素去零
%?disp(O)
%%?找出由密度可達樣本生成的聚類簇
k?=??0;????????????????????????????????%初始化聚類簇數
Tau?=?1:size(D?1);????????????????????%初始化未訪問樣本集合
while?sum(O)?~=?0
????Tau_old?=?Tau;?????????????????????%記錄當前未訪問樣本集合

????%隨機選取一個核心對象j
????j?=?1;
????while?O(j)?==?0
????????j?=?j+1;
????end

????Q?=?zeros(1?size(

評論

共有 條評論