Bidirectional associative memory (BAM) proposed by Kosko is a recurrent heteroassociative memory consisting of two layers (Figure 2). It is considered an extension of a Hopfield network, and performs recurrent autoassociations as well as heteroassociations on the stored memories.
The network is trained by interactions of two layers. The input x of x layer is processed and transferred the output of Y layer:
X layer x1 x2 Figure 2 Diagram of a BAM.
n where a(.) is a threshold function and Wis a weight vector. Vector y of Y layer feeds to the X layer and produces output x:
and x then feeds into the input of Y layer in turn and producesy" using eqn . The learning process continues until further updates of x and y stop.
A BAM can further be generalized to enable multiple associations (xk, yl,z, ...), k = 1, 2...,p., This is called multidirectional associative memory.
Was this article helpful?