Page 31 - Artificial Intelligence in the Age of Neural Networks and Brain Computing
P. 31

18     CHAPTER 1 Nature’s Learning Rule: The Hebbian-LMS Algorithm




                            If the input patterns were not linearly independent, the outputs of the first-layer
                         neurons would not be purely binary. The outputs of the second layer would be closer
                         to binary. The outputs of the third layer would be even closer to binary.
                            The number of training patterns equal to the number of synapses of the output
                         layer neurons is the capacity of the network. It is shown in Ref. [12] that when
                         applying patterns that are distinct but not necessarily linear independent to a
                         nonlinear process such as layers of a neural network, the outputs of the layers would
                         be distinct and linearly independent, if the number of training patterns were less than
                         or equal to the network capacity. Then the outputs of the output layer neurons will be
                         perfectly binary. If the number of training patterns exceeds the network capacity, the
                         network output will be 0s and “fuzzy” 1s, close to binary.
                            If one were to take one of the trained-in vectors and place a large cloud of vectors
                         randomly disposed in a cluster about it, inputting all the vectors in the cluster
                         without further training would result in identical binary output vectors at the output
                         layer. This will be true as long as the diameter of the cluster is not “too large.” How
                         large this could be depends on the number and disposition of the other training
                         vectors. Noisy or distorted input patterns in a cluster could be identified as equiva-
                         lent to the associated training pattern. The network could determine a unique output
                         pattern, a unique binary representation for training patterns in a cluster. This is a
                         useful property for pattern classification.
                            With unsupervised learning, each cluster “chooses” its own binary output repre-
                         sentation. The number of clusters that the network can resolve is equal to the
                         network capacity, equal to the number of weights of each of the neurons of the
                         output layer. Hebbian-LMS is a clustering algorithm.
                            An application is the following. Given a network trained by Hebbian-LMS, let
                         the weights be fixed. Inputting a pattern from one of the clusters of one of the
                         training patterns will result in a binary output vector. The sum of the squares of
                         the errors of the output neurons will be close to zero. Now, inputting a pattern not
                         close to any of the training patterns will result in an output vector that will not be
                         binary and the sum of the squares of the errors of the output neurons will be large.
                         So, if the input pattern is close to a training pattern, the output error will be close to
                         zero. If the input pattern is distinct from all the training patterns, the output error will
                         be large. One could use this when one is not asking the neural network to classify an
                         input pattern, merely to indicate if the input pattern has been trained in, that is, seen
                         before or not, deja vu, yes or no? This could be used as a critical element of a cogni-
                         tive memory system [13].
                            In another application, a multilayer neural network could be trained using both
                         supervised and unsupervised methods. The hidden layers could be trained with
                         Hebbian-LMS and the output layer could be trained with the original LMS algo-
                         rithm. An individual input cluster would produce an individual binary “word” at
                         the output of the final hidden layer. The output layer could be trained with a one-
                         out-of-many code. The output neuron with the largest (SUM) would be identified
                         as representing the class of the cluster of the input pattern.
   26   27   28   29   30   31   32   33   34   35   36