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

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

?? nnd14lv2.m

?? 神經網絡設計那本書的全部源代碼(隨書是附在軟盤里的)
?? M
字號:
function nnd14lv2(cmd,arg1,arg2,arg3)
%NND4LV1 LVQ2 demonstration.
%
%	This demonstration requires the Neural Network Toolbox.

% First Version, 8-31-95.

%==================================================================

% CONSTANTS
me = 'nnd14lv2';
p_max = 3;
max_epoch = 5;
W2 = [1 1 0 0;
      0 0 1 1];
box_x = [-1 1 1 -1 -1]*0.1;
box_y = [-1 -1 1 1 -1]*0.1;
cross_x = [-1 1 NaN 0 0]*0.15;
cross_y = [0 0 NaN -1 1]*0.15;
lr = 0.6;
center_colors = [nnblack;nnltblue];

% FLAGS
change_func = 0;

% DEFAULTS
if nargin == 0, cmd = ''; else cmd = lower(cmd); end

% FIND WINDOW IF IT EXISTS
fig = nnfgflag(me);
if length(get(fig,'children')) == 0, fig = 0; end
  
% GET WINDOW DATA IF IT EXISTS
if fig
  H = get(fig,'userdata');
  fig_axis = H(1);            % window axis
  desc_text = H(2);           % handle to first line of text sequence
  v_axis = H(3);              % training and weight vector axis
  t1_axis = H(4);             % black target marker axis
  t2_axis = H(5);             % white target marker axis
  W1_ptr = H(6);
  P_ptr = H(7);
  T_ptr = H(8);
  PV_ptr = H(9);
  t_ptr = H(10);
  WV_ptr = H(11);
  blip_ptr = H(12);
  bloop_ptr = H(13);
end

%==================================================================
% Activate the window.
%
% ME() or ME('')
%==================================================================

if strcmp(cmd,'')
  if fig
    figure(fig)
    set(fig,'visible','on')
  else
    feval(me,'init')
  end

%==================================================================
% Close the window.
%
% ME() or ME('')
%==================================================================

elseif strcmp(cmd,'close') & (fig)
  delete(fig)

%==================================================================
% Initialize the window.
%
% ME('init')
%==================================================================

