Hey everyone! Welcome back to Neural Network Lectures.
In the last class we had learned about error correction learning
and memory based learning. I also introduced you to
Hebbian learning. So without wasting time
lets move on to Hebbian Learning.
Hebbian Learning Mechanism
Hebbian learning mechanism is one of the oldest
learning rules. It was proposed by
Donald Hebb
in his book 'Organization of behaviour'
in the year 1949
So he postulated that
suppose there is a
neuron A
and another neuron B
If A is near B and
A fires B or
excites B continuously, then metabolic
changes will happen in both the cells A and B such that,
A's efficiency to fire B will increase.
So in simple terms, if A fires B repeatedly,
then its ability to fire B also increases.
This is an actual phenomena happening in the hippocampus
of our brain when we learn something new.That is the reason why I said that
Hebbian learning mechanism is very similar to the
physical changes that happens in our brain when we learn something new.
However, Hebbs postulate is
based on a neuro-biological context
So how do we translate it into a way that we need?
i.e to implement in an artificial neural network? It can be done by breaking
the postulate into these two simple rules
If we have a presynaptic neuron
j and a post synaptic neuron k
then if both j and k are simultaneously
excited, then the
synaptic strength wkj
is increased, However
If j and k fire at different times,
then strength of wkj
will decrease. I hope that
everyone is familiar with this notation i.e wkj
where k is the post synaptic neuron and j is the
presynaptic neuron.
Lets talk about some properties or features of
Hebbian network.
It is time dependent. That is the modification in the hebbian synapse
or
weight of the Hebbian synapse
depends on the exact time of occurrence of the
presynaptic and postsynaptic activities.
As we have mentioned earlier, if the post synaptic and presynaptic
activity takes place simultaneously, then
wkj will increase and if the post synaptic and presynaptic
activities takes place asynchronously then,
wkj is going to decrease.
Then the second feature is that,
Its a highly local mechanism i.e
the weight of the Hebbian synapse between two neurons A and B
depends only on the activities of
A and B. i.e no other neuron in the network
will affect the
wkj or weight of the synapse between
A and B.
The third property is that, its strongly interactive.
This means that, the occurrence of change in the Hebbian synapse
depends on the activity
levels on both sides of the synapse.In other words we can say that
Hebbian learning is based on a true interaction between
the post synaptic and pre-synaptic neurons
The fourth and final feature is, it is correlational.
Correlational means that the modification of the
synapse is based on the co-occurrence of
presynaptic and post synaptic activities.
We'll talk about the correlational feature in more detail
Correlation can again be classified into
positive correlation
negative correlation
and uncorrelated
activities
When the presynaptic neuron and the post synaptic neuron fires
at the same time, then we can call it a
positive correlation. The positive correlation as we know
by the Hebbs hypothesis will increase the
strength of the synapse. Negative correlation occurs
when two neurons are fired asynchronously.
Suppose there is a neuron A and another
neuron B. If neuron A is excited
then the neuron B will be in a relaxed state. Similarly
when neuron B is excited, neuron A will be in a
relaxed state and as we know
Negative correlation will result in the weakening of
synapse, actually the synaptic strength.
Uncorrelated means that it does not belong to both
positive and negative correlation. Both the neurons are
permanently in relaxed state.We can compare this
to the activity of two switches.
Suppose there is a switch A which
corresponds to neuron A, i.e a presynaptic neuron
and there is
another switch B which corresponds to post synaptic neuron
So this is pre and this is
post synaptic neuron
Suppose both the switches are on, then
it relates to positive correlation
Suppose one of the switches is on, i.e  when A is
zero and B is one, when A is one and B is zero
These two states corresponds to negative correlation
and uncorrelated is that when two neurons
are eternally in relaxed state.
So although we said that
positive correlation leads to strengthening and negative correlation
leads to weakening, we didn't say anything about
uncorrelated state.It is something that we can debate upon. The design of the neural network has the liberty to decide
what happens when the neurons are in uncorrelated state.
i.e we can decide that
when the neurons are uncorrelated, the synaptic weight should increase
or decrease
or there is no change in the synaptic weight at all
Now we'll move on to the classification of synapse modification
Synaptic modifications can be classified into three types:
Hebbian, Anti-Hebbian and Non Hebbian
In Hebbian modification, as we have already seen
the synaptic strength i.e wkj will increase
with positive correlation
i.e when the neurons are positively correlated, the synaptic strength
will increase
So, by this logic, what will be anti-Hebbian?
Obviously it is the opposite of Hebbian. i.e
the synaptic strength wkj will increase
with negative correlation
i.e if the neurons are negatively correlated,
then the synaptic strength will increase.
and non Hebbian will obviously doesn't involve both Hebbian or
Anti-Hebbian mechanisms
Now we will move on to the
mathematical model of Hebbian Modification
We know that in Hebbian mechanism, the strength
of the synapse
or the modification of strength of synapse wkj
depends only on the
presynaptic and post synaptic activities. i.e
where k is the post synaptic neuron and
j is the pre synaptic neuron
Now using the help of a rule called
Activity
product rule
We can
state this function as
where eeta(η) obviously is the learning
parameter
and also you can see that
Δwkj is a non zero quantity
only if both xj and yk
are present.
Therefore what can we infer from this? i.e
activity product rule shows positive correlation
However, there is a problem with this activity product rule.
In order to explain that, lets draw a graph of
Δwkj vs yk
This is Δwkj and
this is yk
let xj be held constant
We know that activity product rule is
This is an equation for a straight line passing through origin.
Therefore the graph will look somewhat like this.
What is the problem with this?
The problem is that
Suppose we have a positive yk
and correspondingly there will be a positive
Δwk. We know that
So, a positive Δwkj will result in a
a bigger synaptic weight which will in turn increase the
yk. Therefore the next time, yk
will be over here
This will lead to an increased Δwkj
which will again lead to an increased yk.
So when we plot a graph between
yk and
wkj, not Δwkj
Now let this be
yk(0)
and let this be yk(1)
and let us draw one more
and let this be yk(2)
Similarly this will be Δwkj(0)
Δwkj(1)
and Δwkj(2)
Now suppose this point over here
represent the
yk(0)
and this is the corresponding wkj(0)
In the next iteration i.e yk(1)
we know that
we know that Δwkj
is this much quantity. So,
in this iteration, we are going to add this much quantity.
As a result,
the graph shifts from this point to
this point.Let me denote this
distance as
a over here.So this
much distance will be a.
Now we are going to draw the next iteration.
i.e yk(2)
For yk(2)
Δwkj(1) will be
this much. Let me denote this as b
and it will get added from this level.
i.e we are going to get the next point over here. This will be b
Similarly in the next iteration i.e
yk(3)
We are going to get
Δwkj(2) is this much. c
and we can see that
it is going to be
over here
So if we draw this graph, it is going to
 
