Supervised Neural Networks: Multilayer Perceptron

Supervised Neural Networks: Multilayer Perceptron

CVG-UPM Machine Learning & Neural Networks 6.- Supervised Neural Networks: COMPUTER VISION Multilayer Perceptron by Pascual Campoy Grupo de Visión por Computador U.P.M. - DISAM P. Campoy Machine Learning and Neural Networks CVG-UPM topics . Artificial Neural Networks . Perceptron and the MLP structure . The back-propagation learning algorithm . MLP features and drawbacks COMPUTER VISION . The auto-encoder P. Campoy Machine Learning and Neural Networks 1 CVG-UPM Artificial Neural Networks . “A net of simple, adaptable & interconnected units, having parallel processing capability, whose objective is to interact with the environment in a similar way as the natura neural network do” COMPUTER VISION x1 x1 w . 1 y . y1 . zj . wji y.k ∑ xi wkj . w Wn+1 . n . y xn xI K y = σ ( ∑ xi wi - w0) P. Campoy Machine Learning and Neural Networks CVG-UPM The perceptron: working principle x1 w . 1 y . ∑ COMPUTER VISION . W w wn 0 x xn feature space y = σ ( ∑ xi wi - w0) = σ(a) P. Campoy Machine Learning and Neural Networks 2 CVG-UPM The perceptron for classification COMPUTER VISION feature 1 feature XOR function feature 2 P. Campoy Machine Learning and Neural Networks CVG-UPM Multilayer Perceptron (MLP): for classification y z3 z feature 1 2 feature 2 COMPUTER VISION z1 z1 x y 1 z2 x2 z3 P. Campoy Machine Learning and Neural Networks 3 CVG-UPM The multilayer Perceptron: Mathematical issues . Un MLP de dos capas puede representar cualquier función lógica con frontera convexa. Un MLP de tres capas puede representar cualquier función lógica con frontera arbitraria. COMPUTER VISION Un MLP de dos capas puede aproximar cualquier función continua con una precisión arbitraria. P. Campoy Machine Learning and Neural Networks CVG-UPM topics . Artificial Neural Networks . Perceptron and the MLP structure . The back-propagation learning algorithm . MLP features and drawbacks COMPUTER VISION . The auto-encoder P. Campoy Machine Learning and Neural Networks 4 CVG-UPM Building machine learning models: levels Elección del modelo (manual) Determinación de la COMPUTER VISION estructura interna muestras (manual/automático) entrenamiento Error de entrenamiento Ajuste de parámetros modelo (automático) P. Campoy Machine Learning and Neural Networks CVG-UPM Supervised learning Supervised learining concept Working structure x1 y1 . length COMPUTER VISION . y x m ? n area yd1 . + - Feature space . ydm Rn ⇒ Rm function generalitation P. Campoy Machine Learning and Neural Networks 5 CVG-UPM The back-propagation learning algorithm: working principle x 1 . y1 . zj . wji y.k xi wkj COMPUTER VISION . y xI K P. Campoy Machine Learning and Neural Networks CVG-UPM The back-propagation learning algorithm: equations COMPUTER VISION x 1 . y1 . zj . wji y.k xi wkj . xI yK P. Campoy Machine Learning and Neural Networks 6 CVG-UPM Matlab commands: % MLP building >> net = newff(minmax(p.valor),[nL1 noL],{'tansig' 'purelin'},'trainlm'); % MLP training COMPUTER VISION >> [net,tr]=train(net,p.valor,p.salida); % answer >> anst=sim(net,t.valor); >> errortest=mse(t.salida-anst); P. Campoy Machine Learning and Neural Networks CVG-UPMExercise 6.1: MLP for function generalization % training data Ntra=50; xe=linspace(0,2*pi,Ntra); %xe= 2*pi*rand(1,Ntra); for i=1:Ntra yd(i)=sin(xe(i))+normrnd(0,0.1); end % test data COMPUTER VISION Ntest=500; xt=linspace(0,2*pi,numtest); yt_gt=sin(xt); for i=1:Ntest yt(i)=yt_gt(i)+normrnd(0,0.1); end plot(xe,yd,'b.'); hold on; plot(xt,yt,'r-'); P. Campoy Machine Learning and Neural Networks 7 CVG-UPMExercise 6.1: MLP for function generalization Using above mentioned data generation procedure: Plot in the same figure the training set, the output of the MLP for the test set, and the underlying sin function. Evaluate the train error, the test error and the ground truth error. In the following cases: COMPUTER VISION a) Choosing an adequate MLP structure and training set Compare and analyze the results: b) Changing the training parameters: initial values, (# of epochs, optimization algorithm) c) Changing the training data: # of samples order of samples, their representativiness d) Changing the net structure: # of neurons P. Campoy Machine Learning and Neural Networks CVG-UPM Results for exercise 6.1: a) b) changes of training parameters … • 50 training samples • 4 neurons in hidden layer example of usual results results for a bad initial values COMPUTER VISION train error = 0.0104 train error = 0.0534 test error = 0.0105 test error = 0.0407 gt. error = 0.0011 gt. error = 0.0341 P. Campoy Machine Learning and Neural Networks 8 CVG-UPM Results for exercise 6.1: b) … changes of training parameters • 50 training samples • 4 neurons in hidden layer COMPUTER VISION P. Campoy Machine Learning and Neural Networks CVG-UPM Results for exercise 6.1: c) changes in # of training samples … • 4 neurons in hidden layer 5 training samples 10 training samples 15 training samples COMPUTER VISION 30 training samples 50 training samples 100 training samples P. Campoy Machine Learning and Neural Networks 9 CVG-UPM Results for exercise 6.1: c) … changes in # of training samples • 4 neurons in hidden layer (mean error over 4 tries) COMPUTER VISION P. Campoy Machine Learning and Neural Networks CVG-UPM Results for exercise 6.1: d) changes in # neurons … • 50 training samples 1 neuron in HL 2 neurons in HL 4 neurons in HL COMPUTER VISION 10 neurons in HL 20 neurons in HL 30 neurons in HL P. Campoy Machine Learning and Neural Networks 10 CVG-UPM Results for exercise 6.1: d) … changes in # neurons • 50 training samples (mean error over 4 tries) COMPUTER VISION P. Campoy Machine Learning and Neural Networks CVG-UPM Exercise 6.2: MLP as a classifier -The output is a discriminant function >> load datos_2D_C3_S1.mat COMPUTER VISION P. Campoy Machine Learning and Neural Networks 11 CVG-UPM Exercise 6.2: MLP as a classifier Using the classified data: >> load datos_2D_C3_S1.mat Evaluate the train error and the test error in following cases: a) Choosing an adequate MLP structure, training set and COMPUTER VISION test set. Plot the linear classification limits defined by each perceptron of the intermediate layer. Compare and analyze the results: b) Changing the data set and the test set: c) Changing the net structure (i.e. # of neurons) P. Campoy Machine Learning and Neural Networks CVG-UPM topics . Artificial Neural Networks . Perceptron and the MLP structure . The back-propagation learning algorithm . MLP features and drawbacks COMPUTER VISION . The auto-encoder P. Campoy Machine Learning and Neural Networks 12 CVG-UPM MLP features and drawbacks . Learning by minimizing non-linear functions: - local minima - slow convergence (depending on initial values & minimization algorithm) COMPUTER VISION . Over-learning test error . Extrapolation in non learned zones # of neurons P. Campoy Machine Learning and Neural Networks CVG-UPM topics . Artificial Neural Networks . Perceptron and the MLP structure . The back-propagation learning algorithm . MLP features and drawbacks COMPUTER VISION . The auto-encoder P. Campoy Machine Learning and Neural Networks 13 CVG-UPM Auto-encoder: MLP for dimensionality reduction . The desired output is the same as the input and there is a hiden layer having less neurons than dim(x) x1 . x1 COMPUTER VISION . zj . zj wji xi . wkj . wkj . x . i . xn xn P. Campoy Machine Learning and Neural Networks CVG-UPM Example: auto-encoder for compression COMPUTER VISION original PCA 5 PCA 25 - MLP 5 P. Campoy Machine Learning and Neural Networks 14 CVG-UPM Example: auto-encoder for synthesis COMPUTER VISION 1 D (test 1) 1 D (test 2) 1 D (test 3) escaled P. Campoy Machine Learning and Neural Networks CVG-UPM Auto-encoder: Matlab code % Procesamiento con una MLP para compresioón (salida=entrada) net=newff(minmax(p_entr),[floor((Dim+ndimred)/2),ndimred,floor((Di m+ndimred)/2),Dim],{'tansig' 'purelin' 'tansig' 'purelin'}, 'trainlm'); [net,tr]=train(net,p_entr,p_entr); % Creación de una red mitad de la anterior que comprime los datos netcompr=newff(minmax(p_entr),[floor((Dim+ndimred)/2), COMPUTER VISION ndimred],{'tansig' 'purelin'},'trainlm'); netcompr.IW{1}=net.IW{1}; netcompr.LW{2,1}=net.LW{2,1}; netcompr.b{1}=net.b{1}; netcompr.b{2}=net.b{2}; %creación de una red que descomprime los datos netdescompr=newff(minmax(p_compr),[floor((Dim+ndimred)/2),Dim],{'t ansig' 'purelin'}, 'trainlm'); netdescompr.IW{1}=net.LW{3,2}; netdescompr.LW{2,1}=net.LW{4,3}; netdescompr.b{1}=net.b{3}; netdescompr.b{2}=net.b{4}; P. Campoy Machine Learning and Neural Networks 15.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    15 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us