Artificial Neural Networks
◼The Brain
◼Brain vs. Computers
◼The Perceptron
◼Multilayer networks
◼Some Applications
Artificial Neural Networks
◼ Other terms/names
◼ parallel distributed processing
◼ neural computation
◼ adaptive networks..
◼ History
◼ 1943-McCulloch & Pitts are generally recognised as
the designers of the first neural network
◼ 1949-First learning rule
◼ 1969-Minsky & Papert - perceptron limitation - Death
of ANN
◼ 1980’s - Re-emergence of ANN - multi-layer networks
2
Brain and Machine
• The Brain
– Pattern Recognition
– Association
– Complexity
– Noise Tolerance
• The Machine
– Calculation
– Precision
– Logic
3
The contrast in
architecture
• The Von Neumann architecture
uses a single processing unit;
– Tens of millions of operations per
second
– Absolute arithmetic precision
• The brain uses many slow
unreliable processors acting in
parallel
4
Features of the Brain
• Ten billion (1010) neurons
• On average, several thousand connections
• Hundreds of operations per second
• Die off frequently (never replaced)
• Compensates for problems by massive
parallelism
5
The biological inspiration
• The brain has been extensively studied by
scientists.
• Vast complexity prevents all but rudimentary
understanding.
• Even the behaviour of an individual neuron
is extremely complex
6
The biological inspiration
• Single “neuron” distributed among many
neurons
• Localized parts of the brain are responsible for
certain well-defined functions (e.g. vision,
motion).
7
The Structure of Neurons
8
The Structure of Neurons
A neuron has a cell body, a branching input
structure (the dendrIte) and a branching
output structure (the axOn)
• Axons connect to dendrites via synapses.
• Electro-chemical signals are propagated
from the dendritic input, through the cell
body, and down the axon to other neurons
9
The Structure of Neurons
• A neuron only fires if its input signal
exceeds a certain amount (the threshold)
in a short time period.
• Synapses vary in strength
– Good connections allowing a large signal
– Slight connections allow only a weak signal.
10
The Artificial Neuron
(Perceptron)
ao+1
wj0
a1 wj1
wj2
a2
Sj f(Sj) Xj
wjn
an
11
A Simple Model of a
Neuron (Perceptron)
y1 w1j
y2 w2j
y3
w3j
O
yi wij
• Each neuron has a threshold value
• Each neuron has weighted inputs from other
neurons
• The input signals form a weighted sum
• If the activation level exceeds the threshold, the
neuron “fires”
12
An Artificial Neuron
y1 w1j
y2 w2j
y3
w3j
f(x) O
yi wij
• Each hidden or output neuron has weighted input
connections from each of the units in the preceding layer.
• The unit performs a weighted sum of its inputs, and
subtracts its threshold value, to give its activation level.
• Activation level is passed through a sigmoid activation
function to determine output.
13
Supervised Learning
◼ Training and test data sets
◼ Training set; input & target
14
Perceptron Training
1 if wi xi >t
Output={ i=0
0 otherwise
◼ Linear threshold is used.
◼ W - weight value
◼ t - threshold value
15
Simple network
1 if wixi >t
AND with a Biased input {
output= i=0
0 otherwise
-1
W1 = 1.5
X W2 = 1 t = 0.0
W3 = 1
Y
16
Learning algorithm
While epoch produces an error
Present network with next inputs from
epoch
Error = T – O
If Error <> 0 then
Wj = Wj + LR * Ij * Error
End If
End While
17
Learning algorithm
Epoch : Presentation of the entire training set to the neural
network.
In the case of the AND function an epoch consists
of four sets of inputs being presented to the
network (i.e. [0,0], [0,1], [1,0], [1,1])
Error: The error value is the amount by which the value
output by the network differs from the target
value. For example, if we required the network to
output 0 and it output a 1, then Error = -1
18
Learning algorithm
Target Value, T : When we are training a network we not
only present it with the input but also with a value
that we require the network to produce. For
example, if we present the network with [1,1] for
the AND function the target value will be 1
Output , O : The output value from the neuron
Ij : Inputs being presented to the neuron
Wj : Weight from input neuron (Ij) to the output neuron
LR : The learning rate. This dictates how quickly the
network converges. It is set by a matter of
experimentation. It is typically 0.1
19
Training Perceptrons
For AND
-1 A B Output
W1 = ?
00 0
01 0
x t = 0.0
W2 = ? 10 0
11 1
W3 = ?
y
•What are the weight values?
•Initialize with random weight values
20
Training Perceptrons
For AND
-1 A B Output
W1 = 0.3
00 0
01 0
x t = 0.0
W2 = 0.5 10 0
11 1
W3 =-0.4
y
I 1 I2 I 3 Summation Output
-1 0 0 (-1*0.3) + (0*0.5) + (0*-0.4) = -0.3 0
-1 0 1 (-1*0.3) + (0*0.5) + (1*-0.4) = -0.7 0
-1 1 0 (-1*0.3) + (1*0.5) + (0*-0.4) = 0.2 1
-1 1 1 (-1*0.3) + (1*0.5) + (1*-0.4) = -0.2 0
21
Learning in Neural Networks
◼ Learn values of weights from I/O pairs
◼ Start with random weights
◼ Load training example’s input
◼ Observe computed input
◼ Modify weights to reduce difference
◼ Iterate over all training examples
◼ Terminate when weights stop changing OR
when error is very small
22
Decision boundaries
• In simple cases, divide feature space by
drawing a hyperplane across it.
• Known as a decision boundary.
• Discriminant function: returns different values
on opposite sides. (straight line)
• Problems which can be thus classified are
linearly separable.
23
Decision Surface of a
Perceptron
x2 x2
+
+ + -
+ -
- x1
x1
+ - - +
-
Linearly separable Non-Linearly separable
• Perceptron is able to represent some useful functions
• AND(x1,x2) choose weights w0=-1.5, w1=1, w2=1
• But functions that are not linearly separable (e.g. XOR)
are not representable
24
Linear Separability
X1
A
A
A
B Decision
A Boundary
A B
B
B
A B
A B B
X2
B
25
Hyperplane partitions
• A single Perceptron (i.e. output unit) with
connections from each input can perform,
and learn, a linear separation.
• Perceptrons have a step function activation.
26
Different Non-Linearly
Separable Problems
Types of Exclusive-OR Classes with Most General
Structure
Decision Regions Problem Meshed regions Region Shapes
Single-Layer Half Plane A B
Bounded By B
A
Hyperplane B A
Two-Layer Convex Open A B
Or B
A
Closed Regions B A
Three-Layer Arbitrary
(Complexity A B
B
Limited by No. A
of Nodes) B A
27
Multilayer Perceptron
(MLP)
Output Values
Output Layer
Adjustable
Weights
Input Layer
Input Signals (External Stimuli)
28
Types of Layers
• The input layer.
– Introduces input values into the network.
– No activation function or other processing.
• The hidden layer(s).
– Perform classification of features
– Two hidden layers are sufficient to solve any problem
– Features imply more layers may be better
• The output layer.
– Functionally just like the hidden layers
– Outputs are passed on to the world outside the neural
network.
29
Activation functions
• Transforms neuron’s input into output.
• Features of activation functions:
• A squashing effect is required
• Prevents accelerating growth of activation
levels through the network.
• Simple and easy to calculate
30
Standard activation
functions
• The hard-limiting threshold function
– Corresponds to the biological paradigm
• either fires or not
• Sigmoid functions ('S'-shaped curves)
1
– The logistic function f(x) =
1 + e -ax
– The hyperbolic tangent (symmetrical)
– Both functions have a simple differential
– Only the shape is important
31
Training Algorithms
• Adjust neural network weights to map inputs
to outputs.
• Use a set of sample patterns where the
desired output (given the inputs presented) is
known.
• The purpose is to learn to generalize
– Recognize features which are common to
good and bad exemplars
32
Back-Propagation
• A training procedure which allows multi-layer
feedforward Neural Networks to be trained;
• Can theoretically perform “any” input-output
mapping;
• Can learn to solve linearly inseparable
problems.
33
Applications
• The properties of neural networks define
where they are useful.
– Can learn complex mappings from inputs to
outputs, based solely on samples
– Difficult to analyse: firm predictions about neural
network behaviour difficult;
• Unsuitable for safety-critical applications.
– Require limited understanding from trainer, who
can be guided by heuristics.
34
Engine management
• The behaviour of a car engine is influenced
by a large number of parameters
– temperature at various points
– fuel/air mixture
– lubricant viscosity.
• Major companies have used neural networks
to dynamically tune an engine depending on
current settings.
35
Stock market prediction
• “Technical trading” refers to trading based
solely on known statistical parameters; e.g.
previous price
• Neural networks have been used to attempt
to predict changes in prices.
• Difficult to assess success since companies
using these techniques are reluctant to
disclose information.
36
Neural Network
Problems
• Many Parameters to be set
• Overfitting
• long training times
• ...
37
Parameter setting
• Number of layers
• Number of neurons
• too many neurons, require more training time
• Learning rate
• from experience, value should be small ~0.1
• Momentum term
• ..
38
Over-fitting
• With sufficient nodes can classify any
training set exactly
• May have poor generalisation ability.
• Cross-validation with some patterns
– Typically 30% of training patterns
– Validation set error is checked each epoch
– Stop training if validation error goes up
39
Training time
• How many epochs of training?
– Stop if the error fails to improve (has reached a
minimum)
– Stop if the rate of improvement drops below a
certain level
– Stop if the error reaches an acceptable level
– Stop when a certain number of epochs have
passed
40