increase like this without bounds
i.e after a few more iterations,
the wkj value is going to reach levels which
the hardware cannot process. So,
this is a problem with the Hebbian hypothesis. Inorder to tackle
this problem, we can modify the Hebbian hypothesis
using these two methods.
1. To introduce a forgetting factor
2. To use co-variance hypothesis
Now we'll talk about forgetting factor in detail
We know that the activity product rule is
 
 
In this method of adding a forgetting factor,
we'll minus this expression with alpha(∝)
 
 
Let me take out ηyk(n) outside
 
 
 
 
Let me rewrite this ∝/η as
some other quantity that is
c. Therefore this equation modifies as
 
 
 
This equation over here is called generalized
activity product rule.
Now here we can see that when xj(n)
is greater than
cwkj(n)
the value of Δwkj is going to be
positive and
when xj(n) is less than
cwkj(n), the value of
Δwkj(n) is going to be
negative
and when xj(n)
is equal to cwkj(n),
the value of Δwkj is going to be
zero. Thus we have tackled the
problem of ever increasing value of Δwkj
in the case of activity product rule.
Thus we have found a solution for that problem.
Now there is also another mechanism by which
we can tackle the problem with activity product rule.
That is called co-variance hypothesis.
In co-variance hypothesis, instead of taking the
activity product rule as it is i.e
instead of directly multiplying xj and yk
we are considering the strength of xj and yk over
some averaged value. So if we define some
time average value of xj i.e x̅j
which is nothing but the mean of
all xj over a time interval of n
Similarly, some time average value of yk
i.e the mean of values of yk over
an interval n. For example the mean of xj will be
 
 
 
 
Similarly ȳk also.
Now we will modify the activity product rule as
 
 
 
 
 
 
If we plot this equation i.e Δwkj(n)
vs yk, we will get something
like this.
This point here will be
 
 
This point is called
point of
maximum depression
 
