Home > Doc > Reti Neurali su .... > Addestramento

Reti neurali su Personal Computer e Fuzzy Logic: Neurfuzz 1.0

Addestramento

La prima cosa che bisogna analizzare è il formato che devono avere i dati nel training file che, deve essere un normale file ascii organizzato con gli esempi in sequenza. Ciascuno è composto dalla sequenza degli input e degli output, come mostrato in tabella1. I valori devono essere normalizzati, cioè portati alla scala 0.0 -1.0 , e ciò è fattibile anche usando il tool "data normalization" presente nel menu alla voce "data preprocessing". Se si ha un file di dati non normalizzato, bisogna inserire i valori minimo e massimo contenuti nel file ed eseguire la normalizzazione.

Preparato il file normalizzato, è necessario definire il numero degli inputs, degli outputs (tipici del problema) e il numero dei neuroni di ognuno dei due strati hidden. Fatta questa operazione si può passare alla fase di addestramento vero e proprio con l'opzione "ebp learning" che chiederà il nome del training file, il numero degli esempi in esso contenuti, la costante di apprendimento(è opportuno scegliere valori intorno a 0.5) e il target error (un errore 0.05 rappresenta un errore del 5% e può andare molto bene in numerose applicazioni).

Durante la fase di addestramento vedrete l'errore, prodotto dalla rete in esecuzione, diminuire ad ogni epoca a causa delle correzioni effettuate sui pesi dall'algoritmo di retropropagazione degli errori. In un primo momento, potreste vedere che l'errore cresce anziché diminuire: questo fenomeno è dovuto ad uno stato confusionale che la rete ha inizialmente a causa della inizializzazione random dei valori dei pesi. Quando la rete raggiunge il target error ferma l'addestramento e, a questo punto, è possibile testare la rete con degli esempi.

tabella 1

0.2 input1 esempio 1

0.3 input 2

0.5 output 1

0.1 input 1 esempio 2

0.6 input 2

0.7 output1

sequenza dei dati nel file di addestramento

Luca Marchese

Successivo: Ambiente di Test

Sommario: Indice