Regola delta

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da Delta rule)
Vai alla navigazione Vai alla ricerca

La regola delta (delta rule) è una regola di discesa del gradiente per aggiornare i pesi dei segnali di input che giungono ad un percettrone.[1] Si tratta di un caso particolare del più generale algoritmo di retropropagazione.

Enunciato[modifica | modifica wikitesto]

Per un neurone con una funzione d'attivazione , la regola delta per l'-esimo peso è data da

,

dove

è una costante piccola chiamata tasso di apprendimento (learning rate)
è la funzione d'attivazione del neurone e la sua derivata
è l'output desiderato
è la somma pesata degli input al neurone
è l'output vero
è l'-esimo input.

Valgono: e .

La regola delta è spesso semplificata se la funzione d'attivazione è lineare come

mentre la regola delta è simile alla regola di aggiornamento del percettrone, come si ricava la regola è diverso. Il percettrone usa la funzione gradino di Heaviside come funzione d'attivazione , il che significa che non esiste in zero, e che è uguale a zero altrove, e ciò rende l'applicazione diretta della regola impossibile.

Derivazione della regola delta[modifica | modifica wikitesto]

La regola delta si ricava a partire dalla minimizzazione dell'errore sull'output della rete neurale tramite la discesa del gradiente. L'errore per una rete neurale con output può essere misurato come

.

In questo caso, occorre muoversi nello "spazio dei pesi" del neurone (lo spazio di tutti i valori che possono assumere i pesi) in proporzione al gradiente della funzione d'errore rispetto a ogni peso. Per fare ciò, si calcola la derivata parziale dell'errore rispetto a ogni peso. Per l'-esimo peso, la derivata è

.

dove è stata omessa la sommatoria siccome la derivata è relativa al -esimo neurone.

Il calcolo procede con l'applicazione della regola della catena:

mentre la derivata rimanente si calcola ancora con la regola della catena, ma derivando rispetto all'intero input di , ovvero :

Si noti che l'output del -esimo neurone, , è semplicemente la funzione d'attivazione del neurone applicata al suo input . Si può quindi scrivere la derivata di rispetto a semplicemente come la derivata prima di :

A questo punto, si riscrive nell'ultimo termine come la somma su tutti i pesi di ogni peso moltiplicati per il loro input corrispondente :

Poiché interessa solamente l'-esimo peso, l'unico termine della sommatoria che è rilevante è . Chiaramente,

,

portando all'equazione finale per il gradiente:

Come evidenziato sopra, la discesa del gradiente dice che la variazione di ciascun peso deve essere proporzionale al gradiente La scelta di una costante di proporzionalità e l'eliminazione del segno meno (siccome si cerca la direzione che diminuisce il gradiente), permettono di arrivare all'equazione cercata:

.

Note[modifica | modifica wikitesto]

  1. ^ The Delta Rule, su uhavax.hartford.edu. URL consultato il 20 luglio 2022 (archiviato dall'url originale il 4 marzo 2016).

Bibliografia[modifica | modifica wikitesto]

  • Tom Mitchell, Machine Learning, McGraw Hill, 1997.
  • Ben Krose, Patrick van der Smagt, An Introduction to Neural Networks, The University of Amsterdam

Voci correlate[modifica | modifica wikitesto]

  Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica