📄 vgg_kmeans.m
字号:
function [CX, sse] = vgg_kmeans(X, nclus, varargin)% VGG_KMEANS initialize K-means clustering% [CX, sse] = vgg_kmeans(X, nclus, optname, optval, ...)%% - X: input points (one per column)% - nclus: number of clusters% - opts (defaults):% maxiters (inf): maxmimum number of iterations% mindelta (eps): minimum change in SSE per iteration% verbose (1): 1=print progress%% - CX: cluster centers% - sse: SSE% Author: Mark Everingham <me@robots.ox.ac.uk>% Date: 13 Jan 03opts = struct('maxiters', inf, 'mindelta', eps, 'verbose', 1);if nargin > 2 opts=vgg_argparse(opts,varargin);endperm=randperm(size(X,2));CX=X(:,perm(1:nclus));sse0 = inf;iter = 0;while iter < opts.maxiters tic; [CX, sse] = vgg_kmiter(X, CX); t=toc; if opts.verbose fprintf('iter %d: sse = %g (%g secs)\n', iter, sse, t) end if sse0-sse < opts.mindelta break end sse0=sse; iter=iter+1; end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -