Perché le funzioni di attivazione devono essere monotoniche?


15

Attualmente mi sto preparando per un esame sulle reti neurali. In diversi protocolli degli esami precedenti ho letto che le funzioni di attivazione dei neuroni (nei percetroni multistrato) devono essere monotoniche.

Comprendo che le funzioni di attivazione dovrebbero essere differenziabili, avere una derivata che non è 0 sulla maggior parte dei punti ed essere non lineare. Non capisco perché essere monotonici sia importante / utile.

Conosco le seguenti funzioni di attivazione e che sono monotoniche:

  • Relu
  • sigmoid
  • tanh
  • Softmax: non sono sicuro che la definizione di monotonicità sia applicabile per le funzioni conf:RnRmn,m>1
  • SoftPlus
  • (Identità)

Tuttavia, non riesco ancora a vedere alcun motivo per cui ad esempio .φ(x)=x2

Perché le funzioni di attivazione devono essere monotoniche?

(Domanda correlata: c'è qualche motivo per cui la funzione logaritmo / esponenziale non viene utilizzata come funzione di attivazione?)



1
@MartinThoma Sei sicuro che softmax sia monotonico?
Media

1
Grazie @ Media. Per rispondere alla tua domanda: non sono sicuro di cosa significhi "monotonico" anche per le funzioni in con . Per softmax è costante e quindi monotonico. Ma senza definire per gli elementi in con non credo che la monotonia abbia alcun senso. m > 1 m = 1 < R n n > 1f:RnRmm>1m=1<Rnn>1
Martin Thoma,

1
@MartinThoma Grazie, in realtà era anche una mia domanda. Non sapevo, e ancora non so, se esiste un'estensione per monotonic in funzioni con output multipli. Roba matematica, lo sai!
Media

Risposte:


13

Il criterio di monotonicità aiuta la rete neurale a convergere più facilmente in un classificatore più accurato. Vedi questa risposta di stackexchange e l' articolo di Wikipedia per ulteriori dettagli e motivi.

Tuttavia, il criterio di monotonicità non è obbligatorio per una funzione di attivazione - È anche possibile addestrare reti neurali con funzioni di attivazione non monotoniche. È sempre più difficile ottimizzare la rete neurale. Vedi la risposta di Yoshua Bengio .


-1

Fornirò una ragione più matematica sul perché avere una funzione monotona aiuta!

Utilizzando http://mathonline.wikidot.com/lebesgue-s-theorem-for-the-differentiability-of-monotone-fun , supponendo che la nostra funzione di attivazione sia monotona, possiamo dire che sulla linea reale, la nostra funzione sarà differenziabile. Pertanto, il gradiente della funzione di attivazione non sarà una funzione erratica. Sarà più facile trovare i minimi che stiamo cercando. (computazionalmente economico)

Le funzioni esponenziali e logaritmiche sono belle funzioni ma non sono limitate (Quindi, il contrario del teorema di Lebesgue non è vero in quanto Exp e Log sono funzioni differenziabili che non sono limitate sulla linea reale). Quindi falliscono quando vogliamo classificare i nostri esempi nella fase finale. Sigmoide e tanh funzionano davvero bene perché hanno pendenze che sono facili da calcolare e la loro gamma è rispettivamente (0,1) e (-1,1).


2
Esistono infinite funzioni differenziabili, ma non monotone. Quindi perché avere una funzione monotona aiuta?
Martin Thoma,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.