Praktikum OOP 1998.

Martin van Estrik
0515965
nimartin@nat.vu.nl
VU Amsterdam
Natuurkunde 1994

Joost Vunderink
0516546
jvunder@cs.vu.nl
VU Amsterdam
Natuurkunde 1994



"Your Own Neural Net."


Onze vorige synopsis, of meer ons vorige idee, was een beetje te hoog
gegrepen. Vandaar dat we nu een nieuwe synopsis hebben geschreven.

Met behulp van ons programma kun je een neuraal netwerk maken. Als je 
het af hebt kun je er input ingooien om te zien wat er uit komt. Ook
is het mogelijk een trainingsset te definieren en het neurale netwerk
te laten leren aan de hand van die trainingsset.
We hebben gekozen voor een Back-Propagation Net. Dit is een neuraal
net dat leert door de uitvoer bij bepaalde invoer te vergelijken met
de correcte uitvoer bij die invoer en dan de wegingscoefficienten
volgens een bepaalt algoritme aanpast om dichter bij de juiste uitvoer
te komen.

In ieder geval komen er de mogelijkheden New, Load en Save Neural
Net in. Je kunt nieuwe neuronen toevoegen of ze weghalen; ook
hele lagen kun je toevoegen of weghalen en verder kun je de sterkte
van verbindingen handmatig veranderen.
Trainingssets kun je laden, bewaren en veranderen. Als je ze naar
wens hebt veranderd kun je, mits het neuraal netwerk het goede aantal
inputs en outputs hebt, de training beginnen. Ook kun je gewoon een
invoer op het netwerk zetten en zien wat er uitkomt.


We programmeren het geheel in Java.
De gebruikte classes zijn in ieder geval:
Neuron, NeuronLayer,WeightMatrix, NeuralNet, Pattern,
        BackPropagationNet: van internet (zie onder);
Preferences: houdt de instellingen bij;
TrainingsSet: een trainings-set, overgeerfd van Pattern;
LoadAndSaveFile: om netwerk/trainingssets te laden en te bewaren,
                 overgeerfd van FileDialog;
Misschien nog een uitbreiding van Neuron naar DisplayableNeuron
of iets dergelijks zodat je hem direct op het scherm kunt zetten.



Opmerking: de gebruikte netwerk-classes zijn hier te vinden:


http://rfhs8012.fh-regensburg.de/~saj39122/jfroehl/diplom/e-index.html