Definizione
Con Backpropagation ci si riferisce ad un algoritmo di ottimizzazione utilizzato per addestrare le reti neurali artificiali, aggiornando iterativamente i pesi dei neuroni in base all’errore commesso dalla rete nella predizione.
L’algoritmo segue quattro fasi principali:
- Forward Pass: i dati di input attraversano la rete, producendo un output
- Calcolo dell’errore: si confronta l’output con il valore atteso utilizzando una funzione di “loss”
- Backward Pass (propagazione dell’errore): l’errore viene propagato all’indietro attraverso la rete, calcolando il contributo di ciascun peso all’errore complessivo sfruttando la funzione di loss del punto precedente
- Aggiornamento dei pesi: i pesi vengono aggiornati utilizzando un optimizer (ottimizzatore) per ridurre progressivamente l’errore
Tutti assieme l’esecuzione di questi passi costituisce una cosiddetta “epoca”. Solitamente le reti neurali artificiali vengono addestrate per molte epoche, anche centinaia, valutando quando fermare l’addestramento tramite diversi criteri computazionali.