ADALINE for Pattern Classification

Similar documents
The perceptron learning algorithm is one of the first procedures proposed for learning in neural network models and is mostly credited to Rosenblatt.

Simple Neural Nets For Pattern Classification

Fixed Weight Competitive Nets: Hamming Net

Iterative Autoassociative Net: Bidirectional Associative Memory

PMR5406 Redes Neurais e Lógica Fuzzy Aula 3 Single Layer Percetron

Chapter 2 Single Layer Feedforward Networks

Unit III. A Survey of Neural Network Model

Single layer NN. Neuron Model

Artificial Neural Network : Training

2- AUTOASSOCIATIVE NET - The feedforward autoassociative net considered in this section is a special case of the heteroassociative net.

NN V: The generalized delta learning rule

In the Name of God. Lecture 11: Single Layer Perceptrons

Artifical Neural Networks

Supervised (BPL) verses Hybrid (RBF) Learning. By: Shahed Shahir

Neural Networks Lecture 2:Single Layer Classifiers

Neural Networks and Fuzzy Logic Rajendra Dept.of CSE ASCET

CSC Neural Networks. Perceptron Learning Rule

Neural Networks Based on Competition

CE213 Artificial Intelligence Lecture 14

Artificial Neural Networks

Revision: Neural Network

Chapter ML:VI. VI. Neural Networks. Perceptron Learning Gradient Descent Multilayer Perceptron Radial Basis Functions

Administration. Registration Hw3 is out. Lecture Captioning (Extra-Credit) Scribing lectures. Questions. Due on Thursday 10/6

Linear Discriminant Functions

Lecture 10. Neural networks and optimization. Machine Learning and Data Mining November Nando de Freitas UBC. Nonlinear Supervised Learning

Νεςπο-Ασαυήρ Υπολογιστική Neuro-Fuzzy Computing

Classification with Perceptrons. Reading:

Linear Neural Networks

Feedforward Neural Nets and Backpropagation

Introduction to Artificial Neural Networks

Artificial Neural Networks The Introduction

Neural networks III: The delta learning rule with semilinear activation function

Part 8: Neural Networks

AN INTRODUCTION TO NEURAL NETWORKS. Scott Kuindersma November 12, 2009

Classification goals: Make 1 guess about the label (Top-1 error) Make 5 guesses about the label (Top-5 error) No Bounding Box

CSC321 Lecture 4 The Perceptron Algorithm

CSE 417T: Introduction to Machine Learning. Final Review. Henry Chai 12/4/18

Radial-Basis Function Networks

Pattern Recognition Prof. P. S. Sastry Department of Electronics and Communication Engineering Indian Institute of Science, Bangalore

Intelligent Systems Discriminative Learning, Neural Networks

Linear Discrimination Functions

Multilayer Neural Networks

Multilayer Neural Networks

4. Multilayer Perceptrons

CS 730/730W/830: Intro AI

ARTIFICIAL NEURAL NETWORK PART I HANIEH BORHANAZAD

Pattern Classification

Artificial Neural Networks. Historical description

Lecture 6. Notes on Linear Algebra. Perceptron

Cheng Soon Ong & Christian Walder. Canberra February June 2018

Neural Networks, Computation Graphs. CMSC 470 Marine Carpuat

Lecture 4: Perceptrons and Multilayer Perceptrons

Optimization and Gradient Descent

Radial-Basis Function Networks

Neural Networks. Nethra Sambamoorthi, Ph.D. Jan CRMportals Inc., Nethra Sambamoorthi, Ph.D. Phone:

Vasil Khalidov & Miles Hansard. C.M. Bishop s PRML: Chapter 5; Neural Networks

Backpropagation Neural Net

Artificial Neural Networks Examination, June 2005

Engineering Part IIB: Module 4F10 Statistical Pattern Processing Lecture 5: Single Layer Perceptrons & Estimating Linear Classifiers

Artificial Neural Network

