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

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

?? kmeanhar.m

?? voice box tool box for matlab
?? M
字號:
function [x,g,xn,gg] = kmeanhar(d,k,l,e,x0)
%KMEANS Vector quantisation using K-harmonic means algorithm [X,G,XN,GG]=(D,K,L,E,X0)
%
%  Inputs:
%
%    D(N,P)  contains N data vectors of dimension P
%    K       is number of centres required
%    L       integer portion is max loop count, fractional portion
%            gives stopping threshold as fractional reduction in performance criterion
%    E       is exponent in the cost function. Significantly faster if this is an even integer. [default 4]
%    X0(K,P) are the initial centres (optional)
%            Alternatively, X0 can be a character determining the initialization method:
%                'f'    Initialize with K randomly selected data points [default]
%                'p'    Initialize with centroids and variances of random partitions
%
%  Outputs:
%
%    X(K,P)  is output row vectors
%    G       is the final performance criterion value (normalized by N)
%    XN      nearest centre for each input point
%    GG(L+1) value of performance criterion before each iteration and at end
%
% The k-harmonic means algorithm selects K cluster centres to minimize 
%                           sum_n(K/sum_k((d_n-x_k)^-e))
% where sum_n is over the N inputs points d_n and sum_k is over the K cluster centres x_k.
%
% It is often a good idea to scale the input data so that it has equal variance in each
% dimension before calling KMEANHAR so that approximately equal weight is given
% to each dimension in the distance calculation.

%  [1] Bin Zhang, "Generalized K-Harmonic Means - Boosting in Unsupervised Learning",
%      Hewlett-Packartd Labs, Technical Report HPL-2000-137, 2000 [Zhang2000]
%      http://www.hpl.hp.com/techreports/2000/HPL-2000-137.pdf

%  Bugs:
%      (1) Could use nested blocking to allow very large data arrays
%      (2) Could then allow incremental calling with partial data arrays (but messy)

%      Copyright (C) Mike Brookes 1998
%      Version: $Id: kmeanhar.m,v 1.6 2008/06/02 07:20:52 dmb Exp $
%
%   VOICEBOX is a MATLAB toolbox for speech processing.
%   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%   This program is free software; you can redistribute it and/or modify
%   it under the terms of the GNU General Public License as published by
%   the Free Software Foundation; either version 2 of the License, or
%   (at your option) any later version.
%
%   This program is distributed in the hope that it will be useful,
%   but WITHOUT ANY WARRANTY; without even the implied warranty of
%   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
%   GNU General Public License for more details.
%
%   You can obtain a copy of the GNU General Public License from
%   http://www.gnu.org/copyleft/gpl.html or by writing to
%   Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% sort out the input arguments

if nargin<5
    x0='f';
    if nargin<4
        e=[];
        if nargin<3
            l=[];
        end
    end
end
if isempty(e)
    e=4;  % default value
end
if isempty(l)
    l=50+1e-3; % default value
end
sd=5;       % number of times we must be below threshold


% split into chunks if there are lots of data points

memsize=voicebox('memsize');
[n,p] = size(d);
nb=min(n,max(1,floor(memsize/(8*p*k))));    % block size for testing data points
nl=ceil(n/nb);                  % number of blocks

% initialize if X0 argument is not supplied

if ischar(x0)
    if k<n
        if any(x0=='p')                  % Initialize using a random partition
            ix=ceil(rand(1,n)*k);       % allocate to random clusters
            ix(rnsubset(k,n))=1:k;      % but force at least one point per cluster
            x=zeros(k,p);
            for i=1:k
                x(i,:)=mean(d(ix==i,:),1);
            end
        else                                % Forgy initialization: choose k random points [default]
            x=d(rnsubset(k,n),:);         % sample k centres without replacement
        end
    else
        x=d(mod((1:k)-1,n)+1,:);    % just include all points several times
    end
else
    x=x0;
end
eh=e/2;
th=l-floor(l);
l=floor(l)+(nargout>1);   % extra loop needed to calculate final performance value
if l<=0
    l=100;      % max number of iterations ever
end
if th==0
    th=-1;      % prevent any stopping if l has no fractional part
end
gg=zeros(l+1,1);
im=repmat(1:k,1,nb); im=im(:);

% index arrays for replication

wk=ones(k,1);
wp=ones(1,p);
% wn=ones(1,n);
%
% % Main calculation loop
%
% We have the following relationships to [1] where i and k index
% the data values and cluster centres respectively:
%
%   This program     [Zhang2000]                            Equation  
%
%     d(i,:)            x_i                                 input data
%     x(k,:)            m_k                                 cluster centres
%     py(k,i)           (d_ik)^2
%     dm(i)'            d_i,min^2
%     pr(k,i)           (d_i,min/d_ik)^2
%     pe(k,i)           (d_i,min/d_ik)^p                    (7.6) 
%     qik(k,i)          q_ik                                (7.2)
%     qk(k)             q_k                                 (7.3)
%     qik(k,i)./qk(k)   p_ik                                (7.4)
%     se(i)'            d_i,min^p * sumk(d_ik^-p)
%     xf(i)'            d_i,min^-2 / sumk(d_ik^-p)
%     xg(i)'            d_i,min^-(p+2) / sumk(d_ik^-p)^2


