0% found this document useful (0 votes)
162 views21 pages

Associative Memory Associative Memory Network (Amn) Network (Amn) Network (Amn) Network (Amn)

An associative memory network (AMN) is a type of neural network that stores patterns as memories and can recall patterns based on associations with an input pattern. There are two main types: auto-associative networks, where the input and output patterns are the same, and hetero-associative networks, where the input and output patterns are different but associated. AMNs make parallel searches to retrieve stored patterns that match or are related to a given input pattern. They are trained using Hebbian learning or outer product rules to determine the network weights for storing pattern associations.

Uploaded by

Vignesh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
162 views21 pages

Associative Memory Associative Memory Network (Amn) Network (Amn) Network (Amn) Network (Amn)

An associative memory network (AMN) is a type of neural network that stores patterns as memories and can recall patterns based on associations with an input pattern. There are two main types: auto-associative networks, where the input and output patterns are the same, and hetero-associative networks, where the input and output patterns are different but associated. AMNs make parallel searches to retrieve stored patterns that match or are related to a given input pattern. They are trained using Hebbian learning or outer product rules to determine the network weights for storing pattern associations.

Uploaded by

Vignesh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 21

ASSOCIATIVE MEMORY

NETWORK (AMN)
AMN
 Stores a set of patterns as memories.
 When a key pattern is presented to AMN, it responds by
producing a stored pattern which closely resembles or
related the key pattern.
 Recall is through the association of the key pattern with the
help of information memorized.
 Also called as content – addressable memories (CAM) in
contrast to the address – addressable memories.
 Stored patterns should be unique i.e., different patterns in
each location.
 If same patterns exist in more than one location, even though
the correlation exist, the address is note to be ambigous.
AMN
 Makes the parallel search within the stored data file.
 Produces the output of one or all stored items which match
the given search argument and also retrieves the stored data
either completely or partially.
 Feed forward or iterative network
AMN
 Two types:
 Auto associative memory network
 Each of the output vectors is same as the input vector with which it is
associated.
 Hetero associative memory network
 Output vectors are different from the input vectors.
 Both these networks are single layer networks, in which the
weights are determined in a manner so that the network
stores a set of pattern association.
 Number of mismatched components between two vectors is
determined using Hamming distance (HD).
 Training vectors are denoted as s:t
AMN
 Hamming distance (HD)
 Consider two vectors
 Denoted as H[ x, x’ ]
 Now, the hamming distance is defined as the number of mismatched
components of these two vectors and is given by

 Average hamming distance


 Given by the ratio of hamming distance to the length of the vector.
Example
 The two vectors are:

 Solution:
 Hamming distance, H[ X, X’ ] = 8
 Length of the vector is 12
 Therefore, the average hamming distance is 8 / 12 = 2 / 3
Training algorithm for pattern
association
 Two training algorithms are used to find the weights of an
associative memory network

 Hebb rule

 Outer products rule


Hebb rule
Outer product rule
 Alternative method for finding weights of an associative
memory network.

 The outer product of the two vectors is the product of the


matrices S = sT and T = t.
 The matrix multiplication is done as follows:
Outer product rule
 The weight matrix obtained using the outer product rule is
same as the weight matrix obtained using Hebb rule.
 For storing a set of associations,
where

The weight matrix is given by or


Auto AMN
 The training input vector and target output vector are same.
 In this network, determination of weights refers to storing of
vectors.
 In this network, the noise (disturbance) at the memory
output is suppressed.
 The performance of the network is based on its ability to
reproduce a stored pattern from a noisy input.
 In this network, the weights on the diagonal can be set to
zero which is used for generalizing the network or for
increasing the biological plausibility of the network.
Auto AMN (Contd..,)
Flowchart for training algorithm
Testing algorithm
 Auto AMN used to determine whether the given input vector
is a “known” vector or an “unknown” vector.
 Used in speech processing, image processing, pattern
classification etc..,
 The network is said to recognize a “known” vector if the
network produces the same activation on the output units as
it is stored in the network.
Example

 Solution
 Input vector:
 Output vector:
 Initial weight vector:

W=

 Therefore, the weight matrix using the training algorithm is obtained


as follows:
 For first input s1 = -1, the weights each of the output vector is determined
as
(Wi1 )new= (Wi1 )old + x1 * yi
Example (Contd..,)
 Therefore, W11 = 1, W21 = W31 = W41 = -1;
 Similarly, the weights for the other inputs can be calculated
and the weight matrix is given below:

 Testing the network for the same input vector


Example (Contd..,)
 The following activation function has been applied to the
network:

 Using the above activation function, we get the output as

 Now, we can check whether the designed auto AMN can


recognize the input vector with some manipulations.
Example (Contd..,)
 Testing the network with one entry missing
Example (Contd..,)
 Testing the network with one mistake entry
Example (Contd..,)
 Testing the network with two missing entry
Example (Contd..,)
 Testing the network with two mistake entry

You might also like