Introduction to Neural Networks

Input layer. Weight matrix [ ] Output layer

Institute for Advanced Management Systems Research Department of Information Technologies Åbo Akademi University

Chapter 9: The Perceptron

Last updated: Oct 22, 2012 LINEAR CLASSIFIERS. J. Elder CSE 4404/5327 Introduction to Machine Learning and Pattern Recognition

SPSS, University of Texas at Arlington. Topics in Machine Learning-EE 5359 Neural Networks

Unit 8: Introduction to neural networks. Perceptrons

Introduction to Natural Computation. Lecture 9. Multilayer Perceptrons and Backpropagation. Peter Lewis

Back-Propagation Algorithm. Perceptron Gradient Descent Multilayered neural network Back-Propagation More on Back-Propagation Examples

Notes on Back Propagation in 4 Lines

Linear models: the perceptron and closest centroid algorithms. D = {(x i,y i )} n i=1. x i 2 R d 9/3/13. Preliminaries. Chapter 1, 7.

Lab 5: 16 th April Exercises on Neural Networks

AI Programming CS F-20 Neural Networks

ANN Control of Non-Linear and Unstable System and its Implementation on Inverted Pendulum

Neuro-Fuzzy Comp. Ch. 4 March 24, R p

The Perceptron. Volker Tresp Summer 2014

EEE 241: Linear Systems

3.4 Linear Least-Squares Filter

COGS Q250 Fall Homework 7: Learning in Neural Networks Due: 9:00am, Friday 2nd November.

On the convergence speed of artificial neural networks in the solving of linear systems

Computational Intelligence Lecture 3: Simple Neural Networks for Pattern Classification

CSC242: Intro to AI. Lecture 21

Numerical Learning Algorithms

Hopfield Neural Network

Master Recherche IAC TC2: Apprentissage Statistique & Optimisation

CSE 417T: Introduction to Machine Learning. Lecture 11: Review. Henry Chai 10/02/18

Artificial Neural Networks

Practicals 5 : Perceptron

Neural Network Training

Vote. Vote on timing for night section: Option 1 (what we have now) Option 2. Lecture, 6:10-7:50 25 minute dinner break Tutorial, 8:15-9

Artificial Neural Networks" and Nonparametric Methods" CMPSCI 383 Nov 17, 2011!

Neural Networks. Fundamentals Framework for distributed processing Network topologies Training of ANN s Notation Perceptron Back Propagation

Neural Networks Lecture 4: Radial Bases Function Networks

Lecture 5 Neural models for NLP

1. A discrete-time recurrent network is described by the following equation: y(n + 1) = A y(n) + B x(n)

Serious limitations of (single-layer) perceptrons: Cannot learn non-linearly separable tasks. Cannot approximate (learn) non-linear functions

Artificial Neural Networks Examination, June 2004

Neural Networks. Fundamentals of Neural Networks : Architectures, Algorithms and Applications. L, Fausett, 1994

Data Mining Part 5. Prediction

Neural Networks DWML, /25

Transcription:

POLYTECHNIC UNIVERSITY Department of Computer and Information Science ADALINE for Pattern Classification K. Ming Leung Abstract: A supervised learning algorithm known as the Widrow-Hoff rule, or the Delta rule, or the LMS rule, is introduced to train neuron networks to classify patterns into two or more categories. Directory Table of Contents Begin Article Copyright c 2008 mleung@poly.edu Last Revision Date: February 26, 2008

Table of Contents 1. Simple ADELINE for Pattern Classification 1.1. Multi-Parameter Minimization 2. Delta Rule 3. Exact Optimal Choice of Weights and Bias 4. Application: Bipolar Logic Function: AND 5. NN with multiple Output Neurons 6. An Example