elseif strcmp(cmd,'init') & (~fig)

  % CHECK FOR NNT
  if ~nntexist(me), return, end

  % CONSTANTS
  W1 = rands(4,2);
  P = [-1.5  -2.0 2.0  1.5  2.0  2.0 -2.0 -1.5;
        2.0   1.5 2.0  2.0 -2.0 -1.5 -2.0 -2.0];
  T = [  1    1    0    0    1    1    0    0;
         0    0    1    1    0    0    1    1];
  A1 = compet(-dist(W1,P));
  A2 = W2*A1;
  E = T-A2;
  blip = nndsnd(6);
  bloop = nndsnd(7);

  % NEW DEMO FIGURE
  fig = nndemof2(me,'DESIGN','LVQ2','','Chapter 14');
  set(fig, ...
    'windowbuttondownfcn',nncallbk(me,'down'), ...
    'BackingStore','off',...
    'nextplot','add');
  H = get(fig,'userdata');
  fig_axis = H(1);
  desc_text = H(2);

  % ICON
  nndicon(14,458,363,'shadow')

  % VECTOR DIAGRAM
  v_axis = nnsfo('a2','','','');
  set(v_axis,...
    'position',[50 60 270*1.05 270*1.05],...
    'xlim',[-p_max p_max]*1.05,...
    'xtick',[],...
    'ylim',[-p_max p_max]*1.05,...
    'ytick',[])

  % INPUT VECTOR MARKERS
  cross = plot([-p_max p_max NaN 0 0],[0 0 NaN -p_max p_max],':',...
    'color',nndkblue,...
    'erasemode','none');
  Q = size(P,2);
  PV = zeros(1,Q);
  for q=1:Q
    if E(1,q)
      edge_color = nnred;
    else
      edge_color = nndkgray;
    end
    PV(q) = fill(box_x+P(1,q),box_y+P(2,q),center_colors(1+T(1,q),:),...
      'edgecolor',edge_color,...
      'erasemode','none',...
      'linewidth',2);
  end

  % WEIGHT MARKERS
  S1 = size(W1,1);
  for i=S1:-1:1
    WV(i) = plot(cross_x+W1(i,1),cross_y+W1(i,2),...
      'color',center_colors(1+W2(1,i),:),...
      'linewidth',3,...
      'erasemode','none');
  end

  % NEW INPUT MARKERS
  t1_axis = nnsfo('a2','','','');
  set(t1_axis,...
    'position',[50 20 20*1.05 20*1.05],...
    'xlim',[-.16 .16],...
    'ylim',[-.16 .16])
  axis('off')
  fill(box_x,box_y,nnltblue,...
    'edgecolor',nndkgray,...
      'linewidth',2)
  t2_axis = nnsfo('a2','','','');
  set(t2_axis,...
    'position',[70 20 20*1.05 20*1.05],...
    'xlim',[-.16 .16],...
    'ylim',[-.16 .16])
  axis('off')
  fill(box_x,box_y,[0 0 0],...
    'edgecolor',nndkgray,...
    'linewidth',2)

  % BUTTONS
  uicontrol(...
    'units','points',...
    'position',[110 20 60 20],...
    'string','Learn',...
    'callback',[me '(''learn'')'])
  uicontrol(...
    'units','points',...
    'position',[190 20 60 20],...
    'string','Train',...
    'callback',[me '(''train'')'])
  uicontrol(...
    'units','points',...
    'position',[270 20 60 20],...
    'string','Random',...
    'callback',[me '(''random'')'])

  uicontrol(...
    'units','points',...
    'position',[400 110 60 20],...
    'string','Contents',...
    'callback','nndtoc')
  uicontrol(...
    'units','points',...
    'position',[400 75 60 20],...
    'string','Close',...
    'callback',[me '(''close'')'])

  % DATA POINTERS
  W1_ptr = uicontrol('visible','off','userdata',W1);
  P_ptr = uicontrol('visible','off','userdata',P);
  T_ptr = uicontrol('visible','off','userdata',T);
  PV_ptr = uicontrol('visible','off','userdata',PV);
  t_ptr = uicontrol('visible','off','userdata',[0;0]);
  WV_ptr = uicontrol('visible','off','userdata',WV);
  blip_ptr = uicontrol('visible','off','userdata',blip);
  bloop_ptr = uicontrol('visible','off','userdata',bloop);

  % SAVE WINDOW DATA AND LOCK
  H = [fig_axis desc_text v_axis t1_axis t2_axis,...
       W1_ptr P_ptr T_ptr PV_ptr t_ptr WV_ptr blip_ptr bloop_ptr];
  set(fig,'userdata',H,'nextplot','new')

  % INSTRUCTION TEXT
  feval(me,'instr');

  % LOCK WINDOW
  set(fig,...
   'nextplot','new',...
   'color',nnltgray);

  nnchkfs;

%==================================================================
% Display the instructions.
%
% ME('instr')
%==================================================================

elseif strcmp(cmd,'instr') & (fig)
  nnsettxt(desc_text,...
    'Click [Learn] to apply',...
    'the LVQ2 rule once.',...
    'Click [Train] to apply',...
    'the rule 5 times.',...
    'Click [Random] to get',...
    'random weights.',...
    '',...
    'Drag the blue and',...
    'black squares to define',...
    'different problems.',...
    '',...
    'Colors of crosses (wts)',...
    'and inside squares',...
    'indicate class. Red',...
    'edge indicates a',...
    'misclassified vector.')
    
%==================================================================
% Respond to mouse down.
%
% ME('down')
%==================================================================

