Information Technology Reference
In-Depth Information
This last exercise should leave an important impres-
sion on you — sometimes Hebbian learning can be
much faster and more reliable than error-driven learn-
ing. The reasons for this speedup will be explored in
greater depth later, but clearly it interacts with the na-
ture of the task. Thus, if we knew that the tasks faced
by the network were typically going to be “easy,” then it
might make sense to use Hebbian instead of error-driven
learning. We will see that in fact a combination of both
types of learning usually works best.
Press Run several times to get a sense of how fast
the network learns in general.
, !
Question 5.4 Provide a general characterization of
how many epochs it took for your network to learn (e.g.,
slowest, fastest, rough average).
Press TestStep 4 times to refresh the testing grid
log after learning is done.
, !
Question 5.5 (a) Explain what the hidden units rep-
resent to enable the network to solve this “impossible”
task (make specific reference to this problem, but de-
scribe the general nature of the hidden unit contribu-
tions across multiple runs). (b) Use the weight values
as revealed in the network display (including the bias
weights) to explain why each hidden unit is activated as
it is. Be sure to do multiple runs, and extract the general
nature of the network's solution. Your answer should
just discuss qualitative weight values, e.g., “one hidden
unit detects the left two inputs being active, and sends a
strong weight to the right output unit.” (c) Extrapolat-
ing from this specific example, explain in more general
terms why hidden units can let networks solve difficult
problems that could not otherwise be solved directly.
To stop now, quit by selecting Object/Quit in the
PDP++Root window.
, !
5.10
Summary
Task learning is a complementary learning objective
to model learning — it can be formalized in terms of
learning an input-output mapping . A simple such pat-
tern associator task reveals the limitations of Hebbian
learning for task learning. If the discrepancy or error
between the desired or target output pattern and the ac-
tual output pattern is used to drive learning, then net-
works can learn much more successfully. This is the
idea behind the delta rule , which minimizes error by
adapting weights as a function of the derivative of the
error. To learn more complicated input/output relation-
ships, networks with at least one intermediate hidden
layer are necessary. These multilayer networks require
a generalized form of the delta rule which backprop-
agates error signals by using the chain rule to propa-
gate the error derivative back through multiple layers of
units.
Although there is scant evidence that cortical neurons
communicate such error signals directly, it is possible
to use the difference between two activation states or
phases to compute essentially the same error deriva-
tive. The first of these activation phases corresponds
to an expectation or production of a particular output
pattern, while the second corresponds to the experience
of the actual desired outcome . As long as the network
has symmetric bidirectional weights, the difference be-
tween these two activation states for a unit anywhere
in the network reflects that unit's contribution to the
overall error. This is the idea behind the GeneRec al-
gorithm, which is a generalization of the earlier recir-
Just to confirm that merely adding hidden units and
increasing the learning rate does not enable the network
to solve this problem, let's try running this network with
Hebbian learning.
Set the learn_rule to HEBB (i.e., CPCA), Apply ,
and then Run a couple more times. Note that changing
learn_rule affects the lrn values as described ear-
lier.
You should observe complete failure. However, Heb-
bian learning can work quite well with hidden units in
simple tasks.
, !
To see this, set env_type to EASY , and Apply .
Run several times.
The network should learn within a couple of epochs
(with 5 more added at the end to make sure).
, !
Now, set learn_rule to GENEREC , and Run sev-
eral times.
Question 5.6 How fast does GeneRec learn this EASY
task compared to the Hebbian rule? Be sure to run sev-
eral times in both, to get a good sample.
, !
Search WWH ::




Custom Search