Section 1: Simple ADELINE for Pattern Classification 3 1. Simple ADELINE for Pattern Classification Although the Perceptron learning rule always converges, in fact in a finite number of steps, to a set of weights and biases, provided that such a set exists, the set obtained is often not the best in terms of robustness. We will discuss here the ADALINE, which stands for Adaptive Linear Neuron, and a learning rule which is capable, at least in principle, of finding such a robust set of weights and biases. The architecture for the NN for the ADALINE is basically the same as the Perceptron, and similarly the ADALINE is capable of performing pattern classifications into two or more categories. Bipolar neurons are also used. The ADALINE differs from the Perceptron in the way the NNs are trained, and in the form of the transfer function used for the output neurons during training. For the ADALINE, the transfer function is taken to be the identity function during training. However, after training, the transfer function is taken to be the bipolar Heaviside step function when the NN is used to classify any input patterns. Thus the transfer function is f(y in ) = y in, during training,

Section 1: Simple ADELINE for Pattern Classification 4 { +1, if y f(y in ) = in 0 after training. 1, if y in < 0 We will first consider the case of classification into 2 categories only, and thus the NN has only a single output neuron. Extension to the case of multiple categories is treated in the next section. The total input received by the output neuron is given by N y in = b + x i w i. i=1 Just like Hebb s rule and the Perceptron learning rule, the Delta rule is also a supervised learning rule. Thus we assume that we are given a training set: {s (q), t (q) }, q = 1, 2,..., Q. where s (q) is a training vector, and t (q) is its corresponding targeted output value. Also like Hebb s rule and the Perceptron rule, one cycles through the training set, presenting the training vectors one at a time to the

Section 1: Simple ADELINE for Pattern Classification 5 NN. For the Delta rule, the weights and bias are updated so as to minimize the square of the difference between the net output and the target value for the particular training vector presented at that step. Notice that this procedure is not exactly the same as minimizing the overall error between the NN outputs and their corresponding target values for all the training vectors. Doing so would require the solution to a large scale optimization problem involving N weight components and 1 bias. 1.1. Multi-Parameter Minimization To better understand the updating procedure for the weights and bias in the Delta rule, we need to digress and consider the topic of multiparameter minimization. We assume that E(w) is a scalar function of a vector argument, w. We want to find the point w R n at which E takes on its minimum value. Suppose we want to find the minimum value iteratively starting with w(0). The iteration amounts to w(k + 1) = w(k) + w(k), k = 0, 1,....

Section 1: Simple ADELINE for Pattern Classification 6 The question is how should the changes in the weight vector be chosen in order that we end up with a lower value for E: E(w(k + 1)) < E(w(k)). For sufficiently small w(k), we obtain from Taylor s theorem E(w(k + 1)) = E(w(k) + w(k)) E(w(k)) + g(k) w(k), where g(k) = E(w) w=w(k) is the gradient of E(w) at w(k). It is clear that E(w(k + 1)) < E(w(k)) if g(k) w(k) < 0. The largest decrease in the value of E(w) occurs in the direction w(k) = αg(k), if α is sufficiently small and positive. This direction is called the steepest descent direction, and α controls the size of the step and is called the learning rate. Thus starting from w(0)), the idea is to find a minimum of the function E(w) iteratively by making successive steps along the local gradient direction, according to w(k + 1) = w(k) αg(k), k = 0, 1,.... This method of finding the minimum is known as the steepest descent method.

Section 2: Delta Rule 7 This is a greedy method which may lead to convergence to a local but not a global minimum of E. 2. Delta Rule Suppose at the k-th step in the training process, the current weight vector and bias are given by w(k) and b(k), respectively, and the q-th training vectors, s(k) = s (q), is presented to the NN. The total input received by the output neuron is N y in = b(k) + s i (k)w i (k). i=1 Since the transfer function is given by the identity function during training, the output of the NN is N y(k) = y in = b(k) + s i (k)w i (k). i=1 However the target output is t(k) = t (q), and so if y(k) t(k) then there is an error given by y(k) t(k). This error can be positive or

