La discesa del gradiente può essere applicata a funzioni non convesse?


18

Sto solo imparando l'ottimizzazione e ho difficoltà a capire la differenza tra ottimizzazione convessa e non convessa. Secondo la mia comprensione, una funzione convessa è quella in cui "il segmento di linea tra due punti qualsiasi sul grafico della funzione si trova sopra o sul grafico". In questo caso, è possibile utilizzare un algoritmo di discesa gradiente, poiché esiste un minimo minimo e i gradienti ti porteranno sempre a quel minimo.

Tuttavia, per quanto riguarda la funzione in questa figura:

inserisci qui la descrizione dell'immagine

Qui, il segmento della linea blu incrocia sotto la funzione rossa. Tuttavia, la funzione ha ancora un minimo minimo, quindi la discesa del gradiente ti porterebbe ancora a questo minimo.

Quindi le mie domande sono:

1) La funzione in questa figura è convessa o non convessa?

2) Se non è convesso, si possono ancora applicare metodi di ottimizzazione convessa (discesa gradiente)?

Risposte:


21

La funzione che hai rappresentato non è davvero convessa. Tuttavia, è quasiconvex .

X1,X2,...f(X1)>f(X2)>...

La discesa gradiente converge infine in un punto fermo della funzione, indipendentemente dalla convessità. Se la funzione è convessa, questo sarà un minimo globale, ma in caso contrario, potrebbe essere un minimo locale o addirittura un punto di sella.

f(X)=X3


5

Paolo ha già menzionato un punto importante:

  • se f è convesso non ci sono punti di sella e anche tutti i minimi locali sono globali. Pertanto GD (con una misura adatta) è garantito per trovare un minimizer globale.

Ciò che rende difficile l'ottimizzazione non convessa è la presenza di punti di sella e minimi locali, dove il gradiente è (0, ..., 0) e che hanno un valore obiettivo arbitrariamente negativo.

Trovare il minmizer globale in una tale impostazione è generalmente NP-difficile e si risolve invece con l'obiettivo di trovare un minimizer locale.

Tuttavia, si noti che:

  • La probabilità che GD si blocchi su una sella è in realtà 0 ( vedi qui ).
  • Tuttavia, la presenza di punti di sella potrebbe rallentare drasticamente i GD perché le direzioni di bassa curvatura vengono sfruttate troppo lentamente ( vedi qui )

A seconda della dimensionalità del problema, potrebbe quindi essere consigliabile optare per una routine di ottimizzazione di secondo ordine.

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.