VO Neurale Netzwerke und Biorobotik

Transcription

VO Neurale Netzwerke und Biorobotik
VO Neurale Netzwerke und Biorobotik
VO Neurale Netzwerke und Biorobotik
Helmut A. Mayer
Department of Organismic Biology
Department of Computer Sciences
University of Salzburg
WS 13/14
VO Neurale Netzwerke und Biorobotik
Outline
Introduction
Biological Neural Networks
Artifical Neural Networks
Mobile Autonomous Robots
VO Neurale Netzwerke und Biorobotik
Introduction
Topics
I
Artificial Neural Networks (ANNs)
I
I
I
I
Basic model of Biological Neural Networks (BNNs)
“Bits instead of chemicals“
ANNs enable computers to learn
Evolutionary Robotics
I
I
I
Evolving robot behavior
Different controllers (robot brains)
Neurocontrollers (ANN is robotic brain)
VO Neurale Netzwerke und Biorobotik
Introduction
Overview ANN
I
Artificial Neural Networks
I
I
I
I
I
I
Biological Neural Networks
ANN history: Hodgkin–Huxley, McCulloch–Pitts, Perceptron,
Adaline
Multi–Layer Perceptrons
ANN Training, Back–propagation
Spiking Neural Networks
Recurrent Networks, Hopfield
VO Neurale Netzwerke und Biorobotik
Introduction
ANN Application Example
I
Application: Weather Forecast
I
Goal: weather forecast of next day based on todays weather
I
Input: e.g., temperature, pressure, wind
I
Output: sunny, overcast, rain
I
Training data: historic weather data
I
Test data: historic weather data NOT presented in training
I
Test results are the only quality measure (!)
I
ANN does not need explicit domain knowledge (!)
VO Neurale Netzwerke und Biorobotik
Introduction
Hopfield Image Memory I
VO Neurale Netzwerke und Biorobotik
Introduction
Hopfield Image Memory II
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Biological Neurons
I
Nervous System: Control by Communication
I
Massive Parallelism, Redundancy, Stochastic “Devices”
I
Humans: 1010 neurons, 1014 connections (conservative
estimation), 101,000,000 possible networks(!)
I
Neurons: cell body (soma), axon, synapses, dendrites
I
Membrane Potential of −70mV
sodium (Na+ ) and potassium (Ka+ ) ions (chloride Cl − ions)
I
Sodium pump constantly expells Na+ ions
I
Complex interaction of membrane, concentration, and
electrical potential
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Schematic Neuron
Dendrites
Soma
Nucleus
Synapses
Axon
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Electrical Signals
I
Potassium is in equilibrium, sodium NOT
I
Sodium conductance is a function of the membrane potential
I
Above threshold sodium conductance increases, ion channels,
depolarization, polarization, refractory period = action
potential
I
Frequency coding, is (all) information encoded in action
potentials?
I
Hodgkin/Huxley–Model (of voltage across membrane)
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Hodgkin-Huxley Equation
I
Hodgkin and Huxley (1952), Nobel Prize in 1963
4
3
C dV
dt = Iext − gK n (V − VK ) − gNa m h(V − VNa ) − gL (V − VL )
I
I
I
I
I
I
I
I
I
I
I
I
V . . . Membrane Voltage [mV ]
µF
C . . . Membrane Capacity [ cm
2]
µA
Iext . . . Excitation Current [ cm2 ]
S
gK . . . Potassium Conductance [ cm
2]
VK . . . Potassium Equilibrium Voltage [mV ]
n. . . Potassium Gate Activation [1]
S
gNa . . . Sodium Conductance [ cm
2]
VNa . . . Sodium Equilibrium Voltage [mV ]
m. . . Sodium Gate Activation [1]
h. . . Sodium Gate Inactivation [1]
S
gL . . . Leak Conductance [ cm
2]
VL . . . Leak Equilibrium Voltage [mV ]
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Electrical Membrane Circuit
I ext
OUT
U Na
UM
UK
UL
CM
G Na
GK
IN
GL
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Real and model spike
Measured Data
Evolved Model
40
V [mV]
20
0
-20
-40
-60
-80
0
2
4
6
8
t [ms]
10
VO Neurale Netzwerke und Biorobotik
Biological Neural Networks
Synapses
I
Electrochemical processes, neurotransmitters
I
Connect axon–dendrites (but also axon–axon,
dendrites–dendrites, synapses–synapses)
I
Spatio–temporal integration of action potentials
I
Excitatory and inhibitory potentials
postsynaptic duration ∼ 5 ms
I
Neurotransmitters influence threshold (permanent changes =
learning = closing/opening of ion channels)
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Neuron Models
I
Level of Simplification?
I
McCulloch and Pitts (1943), Logic Model
Binary signals, no weights, simple (nonbinary) threshold
Excitatory and inhibitory connections (absolute, relative)
Addition of weights
I
Rosenblatt (1958), Perceptron
Real–valued weights and threshold
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Generic Neuron Model
I
Generic Connectionist Neuron
Nonlinear activation (transfer) function
Widely used in todays ANNs
oi
net i
oj
I
w i,j
oi
Next generation: spiking neurons, hardware neurons, biological
hardware
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Networks
I
Mysticism of Neural Networks
I
Functional Model: f : Rn → Rm
node structure, connectivity, learn algorithm
I
“Black Box Syndrom”, unexplicable ANN decisions
I
Basic Structures: Feed–Forward (MLPs, Kohonen),
f = f (g (x))
Recurrent (Recurrent MLPs, Hopfield),
f = f (xt , f (xt−1 ), f (xt−2 ), . . .)
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
ANN Training
I
ANN Training (Learning, Teaching): Adjustment of network
parameters
I
General Training Methods
I
I
I
Supervised Learning (Teacher, I/O–Patterns)
Reinforcement Learning (Teacher, Learn Signal)
Unsupervised Learning (No Teacher, Self–Organization)
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
ANN Application Domains
I
Constraint Satisfaction (Scheduling, n–Queens)
I
Content Addressable Memory (Image Retrieval)
I
Control (Machines, “ANN Driver”)
I
Data Compression (Autoencoder)
I
Diagnostics (Medicine, Production)
I
Forecasting (Financial Markets)
I
General Mapping (Function Approximation)
I
Multi Sensor Data Fusion (Remote Sensing)
I
Optimization
I
Pattern Recognition (Voice, Image)
I
Risk Assessment (Credit Card)
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Perceptron Learning
I
I
Perceptron Learn Algorithm
Two classes P and N, linear separation
Start: Random w~0 , t := 0
Test: Random ~
x ∈P∪N
If ~
x
If ~
x
If ~
x
If ~
x
∈
∈
∈
∈
P
N
P
N
~t ~
and w
x
~t ~
and w
x
~t ~
and w
x
~t ~
and w
x
> 0 ⇒ Test
< 0 ⇒ Test
≤ 0 ⇒ Add
≥ 0 ⇒ Sub
~ := w
~t + ~
Add: wt+1
x
~ := w
~t − ~
Sub: wt+1
x
t := t + 1
Exit if no weight update ∀~
x
I
I
I
Perceptron Convergence Theorem
“Attack” on perceptrons: M. Minsky and S. Papert
Perceptrons (1969)
The XOR–function of two boolean variables x1 , x2 cannot be
computed with a single perceptron. (Connectedness)
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Earlier Models
I
I
I
I
Hebbian Learning, Donald Hebb (1949)
“When an axon of cell A is near enough to excite a cell B and
repeatedly or persistently takes part in firing it, some growth
process or metabolic change takes place in one or both cells
such that A’s efficiency as one of the cells firing B is
increased.”
Generalized Hebb Rule
∆wi,j = η ai bj
Linear Associator, input vector ~a, output vector ~b
W = η ~b ~aT
ADALINE (Adaptive Linear Element), Widrow and Hoff
(1960)
Threshold, error signal, error function has single minimum
learning rule is special case of backpropagation
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Widrow–Hoff Learning Rule
yj
w k,j
Ik
zk
tk
I
I
I
I
∂E
Gradient Descent, ∆wk,j = −η ∂w
k,j
PP
Pm
(p)
(p)
(p)
(p)
Error E = p=1 E , E = k=1 (tk − Ik )2
p training patterns, m output neurons, t . . . target value
Pm
Ph
(p)
(p) 2
∂E (p)
∂
j=1 wk,j yj ) ) =
∂wk,j = ∂wk,j ( k=1 (tk −
(p)
(p)
(p)
= −2(tk − Ik )yj
I
Omitting pattern index p
∆wk,j = η(tk − Ik )yj = ηδk yj
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Multi–Layer Perceptron
I
Learning as minimization (of network error)
I
Error is a function of network parameters
I
Gradient descent methods reduce error
I
Problem with perceptrons with hidden layers
I
Backpropagation = Iterative Local Gradient Descent
Werbos (1974), Rumelhart, Hinton, Williams (1986)
I
Error–Backpropagation, output error is transmitted backwards
as weighted error, network weights are updated locally
I
Weight update ∆wj,i = ηδj ai
Generalized error term δ
I
Common transfer functions: differentiable, nonlinear,
monotonous, easily computable differentiation
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Error–Backpropagation I
x1
I1
v11
H1
y1
w 11
v21
v12
x2
I
I
w 21
H2
I2
y2
v22
I
z1
w 12
w 22
P
P
Hj = ni=1 vj,i xi Ik = hj=1 wk,j yj
yj = f (Hj ), zk = f (Ik )
P
(p)
(p) 2
Error E (p) = 12 m
k=1 (tk − zk )
∂E
Output Layer: ∆wk,j = −η ∂w
k,j
∆wk,j = ηδk yj mit δk = (tk − zk )f 0 (Ik )
z2
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Error–Backpropagation II
I
∂E
Hidden Layer: ∆vj,i = −η ∂v
j,i P
∆vj,i = ηδj xi mit δj = f 0 (Hj ) m
k=1 δk wk,j
I
Local update rules propagating error from output to input
I
Present all p patterns of the training set = 1 Epoch (complete
training e.g., 1,000 epochs)
I
Batch Learning (Off–line): accumulate weight changes for all
patterns, then update weights
I
On–line Learning: update weights after each pattern
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
Self Organizing Maps
I
Cerebral Cortex: topologically ordered maps (sensory inputs)
I
Kohonen (1982)
Topological map, vector quantization, competitive learning
hj,i
wj,i
I
x
xi
Abbildung: A two–dimensional self organizing map.
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
SOM Formation
I
SOM Learning, unsupervised, no targets
I
Competition: input triggers winner–takes–all
I
Cooperation: identify topological neighborhood
I
Synaptic Adaptation: enhance response of winner and
neighbors
VO Neurale Netzwerke und Biorobotik
Artifical Neural Networks
SOM Properties
I
Approximation of input space, topological ordering
Abbildung: SOM formation of unit square topology (from
www.learnartificialneuralnetworks.com)
.
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
Mobile Autonomous Robots
I
Robots as an abstraction of living beings
I
Sensors, e.g., light, infra–red, camera
I
Actors, e.g., wheels, chains, legs
I
Controllers, e.g., program, fuzzy rules, ANNs
I
Small, cheap robots → robot swarms
I
Real and simulated robots
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
EMMA2
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
Robotic Learning
I
Embodiment of computers (interaction with environment)
I
Controllers (Heuristics, Fuzzy Rules, Artificial Neural
Networks)
I
Phylogenetic learning (evolution) and ontogenetic learning
(reinforcement)
I
Robot should learn to cope with unknown problems
I
Robot simulator allows fast experiments
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
NeuroController
Amplifier
M
Actors
Sensors
M
Modulator
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
Videos
I
Evolved Virtual Creatures, 1994(!)
I
Big Dog, Military Robot, 2010
I
RoboCup NAO League, 2011
I
ROBOTICA Mid Size League Final, 2011
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
SIMMA – Simulator for EMMA
I
Java framework simulating and visualizing robotic experiments
I
Tests evolved neurocontrollers
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
The Peg Pushing Task
I
Robot should move peg to light source
I
Fitness is final distance peg-light (10 epsiodes, 30 seconds
each)
I
Robot has 6 infra-red and 3 light sensors
I
Basic ANN structure 9-4-2
I
Evolution of weights, neurons, links (1,000 generations,
population size 50, 20 runs)
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
The Robot
6 cm
Infra−Red Sensor
Wheel
Light Sensor
VO Neurale Netzwerke und Biorobotik
Mobile Autonomous Robots
Sample of Best Evolved Networks
(a)
13/13/19/-5.69/0.9071
(b)
14/12/15/-1.37/0.9980
(d)
16/11/11/+9.37/0.9954
(e)
17/12/16/+7.73/0.8849
(c)
15/11/15/+8.67/0.9749
(f)
18/13/24/X/0.9333

Similar documents