?? calc_inv.m
字號:
function [iaS_inv, norm_iaS_inv, S_norm, F_orig, F_norm, Y, Y_orig, dot_dist, mean_dist, ind_mat_unseen, Dt, ind_clust] = Calc_Inv(dst,my_alpha,my_sigma,num_classes,n,lrn_par)%% Clustering Through Ranking On Manifolds% Version 0.2%% Copyright by Markus Breitenbach and Gregory Z. Grudic% This code is for your personal and research use only.%% http://www.cs.colorado.edu/~grudic/% http://ucsu.colorado.edu/~breitenm/%% This software is provided "as is," without warranty of any kind, express% or implied. In no event shall the authors be held liable% for any direct, indirect, incidental, special or consequential damages% arising out of the use of or inability to use this software.%one_over_2_sigma_sq = 1/(2*my_sigma^2);if lrn_par.SIGMA_MEDIAN>0 W = medianDistance(dst);else W = exp(-dst.*one_over_2_sigma_sq);end;for i = 1:n W(i,i) = 0;endDt = sum(W').^(-1/2);S = (W.*Dt(ones(n,1),:)).*((Dt(ones(n,1),:))');len_rows = sum(S.^2).^(-0.5);S_norm = S.*(len_rows(ones(n,1),:))';ind_mat_unseen = zeros(n,n);row_ind = 1:n;for i = 1:n ind_mat_unseen(i,1:i) = row_ind(1,1:i); ind_mat_unseen(i,i) = 1; ind_mat_unseen(i,i+1:n) = row_ind(1,i+1:n);endclear WiaS = eye(n,n) - (my_alpha * S);clear S;iaS_inv = inv(iaS);clear iaSt44 = 6;%for i=1:length(iaS_inv)% iaS_inv(i,i)=max(iaS_inv(:,i));%end;%fprintf(1,'\tWarning: experimental!\n');len_rows = sum(iaS_inv.^2).^(-0.5);norm_iaS_inv = iaS_inv.*(len_rows(ones(n,1),:));dot_dist = norm_iaS_inv' * norm_iaS_inv;mean_dist = mean(dot_dist);[ind_clust] = Find_Clusters(dot_dist,mean_dist,num_classes,lrn_par.preSet_Centers);F_norm = norm_iaS_inv(:,ind_clust);F_orig = iaS_inv(:,ind_clust);Y = zeros(size(F_norm));for i=1:n ind_t = find(max(F_norm(i,:)) == F_norm(i,:)); Y(i,ind_t(1)) = 1;endY_orig = zeros(size(F_orig)); % label according to original algorithmfor i=1:n ind_t = find(max(F_orig(i,:)) == F_orig(i,:)); Y_orig(i,ind_t(1)) = 1;end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -