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

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

?? nnd12sd2.m

?? 《神經網絡設計》英文版的配套源代碼
?? M
字號:
function nnd12sd2(cmd,arg1)
%NND12SD2 Steepest descent backpropagation demonstration #2.
%
%  This demonstration requires the Neural Network Toolbox.

% $Revision: 1.8 $
% Copyright 1994-2002 PWS Publishing Company and The MathWorks, Inc.
% First Version, 8-31-95.

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

% CONSTANTS
me = 'nnd12sd2';
max_t = 0.5;
w_max = 10;
p_max = 2;
circle_size = 6;

% FLAGS
change_func = 0;

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

% FIND WINDOW IF IT EXISTS
fig = nndfgflg(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
  lr_bar = H(3);              % lr slider bar
  lr_text = H(4);             % lr text
  cont_axis = H(5);           % error contour axis
  cont_ptr = H(6);            % pointer to error contour handles
  variables = H(7:10);        % variable name texts
  radios = H(11:13);          % radio buttons
  option_ptr = H(14);         % index of active radio
  path_ptr = H(15);           % pointer to training path handles
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
  % ODJ 12/23/07 Check for NN Toolbox removed
  %if ~nntexist(me), return, end

  % CONSTANTS
  W1 = [10; 10];
  b1 = [-5;5];
  W2 = [1 1];
  b2 = [-1];
  P = -2:0.1:2;
  [R,Q] = size(P);
  %A1 = logsig(W1*P+b1*ones(1,Q));
  %T = logsig(W2*A1+b2*ones(1,Q));
  A1 = nndlogsig(W1*P+b1*ones(1,Q));
  T = nndlogsig(W2*A1+b2*ones(1,Q));

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

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

  % NETWORK POSITIONS
  x1 = 40;     % input
  x2 = x1+90;  % 1st layer sum
  x3 = x2+40;  % 1st layer transfer function
  x4 = x3+100; % 2nd layer sum
  x5 = x4+40;  % 2nd layer transfer function
  x6 = x5+50;  % output
  y1 = 330;    % top neuron
  y2 = y1-35;  % input & output neuron
  y3 = y1-70;  % bottom neuron
  sz = 15;     % size of icons
  wx = 55;     % weight vertical offset (from 1st layer)
  wy = 40;     % weight horizontal offset (from middle)

  % NETWORK INPUT
  nndtext(x1-10,y2,'p');
  plot([x2-sz x1 x2-sz],[y1 y2 y3],'linewidth',2,'color',nnred);

  % TOP NEURON
  plot([x2 x2 x3],[y1-sz*2 y1 y1],'linewidth',2,'color',nnred);
  nndsicon('sum',x2,y1,sz)
  nndsicon('logsig',x3,y1,sz)
  var1 = nndtext(x2-wx,y2+wy,'W1(1,1)');
  set(var1,'color',[1 1 1])
  nndtext(x2+2,y1-sz*2-13,'1');
  var2 = nndtext(x2+10,y1-sz*2,'b1(1)','left');

  % BOTTOM NEURON
  plot([x2 x2 x3],[y3-sz*2 y3 y3],'linewidth',2,'color',nnred);
  nndsicon('sum',x2,y3,sz)
  nndsicon('logsig',x3,y3,sz)
  nndtext(x2-wx,y2-wy,'W1(2,1)');
  nndtext(x2+2,y3-sz*2-13,'1');
  var3 = nndtext(x2+10,y3-sz*2,'b1(2)','left');

  % OUTPUT NEURON
  plot([x3+sz x4-10 x3+sz],[y1 y2 y3],'linewidth',2,'color',nnred);
  plot([x4 x4 x6],[y2-sz*2 y2 y2],'linewidth',2,'color',nnred);
  plot([x6-10 x6 x6-10],[y2-7 y2 y2+7],'linewidth',2,'color',nnred);
  nndsicon('sum',x4,y2,sz)
  nndsicon('logsig',x5,y2,sz);
  var4 = nndtext(x3+wx,y2+wy,'W2(1,1)');
  set(var4,'color',[1 1 1])
  nndtext(x3+wx,y2-wy,'W2(1,2)');
  nndtext(x4+2,y2-sz*2-13,'1');
  nndtext(x4+10,y2-sz*2,'b2','left');
  nndtext(x5+sz+5,y2+8,'a2','left');

  % LEARNING RATE SCROLL BAR
  lr = 3.5;
  lr_x = 20;
  lr_y = 120;
  text(lr_x,lr_y,'Learning Rate:',...
    'color',nndkblue,...
    'fontw','bold',...
    'fontsize',12,...
    'horizontalalignment','left')
  lr_text = text(lr_x+160,lr_y,num2str(lr),...
    'color',nndkblue,...
    'fontw','bold',...
    'fontsize',12,...
    'horizontalalignment','right');
  text(lr_x,lr_y-38,'0.0',...
    'color',nndkblue,...
    'fontw','bold',...
    'fontsize',12,...
    'horizontalalignment','left')
  text(lr_x+160,lr_y-38,'20.0',...
    'color',nndkblue,...
    'fontw','bold',...
    'fontsize',12,...
    'horizontalalignment','right');
  lr_bar = uicontrol(...
    'units','points',...
    'position',[lr_x lr_y-25 160 16],...
    'style','slider',...
    'backg',nnltgray,...
    'callback',[me '(''lr'')'],...
    'min',0,...
    'max',20,...
    'value',lr);

  % RADIO BUTTONS
  option = 1;
  radio1 = uicontrol(...
    'units','points',...
    'position',[20 180 130 20],...
    'style','radio',...
    'string','W1(1,1), W2(1,1)',...
    'back',nnltgray,...
    'callback',[me '(''radio'',1)'],...
    'value',1);
  radio2 = uicontrol(...
    'units','points',...
    'position',[155 180 115 20],...
    'style','radio',...
    'string','W1(1,1), b1(1)',...
    'back',nnltgray,...
    'callback',[me '(''radio'',2)']);
  radio3 = uicontrol(...
    'units','points',...
    'position',[270 180 105 20],...
    'style','radio',...
    'string','b1(1), b1(2)',...
    'back',nnltgray,...
    'callback',[me '(''radio'',3)']);

  % ERROR SURFACE
  load nndbp1

  cont_axis = nnsfo('a2','',v1,v2,'');
  set(cont_axis, ...
    'units','points',...
    'position',[230 40 130 130],...
    'color',nnltyell,...
    'xlim',range1,...
    'ylim',range2,...
    'colororder',[0 0 0])
  [dummy,cont_h] = contour(x2,y2,E2,levels);
  set(cont_h,'erasemode','none');
  plot3(range1([1 2 2 1 1]),range2([1 1 2 2 1]),1000*ones(1,5),...
    'color',nndkblue);
  cont_h2 = plot(optx,opty,'+','color',nnred);
  cont_h = [cont_h; cont_h2];
  view(2)

  % BUTTONS
  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
  dummy = 0;
  cont_ptr = uicontrol('visible','off','userdata',cont_h);
  option_ptr = uicontrol('visible','off','userdata',option);
  path_ptr = uicontrol('visible','off','userdata',[]);

  % SAVE WINDOW DATA AND LOCK
  H = [fig_axis desc_text lr_bar lr_text cont_axis cont_ptr ...
       var1 var2 var3 var4 radio1 radio2 radio3 option_ptr path_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,...
    'Use the radio buttons',...
    'to select the network',...
    'parameters to train',...
    'with backpropagation.',...
    '',...
    'The corresponding',...
    'contour plot is',...
    'shown below.',...
    '',...
    'Click in the contour',...
    'graph to start the',...
    'steepest descent',...
    'learning algorithm.',...
    'You can reset the',...
    'learning rate',...
    'using the slider.')
    
%==================================================================
% Respond to radio buttons.
%
% ME('radio',i)
%==================================================================

elseif strcmp(cmd,'radio') && (fig) && (nargin == 2)

  % GET DATA
  option = get(option_ptr,'userdata');
  
  % ALTER TRAINABLE PARAMETERS
  if (arg1 ~= option)

    % HIGHLIGHT NEW RADIO BUTTON
    set(radios(option),'value',0)
    set(radios(arg1),'value',1)
    option = arg1;

    % CLEAR AXES
    delete(get(cont_axis,'children'))

    % CONSTANTS
    W1 = [10; 10];
    b1 = [-5;5];
    W2 = [1 1];
    b2 = [-1];
    P = -2:0.1:2;
    [R,Q] = size(P);
    %A1 = logsig(W1*P+b1*ones(1,Q));
    %T = logsig(W2*A1+b2*ones(1,Q));
    A1 = nndlogsig(W1*P+b1*ones(1,Q));
    T = nndlogsig(W2*A1+b2*ones(1,Q));

    % ERROR SURFACE & VARIABLE NAMES
    if option == 1
      load nndbp1
      set(variables([1 4]),'color',[1 1 1])
      set(variables([2 3]),'color',nndkblue)
    elseif option == 2
      load nndbp2
      set(variables([1 2]),'color',[1 1 1])
      set(variables([3 4]),'color',nndkblue)
    else
      load nndbp3
      set(variables([2 3]),'color',[1 1 1])
      set(variables([1 4]),'color',nndkblue)
    end

    set(fig,'nextplot','add')
    axes(cont_axis)
    set(get(cont_axis,'xlabel'),'string',v1)
    set(get(cont_axis,'ylabel'),'string',v2)
    set(cont_axis,'xlim',range1,'ylim',range2)
    [dummy,cont_h] = contour(x2,y2,E2,levels);
    set(cont_h,'erasemode','none');
    plot3(range1([1 2 2 1 1]),range2([1 1 2 2 1]),1000*ones(1,5),...
      'color',nndkblue);
    cont_h2 = plot(optx,opty,'+','color',nnred);
    cont_h = [cont_h; cont_h2];
    view(2)

    % STORE DATA
    set(cont_ptr,'userdata',cont_h);
    set(path_ptr,'userdata',[]);
    set(option_ptr,'userdata',option);
  end

%==================================================================
% Respond to learning rate slider.
%
% ME('lr')
%==================================================================

elseif strcmp(cmd,'lr')
  
  set(lr_bar,'enable','off');
  lr = get(lr_bar,'value');
  set(lr_text,'string',sprintf('%4.1f',round(lr*10)*0.1))

end
%==================================================================
% Respond to mouse down.
%
% ME('down')
%==================================================================

if (strcmp(cmd,'down') && (fig) && (nargin == 1)) || strcmp(cmd,'lr')

  if strcmp(cmd,'lr')
    temp=get(path_ptr,'userdata');
    if ~isnan(temp)
      temp2=get(temp(1),'xdata');
      x=temp2(1);
      temp2=get(temp(1),'ydata');
      y=temp2(1);
    else
      x = NaN;
      y = NaN;
    end
  else
    pt = get(cont_axis,'currentpoint');

    x = pt(1);
    y = pt(3);
  end
  xlim = get(cont_axis,'xlim');
  ylim = get(cont_axis,'ylim');

  if (x > xlim(1) && x < xlim(2) && y > ylim(1) && y < ylim(2))

    % GET DATA
    option = get(option_ptr,'userdata');
    path = get(path_ptr,'userdata');
    cont_h = get(cont_ptr,'userdata');

    % REMOVE PREVIOUS PATH
    set(fig,'nextplot','add')
    delete(path);

    % INITIAL VALUES
    W1 = [10; 10];
    b1 = [-5;5];
    W2 = [1 1];
    b2 = [-1];
    P = -2:0.1:2;
    [R,Q] = size(P);
    %A1 = logsig(W1*P+b1*ones(1,Q));
    %T = logsig(W2*A1+b2*ones(1,Q));
    A1 = nndlogsig(W1*P+b1*ones(1,Q));
    T = nndlogsig(W2*A1+b2*ones(1,Q));

    % PLOT START POINT
    dkblue = nndkblue;
    red = nnred;
    axes(cont_axis);
    path = [...
      plot(x,y,'o','color',dkblue,'markersize',8,'erasemode','none');
      plot(x,y,'o','color',[1 1 1],'markersize',10,'erasemode','none');
      plot(x,y,'o','color',dkblue,'markersize',12,'erasemode','none')];
    drawnow;

    % PLOT PATH
    set(fig,'pointer','watch')

    % INITIALIZE TRAINING
    if option == 1
      ep = 1000;
      W1(1,1) = x;
      W2(1,1) = y;
    elseif option == 2
      ep = 300;
      W1(1,1) = x;
      b1(1) = y;
    else
      ep = 60;
      b1(1) = x;
      b1(2) = y;
    end
    lr = get(lr_bar,'value');

    %A1 = logsig(W1*P+b1*ones(1,Q));
    %A2 = logsig(W2*A1+b2*ones(1,Q));
    A1 = nndlogsig(W1*P+b1*ones(1,Q));
    A2 = nndlogsig(W2*A1+b2*ones(1,Q));
    E = T-A2;

    xx = [x zeros(1,ep)];
    yy = [y zeros(1,ep)];
    ee = [sum(sum(E.*E)) zeros(1,ep)]; %[sumsqr(E) zeros(1,ep)];

    % TRAINING #1
    if option == 1
      for i=2:(ep+1)
        SSE = sum(sum(E.*E)); %sumsqr(E);
        D2 = A2.*(1-A2).*E;
        D1 = A1.*(1-A1).*(W2'*D2);
        dW1 = D1*P'*lr;
        db1 = D1*ones(Q,1)*lr;
        dW2 = D2*A1'*lr;
        db2 = D2*ones(Q,1)*lr;
      
        newx = W1(1,1) + dW1(1,1); W1(1,1) = newx; xx(i) = newx;
        newy = W2(1,1) + dW2(1,1); W2(1,1) = newy; yy(i) = newy;

        %A1 = logsig(W1*P+b1*ones(1,Q));
        %A2 = logsig(W2*A1+b2*ones(1,Q));
        A1 = nndlogsig(W1*P+b1*ones(1,Q));
        A2 = nndlogsig(W2*A1+b2*ones(1,Q));
        E = T-A2;
        ee(i) = sum(sum(E.*E)); %sumsqr(E);
      end

    % TRAINING #2
    elseif option == 2
      for i=2:(ep+1)
        SSE = sum(sum(E.*E)); %sumsqr(E);
        D2 = A2.*(1-A2).*E;
        D1 = A1.*(1-A1).*(W2'*D2);
        dW1 = D1*P'*lr;
        db1 = D1*ones(Q,1)*lr;
        dW2 = D2*A1'*lr;
        db2 = D2*ones(Q,1)*lr;
      
        newx = W1(1,1) + dW1(1,1); W1(1,1) = newx; xx(i) = newx;
        newy = b1(1)   + db1(1);   b1(1) = newy;   yy(i) = newy;

        %A1 = logsig(W1*P+b1*ones(1,Q));
        %A2 = logsig(W2*A1+b2*ones(1,Q));
        A1 = nndlogsig(W1*P+b1*ones(1,Q));
        A2 = nndlogsig(W2*A1+b2*ones(1,Q));
        E = T-A2;
        ee(i) = sum(sum(E.*E)); %sumsqr(E);
      end

   % TRAINING #3
   else
      for i=2:(ep+1)
        SSE = sum(sum(E.*E)); %sumsqr(E);
        D2 = A2.*(1-A2).*E;
        D1 = A1.*(1-A1).*(W2'*D2);
        dW1 = D1*P'*lr;
        db1 = D1*ones(Q,1)*lr;
        dW2 = D2*A1'*lr;
        db2 = D2*ones(Q,1)*lr;
      
        newx = b1(1) + db1(1);   b1(1) = newx;   xx(i) = newx;
        newy = b1(2) + db1(2);   b1(2) = newy;   yy(i) = newy;

        %A1 = logsig(W1*P+b1*ones(1,Q));
        %A2 = logsig(W2*A1+b2*ones(1,Q));
        A1 = nndlogsig(W1*P+b1*ones(1,Q));
        A2 = nndlogsig(W2*A1+b2*ones(1,Q));
        E = T-A2;
        ee(i) = sum(sum(E.*E)); %sumsqr(E);
      end
    end

    % CONTOUR PLOT
    path = [path; plot(xx,yy,'color',nnred); plot(xx,yy,'o','color',nnred,'markersize',6)];
    set(fig,'nextplot','new')
    
    % SAVE DATA
    set(path_ptr,'userdata',path);
    set(fig,'pointer','arrow')

  end
  set(lr_bar,'enable','on')
end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩中文字幕一区二区三区| 1000精品久久久久久久久| 1024成人网| 精品国精品国产尤物美女| 午夜精品aaa| 欧美色偷偷大香| 亚洲精品国产视频| 成人精品在线视频观看| 久久久噜噜噜久久人人看 | 亚洲欧美一区二区不卡| 日韩欧美区一区二| 蓝色福利精品导航| 制服丝袜亚洲播放| 蜜桃传媒麻豆第一区在线观看| 日韩一区二区精品在线观看| 国产福利91精品一区二区三区| 日本一区二区电影| 91亚洲永久精品| 亚洲精品视频免费看| 国产三级一区二区| 欧美亚洲自拍偷拍| 国产专区综合网| 综合久久久久综合| 欧美一区二区黄| 国产a级毛片一区| 亚洲主播在线观看| 精品美女被调教视频大全网站| 99re热视频精品| 天天影视涩香欲综合网| 亚洲一区二区视频在线| 亚洲女性喷水在线观看一区| 综合电影一区二区三区| 中文字幕一区二区三区精华液 | 午夜电影网亚洲视频| 亚洲高清久久久| 国产女同性恋一区二区| 欧美揉bbbbb揉bbbbb| 色拍拍在线精品视频8848| 奇米888四色在线精品| 欧美激情综合在线| 国产精品三级电影| 日韩精品中文字幕一区二区三区| 日韩视频一区二区三区| 91精品久久久久久久99蜜桃| 欧美一区二区网站| 日韩欧美第一区| 久久影院电视剧免费观看| 欧美伊人久久大香线蕉综合69| 欧美自拍丝袜亚洲| 成人黄动漫网站免费app| 精品夜夜嗨av一区二区三区| 亚洲一区二区不卡免费| 视频一区二区三区入口| 亚洲欧洲精品一区二区三区 | 欧美欧美欧美欧美首页| 成人性生交大片免费看在线播放| 成人蜜臀av电影| 色噜噜夜夜夜综合网| 不卡视频免费播放| 色久综合一二码| 欧美高清激情brazzers| 色婷婷狠狠综合| 欧美日韩三级一区二区| 日韩精品影音先锋| **欧美大码日韩| 亚洲国产日韩综合久久精品| 日韩av在线发布| 日韩精品免费专区| 韩国毛片一区二区三区| 99精品视频在线观看免费| 欧美日韩视频在线一区二区| 日韩欧美视频一区| 国产精品视频一区二区三区不卡 | 久久电影国产免费久久电影| 丰满白嫩尤物一区二区| 欧美在线观看一区二区| 精品久久国产字幕高潮| 亚洲丝袜制服诱惑| 欧美96一区二区免费视频| 99视频一区二区三区| 成人午夜视频福利| 精品视频123区在线观看| 精品成人一区二区三区四区| 亚洲免费观看高清完整版在线观看| 日韩不卡免费视频| 不卡一卡二卡三乱码免费网站| 欧美久久久久久久久久| 国产精品麻豆一区二区| 热久久免费视频| www.av亚洲| 精品久久久久一区| 亚洲成人激情社区| 日本不卡不码高清免费观看| 成人app在线| 久久综合九色综合97婷婷女人| 亚洲影院理伦片| 成人h精品动漫一区二区三区| 911国产精品| 亚洲欧美一区二区在线观看| 美女www一区二区| 欧美在线观看你懂的| 欧美国产日韩a欧美在线观看| 免费看欧美美女黄的网站| 91浏览器入口在线观看| 中文字幕乱码亚洲精品一区| 美女性感视频久久| 欧美人与z0zoxxxx视频| 一区二区三区美女| 日本中文字幕一区二区视频 | 93久久精品日日躁夜夜躁欧美| 精品久久国产字幕高潮| 日韩激情在线观看| 日本高清不卡在线观看| 国产精品伦一区| 国产制服丝袜一区| 欧美成人性战久久| 日本系列欧美系列| 欧美日韩1234| 亚洲国产日韩a在线播放| 99久久国产综合精品女不卡| 久久久国产精华| 久久97超碰色| 日韩一二三区视频| 日韩**一区毛片| 欧美一区二区视频观看视频| 亚洲国产欧美在线| 欧美日韩国产一二三| 一区二区在线看| 日本道免费精品一区二区三区| 国产精品乱码妇女bbbb| 亚洲日本一区二区三区| 波波电影院一区二区三区| 国产免费成人在线视频| 国产成人高清在线| 国产精品麻豆一区二区 | 欧美三片在线视频观看| 亚洲高清视频的网址| 欧美日韩在线亚洲一区蜜芽| 亚洲曰韩产成在线| 欧美日韩大陆一区二区| 天天综合日日夜夜精品| 日韩欧美国产电影| 久久精品国产澳门| 久久众筹精品私拍模特| 成人一级片网址| 亚洲日本护士毛茸茸| 日本高清不卡一区| 日本中文字幕一区二区视频 | 国产精品视频一区二区三区不卡| aaa欧美大片| 亚洲最大成人综合| 6080午夜不卡| 久久成人18免费观看| 国产婷婷精品av在线| 99国内精品久久| 亚洲成人免费看| 精品国产伦一区二区三区观看体验| 国产在线观看免费一区| 欧美老女人在线| 久久精品国产77777蜜臀| 久久蜜臀精品av| 色综合中文综合网| 亚洲人精品一区| 91麻豆精品国产91久久久使用方法 | 久久老女人爱爱| www.视频一区| 日日摸夜夜添夜夜添精品视频 | 成人一区二区三区视频| 亚洲精品中文字幕乱码三区 | 亚洲综合区在线| 欧美一区永久视频免费观看| 国产黄色成人av| 一区二区三区精品视频| 亚洲精品一区二区三区精华液| 成人美女在线观看| 日本中文字幕一区| 国产精品国产精品国产专区不蜜| 欧美美女直播网站| 国产成人午夜99999| 亚洲综合网站在线观看| 久久久美女毛片| 欧美日韩一区二区三区高清| 国产精品1区2区3区| 2019国产精品| 在线免费不卡电影| 国产精品一区二区在线播放 | 亚洲国产电影在线观看| 欧美性xxxxx极品少妇| 国产一区二区三区香蕉| 亚洲一区二区高清| 国产精品家庭影院| 日韩午夜三级在线| 欧美在线色视频| 成人精品电影在线观看| 日本午夜精品视频在线观看 | 一区二区三区四区不卡在线| 2020国产精品久久精品美国| 欧美吻胸吃奶大尺度电影| 成人理论电影网| 国产一区二区精品久久|