elseif strcmp(cmd,'down') & (fig) & (nargin == 1)

  pt = get(v_axis,'currentpoint');
  x = pt(1);
  y = pt(3);

  % EDIT VECTOR AXIS
  if (x >= -p_max) & (x <= p_max) & (y >= -p_max) & (y <= p_max)

    % EDIT INPUT/TARGET DOT
    P = get(P_ptr,'userdata');
    T = get(T_ptr,'userdata');
    PV = get(PV_ptr,'userdata');
    WV = get(WV_ptr,'userdata');

    Q = size(P,2);
    for q=1:Q

      if sqrt(sum((P(:,q)-[x; y]).^2)) < 0.15
        t = T(:,q);        
        set(PV(q),...
          'facecolor',nnltyell,...
          'edgecolor',nnltyell);
        delete(PV(q));
        P(:,q) = [];
        T(:,q) = [];
        PV(:,q) = [];

        set(fig,...
         'pointer','cross',...
         'WindowButtonUpFcn',[me '(''setdot'')'])

        set(P_ptr,'userdata',P);
        set(T_ptr,'userdata',T);
        set(PV_ptr,'userdata',PV);
        set(t_ptr,'userdata',t);

        set(WV,'visible','off')
        for i=length(WV):-1:1
          set(WV(i),'visible','on')
        end
        break;
      end
    end
  
  % NEW SQUARE
  else
    pt = get(t1_axis,'currentpoint');
    x = pt(1);
    y = pt(3);

    % BLACK SQUARE
    if (x >= -.15) & (x <= .15) & (y >= -.15) & (y <= .15)
       set(fig,...
       'pointer','circle',...
       'WindowButtonUpFcn',[me '(''setdot'')'])
      set(t_ptr,'userdata',[1;0]);
    
    else
      pt = get(t2_axis,'currentpoint');
      x = pt(1);
      y = pt(3);

      % WHITE SQUARE
      if (x >= -.15) & (x <= .15) & (y >= -.15) & (y <= .15)
         set(fig,...
         'pointer','circle',...
         'WindowButtonUpFcn',[me '(''setdot'')'])
        set(t_ptr,'userdata',[0;1]);
      end
    end
  end

%==================================================================
% Set decision dot.
%
% ME('setdot')
%==================================================================

elseif strcmp(cmd,'setdot') & (fig) & (nargin == 1)

  pt = get(v_axis,'currentpoint');
  x = pt(1);
  x = round(x*2)/2;
  y = pt(3);
  y = round(y*2)/2;

  if (x >= -p_max) & (x <= p_max) & (y >= -p_max) & (y <= p_max)
    P = get(P_ptr,'userdata');
    T = get(T_ptr,'userdata');
    W1 = get(W1_ptr,'userdata');
    PV = get(PV_ptr,'userdata');
    t = get(t_ptr,'userdata');
    WV = get(WV_ptr,'userdata');
    
    q = size(PV,2)+1;
    set(fig,'nextplot','add');
    axes(v_axis);

    P = [P [x;y]];
    T = [T t];

    A1 = compet(W1*P);
    A2 = W2*A1;
    E = T-A2;

    if E(1,q)
      edge_color = nnred;
    else
      edge_color = nndkgray;
    end
    PV(q) = fill(box_x+x,box_y+y,center_colors(1+T(1,q),:),...
      'edgecolor',edge_color,...
      'erasemode','none',...
      'linewidth',2);
    set(fig,'nextplot','new');
  
    set(P_ptr,'userdata',P);
    set(T_ptr,'userdata',T);
    set(PV_ptr,'userdata',PV);

    set(WV,'visible','off')
    for i=length(WV):-1:1
      set(WV(i),'visible','on')
    end
  end

  set(fig,...
    'pointer','arrow',...
    'WindowButtonUpFcn','')
    
%==================================================================
% Learn.
%
% ME('learn')
%==================================================================

elseif strcmp(cmd,'learn')
  
  max_epoch = 1;
  cmd = 'train';

%==================================================================
% Random weights.
%
% ME('random')
%==================================================================

