home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Education
/
collectionofeducationcarat1997.iso
/
COMPUSCI
/
HOPF300.ZIP
/
HOPFIELD.DOC
< prev
next >
Wrap
Text File
|
1994-12-20
|
7KB
|
185 lines
*** HOPFIELD v.3.00 ***
--------------------------
Binary neural network simulation
with simple character recognition system.
USER'S MANUAL - QUICK'N'DIRTY DOC
Copyright (c) 1994 Piotr Rotkiewicz
piro@chem.uw.edu.pl
1.Introduction.
--------------
Hopfield is a simple binary neural network
simulation designed for basic experiments like
storing patterns, comparing different training rules
and recognition methods, visualization of network
states.
Actually program contains 225-neurons network (over
50000 synapses), 2 training rules, 3 recognition
methods, preprocessing algorithm, network state
visualization and a lot of other features.
Please forgive me but I didn't explain basic ideas
of neural networks like local field, spin flips, etc.
2.Hardware requirements.
--------------------------
Hopfield v.3.00 requires:
- PC/AT compatibile machine,
- 500KB conventional and 200KB extended memory
free,
- VGA colour display,
- mouse (Microsoft Mouse compatibile).
3.How to use Hopfield?
----------------------
Hopfield v.3.00 is supplied with friendly and nice
interface using Pirosoft GUI graphical library.
Mouse is REQUIRED to use this program. Please notice
that not all options are available from keyboard!
After entering Hopfield you can see pull-down menu
at the top of screen and the icon bar below. Please press
query mark at the right side. Next you can select any
item and short description ("baloon help") will be
displayed.
4.Patterns, characters and networks.
------------------------------------
There are two places on the board: character window
and pattern (neurons) window. Using mouse you can draw
characters and set states of neurons. Please try it!
Character may be automatically converted into pattern
using "Preprocess" option.
Built-in disk manager allows you to load and save
networks and patterns. Default extension of the network
files is 'NET' and the pattern files is 'PAT'.
5.Storing methods.
------------------
For setup storing methods please go to
the "Configuration" menu and select "Storing
methods" option. Next you can select Hebbian rule
or perceptron rule and set Hebbian rule weights
multiplier. You can also set random network
initialization option which is very useful for
perceptron method.
For begin storing patterns process select the
"Storing patterns" option from the "Pattern" menu
or press "TRAIN" icon. Next you have to select
patterns for training by pressing RIGHT mouse
button or Insert key. Next you can press Enter
(or OK button). Storing process will begin.
There are two rules of storing patterns available
in current version:
- Hebbian rule - uses very simple algorithm:
WEIGHT(i,j)=SUM(m=1..M) {
SUM(i=1..N,j=1..N,i<>j) {
Pm(i)*Pm(j)
}
}
where WEIGHT(i,j) is connection weight between
i and j neurons, M is patterns number, N is neurons
number, Pm(1..N) is actually storing pattern.
Hebbian rule is not useful for practical
applications, it is good rather for theoretical
experiments. Maximal number of not-correlative
patterns which may be stored using Hebbian rule
don't exceed 14 precent of neurons number. Usually
storage capacity is a far lower.
- Perceptron rule - is iterative process which
allows to store about 2*N patterns in N-neurons
neural network! Unfortunatelly, this process is
very slow. You can set minimal local field parameter
which define network accuracy level. Process will
automatically finish after all patterns will
correctly (i.e. with correct local field level) be
stored.
6.Recognition methods.
----------------------
You can select recognition method by choose it from
the "Configuration" menu. You can also set initial
temperature (a MC parameter) and number of simulation
repeats by step.
There are three methods of recognition built in
Hopfield:
- Sequencing method - all neurons states flips at
the same time. This method is the fastest one, but
very often cause creating of "weak memories".
- Monte Carlo method - neurons flips random (Hopfield
uses quite good pseudo-random generator - Wichmann/Hill
algorithm). This method is much better than previous,
but quite slow. Quality of recognition depends on
initial temperatuer parameter - please try it.
- MC with exerting local field level. Exerted local
field level should be lower than "minimal local field"
introduced in the perceptron method.
MC with self-control of noise level is a very
interesting kind of method, but not fully implemented
in present version yet. Sorry.
7.Recognition process.
----------------------
Choose the "Recognize pattern" option or press the
"BRAIN" icon. Recognition will begin. You can call next
step of recognition process by pressing "Step" button
or break it by pressing "Break" button (placed in right
bottom corner of the screen). The network energy
(Lyapunov function) can be displayed (set correct
option in "Recognition methods" configuration).
Please notice the influence of pattern's warping
(select "Warp pattern" from the "Pattern" menu) on
recognition results. Apply differnet recognition
methods. Try recognize totally random patterns
("Random pattern" from the "Pattern" menu). Notice
that inverted pattern ("inverse pattern") is
recognized as good as the normal one.
8.Network visualization.
------------------------
You can see the connections matrix by selecting the
"Network structure" option from the "Network" menu
(or by pressing then "LENS" icon).
You can also visualize neuron states (select the
"Neuron parameters" option) and show energy of
network.
**********************************************
There's end of this "quick and dirty" documentation. I
hope that next versions of the Hopfield network
simulation will be much better (and my English too).
**********************************************
Author thanks Dr.Andrzej Nowak (Institute for Social
Studies, Warsaw University) for valuable disscusions
and suggestions and Andrzej Kamionek (Warsaw
University) for his opinion and hard beta testing.
**********************************************
HOPFIELD v.3.00 is FREEWARE program (no contributions
are expected).
If you have any questions, suggestions or problems
with Hopfield or you want to get new versions of
Hopfield (for example 400 neurons version) or more
informations (I know, this documentation is *VERY*
short) please send letter directly to me:
piro@chem.uw.edu.pl
with "HOPFIELD" subject.
**********************************************