ss=sd+1;        % one extra loop at the start
g=0;                % dummy initial value of g
xn=zeros(n,1);
for j=1:l

    g1=g;                           % save old performance
    x1=x;                           % save old centres
    % first do partial chunk

    jx=n-(nl-1)*nb;
    ii=1:jx;
    kx=repmat(ii,k,1);
    km=repmat(1:k,1,jx);
    py=reshape(sum((d(kx(:),:)-x(km(:),:)).^2,2),k,jx);
    [dm,xn(ii)]=min(py,[],1);                 % min value in each column gives nearest centre
    dmk=dm(wk,:);                   % expand into a matrix
    dq=py>dmk;                      % update only these values
    pr=ones(k,jx);                   % leaving others at 1
    pr(dq)=dmk(dq)./py(dq);            % ratio of min(py)./py
    pe=pr.^eh;
    se=sum(pe,1);
    xf=dm.^(eh-1)./se;
    g=xf*dm.';                     % performance criterion (divided by k)
    xg=xf./se;
    qik=xg(wk,:).*pe.*pr;           % qik(k,i) is equal to q_ik in [Zhang2000]
    qk=sum(qik,2);
    xs=qik*d(ii,:);
    ix=jx+1;
    for il=2:nl
        jx=jx+nb;        % increment upper limit
        ii=ix:jx;
        kx=ii(wk,:);
        py=reshape(sum((d(kx(:),:)-x(im,:)).^2,2),k,nb);
        [dm,xn(ii)]=min(py,[],1);                 % min value in each column gives nearest centre
        dmk=dm(wk,:);                   % expand into a matrix
        dq=py>dmk;                      % update only these values
        pr=ones(k,nb);                   % leaving others at 1
        pr(dq)=dmk(dq)./py(dq);            % ratio of min(py)./py
        pe=pr.^eh;
        se=sum(pe,1);
        xf=dm.^(eh-1)./se;
        g=g+xf*dm.';                     % performance criterion (divided by k)
        xg=xf./se;
        qik=xg(wk,:).*pe.*pr;           % qik(k,i) is equal to q_ik in [Zhang2000]
        qk=qk+sum(qik,2);
        xs=xs+qik*d(ii,:);
        ix=jx+1;
    end
    gg(j)=g;
    x=xs./qk(:,wp);
    if g1-g<=th*g1
        ss=ss-1;
        if ~ss break; end  %  stop if improvement < threshold for sd consecutive iterations
    else
        ss=sd;
    end
end
gg=gg(1:j)*k/n;                       % scale and trim the performance criterion vector
g=g(end);
% gg' % *** DEBUIG ***
if nargout>1
    x=x1;                               % go back to the previous x values if G and/or XN value is output