and this point over here is called
balance point and occurs when either
xj= x̅j or yk= ȳk. Now also you can see that
it is not necessary that Δwkj should
increase all the time.It can take both positive
and negative values and also zero values.
Thus it has a stability effect, unlike in the case of
the activity product rule which we have seen before.
 
Therefore to summarize, we can say that
Δwkj will be positive
 
 
 
 
Δwkj will be negative
 
 
 
 
 
Now another question you might ask is what if both
xj is less than x̅j and yk is less than ȳk?
In that case also
Δwkj is going to be positive. Why?
Because
Even though both xj
and yk are less than x̅j and ȳk respectively,
there is some positive value of xj and yk
at the same instant n. What does that mean?
It means that it is positively correlated. According to
Hebbian hypothesis, if two neurons are
positively correlated, the strength should increase.
Therefore Δwkj
is going to increase when
 
 
 
Now one more important question may arise
whether the Hebbian hypothesis is supervised or
unsupervised learning?
So what do you think? In this method
we haven't talked about giving any input pair
and also the desired output pair to the system.
We are simply giving only the input pairs and
leave it to the system to figure out the output.
Therefore it is a method of
unsupervised learning.
 
With this we have concluded the
Hebbian hypothesis and if you have any doubts please
ask in the comment section.
Next thing we have to learn is Competitive learning.
Competitive learning as the name suggests,
the output neurons of a neural network compete among themselves
for being the one to be activated. i.e
unlike in the Hebbian hypothesis, here only one of the
neurons will be activated at a time.
I meant only one of the output neuron
will be activated at a time. So
in the competitive learning, all the input
neurons, let this be input neurons and let this be output neurons.
So in competitve learning
all the input neurons are connected to
all the
output neurons.
 
 
 
Each of these things
have weights.
 
 
 
 
 
 
 
We have to mark all the synapses.
Similarly,
the output neurons are also interconnected.
 
 
However, unlike the
case of connection between input neuron and output neuron,
where all the synapses are excitory,
here the connections are
inhibitory. i.e one output neuron is
trying to inhibit the activity level of
other output neurons.
We can think of this analogy.
Suppose we are in a class
and we all are studying a same subject
i.e artificial neural network,for example.
We all are getting the same inputs, i.e
the same course material, the same teacher, the same class
etc. However,
only one among us is going to be the topper after the exam.
So the competitive learning
is also similar to this i.e only one of the output neuron
is going to win and only that output neuron
will be activated
at the end of an iteration.
Actually this will get more interesting when i tell this.
We all know that one person in our class
who even though get a better textbook or better course material
to refer and learn, he wont say to
others. Why? So that he gets a better chance of
becoming the topper. The same thing is happening
between these output neurons i.e
one output neuron is trying to inhibit
all other output neurons in the
same way a guy who got the extra textbook is trying to win an edge over the others
by not sharing the textbook. Suppose that
one of the students became the topper in the first test
and now suppose the teacher knows that
this one particular guy is the topper. Although
the teacher is supposed to be impartial,
consider the case where the teacher is partial and
while evaluating the second test series, even though
there are some mistakes for the topper
the teacher will think that he knows the answer so
lets relax this mistake for him
and he'll again become the topper.
This is going to happen in the case of competitive learning.
i.e if one of the output neuron is the winner, then there is
a higher chance for the same output neuron to be the winner
in the next iteration also.
In this fashion, in the next iteration there is even a higher
chance for this neuron to win. Now you get
an idea about competitive learning right? In simple words,
this is how competitive learning works.
We'll go into the details of the competitive learning in the next video
as the time for this video is already out of limit.
So if you have enjoyed the video, please subscribe to the channel.
If you have any doubts, please ask in the comment section
so that i can answer that and keep note of that
by making new videos.
Thank You! :D
