IM 關於聚類評價演算法的理解

2021-08-30 02:27:16 字數 2351 閱讀 3235

譜聚類是基於拉普拉斯特徵對映的k近鄰聚類,matlab**如下:

>> n=500;c=2;k=10;t=randperm(n);a=linspace(0,2*pi,n/2)';

>> x=[a.*cos(a) a.*sin(a);(a+pi).*cos(a) (a+pi).*sin(a)];

>> x=x+rand(n,2);x=x-repmat(mean(x),[n,1]);x2=sum(x.^2,2);

>> d=repmat(x2,1,n)+repmat(x2',n,1)-2*x*x';[p,i]=sort(d);

>> w=sparse(d<=ones(n,1)*p(k+1,:));w=(w+w'~=0);

>> d=diag(sum(w,2));l=d-w;[z,v]=eigs(l,d,c-1,'sm');

>> m=z(t(1:c),:);s0(1:c,1)=inf;z2=sum(z.^2,2);

>> for o=1:1000

m2=sum(m.^2,2);

[u,y]=min(repmat(m2,1,n)+repmat(z2',c,1)-2*m*z');

for t=1:c

m(t,:)=mean(z(y==t,:));s(t,1)=mean(d(y==t));

endif norm(s-s0)<0.001,break,end

s0=s;

end>> figure(1);clf;hold on;axis([-10 10 -10 10])

>> plot(x(y==1,1),x(y==1,2),'bo')

>> plot(x(y==2,1),x(y==2,2),'rx')

結果如:

聚類依賴超參的選擇,如k值,如何確定最佳k值,下面理解通過互資訊來評價聚類的演算法:

理解互資訊法評價聚類,要理解kl散度,以及近似密度估計函式的思路。

而譜聚類本身則要理解拉普拉斯特徵對映(降維方法)。

聚類演算法及其評價

姓名 jyx 班級 csdn人工智慧直通車 5期 描述 這是本人在學習人工智慧時的學習筆記,加深理解 聚類是一種非監督學習,聚類需要將一系列樣本輸入到聚類演算法中,學習樣本的內在結構。聚類往往不單獨存在,而是作為乙個大的監督學習演算法的一部分存在 聚類的原則。類內散度最小,類間散度最大 聚類的用途 ...

關於K means聚類演算法重點理解

阿里面試時候被問到簡單介紹一下k means演算法,以及迴圈迭代的終止條件是什麼?特此記錄,共勉!k均值聚類演算法 k means clustering algorithm 是一種迭代求解的聚類分析演算法。1 預將資料分為k組,則隨機選取k個物件作為初始的聚類中心 2 然後計算每個物件與各個種子聚類...

聚類的評價指標

我們知道,監督學習的評價指標是準確率 召回率 f1 f f 1 f beta f1 f roc auc等等,但聚類方法在大多數情況下資料是沒有標籤的,這些情況下聚類就不能使用以上的評價指標了。聚類有自己的評價指標,大多數聚類的評價指標是通過緊湊性和可分性來定義的。緊湊性基本上是衡量乙個聚類中的元素彼...