亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? isomap.m

?? ISOMAP算法
?? M
字號:
function [Y, R, E] = Isomap(D, n_fcn, n_size, options); % ISOMAP   Computes Isomap embedding using the algorithm of %             Tenenbaum, de Silva, and Langford (2000). %% [Y, R, E] = isomap(D, n_fcn, n_size, options); %% Input:%    D = N x N matrix of distances (where N is the number of data points)%    n_fcn = neighborhood function ('epsilon' or 'k') %    n_size = neighborhood size (value for epsilon or k) %%    options.dims = (row) vector of embedding dimensionalities to use%                        (1:10 = default)%    options.comp = which connected component to embed, if more than one. %                        (1 = largest (default), 2 = second largest, ...)%    options.display = plot residual variance and 2-D embedding?%                        (1 = yes (default), 0 = no)%    options.overlay = overlay graph on 2-D embedding?  %                        (1 = yes (default), 0 = no)%    options.verbose = display progress reports? %                        (1 = yes (default), 0 = no)%% Output: %    Y = Y.coords is a cell array, with coordinates for d-dimensional embeddings%         in Y.coordsoomskwa.  Y.index contains the indices of the points embedded.%    R = residual variances for embeddings in Y%    E = edge matrix for neighborhood graph%%    BEGIN COPYRIGHT NOTICE%%    Isomap code -- (c) 1998-2000 Josh Tenenbaum%%    This code is provided as is, with no guarantees except that %    bugs are almost surely present.  Published reports of research %    using this code (or a modified version) should cite the %    article that describes the algorithm: %%      J. B. Tenenbaum, V. de Silva, J. C. Langford (2000).  A global%      geometric framework for nonlinear dimensionality reduction.  %      Science 290 (5500): 2319-2323, 22 December 2000.  %%    Comments and bug reports are welcome.  Email to jbt@psych.stanford.edu. %    I would also appreciate hearing about how you used this code, %    improvements that you have made to it, or translations into other%    languages.    %%    You are free to modify, extend or distribute this code, as long %    as this copyright notice is included whole and unchanged.  %%    END COPYRIGHT NOTICE%%%%% Step 0: Initialization and Parameters %%%%%N = size(D,1); if ~(N==size(D,2))     error('D must be a square matrix'); end; if n_fcn=='k'     K = n_size;      if ~(K==round(K))         error('Number of neighbors for k method must be an integer');     endelseif n_fcn=='epsilon'     epsilon = n_size; else      error('Neighborhood function must be either epsilon or k'); endif nargin < 3     error('Too few input arguments'); elseif nargin < 4     options = struct('dims',1:10,'overlay',1,'comp',1,'display',1,'verbose',1); endINF =  1000*max(max(D))*N;  %% effectively infinite distanceif ~isfield(options,'dims')     options.dims = 1:10; endif ~isfield(options,'overlay')     options.overlay = 1; endif ~isfield(options,'comp')     options.comp = 1; endif ~isfield(options,'display')     options.display = 1; endif ~isfield(options,'verbose')     options.verbose = 1; enddims = options.dims; comp = options.comp; overlay = options.overlay; displ = options.display; verbose = options.verbose; Y.coords = cell(length(dims),1); R = zeros(1,length(dims)); %%%%% Step 1: Construct neighborhood graph %%%%%disp('Constructing neighborhood graph...'); if n_fcn == 'k'     [tmp, ind] = sort(D);      for i=1:N          D(i,ind((2+K):end,i)) = INF;      endelseif n_fcn == 'epsilon'     warning off    %% Next line causes an unnecessary warning, so turn it off     D =  D./(D<=epsilon);      D = min(D,INF);      warning onendD = min(D,D');    %% Make sure distance matrix is symmetricif (overlay == 1)     E = int8(1-(D==INF));  %%  Edge information for subsequent graph overlayend% Finite entries in D now correspond to distances between neighboring points. % Infinite entries (really, equal to INF) in D now correspond to %   non-neighoring points. %%%%% Step 2: Compute shortest paths %%%%%disp('Computing shortest paths...'); % We use Floyd's algorithm, which produces the best performance in Matlab. % Dijkstra's algorithm is significantly more efficient for sparse graphs, % but requires for-loops that are very slow to run in Matlab.  A significantly % faster implementation of Isomap that calls a MEX file for Dijkstra's % algorithm can be found in isomap2.m (and the accompanying files% dijkstra.c and dijkstra.dll). tic; for k=1:N     D = min(D,repmat(D(:,k),[1 N])+repmat(D(k,:),[N 1]));      if ((verbose == 1) & (rem(k,20) == 0))           disp([' Iteration: ' num2str(k) '     Estimated time to completion: 'num2str((N-k)*toc/k/60) ' minutes']);      endend%%%%% Remove outliers from graph %%%%%disp('Checking for outliers...'); n_connect = sum(~(D==INF));        %% number of points each point connects to[tmp, firsts] = min(D==INF);       %% first point each point connects to[comps, I, J] = unique(firsts);    %% represent each connected component oncesize_comps = n_connect(comps);     %% size of each connected component[tmp, comp_order] = sort(size_comps);  %% sort connected components by sizecomps = comps(comp_order(end:-1:1));    size_comps = size_comps(comp_order(end:-1:1)); n_comps = length(comps);               %% number of connected componentsif (comp>n_comps)                     comp=1;                              %% default: use largest componentenddisp(['  Number of connected components in graph: ' num2str(n_comps)]); disp(['  Embedding component ' num2str(comp) ' with ' num2str(size_comps(comp)) ' points.']); Y.index = find(firsts==comps(comp)); D = D(Y.index, Y.index); N = length(Y.index); %%%%% Step 3: Construct low-dimensional embeddings (Classical MDS) %%%%%disp('Constructing low-dimensional embeddings (Classical MDS)...'); opt.disp = 0; [vec, val] = eigs(-.5*(D.^2 - sum(D.^2)'*ones(1,N)/N - ones(N,1)*sum(D.^2)/N + sum(sum(D.^2))/(N^2)), max(dims), 'LR', opt); h = real(diag(val)); [foo,sorth] = sort(h);  sorth = sorth(end:-1:1); val = real(diag(val(sorth,sorth))); vec = vec(:,sorth); D = reshape(D,N^2,1); for di = 1:length(dims)     if (dims(di)<=N)         Y.coords{di} = real(vec(:,1:dims(di)).*(ones(N,1)*sqrt(val(1:dims(di)))'))';          r2 = 1-corrcoef(reshape(real(L2_distance(Y.coords{di}, Y.coords{di})),N^2,1),D).^2;          R(di) = r2(2,1);          if (verbose == 1)             disp(['  Isomap on ' num2str(N) ' points with dimensionality ' num2str(dims(di)) '  --> residual variance = ' num2str(R(di))]);          end     endendclear D; %%%%%%%%%%%%%%%%%% Graphics %%%%%%%%%%%%%%%%%%if (displ==1)     %%%%% Plot fall-off of residual variance with dimensionality %%%%%     figure;     hold on     plot(dims, R, 'bo');      plot(dims, R, 'b-');      hold off     ylabel('Residual variance');      xlabel('Isomap dimensionality');      %%%%% Plot two-dimensional configuration %%%%%     twod = find(dims==2);      if ~isempty(twod)         figure;         hold on;         plot(Y.coords{twod}(1,:), Y.coords{twod}(2,:), 'ro');          if (overlay == 1)             gplot(E(Y.index, Y.index), [Y.coords{twod}(1,:); Y.coords{twod}(2,:)]');              title('Two-dimensional Isomap embedding (with neighborhood graph).');          else             title('Two-dimensional Isomap.');          end         hold off;     endendreturn;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日本韩国一区| 一区二区三区精品在线| 成人免费在线观看入口| 亚洲成人一区二区在线观看| 国内久久婷婷综合| 欧美视频自拍偷拍| 中文字幕日韩一区| 国产精品综合视频| 欧美一区二区三区在线视频| 亚洲伦理在线免费看| 国产综合久久久久久鬼色| 欧美日韩成人综合天天影院| 1区2区3区欧美| 懂色中文一区二区在线播放| 在线播放日韩导航| 一区二区三区高清不卡| 99综合电影在线视频| 久久综合给合久久狠狠狠97色69| 亚洲国产另类精品专区| 91免费视频大全| 国产精品国产三级国产普通话三级| 美女在线视频一区| 91精品国产欧美一区二区成人| 亚洲品质自拍视频| 成人av免费在线播放| 精品国产一区二区三区四区四| 日本亚洲视频在线| 欧美二区三区的天堂| 性做久久久久久免费观看| 欧美午夜影院一区| 亚洲午夜精品久久久久久久久| 91视频在线观看免费| 国产精品毛片大码女人| 不卡电影一区二区三区| 国产精品久久久久aaaa| 成人a区在线观看| 国产精品国产三级国产普通话三级 | 日本一区二区在线不卡| 国产成人在线看| 国产精品三级视频| 色综合天天综合网国产成人综合天| 亚洲国产精品二十页| 成人午夜av电影| 国产精品久久久久7777按摩| 91丨九色丨黑人外教| 亚洲一区影音先锋| 欧美精品在线视频| 日本va欧美va瓶| 337p日本欧洲亚洲大胆色噜噜| 国产精品一色哟哟哟| 欧美激情一区二区三区四区| 91蜜桃传媒精品久久久一区二区| 亚洲日本免费电影| 欧美日韩一区三区四区| 蜜臀av性久久久久蜜臀aⅴ流畅| 精品国产一区二区三区久久影院| 国产又黄又大久久| 亚洲精品成人天堂一二三| 欧美电影影音先锋| 国产综合色精品一区二区三区| 国产精品久久久久一区二区三区共| 91视频免费观看| 免费成人在线观看视频| 国产精品久久久久久妇女6080| 欧美色电影在线| 国产盗摄一区二区三区| 亚洲精品国产一区二区精华液| 666欧美在线视频| 高清不卡一区二区在线| 亚洲免费在线看| 日韩一区国产二区欧美三区| 成熟亚洲日本毛茸茸凸凹| 亚洲国产综合91精品麻豆| 精品少妇一区二区| 91日韩一区二区三区| 看电视剧不卡顿的网站| 亚洲欧美电影一区二区| 日韩欧美中文字幕一区| 97久久精品人人做人人爽50路 | 欧美精品久久99久久在免费线 | 国产美女精品一区二区三区| 一区二区三区四区亚洲| 精品福利一区二区三区免费视频| 一本色道综合亚洲| 国产经典欧美精品| 丝袜a∨在线一区二区三区不卡| 国产精品毛片久久久久久久| 日韩欧美卡一卡二| 欧美精品在线观看播放| 色婷婷综合激情| 国产91丝袜在线18| 免费高清在线一区| 天堂影院一区二区| 亚洲伦理在线精品| 中文字幕视频一区| 中文字幕av资源一区| 91精品国产综合久久久久久久久久| 91在线观看美女| 国产成人免费在线观看不卡| 美女视频一区在线观看| 日韩精品一二区| 亚洲国产一二三| 亚洲美腿欧美偷拍| 自拍偷拍欧美精品| 国产精品欧美久久久久无广告| 日韩午夜在线影院| 欧美高清视频一二三区 | 欧美日韩第一区日日骚| 一本大道av伊人久久综合| 高清日韩电视剧大全免费| 国产精品亚洲一区二区三区妖精 | 国产欧美一区二区三区网站| 日韩视频免费观看高清完整版在线观看 | 国产剧情一区二区| 久久精品国产精品亚洲红杏| 日韩激情一区二区| 欧美a一区二区| 久久精品国产一区二区三区免费看 | 黑人巨大精品欧美黑白配亚洲| 日韩av一级电影| 日本欧美加勒比视频| 青草av.久久免费一区| 免费的国产精品| 激情欧美一区二区三区在线观看| 美女性感视频久久| 国产精品一区二区在线观看不卡 | 日本大胆欧美人术艺术动态| 午夜亚洲国产au精品一区二区| 亚洲成人免费观看| 男男gaygay亚洲| 激情国产一区二区| 国产凹凸在线观看一区二区| 不卡av电影在线播放| 99久久精品国产毛片| 欧美在线免费观看亚洲| 69久久99精品久久久久婷婷 | 激情小说亚洲一区| 成人美女视频在线观看18| 色婷婷精品大视频在线蜜桃视频| 欧美美女一区二区三区| 欧美va日韩va| 欧美国产日韩一二三区| 亚洲一区在线观看网站| 韩国视频一区二区| 95精品视频在线| 欧美年轻男男videosbes| 久久麻豆一区二区| 一区二区视频免费在线观看| 日韩精品成人一区二区在线| 国产在线播精品第三| 色94色欧美sute亚洲线路一久 | 久久综合色一综合色88| 成人免费小视频| 丝袜美腿高跟呻吟高潮一区| 韩国av一区二区三区在线观看| eeuss影院一区二区三区| 9191成人精品久久| 国产蜜臀av在线一区二区三区 | 日韩理论在线观看| 日韩国产精品大片| 成人少妇影院yyyy| 91精品国产一区二区三区香蕉| 亚洲国产精品av| 天堂精品中文字幕在线| 成人激情图片网| 91精品国产丝袜白色高跟鞋| 亚洲三级在线观看| 精品一区二区三区日韩| 欧美老年两性高潮| 亚洲人成小说网站色在线 | 久久―日本道色综合久久| 一区二区三区产品免费精品久久75 | 色婷婷综合久久久中文字幕| 久久免费偷拍视频| 图片区日韩欧美亚洲| 91免费在线看| 国产精品卡一卡二卡三| 理论片日本一区| 欧美日韩国产影片| 亚洲精品成人在线| 99这里只有精品| 亚洲国产精品激情在线观看| 国产一区二区在线影院| 91精品黄色片免费大全| 亚洲午夜免费视频| 99久久99久久综合| 欧美国产精品一区二区| 韩国欧美一区二区| 精品国产免费一区二区三区四区| 午夜精品久久久久久久蜜桃app| 91免费看视频| 国产精品久久久久久久久快鸭 | 国产精品久久久久影院色老大| 紧缚捆绑精品一区二区| 日韩免费电影网站| 老汉av免费一区二区三区| 欧美成人vr18sexvr| 久久精品理论片| 精品国产露脸精彩对白| 久久国产精品72免费观看|