Algoritmi di ottimizzazione Reti neurali 101

Algoritmi di ottimizzazione per reti neurali Guida introduttiva

Come migliorare l’addestramento oltre l’algoritmo di discesa del gradiente “vanilla”

https://www.flaticon.com/free-icons/neural-network.icone di reti neurali. Icone di reti neurali create da andinur - Flaticon.

Contesto

Nel mio ultimo articolo, abbiamo discusso di come migliorare le prestazioni delle reti neurali attraverso l’tuning degli iperparametri:

Tuning degli Iperparametri: Reti Neurali 101

Come puoi migliorare l'”apprendimento” e l'”addestramento” delle reti neurali tramite il tuning degli iperparametri

towardsdatascience.com

Si tratta di un processo mediante il quale i migliori iperparametri, come il tasso di apprendimento e il numero di strati nascosti, vengono “tuning” per trovare quelli più ottimali per la nostra rete al fine di migliorarne le prestazioni.

Purtroppo, questo processo di tuning per le grandi reti neurali profonde (deep learning) è estremamente lento. Un modo per migliorare ciò è utilizzare ottimizzatori più veloci rispetto al tradizionale metodo di discesa del gradiente “vanilla”. In questo articolo, approfondiremo gli ottimizzatori più popolari e le varianti della discesa del gradiente che possono migliorare la velocità di addestramento e la convergenza e li confronteremo in PyTorch!

Se stai apprezzando questo articolo, assicurati di iscriverti al mio canale YouTube!

Clicca sul link per tutorial video che ti insegnano concetti fondamentali di data science in modo comprensibile!

Egor Howell

Data Scientist attualmente residente a Londra. Condivido tutorial di data science, consigli e argomenti tecnologici in generale! Connettiti con…

www.youtube.com

Riepilogo: Discesa del Gradiente

Prima di approfondire, facciamo un breve ripasso delle nostre conoscenze sulla discesa del gradiente e la teoria alla base.

Lo scopo della discesa del gradiente è aggiornare i parametri del modello sottraendo il gradiente (derivata parziale) del parametro rispetto alla funzione di perdita. Un tasso di apprendimento, α, serve a regolare questo processo per garantire che l’aggiornamento dei parametri avvenga su una scala ragionevole e non vada troppo oltre o troppo al di sotto del valore ottimale.

  • θ sono i parametri del modello.