Section 2: Delta Rule 8 negative. The Delta rule aims at finding the weights and bias so as to minimize the square of this error ( 2 N E(w(k)) = (y(k) t(k)) 2 = b(k) + s i (k)w i (k) t(k)). We can absorb the bias term by introducing an extra input neuron, X 0, so that its activation (signal) is always fixed at 1 and its weight is the bias. Then the square of the error in the k-th step is ( N 2 E(w(k)) = s i (k)w i (k) t(k)). The gradient of this function, g(k), in a space of dimension N + 1 (N weights and 1 bias) is ( N ) g j (k) = wj(k)e(w(k)) = 2 s i (k)w i (k) t(k) s j (k). i=1

Section 2: Delta Rule 9 Using the steepest descent method, we have ( N ) w(k + 1) = w(k) 2α s i (k)w i (k) t(k) s(k). The i = 1, 2,..., N components of this equation gives the updating rule for the weights. The zeroth component of this equation gives the updating rule for the bias ( N ) b(k + 1) = b(k) 2α s i (k)w i (k) t(k). Notice that in the textbook by Fausett, the factors of 2 are missing from these two updating formulas. We can also say that the learning rate there is twice the value here. We will now summarize the Delta rule. To save space, we use vector notation, where vectors are denoted by boldface quantities.

Section 2: Delta Rule 10 The Delta rule is: 1. Set learning rate α and initialize weights and bias. 2. Repeat the following steps, while cycling through the training set q = 1, 2,..., Q, until changes in the weights and bias are insignificant. (a) Set activations for input vector x = s (q). (b) Compute total input for the output neuron: y in = x w + b (c) Set y = y in. (d) Update the weights and bias w new = w old 2α(y t (q) )x, b new = b old 2α(y t (q) ). Notice that for the Delta rule, unlike the Perceptron rule, training does not stop even after all the training vectors have been correctly classified. The algorithm continuously attempts to produce more ro-

Section 2: Delta Rule 11 bust sets of weights and bias. Iteration is stopped only when changes in the weights and bias are smaller than a preset tolerance level. In general, there is no proof that the Delta rule will always lead to convergence, or to a set of weights and bias that enable the NN to correctly classify all the training vectors. One also needs to experiment with the size of the learning rate. Too small a value may require too many iterations. Too large a value may lead to non-convergence. Also because the identity function is used as the transfer function during training, the error at each step of the training process may never become small, even though an acceptable set of weights and bias may have already been found. In that case the weights will continually change from one iteration to the next. The amount of changes are of course proportional to α. Therefore in some cases, one may want to gradually decrease α towards zero during iteration, especially when one is close to obtaining the best set of weights and bias. Of course there are many ways in which α can be made to approach zero.

Section 3: Exact Optimal Choice of Weights and Bias 12 3. Exact Optimal Choice of Weights and Bias Actually one can find, at least in principle, a set of weights and bias that will perform best for a given training set. To see this, it is better to absorb the bias to simplify the expressions. What this problem intends to accomplish mathematically is to find a vector w that minimizes the overall squares of the errors (the least mean squares, or LMS) ( F (w) = 1 Q (y t (q) ) 2 = 1 Q N ) 2 s (q) i w i t (q). Q Q q=1 Since F (w) is quadratic in the weight components, the solution can be readily obtained, at least formally. To obtain the solution, we take the partial derivatives of F (w), set them to zero, and solve the resulting set of equations. Since F (w) is quadratic in the weight components, its partial derivatives are linear, and the resulting equation for the weight components are linear and can therefore be solved. Taking the partial derivative of F (w) with respect to the j-th q=1

