APPROFONDIMENTO

L’addestramento di una rete neurale

L’addestramento di una rete neurale
 

L’addestramento è la fase in cui una rete neurale impara a svolgere il suo compito.
In questa fase è necessario fornire degli esempi dai quali la rete deve imparare; questi sono coppie input/output e servono a far vedere alle rete come deve reagire di fronte a specifici dati in ingresso. Quando la rete impara a partire da tali esempi si parla di apprendimento supervisionato.
Più in dettaglio, una rete è un modello matematico il cui output è regolato da molti parametri (i pesi dei segnali ricevuti da ogni neurone).  In fase di addestramento si vanno a tarare progressivamente questi parametri in modo che sempre di più l’output della rete a fronte di un certo input si avvicini a quello desiderato. Per ottenere ciò serve una funzione, detta di costo, che quantifichi la discrepanza tra l’output nell’esempio e quello realmente prodotto dalla rete. Esistono vari tipi di funzione di costo come ad esempio l’errore quadratico medio e la scelta di quale utilizzare dipende dal compito che la rete deve imparare a svolgere. I punti di minimo di questa funzione devono corrispondere a valori dei parametri che permettono alla rete di produrre output molto vicini a quelli desiderati ovvero di svolgere al meglio il proprio compito.
Come meccanismo per variare i parametri della rete man mano che gli vengono forniti gli esempi disponibili si utilizza la tecnica della discesa del gradiente o una sua variante. La funzione di costo è assimilabile al profilo di una montagna e il gradiente ne indica la pendenza. Variare i parametri in modo da muovermi verso la discesa più ripida è un ottimo modo per raggiungere in fretta il fondo valle ovvero il minimo della funzione.
Il libro online [Michael A. Nielsen, Neural Networks and Deep Learning, http://neuralnetworksanddeeplearning.com/] fornisce una valida introduzione all’argomento.

 

Skjalg Lepsøy
 

Torna all'articolo