Quando si immette un vettore x
in rete, la rete fornirà un'uscita dipendente da tutti i pesi (vettore w
). Ci sarebbe un errore tra l'output e la risposta vera. L'errore medio (e
) è una funzione di w
, diciamo e = F(w)
.Supponiamo di avere network-bidimensionale uno strato, poi l'immagine di F
può apparire come segue:
Quando si parla di formazione, stiamo parlando di trovare il w
che rende il minimo e
. In un'altra parola, stiamo cercando il minimo di una funzione. Per addestrare è cercare.
Quindi, la domanda è come scegliere il metodo da cercare. Il mio suggerimento sarebbe: Dipende da come la superficie di F(w)
assomiglia a. Più è vaga, più dovrebbe essere usato il metodo randomizzato, perché il metodo semplice basato sul gradiente discendente avrebbe maggiori possibilità di guidarti intrappolato da un minimo locale, quindi perdi la possibilità di trovare il minimo globale. Dall'altro lato, se la superficie di F(w)
sembra un grande pozzo, allora dimentica l'algoritmo genetico. In questo caso, una semplice propagazione del dorso o qualsiasi cosa basata sulla discesa del gradiente sarebbe molto buona.
Si può chiedere che come posso sapere come la superficie assomiglia a? Questa è una capacità di esperienza. O potresti voler campionare a caso alcuni w
e calcolare F(w)
per ottenere una vista intuitiva della superficie.