Machine Learning: Lecture 4: Artificial Neural Networks (Based On Chapter 4 of Mitchell T.., Machine Learning, 1997)
Machine Learning: Lecture 4: Artificial Neural Networks (Based On Chapter 4 of Mitchell T.., Machine Learning, 1997)
1
What is an Artificial Neural
Network?
It is a formalism for representing functions
inspired from biological systems and composed of
parallel computing units which each compute a
simple function.
Some useful computations taking place in
Feedforward Multilayer Neural Networks are:
Summation
Multiplication
weights
Hidden Units
5
Learning in Multilayer Neural
Networks
Learning consists of searching through the space
of all possible matrices of weight values for a
combination of weights that satisfies a database of
positive and negative examples (multi-class as
well as regression problems are possible).
Note that a Neural Network model with a set of
adjustable weights defines a restricted hypothesis
space corresponding to a family of functions. The
size of this hypothesis space can be increased or
decreased by increasing or decreasing the number
of hidden units present in the network.
6
Appropriate Problems for Neural
Network Learning
Instances are represented by many attribute-value pairs
(e.g., the pixels of a picture. ALVINN [Mitchell, p. 84]).
The target function output may be discrete-valued, real-
valued, or a vector of several real- or discrete-valued
attributes.
The training examples may contain errors.
Long training times are acceptable.
Fast evaluation of the learned target function may be
required.
The ability for humans to understand the learned target
function is not important.
7
History of Neural Networks
1943: McCulloch and Pitts proposed a model of a neuron -->
Perceptron (read [Mitchell, section 4.4 ])
1960s: Widrow and Hoff explored Perceptron networks
(which they called “Adelines”) and the delta rule.
1962: Rosenblatt proved the convergence of the perceptron
training rule.
1969: Minsky and Papert showed that the Perceptron cannot
deal with nonlinearly-separable data sets---even those that
represent simple function such as X-OR.
1970-1985: Very little research on Neural Nets
1986: Invention of Backpropagation [Rumelhart and
McClelland, but also Parker and earlier on: Werbos] which
can learn from nonlinearly-separable data sets.
Since 1985: A lot of research in Neural Nets!
8
Backpropagation: Purpose and
Implementation
Purpose: To compute the weights of a
feedforward multilayer neural network
adaptatively, given a set of labeled training
examples.
Method: By minimizing the following cost
function (the sum of square error):
E= 1/2 n=1 k=1[yk-fk(x )]
N K n n 2
= n=1k Vj
N n n
hj = i=0 wjixni
n d
•
n
• j = g’(hj ) k=1
n n K
wkj k
• and all the other quantities already defined
12
Backpropagation: The Algorithm
1. Initialize the weights to small random values; create a random pool of
all the training patterns; set EP, the number of epochs of training to 0.
2. Pick a training pattern from the remaining pool of patterns and
propagate it forward through the network.
3. Compute the deltas, k for the output layer.
4. Compute the deltas, j for the hidden layer by propagating the error
backward.
5. Update all the connections such that
New Old New Old
wji = wji + wji and wkj = wkj + wkj
6. If any pattern remains in the pool, then go back to Step 2. If all the
training patterns in the pool have been used, then set EP = EP+1, and
if EP EPMax, then create a random pool of patterns and go to Step 2.
If EP = EPMax, then stop.
13
Backpropagation: The Momentum
To this point, Backpropagation has the disadvantage
of being too slow if is small and it can oscillate
too widely if is large.
To solve this problem, we can add a momentum to
give each connection some inertia, forcing it to
change in the direction of the downhill “force”.
New Delta Rule:
wpq(t+1) = - E/wpq + wpq(t)
where p and q are any input and hidden, or, hidden and
outpu units; t is a time step or epoch; and is the
momentum parameter which regulates the amount of
inertia of the weights.
14