Section 3: Exact Optimal Choice of Weights and Bias 13 component of the weight vector gives wj F (w) = 2 Q N (y t (q) ) wj s (q) i w i = 2 Q (y t (q) )s (q) j Q Q q=1 q=1 ( = 2 Q N ) ( N ) s (q) i w i t (q) s (q) j = 2 w i C ij v j, Q q=1 where we have defined the correlation matrix C such that C ij = 1 Q s (q) i s (q) j Q q=1 and a vector v having components v j = 1 Q t (q) s (q) j. Q q=1 Setting the partial derivatives to zero gives the set of linear equations (written in matrix notation): wc = v.

Section 4: Application: Bipolar Logic Function: AND 14 Notice that the correlation matrix C and the vector v can be easily computed from the given training set. Assuming that the correlation matrix is nonsingular, the solution is therefore given by w = vc 1, where C 1 is the inverse matrix for C. Notice that the correlation matrix is symmetric and has dimension (N + 1) (N + 1). Although the exact solution is formally available, computing it this way requires the computation of the inverse of matrix C or solving a system of linear equations. The computational complexity involved is of O(N + 1) 3. For most practical problems, N is so large that computing the solution this way is really not feasible. 4. Application: Bipolar Logic Function: AND We use the Delta rule here to train the same NN (the bipolar logic function: AND) that we have treated before using different training rules. The training set is given by the following table:

Section 4: Application: Bipolar Logic Function: AND 15 q s (q) t (q) 1 [1 1] 1 2 [1-1] -1 3 [-1 1] -1 4 [-1-1] -1 We assume that the weights and bias are initially zero, and apply the Delta rule to train the NN. We find that for a learning rate α larger than about 0.3, there is no convergence as the weight components increase without bound. For α less than 0.3 but larger than 0.16, the weights converge but to values that fail to correctly classify all the training vectors. The weights converge to values that correctly classify all the training vectors if α is less than about 0.16. They become closer and closer to the most robust set of weights and bias when α is below 0.05. We also consider here the exact formal solution given in the last section. We will absorb the bias by appending a 1 in the leading position of each of the training vectors so that the training set is

Section 4: Application: Bipolar Logic Function: AND 16 q s (q) t (q) 1 [1 1 1] 1 2 [1 1-1] -1 3 [1-1 1] -1 4 [1-1 -1] -1

Section 4: Application: Bipolar Logic Function: AND 17 We first compute the correlation matrix C = 1 4 s (q)t s (q) 4 q=1 = 4( 1 1 1 [ 1 1 1 ] 1 + 1 1 1 + 1 1 1 [ 1 1 1 ] + 1 1 1 [ 1 1 1 ] [ 1 1 1 ] ) 1 0 0 = 0 1 0 0 0 1 Since C is an identity matrix (the training vectors are as independent of each other as they can be), its inverse is just itself. Then we

Section 4: Application: Bipolar Logic Function: AND 18 compute the vector v v = 1 4 t (q) s (q) 4 q=1 = 1 ( [ ] [ ] 1 1 1 1 1 1 4 [ 1 1 1 ] [ 1 1 1 ] ) 1 2 = [ 1 2 Therefore we have W = vc 1 = [ 1 2 This means that 1 2 b = 1 2, W [ 1 2 ]. 1 2 1 2 and so the best decision is boundary is given by the line x 2 = 1 x 1, which we know before is the correct result. ], 1 2 ].

Section 5: NN with multiple Output Neurons 19 5. NN with multiple Output Neurons We now extend our discussions here to NN with multiple output neurons, and thus are capable of clustering input vectors into more than 2 classes. As before, we need to have M neurons in the output layer. We will absorb the biases as we did before with the Perceptron. Suppose at the k-th step in the training process, the current weight matrix and bias vector are given by W(k) and b(k), respectively, and one of the training vectors s(k) = s (q), for some integer q between 1 and Q, is presented to the NN. The output of neuron Y j is y j (k) = y in,j = N s i (k)w ij (k). However the target is t j (k) = t (q) j, and so the error is y j (k) t j (k). Thus we want to find a set of w mn that minimizes the quantity ( M N 2 E(W(k)) = (y j (k) t j (k)) 2 = s i (k)w ij (k) t j (k)). j=1

