Home > Doc > Reti Neurali su .... > Capitolo 2

Reti neurali su Personal Computer e Fuzzy Logic: Guida al software allegato

Capitolo 2

Nella directory cap.2 si trovano i seguenti files:

- backprop.c: sorgente in linguaggio C della rete neurale error back propagation backprop.exe.

- backprop.exe: programma di simulazione di una rete neurale a retropropagazione dell errore con due strati nascosti.

- profil.lrn: file contenente gli esempi di addestramento della rete inerenti al problema "giocattolo" del riconoscimento di profili altimetrici: un esempio è raffigurato in tab.1.

- profil.val: file contenente gli esempi del validation set necessari alla verifica della capacità di generalizzazione della rete dopo l'apprendimento.

- profil.wgh: contiene i valori sinaptici della rete dopo un addestramento sul file profil.lrn e può essere direttamente caricato con la funzione "load" (la rete risulta come addestrata).

La prima operazione che bisogna eseguire è quella di definire il numero di inputs e outputs(determinati dal problema) e il numero di neuroni per ognuno degli strati hidden: nel capitolo è stato presentato un esempio in cui si sono utilizzati cinque neuroni per ogni strato hidden.

Il problema dei profili altimetrici nel file profil.lrn presenta cinque inputs ma si possono creare altri files con più inputs e per problemi differenti. Dopo tale passo si può procedere all'addestramento fornendo il nome del file contenente gli esempi, il valore desiderato per il tasso di apprendimento (consigliabile intorno a 0.5), il numero di epoche che devono essere eseguite senza pausa e il valore di errore che si desidera raggiungere (esempio target error =0.03 indica errore del 3%). Una volta raggiunto l'errore desiderato si può testare la rete inserendo dei dati nel file di input: tramite l'editor interno si editi il file "net.in" inserendo dei dati inerenti all'addestramento come mostrato in tab.2.

TAB.2

esempio di file input con un profilo altimetrico a cinque valori che rappresenta un "monte".

0.2

0.4

0.8

0.5

0.2

Dopo avere salvato il file net.in ed eseguito la rete con la funzione "exec" si può editare il file "net.out" per verificare il risultato. Quando è stato terminato un valido addestramento è bene salvare il contenuto dei collegamenti sinaptici in un file che potrà essere ricaricato in ogni momento senza dover ripetere il processo di apprendimento: le funzioni "save" e "load" permettono, rispettivamente, queste due operazioni.

 

Luca Marchese

Successivo: Capitolo 3

Sommario: Indice