Dustin Stevens-Baer
Comp 572 Neural Networks
Assignment #1



The source code I used can be found here. and here..

1. Does the Energy decrease at each iteration? The Energy function should decrease in value at each step of the iteration -- if you observe that this is not true then there is something wrong with your implementation. Plot the Energy as a function of t for: cases: step1, step2, step3, step4 and ext1 That's 4 plots, but it would be nice to have all 4 on the same axes for comparison purposes.



Yes, the Energy function decreases at each iteration you can see how the lines become more and more l shaped losing there slow slopes and gaining rather drastic slopes to start out with.





























2. Does the network converge to a state that corresponds to "k-winners"? For example, in the case e = 1.5 there should be 2 "winners", and the 2 winners should correspond to the two neurons that had the highest initial activations. Demonstrate this by showing what the initial activations were, and what the final convergent state was for a single run (random initial activations) of each of the parameter cases. (Note: that's 12 cases)

The initial activiations and final convergent states can be seen here.  Yes the network converges to a state where there are k winners at each iteration.  The winners correspond to the nerons with the highest activation.  In some situations you can see that the neurons stablize quickly and in others it takes forever.


3. Try a case where the initial activations are all equal (non-zero).

a. Is there convergence to winners?
There is no convergence to the winner state. All values converge to the low state


b. Does the Energy decrease at each iteration?
Yes the energy does decrease at each iteration.

c. Demonstrate your responses by showing a specific simulation run:

-- Initial activations
-- Activations at convergence
-- Energy plot

Here is the simulation statistics.  The graph of the energy decrease is shown below.




























4. Show (mathematical proof) that the k-winner states are stable equilibrium when the external input satisfies: k-1 < ext < k.

Hint: K-winner states are the corners of the hypercube corresponding to k neurons at maximum activation and the rest at minimum activation. To show that these states are stable equilibrium you must imagine the activation vector as being very close to, but not on, the hypercube corner. Then show that the dynamics of the network will "drive" the activation vector into the corner, as opposed to away from the corner. That is, if an activation is near the maximum, then the update will add a positive amount, and if an activation is near the minimum the update will add a negative amount.



The activations are updated by the following equation, which was given as part of the problem statement: ai(t+1) = ai(t) +step*(M-ai(t))* (ai(t) - m) * neti(t), Assuming that M=1.0 and m=0.0 The step is positive and we also know that ai(t) is between M and m.  So, increase or decrease in a neuron's activation is controlled by its net input, neti(t). A neuron's net input is defined as: net i(t) = [Wa(t) + e(t)]i

neti(t) = Wa(t) + e(t), where Wa(t) is the weight sums of all incoming connections to a node, and e(t) is the external input to the network.  Therfore, neti(t) will only be positive when Wa(t) > -e(t).   The (M-ai(t))* (ai(t) - m) will always be positive unless one of the thresholds is actually reached, then the value will be 0 and the equation will result in: ai(t+1) = ai(t)

For a stable state with k winners eachwinner will receive input from the other k-1 winners, and since the input from all connecting nodes is -1. neti(t) = (-1)(k-1) + e(t).  And for all the non-winners, they will receive input from k winners, so at equilibrium they will look like: neti(t) = (-1)(k) + e(t).

If k>e(t), then all the losers will be driven towards the value m, since this will cause neti(t) to be negative. And if (k-1)<e(t), then the winners will be driven towards M, since this causes neti(t) to be positive.

Therefore we can conclude that k-1 < ext <  k




 

Hosted by www.Geocities.ws

1