elseif strcmp(cmd,'random')
  
  % GET DATA
  W1 = get(W1_ptr,'userdata');
  WV = get(WV_ptr,'userdata');
  P = get(P_ptr,'userdata');
  T = get(T_ptr,'userdata');
  PV = get(PV_ptr,'userdata');
  blip = get(blip_ptr,'userdata');
  bloop = get(bloop_ptr,'userdata');
  Q = size(P,2);

  % MOVE WEIGHTS
  set(WV,'color',nngreen);
  nnsound(blip);
  nnpause(0.5)
 
  W1 = (rand(4,2)*2-1)*1.25;
  set(WV,'color',nnltyell);
  set(WV,'visible','off');
  for i=length(WV):-1:1
    set(WV(i),...
      'xdata',cross_x + W1(i,1),...
      'ydata',cross_y + W1(i,2),...
      'color',center_colors(1+W2(1,i),:));
    set(WV(i),'visible','on')
    nnsound(bloop);
  end

  % REDRAW INPUT VECTORS
  A1 = compet(-dist(W1,P));
  A2 = W2*A1;
  E = T-A2;
  for q=1:Q
    if E(1,q)
     edge_color = nnred;
    else
      edge_color = nndkgray;
    end
    set(PV(q),...
      'facecolor',center_colors(1+T(1,q),:),...
      'edgecolor',edge_color);
  end

  % REFRESH WEIGHT VECTORS
  set(WV,'visible','off')
  for i=length(WV):-1:1
    set(WV(i),'visible','on')
  end

  % SAVE DATA
  set(W1_ptr,'userdata',W1);

%==================================================================
end

%==================================================================
% Train.
%
% ME('train')
%==================================================================

