2015-12-26 13 views

risposta

12

Il (Heaviside) step function è in genere utile solo all'interno di single-layer perceptrons, un tipo iniziale di reti neurali che può essere utilizzato per la classificazione nei casi in cui i dati di input sono linearly separable.

Tuttavia, multi-layer neural networks or multi-layer perceptrons sono di maggiore interesse in quanto sono approssimatori di funzione generale e sono in grado di distinguere i dati che non sono linearmente separabili.

I percettori multistrato vengono addestrati utilizzando backpropapagation. Un requisito per il backpropagation è una funzione di attivazione differentiable. Questo perché backpropagation utilizza gradient descent su questa funzione per aggiornare i pesi della rete.

La funzione gradino di Heaviside non è derivabile in x = 0 e la sua derivata è altrove. Ciò significa che la discesa del gradiente non sarà in grado di fare progressi nell'aggiornamento dei pesi e la backpropagation fallirà.

Il sigmoid or logistic function non presenta questa mancanza e questo spiega la sua utilità come funzione di attivazione nel campo delle reti neurali.

0

Dipende dal problema che si sta trattando. In caso di semplice classificazione binaria, una funzione di passaggio è appropriata. I sigmoidi possono essere utili quando si costruiscono reti biologicamente più realistiche introducendo rumore o incertezza. Un altro uso, ma decisamente diverso, dei sigmoidi è per la continuazione numerica, cioè quando si eseguono analisi di biforcazione rispetto ad alcuni parametri nel modello. La continuazione numerica è più semplice con sistemi fluidi (e molto difficile con quelli non uniformi).

+0

Penso che il caso più comune per l'attivazione sigmoide sia semplicemente la regressione. – runDOSrun