w 31 w 32 Section 5: NN with multiple Output Neurons 20 x 1 X 1 w 12 w 11 w 21 Y 1 y 1 x 2 X 2 w 22 Y 2 y 2 w 23 w 13 x n X n w 33 Y m y m Figure 1: A neural network for multi-category classification.

Section 5: NN with multiple Output Neurons 21 We take the gradient of this function with respect to w mn wmn E(W(k)) = M wmn (y j (k) t j (k)) 2 j=1 M = 2 (y j (k) t j (k)) wmn y j. wmn y j = wmn Since N wmn w ij (k) = δ i,m δ j,n, thus wmn y j = wmn N j=1 s i (k)w ij (k) = s i (k)w ij (k) = N s i (k) wmn w ij (k) N s i (k)δ i,m δ j,n = δ j,n s m (k),

Section 5: NN with multiple Output Neurons 22 and so we have wmn E(W(k)) = 2 M (y j (k) t j (k)) δ j,n s m (k) j=1 = 2s m (k) (y n (k) t n (k)). Using the steepest descent method, we have w ij (k + 1) = w ij (k) 2αs i (k) (y j (k) t j (k)). The i = 1, 2,..., N components of this equation gives the updating rule for the weights. The i = 0 component of this equation gives the updating rule for the bias b j (k + 1) = b j (k) 2α (y j (k) t j (k)).

Section 5: NN with multiple Output Neurons 23 The general multiple output neuron Delta rule is: 1. Set learning rate α and initialize weights and bias. 2. Repeat the following steps, while cycling through the training set q = 1, 2,..., Q, until changes in the weights and biases are within tolerance. (a) Set activations for input vector x = s (q). (b) Compute total input for the output neuron: y in = x W + b (c) Set y = y in. (d) Update the weights and biases W new = W old 2αx T (y t (q) ), b new = b old 2α(y t (q) ).

Section 6: An Example 24 6. An Example We will now treat the same example that we have considered before for the Perceptron with multiple output neurons. We use bipolar output neurons and the training set: (class 1) s (1) = [ 1 1 ], s (2) = [ 1 2 ] with t (1) = t (2) = [ 1 1 ] (class 2) s (3) = [ 2 1 ], s (4) = [ 2 0 ] with t (3) = t (4) = [ 1 1 ] (class 3) s (5) = [ 1 2 ], s (6) = [ 2 1 ] with t (5) = t (6) = [ 1 1 ] (class 4) s (7) = [ 1 1 ], s (8) = [ 2 2 ] with t (7) = t (8) = [ 1 1 ] It is clear that N = 2, Q = 8, and the number of classes is 4. The number of output neuron is chosen to be M = 2 so that 2 M = 4 classes can be represented.

Section 6: An Example 25 Our exact calculation of the weights and bias for the case of a single output neuron can be extended to the case of multiple output neurons. One can then obtain the following exact results for the weights and biases: W = [ 91 153 b = [ 2 153 8 153 1 6 1 6 2 3 ] ] Using these exact results, we can easily see how good or bad our iterative solutions are. It should be remarked that the most robust set of weights and biases is determined only by a few training vectors that lie very close to the decision boundaries. However in the Delta rule, all training vectors contribute in some way. Therefore the set of weights and biases obtained by the Delta rule is not necessarily always the most robust. The Delta rule usually gives convergent results if the learning rate is not too large. The resulting set of weights and biases typically leads

Section 6: An Example 26 to correct classification of all the training vectors, provided such a set exist. How close this set is to the best choice depends on the starting weights and biases, the learning rate and the number of iterations. We find that for this example much better convergence can be obtained if the learning rate at step k is set to be α = 1/k.

Section 6: An Example 27 References [1] See Chapter 2 in Laurene Fausett, Fundamentals of Neural Networks - Architectures, Algorithms, and Applications, Prentice Hall, 1994.