if strcmp(cmd,'train')
  
  % GET DATA
  W1 = get(W1_ptr,'userdata');
  WV = get(WV_ptr,'userdata');
  P = get(P_ptr,'userdata');
  T = get(T_ptr,'userdata');
  PV = get(PV_ptr,'userdata');
  Q = length(PV);
  if (q == 0)
    return
  end
  blip = get(blip_ptr,'userdata');
  bloop = get(bloop_ptr,'userdata');
  axes(v_axis)
  set(fig,'nextplot','add')
  T1 = W2'*T;

  for i=1:max_epoch

    z = rand(5,5);

    % CHECK ERROR
    A1 = compet(-dist(W1,P));
    A2 = W2*A1;
    E = T-A2;
    if ~any(any(E)) & (max_epoch > 1) & 0, break, end
    
    % PRESENT VECTOR
    q = floor(rand*Q)+1;
    p = P(:,q);
    t = T(:,q);
    t1 = T1(:,q);
    n = -dist(W1,p);
    a1 = compet(n);
    a2 = W2*a1;
    e = t-a2;
    i = find(a1);
    set(PV(q),'facecolor',nngreen);
    nnsound(blip);
    nnpause(0.5)

    % MOVE WEIGHT: LVQ1
    if any(e)
      face_color = nnred;
    else
      face_color = nngreen;
    end
    set(WV(i),'color',face_color);
    nnsound(blip);
    nnpause(0.5)
 
    e1 = W2'*t;
    newW1 = W1;
    newW1(i,:) = W1(i,:) + (e1(i)*2-1)*feval('learnis',W1(i,:),p,a1(i),lr);

    temp = nndrwvec([W1(i,1) newW1(i,1)],[W1(i,2) newW1(i,2)],...
      1,0.2,face_color,'','none');
    nnsound(blip);
    nnpause(1)
    set(temp,'color',nnltyell)
    delete(temp);
    W1 = newW1;

    set(WV(i),'color',nnltyell);
    set(WV(i),'visible','off');
    set(WV(i),...
      'xdata',cross_x + W1(i,1),...
      'ydata',cross_y + W1(i,2),...
      'color',center_colors(1+W2(1,i),:));
    set(WV(i),'visible','on')
    nnsound(bloop);

    % IF ERROR
    if any(e)

      a1 = compet(n + W2'*t*1e5);
      i = find(a1);

      % MOVE WEIGHT: LVQ2
      face_color = nngreen;
      set(WV(i),'color',face_color);
      nnsound(blip);
      nnpause(0.5)
 
      e1 = W2'*t;
      i = find(a1);
      newW1 = W1;
      newW1(i,:) = W1(i,:) + (e1(i)*2-1)*feval('learnis',W1(i,:),p,a1(i),lr);

      temp = nndrwvec([W1(i,1) newW1(i,1)],[W1(i,2) newW1(i,2)],...
        1,0.2,face_color,'','none');
      nnsound(blip);
      nnpause(1)
      set(temp,'color',nnltyell)
      delete(temp);
      W1 = newW1;

      set(WV(i),'color',nnltyell);
      set(WV(i),'visible','off');
      set(WV(i),...
        'xdata',cross_x + W1(i,1),...
        'ydata',cross_y + W1(i,2),...
        'color',center_colors(1+W2(1,i),:));
      set(WV(i),'visible','on')
      nnsound(bloop);
    end

    % REDRAW INPUT VECTORS
    A1 = compet(-dist(W1,P));
    A2 = W2*A1;
    E = T-A2;
    for q=1:Q
      if E(1,q)
       edge_color = nnred;
      else
        edge_color = nndkgray;
      end
      set(PV(q),...
        'facecolor',center_colors(1+T(1,q),:),...
        'edgecolor',edge_color);
    end
  
    % REFRESH WEIGHT VECTORS
    set(WV,'visible','off')
    for i=length(WV):-1:1
      set(WV(i),'visible','on')
    end
  end

  set(W1_ptr,'userdata',W1);
  set(fig,'nextplot','new')
end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲色图在线看| 欧美激情中文字幕| 亚洲超碰精品一区二区| 欧美性猛片xxxx免费看久爱| 一区二区三区在线观看欧美| 欧美午夜电影网| 三级在线观看一区二区| 精品久久久久久综合日本欧美| 久久99久久99| 欧美激情艳妇裸体舞| 成人av在线资源网站| 亚洲宅男天堂在线观看无病毒| 欧美精品黑人性xxxx| 黄页网站大全一区二区| 欧美国产日本韩| 91福利国产精品| 美国一区二区三区在线播放| 久久久91精品国产一区二区精品 | 色综合天天综合色综合av| 一区二区三区在线观看欧美| 日韩一区二区在线看片| 成人综合在线观看| 亚洲成人自拍一区| 精品盗摄一区二区三区| 91一区一区三区| 久久疯狂做爰流白浆xx| 综合婷婷亚洲小说| 日韩午夜激情电影| 色综合天天综合网国产成人综合天 | 一区二区三区在线视频免费| 欧美一区二区视频网站| 岛国精品在线播放| 午夜精品影院在线观看| 久久综合九色综合97_久久久| 91精品办公室少妇高潮对白| 国产一区二区在线视频| 亚洲第一福利视频在线| 国产女主播在线一区二区| 欧美日韩国产小视频| 国产精品一区二区男女羞羞无遮挡| 亚洲一区在线看| 国产欧美一区二区三区沐欲| 7777精品伊人久久久大香线蕉超级流畅| 国产91精品入口| 美国毛片一区二区| 亚洲国产精品久久艾草纯爱| 亚洲国产成人午夜在线一区| 3d成人h动漫网站入口| 成人久久18免费网站麻豆| 麻豆精品一区二区综合av| 亚洲自拍偷拍欧美| 中文字幕综合网| 国产欧美日韩卡一| 26uuu国产一区二区三区| 欧美电影在线免费观看| 色哟哟欧美精品| 95精品视频在线| 成年人午夜久久久| 国产一区二区三区日韩| 蜜臀91精品一区二区三区 | 亚洲一级二级在线| 亚洲色图欧洲色图| 国产精品九色蝌蚪自拍| 久久久久九九视频| 久久久久久久久久久久久久久99| 日韩一区二区在线免费观看| 在线播放国产精品二区一二区四区| 一本色道**综合亚洲精品蜜桃冫| 粉嫩aⅴ一区二区三区四区五区| 黄色成人免费在线| 精品综合久久久久久8888| 奇米色一区二区| 久久机这里只有精品| 日韩电影在线观看一区| 日韩精品电影一区亚洲| 午夜精品福利一区二区三区av| 亚洲最新视频在线观看| 亚洲激情一二三区| 亚洲三级理论片| 亚洲日本免费电影| 亚洲九九爱视频| 一区二区三国产精华液| 一区二区三区精品久久久| 亚洲福利视频一区| 日本va欧美va精品发布| 久久99精品一区二区三区三区| 九九热在线视频观看这里只有精品| 久久电影网电视剧免费观看| 国产激情偷乱视频一区二区三区 | 精品在线亚洲视频| 国产一区二区导航在线播放| 国产成人综合精品三级| eeuss鲁片一区二区三区| 97精品久久久久中文字幕| 欧洲精品视频在线观看| 欧美丝袜第三区| 欧美videossexotv100| 国产农村妇女精品| 亚洲免费在线视频一区 二区| 亚洲综合偷拍欧美一区色| 图片区小说区区亚洲影院| 激情综合网av| 97se狠狠狠综合亚洲狠狠| 欧美精品国产精品| 国产色综合一区| 一区二区三区精品视频在线| 另类欧美日韩国产在线| 成人在线综合网| 欧美午夜不卡在线观看免费| 欧美成人猛片aaaaaaa| 日韩理论电影院| 日韩精品电影在线| 成人h动漫精品一区二| 欧美日韩1234| 国产精品你懂的| 日韩精品免费专区| 99久久精品费精品国产一区二区| 欧美日韩中字一区| 欧美国产一区二区| 五月天激情小说综合| 大胆欧美人体老妇| 欧美一区在线视频| 国产精品美女久久久久久久| 视频一区在线播放| yourporn久久国产精品| 日韩一卡二卡三卡国产欧美| 国产精品久久久久7777按摩| 蜜臀av性久久久久蜜臀av麻豆 | 在线观看日韩精品| 国产清纯美女被跳蛋高潮一区二区久久w | 日韩电影在线免费看| 成人精品鲁一区一区二区| 69成人精品免费视频| 最近中文字幕一区二区三区| 久久精品国产亚洲5555| 欧美性色黄大片| 亚洲色图视频网| 国产麻豆91精品| 欧美一区二区免费观在线| 亚洲在线中文字幕| 91女厕偷拍女厕偷拍高清| 国产无人区一区二区三区| 婷婷成人激情在线网| 91久久精品一区二区三区| 国产精品入口麻豆原神| 国产精品综合在线视频| 日韩午夜激情视频| 亚洲v中文字幕| 在线亚洲精品福利网址导航| 亚洲视频资源在线| 成人国产免费视频| 国产区在线观看成人精品| 国产一区二区在线观看视频| 欧美一区二区三区免费| 亚洲超碰97人人做人人爱| 欧洲av在线精品| 亚洲欧美日韩在线不卡| 成人av网站在线| 国产精品第一页第二页第三页| 国产成人自拍网| 国产亚洲女人久久久久毛片| 国产一区二区三区观看| 精品国产一区二区在线观看| 蜜桃一区二区三区在线观看| 日韩一区二区在线免费观看| 毛片一区二区三区| 精品国产三级a在线观看| 日本不卡的三区四区五区| 欧美一级一区二区| 美女视频免费一区| wwwwww.欧美系列| 国产不卡视频在线播放| 国产精品久久久99| 日本高清视频一区二区| 亚洲成av人片一区二区三区| 在线电影国产精品| 青青草国产成人av片免费| 日韩三级伦理片妻子的秘密按摩| 久久精品国产99| 亚洲国产精品ⅴa在线观看| 成人国产一区二区三区精品| 亚洲精品精品亚洲| 在线观看国产一区二区| 日本麻豆一区二区三区视频| 日韩精品一区二| 成人激情校园春色| 亚洲精品成人悠悠色影视| 欧美日韩免费在线视频| 蜜桃精品视频在线| 久久这里只有精品6| 成人禁用看黄a在线| 亚洲成年人网站在线观看| 精品嫩草影院久久| 粉嫩av一区二区三区粉嫩| 亚洲综合无码一区二区| 精品久久久久一区| 91丨porny丨蝌蚪视频| 日韩精品色哟哟| 国产农村妇女精品| 欧美制服丝袜第一页|