end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美r级在线观看| 日韩一区欧美小说| 国产喷白浆一区二区三区| 亚洲精品国产第一综合99久久| 奇米888四色在线精品| 91社区在线播放| 国产亚洲精品aa| 免费人成精品欧美精品| 在线观看欧美日本| 日本一区二区视频在线| 精品制服美女久久| 91精品黄色片免费大全| 一区二区三区蜜桃| 色999日韩国产欧美一区二区| 精品国产三级a在线观看| 亚洲国产裸拍裸体视频在线观看乱了| 高清久久久久久| 久久久久青草大香线综合精品| 午夜精品一区在线观看| 91久久香蕉国产日韩欧美9色| 久久久久久久久伊人| 看电影不卡的网站| 日韩亚洲欧美一区二区三区| 一区二区三区在线视频观看58 | 粉嫩一区二区三区在线看| 日韩欧美国产三级电影视频| 日韩精品乱码免费| 在线成人午夜影院| 青青青爽久久午夜综合久久午夜| 精品视频一区二区不卡| 亚洲成av人片在www色猫咪| 欧美性猛片aaaaaaa做受| 亚洲伦在线观看| 色综合天天做天天爱| 亚洲精品美腿丝袜| 色狠狠一区二区| 亚洲午夜精品网| 91精品麻豆日日躁夜夜躁| 日本vs亚洲vs韩国一区三区二区| 日韩一区二区三| 久久www免费人成看片高清| 日韩免费看网站| 国产一区二区剧情av在线| 国产日韩欧美亚洲| 成人av网站在线观看| 亚洲另类在线视频| 宅男在线国产精品| 久久99久久99小草精品免视看| 亚洲精品一区二区三区香蕉 | 蜜桃视频一区二区| 久久综合久久99| 成人午夜精品在线| 一区二区三区国产精华| 91精品国产一区二区人妖| 久久草av在线| 日韩毛片精品高清免费| 欧美日本在线观看| 国产成人夜色高潮福利影视| 久久久久久久综合| 色av综合在线| 国模套图日韩精品一区二区| 国产精品国产三级国产普通话三级| 一本色道久久综合精品竹菊| 秋霞电影一区二区| 国产精品入口麻豆原神| 欧美日韩一区二区三区免费看| 九色|91porny| 一区二区三区中文字幕精品精品 | 免费av网站大全久久| 日本一区二区三区视频视频| 91精品福利视频| 捆绑调教美女网站视频一区| 亚洲国产高清aⅴ视频| 欧美另类一区二区三区| 丁香桃色午夜亚洲一区二区三区 | 中文字幕精品综合| 在线一区二区视频| 国产电影一区在线| 午夜影视日本亚洲欧洲精品| 欧美韩国日本一区| 欧美一区二区三区视频在线| www.欧美精品一二区| 免费观看在线色综合| 亚洲精品视频在线观看网站| 久久久久久久久久久久久久久99| 欧美主播一区二区三区| 北条麻妃国产九九精品视频| 捆绑调教美女网站视频一区| 一区二区欧美国产| 中文字幕日本不卡| 国产三级欧美三级日产三级99| 欧美日本韩国一区| 91福利在线播放| 91婷婷韩国欧美一区二区| 国产精品一区专区| 久久激情五月婷婷| 奇米四色…亚洲| 亚洲午夜免费电影| 亚洲综合在线免费观看| 国产精品久久久久桃色tv| 久久久国产精品不卡| ww久久中文字幕| 日韩精品一区二区三区三区免费| 制服视频三区第一页精品| 欧美在线影院一区二区| 色综合咪咪久久| 色天天综合久久久久综合片| aaa亚洲精品一二三区| 成人动漫视频在线| 不卡一卡二卡三乱码免费网站| 国产乱对白刺激视频不卡| 精品一区二区国语对白| 狠狠色丁香久久婷婷综| 国产一区二区精品久久99| 韩国成人精品a∨在线观看| 国产最新精品免费| 国产高清精品网站| 北岛玲一区二区三区四区| 91免费观看视频| 在线观看亚洲精品视频| 欧美日韩国产影片| 日韩欧美不卡一区| 久久久久久久久久久久久夜| 久久人人爽爽爽人久久久| 国产精品丝袜一区| 亚洲精品网站在线观看| 免费欧美日韩国产三级电影| 一区在线观看免费| 伊人夜夜躁av伊人久久| 亚洲成人手机在线| 精品综合免费视频观看| 懂色av中文字幕一区二区三区| 成人午夜免费电影| 色婷婷av一区二区三区大白胸| 欧美精品在线观看播放| 日韩一卡二卡三卡| 中文字幕精品一区二区三区精品| 中文字幕制服丝袜一区二区三区| 一区二区三区精品视频| 麻豆精品久久久| caoporen国产精品视频| 欧美三级视频在线观看| 精品不卡在线视频| 亚洲色图清纯唯美| 蜜桃视频免费观看一区| 懂色av中文一区二区三区| 欧美综合在线视频| 久久久欧美精品sm网站| 亚洲精品videosex极品| 麻豆久久久久久| 91蜜桃传媒精品久久久一区二区| 欧美日韩高清在线| 欧美国产激情二区三区| 亚洲国产一区视频| 黑人巨大精品欧美一区| 91成人在线观看喷潮| 久久精品亚洲精品国产欧美| 亚洲综合成人在线视频| 国产资源在线一区| 欧美无人高清视频在线观看| 久久久不卡网国产精品一区| 亚洲国产欧美在线| 成人免费高清在线| 欧美一区二区免费观在线| 欧美高清在线精品一区| 麻豆freexxxx性91精品| 一本色道**综合亚洲精品蜜桃冫| 日韩美女主播在线视频一区二区三区| 亚洲欧洲精品成人久久奇米网| 日韩高清不卡一区二区三区| 99久久99久久精品国产片果冻 | 国产亚洲精品bt天堂精选| 五月天欧美精品| 91在线高清观看| 国产欧美va欧美不卡在线| 免费成人在线观看视频| 欧美日韩一区二区三区四区五区| 国产精品污污网站在线观看| 久久99久久精品欧美| 欧美三级韩国三级日本三斤| 日韩伦理免费电影| 成人激情文学综合网| 国产亚洲午夜高清国产拍精品| 日韩有码一区二区三区| 欧美亚洲一区二区三区四区| 亚洲欧美在线另类| 成人精品在线视频观看| 久久精品网站免费观看| 久久99日本精品| 日韩午夜中文字幕| 日韩av一区二区三区四区| 欧美日韩精品三区| 一区二区三区在线不卡| 99久久综合狠狠综合久久| 日本一二三不卡| 成人av在线看| 1000部国产精品成人观看| 成人美女在线视频| 国产精品久久久久7777按摩| 不卡一区二区在线|