III. Recurrent Neural Networks 9/16/08 1

advertisement
III. Recurrent Neural Networks
9/16/08
1
A.
The Hopfield Network
9/16/08
2
Typical Artificial Neuron
connection
weights
inputs
output
threshold
9/16/08
3
Typical Artificial Neuron
linear
combination
activation
function
net input
(local field)
9/16/08
4
Equations
Net input:
New neural state:
n
hi = w ij s j j=1
h = Ws si = ( hi )
s = (h)
9/16/08
5
Hopfield Network
•
•
•
•
•
Symmetric weights: wij = wji
No self-action: wii = 0
Zero threshold: = 0
Bipolar states: si {–1, +1}
Discontinuous bipolar activation function:
1,
( h ) = sgn( h ) = +1,
9/16/08
h<0
h>0
6
What to do about h = 0?
• There are several options:
(0) = +1
(0) = –1
(0) = –1 or +1 with equal probability
hi = 0 no state change (si = si)
• Not much difference, but be consistent
• Last option is slightly preferable, since
symmetric
9/16/08
7
Positive Coupling
• Positive sense (sign)
• Large strength
9/16/08
8
Negative Coupling
• Negative sense (sign)
• Large strength
9/16/08
9
Weak Coupling
• Either sense (sign)
• Little strength
9/16/08
10
State = –1 & Local Field < 0
h<0
9/16/08
11
State = –1 & Local Field > 0
h>0
9/16/08
12
State Reverses
h>0
9/16/08
13
State = +1 & Local Field > 0
h>0
9/16/08
14
State = +1 & Local Field < 0
h<0
9/16/08
15
State Reverses
h<0
9/16/08
16
NetLogo Demonstration of
Hopfield State Updating
Run Hopfield-update.nlogo
9/16/08
17
Hopfield Net as Soft Constraint
Satisfaction System
• States of neurons as yes/no decisions
• Weights represent soft constraints between
decisions
– hard constraints must be respected
– soft constraints have degrees of importance
• Decisions change to better respect
constraints
• Is there an optimal set of decisions that best
respects all constraints?
9/16/08
18
Demonstration of Hopfield Net
Dynamics I
Run Hopfield-dynamics.nlogo
9/16/08
19
Convergence
• Does such a system converge to a stable
state?
• Under what conditions does it converge?
• There is a sense in which each step relaxes
the “tension” in the system
• But could a relaxation of one neuron lead to
greater tension in other places?
9/16/08
20
Quantifying “Tension”
• If wij > 0, then si and sj want to have the same sign
(si sj = +1)
• If wij < 0, then si and sj want to have opposite
signs (si sj = –1)
• If wij = 0, their signs are independent
• Strength of interaction varies with |wij|
• Define disharmony (“tension”) Dij between
neurons i and j:
Dij = – si wij sj
Dij < 0 they are happy
Dij > 0 they are unhappy
9/16/08
21
Total Energy of System
The “energy” of the system is the total
“tension” (disharmony) in it:
E {s} = Dij = si w ij s j
ij
ij
= 12 si w ij s j
i
ji
= 12 si w ij s j
i
j
= 12 sT Ws
9/16/08
22
Review of Some Vector Notation
x1 T
x = M = ( x1 L x n )
xn n
x y = xi yi = x y
T
i=1
L
x1 y1
xy T = M
x m y1
x My = T
9/16/08
(column vectors)
O
L
m
i=1
n
j=1
x1 y n M xm yn x i M ij y j
(inner product)
(outer product)
(quadratic form)
23
Another View of Energy
The energy measures the number of neurons
whose states are in disharmony with their
local fields (i.e. of opposite sign):
E {s} = 12 si w ij s j
i
j
= 12 si w ij s j
i
j
= 12 si hi
i
= 12 sT h
9/16/08
24
Do State Changes Decrease Energy?
• Suppose that neuron k changes state
• Change of energy:
E = E {s} E {s}
= si w ij sj + si w ij s j
ij
ij
= sk w kj s j + sk w kj s j
jk
jk
= ( sk sk ) w kj s j
= sk hk
9/16/08
<0
jk
25
Energy Does Not Increase
• In each step in which a neuron is considered
for update:
E{s(t + 1)} – E{s(t)} 0
• Energy cannot increase
• Energy decreases if any neuron changes
• Must it stop?
9/16/08
26
Proof of Convergence
in Finite Time
• There is a minimum possible energy:
– The number of possible states s {–1, +1}n is
finite
– Hence Emin = min {E(s) | s {±1}n} exists
• Must show it is reached in a finite number
of steps
9/16/08
27
Steps are of a Certain Minimum Size
If hk > 0, then (let hmin = min of possible positive h)
n
hk min h h = w kj s j s {±1} h > 0 = df hmin
jk
E = sk hk = 2hk 2hmin
If hk < 0, then (let hmax = max of possible negative h)
n
hk max h h = w kj s j s {±1} h < 0 = df hmax
jk
E = sk hk = 2hk 2hmax
9/16/08
28
Conclusion
• If we do asynchronous updating, the
Hopfield net must reach a stable, minimum
energy state in a finite number of updates
• This does not imply that it is a global
minimum
9/16/08
29
Lyapunov Functions
• A way of showing the convergence of discreteor continuous-time dynamical systems
• For discrete-time system:
– need a Lyapunov function E (“energy” of the state)
– E is bounded below (E{s} > Emin)
– E < (E)max 0 (energy decreases a certain
minimum amount each step)
– then the system will converge in finite time
• Problem: finding a suitable Lyapunov function
9/16/08
30
Example Limit Cycle with
Synchronous Updating
w>0
9/16/08
w>0
31
The Hopfield Energy Function is
Even
• A function f is odd if f (–x) = – f (x),
for all x
• A function f is even if f (–x) = f (x),
for all x
• Observe:
1
2
T
1
2
T
E {s} = (s) W(s) = s Ws = E {s}
9/16/08
32
Conceptual
Picture of
Descent on
Energy
Surface
9/16/08
(fig. from Solé & Goodwin)
33
Energy
Surface
9/16/08
(fig. from Haykin Neur. Netw.)
34
Energy
Surface
+
Flow
Lines
9/16/08
(fig. from Haykin Neur. Netw.)
35
Flow
Lines
Basins of
Attraction
9/16/08
(fig. from Haykin Neur. Netw.)
36
Bipolar
State
Space
9/16/08
37
Basins
in
Bipolar
State
Space
energy decreasing paths
9/16/08
38
Demonstration of Hopfield Net
Dynamics II
Run initialized Hopfield.nlogo
9/16/08
39
Storing
Memories as
Attractors
9/16/08
(fig. from Solé & Goodwin)
40
Demonstration of Hopfield Net
Run Malasri Hopfield Demo
9/16/08
41
Example of
Pattern
Restoration
9/16/08
(fig. from Arbib 1995)
42
Example of
Pattern
Restoration
9/16/08
(fig. from Arbib 1995)
43
Example of
Pattern
Restoration
9/16/08
(fig. from Arbib 1995)
44
Example of
Pattern
Restoration
9/16/08
(fig. from Arbib 1995)
45
Example of
Pattern
Restoration
9/16/08
(fig. from Arbib 1995)
46
Example of
Pattern
Completion
9/16/08
(fig. from Arbib 1995)
47
Example of
Pattern
Completion
9/16/08
(fig. from Arbib 1995)
48
Example of
Pattern
Completion
9/16/08
(fig. from Arbib 1995)
49
Example of
Pattern
Completion
9/16/08
(fig. from Arbib 1995)
50
Example of
Pattern
Completion
9/16/08
(fig. from Arbib 1995)
51
Example of
Association
9/16/08
(fig. from Arbib 1995)
52
Example of
Association
9/16/08
(fig. from Arbib 1995)
53
Example of
Association
9/16/08
(fig. from Arbib 1995)
54
Example of
Association
9/16/08
(fig. from Arbib 1995)
55
Example of
Association
9/16/08
(fig. from Arbib 1995)
56
Applications of
Hopfield Memory
•
•
•
•
9/16/08
Pattern restoration
Pattern completion
Pattern generalization
Pattern association
57
Hopfield Net for Optimization
and for Associative Memory
• For optimization:
– we know the weights (couplings)
– we want to know the minima (solutions)
• For associative memory:
– we know the minima (retrieval states)
– we want to know the weights
9/16/08
58
Hebb’s Rule
“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 or
metabolic change takes place in one or both
cells such that A’s efficiency, as one of the
cells firing B, is increased.”
—Donald Hebb (The Organization of Behavior, 1949, p. 62)
9/16/08
59
Example of Hebbian Learning:
Pattern Imprinted
9/16/08
60
Example of Hebbian Learning:
Partial Pattern Reconstruction
9/16/08
61
Mathematical Model of Hebbian
Learning for One Pattern
xi x j ,
Let W ij = 0,
if i j
if i = j
T
2
i
Since x i x i = x = 1, W = xx I
For simplicity, we will include self-coupling:
W = xx T
9/16/08
62
A Single Imprinted Pattern is a
Stable State
• Suppose W = xxT
• Then h = Wx = xxTx = nx
since T
n
n
2
2
x x = x i = (±1) = n
i=1
i=1
• Hence, if initial state is s = x, then new state
is s = sgn (n x) = x
• May be other stable states (e.g., –x)
9/16/08
63
Questions
• How big is the basin of attraction of the
imprinted pattern?
• How many patterns can be imprinted?
• Are there unneeded spurious stable states?
• These issues will be addressed in the
context of multiple imprinted patterns
9/16/08
64
Imprinting Multiple Patterns
• Let x1, x2, …, xp be patterns to be imprinted
• Define the sum-of-outer-products matrix:
p
W ij =
1
n
x
k
i
x
k
j
k=1
p
W=
1
n
k T
x (x )
k
k=1
9/16/08
65
Definition of Covariance
Consider samples (x1, y1), (x2, y2), …, (xN, yN)
Let x = x k and y = y k
Covariance of x and y values :
Cxy = ( x k x )( y k y )
= x k y k xy k x k y + x y
= xkyk x yk xk y + x y
= xkyk x y x y + x y
Cxy = x k y k x y
9/16/08
66
Weights & the Covariance Matrix
Sample pattern vectors: x1, x2, …, xp
Covariance of ith and jth components:
Cij = x ik x kj x i x j
If i : x i = 0 (±1 equally likely in all positions) :
k
i
Cij = x x
k
j
=
1
p
p
k=1
x ik y kj
W = np C
9/16/08
67
Characteristics
of Hopfield Memory
• Distributed (“holographic”)
– every pattern is stored in every location
(weight)
• Robust
– correct retrieval in spite of noise or error in
patterns
– correct operation in spite of considerable
weight damage or noise
9/16/08
68
Stability of Imprinted Memories
• Suppose the state is one of the imprinted
patterns xm
m
k
k T
1
• Then: h = Wx = n x (x ) x m
[
=
1
n
=
1
n
k
m T
m
m
=x +
1
n
(x
km
9/16/08
k T
x (x )
x (x ) x
k
]
k
m
x
m
+
1
n
k T
x (x )
k
x
m
km
k
x )x
m
k
69
Interpretation of Inner Products
• xk xm = n if they are identical
– highly correlated
• xk xm = –n if they are complementary
– highly correlated (reversed)
• xk xm = 0 if they are orthogonal
– largely uncorrelated
• xk xm measures the crosstalk between
patterns k and m
9/16/08
70
Cosines and Inner products
u
uv
u v = u v cos uv
v
2
If u is bipolar, then u = u u = n
Hence, u v = n n cos uv = n cos uv
9/16/08
71
Conditions for Stability
Stability of entire pattern :
m
m
k
x = sgn x + 1n x cos km km
Stability of a single bit :
m
m
k
x i = sgn x i + 1n x i cos km km
9/16/08
72
Sufficient Conditions for
Instability (Case 1)
m
i
Suppose x = 1. Then unstable if :
(1) + x
1
n
k
i
cos km > 0
km
1
n
k
x
i coskm > 1
km
9/16/08
73
Sufficient Conditions for
Instability (Case 2)
m
i
Suppose x = +1. Then unstable if :
(+1) + x
1
n
k
i
cos km < 0
km
1
n
k
x
i coskm < 1
km
9/16/08
74
Sufficient Conditions for
Stability
1
n
k
x
i coskm 1
km
The crosstalk with the sought pattern must be
sufficiently small
9/16/08
75
Capacity of Hopfield Memory
• Depends on the patterns imprinted
• If orthogonal, pmax = n
– but every state is stable trivial basins
• So pmax < n
• Let load parameter = p / n
9/16/08
equations
76
Single Bit Stability Analysis
• For simplicity, suppose xk are random
• Then xk xm are sums of n random ±1
binomial distribution Gaussian
in range –n, …, +n
with mean µ = 0
and variance 2 = n
• Probability sum > t:
t
1
2 1 erf 2n [See “Review of Gaussian (Normal) Distributions” on course website]
9/16/08
77
Approximation of Probability
Let crosstalk Cim =
1
n
k
m
k
x
x
x
i(
)
km
We want Pr{Cim > 1} = Pr{nCim > n}
p
n
Note : nCim = x ik x kj x mj
k=1 j=1
km
A sum of n( p 1) np random ± 1s
Variance 2 = np
9/16/08
78
Probability of Bit Instability
n Pr{nCim > n} = 12 1 erf 2np 9/16/08 (fig. from Hertz & al. Intr. Theory Neur. Comp.)
=
1
2
=
1
2
[1 erf (
[1 erf (
)]
1 2 )]
n 2p
79
Tabulated Probability of
Single-Bit Instability
Perror
9/16/08
0.1%
0.105
0.36%
0.138
1%
0.185
5%
0.37
10%
0.61
(table from Hertz & al. Intr. Theory Neur. Comp.)
80
Spurious Attractors
• Mixture states:
–
–
–
–
–
–
sums or differences of odd numbers of retrieval states
number increases combinatorially with p
shallower, smaller basins
basins of mixtures swamp basins of retrieval states overload
useful as combinatorial generalizations?
self-coupling generates spurious attractors
• Spin-glass states:
– not correlated with any finite number of imprinted patterns
– occur beyond overload because weights effectively random
9/16/08
81
Basins of Mixture States
x
9/16/08
k1
x
x
mix
x
k2
k3
x imix = sgn( x ik1 + x ik2 + x ik3 )
82
Fraction of Unstable Imprints
(n = 100)
9/16/08
(fig from Bar-Yam)
83
Number of Stable Imprints
(n = 100)
9/16/08
(fig from Bar-Yam)
84
Number of Imprints with Basins
of Indicated Size (n = 100)
9/16/08
(fig from Bar-Yam)
85
Summary of Capacity Results
• Absolute limit: pmax < cn = 0.138 n
• If a small number of errors in each pattern
permitted: pmax n
• If all or most patterns must be recalled
perfectly: pmax n / log n
• Recall: all this analysis is based on random
patterns
• Unrealistic, but sometimes can be arranged
9/16/08
86
Download