1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | clear load fisheriris X = meas; m = size(X, 2 ); % load machine % load census % % X = meas; % X = X( 1 : 2000 ,:); d = pdist(X, 'euclidean' ); Z = linkage(d, 'ward' ); % Create a hierarchical binary cluster tree using linkage % [Hr,Tr] = dendrogram(Z, 0 ); % generates a dendrogram plot of the hierarchical binary cluster tree % h_gca = gca; % h_gca.TickDir = 'out' ; % h_gca.TickLength = [. 002 0 ]; % h_gca.XTickLabel = []; % c = cluster val0 = eval (vpa(Z(:, 3 ), 5 )); t = 1 ; n( 1 ) = 0 ; val = val0( 1 ); f( 1 ) = val; for i = 1 :length(val0) if val0(i) = = val n(t) = n(t) + 1 ; continue else t = t + 1 ; val = val0(i); n(t) = 1 ; f(t) = val; continue end end figure( 2 ) fsum = cumsum(n); x = length(val0) - fsum; plot(x, f, 'o-' , 'LineWidth' , 2 ) xlabel( 'Number of Clusters' ) ylabel( 'Merge Distance' ) title( 'A sample evalution graph' ) % for i = 1 : length(x) % y = cluster(Z, x(i)); % B = Amean(X, y) % end x = x(end: - 1 : 1 ); f = f(end: - 1 : 1 ); i = 0 ; flag = 1 ; b = length(x); minerror_c_old = b - 1 ; while flag ~ = 0 & b> = 20 RMSE = []; for c = 2 : (b - 2 ) x1 = x( 1 :c); y1 = f( 1 : c); x2 = x(c:b); y2 = f(c : b); [~, s1] = polyfit(x1, y1, 1 ); [~, s2] = polyfit(x2, y2, 1 ); RMSE(c - 1 ) = ((c - 1 ) / (b - 1 )) * s1.normr + ( (b - c) / (b - 1 )) * s2.normr; end [~, minerror_c ] = min (RMSE); minerror_c = minerror_c + 1 ; if minerror_c > = minerror_c_old break else minerror_c_old = minerror_c; % b = b - 1 ; b = 2 * minerror_c ; end i = i + 1 end hold on plot(x( minerror_c), f( minerror_c), 'ro' ) c = x( minerror_c) labels = cluster(Z, c); labs = unique(labels); CORR = zeros(); for i = 1 :length(labs) corri = cov(X(labels = = i, :)); CORR = CORR + corri; end |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