invarianza di scala per algoritmi di ricerca di linee e aree di fiducia


11

Nel libro di Nocedal & Wright sull'ottimizzazione numerica, c'è un'affermazione nella sezione 2.2 (pagina 27), "In generale, è più facile preservare l'invarianza della scala per gli algoritmi di ricerca di linea piuttosto che per gli algoritmi della regione di fiducia". In quella stessa sezione, parlano di avere nuove variabili che sono versioni ridimensionate delle variabili originali, che possono aiutare sia con la ricerca di linee che con la regione di fiducia. Un altro approccio è il precondizionamento. Per i metodi delle aree di fiducia, il precondizionamento equivale ad avere regioni di fiducia ellittiche e quindi fornisce invarianza di scala. Tuttavia, un'intuizione simile non è chiara per il precondizionamento per la ricerca di linee. In che modo la ricerca di linee è più adatta all'invarianza di scala? Ci sono alcune considerazioni pratiche?

Inoltre, ho una domanda relativa al precondizionamento per i metodi della regione di fiducia. Per un problema fortemente condizionato, un buon precondizionatore ridurrà sia il numero di iterazioni esterne di Newton sia le iterazioni CG interne o solo quest'ultima? Dal momento che la regione di fiducia è ellissoidale nello spazio originale, un buon precondizionatore dovrebbe portare a un ellissoide che corrisponderà meglio al paesaggio. Ritengo che ciò potrebbe ridurre il numero di iterazioni esterne di Newton forzando l'algoritmo a prendere direzioni migliori. È giusto?

Risposte:


2

Suppongo che potrebbe esserci qualche differenza tra il modo in cui i metodi di ricerca di linea e di area di fiducia gestiscono il ridimensionamento, ma in realtà non lo vedo concretamente finché siamo consapevoli del ridimensionamento. E, per essere chiari, il libro di Nocedal e Wright parlava del ridimensionamento affine. Il ridimensionamento non lineare è alquanto più difficile da quantificare.

f:XRAL(X)J:XR

J(x)=f(Ax)J(x)=Af(Ax)2J(x)=A2f(Ax)A
A
2J(x)δx=J(x)
A2f(Ax)Aδx=Af(Ax)
Aδx=2f(Ax)1f(Ax)

Hδx=J(x)
H
Hδx=Af(Ax)
AH

ϕ

δx=ϕ(Af(Ax))
ϕϕϕA

2J(x)δx=J(x)
usando in modo inesatto CG. Questo sta precisamente usando Steihaug-Toint nell'impostazione della regione di fiducia (p. 171 in Nocedal e Wright) o Newton-CG per la ricerca di linee (p. 169 in Nocedal e Wright). Funzionano abbastanza vicino allo stesso e non si preoccupano del ridimensionamento affine. Inoltre, non richiedono la memorizzazione dell'Assia, sono richiesti solo i prodotti vettoriali dell'Assia. In realtà, questi algoritmi dovrebbero essere i cavalli di battaglia per la maggior parte dei problemi e non si preoccupano del ridimensionamento affine.

Per quanto riguarda il precondizionatore per il problema della regione di fiducia, non penso che ci sia un modo semplice per dire ad Apriori se hai intenzione di migliorare il numero di iterazioni di ottimizzazione complessive o meno. In realtà, alla fine della giornata, i metodi di ottimizzazione funzionano in due modi. Nella modalità uno, siamo troppo lontani dal raggio di convergenza del metodo di Newton, quindi globalizziamo e costringiamo semplicemente gli iterati a garantire che l'obiettivo scenda. La regione di fiducia è un modo. La ricerca in linea è un'altra. Nella seconda modalità, siamo nel raggio di convergenza del metodo di Newton, quindi cerchiamo di non rovinarci e lasciamo che il metodo di Newton faccia il suo lavoro. In effetti, possiamo vederlo nelle prove di convergenza di cose come i metodi della regione di fiducia. Ad esempio, guarda il Teorema 4.9 (p.93 in Nocedal e Wright). In modo molto esplicito, affermano come la regione di fiducia diventa inattiva. In questo contesto, qual è l'utilità del precondizionatore? Certamente, quando ci troviamo nel raggio di convergenza del metodo di Newton, facciamo molto meno lavoro e il numero di iterazioni CG diminuisce. Cosa succede quando siamo al di fuori di questo raggio? In un certo senso dipende. Se calcoliamo l'intero passaggio di Newton, il vantaggio è che abbiamo svolto meno lavoro. Se interrompiamo presto il nostro passo a causa del troncamento da CG troncato, la nostra direzione sarà nel sottospazio di Krylov

{PJ(x),(PH)(PJ(x)),,(PH)k(PJ(x))}
PH
{J(x),(H)(J(x)),,(H)k(J(x))}?

Questo non significa che non ci sia valore nel definire un buon precondizionatore. Tuttavia, non sono sicuro di come qualcuno definisca un precondizionatore per aiutare nell'ottimizzazione per distanziare il raggio di convergenza del metodo di Newton. Tipicamente, progettiamo un precondizionatore per raggruppare gli autovalori dell'approssimazione dell'Assia, che è un obiettivo tangibile e misurabile.

TLDR; In pratica, ci sono molti modi in cui un metodo di ricerca di linee può generare un iterato rispetto a un metodo di trust region, quindi è possibile che ci sia un modo fantastico per gestire il ridimensionamento affine. Tuttavia, basta usare un metodo Newton inesatto e non importa. Un precondizionatore influisce sulle prestazioni di un algoritmo lontano dal raggio di convergenza del metodo di Newton, ma è difficile quantificare il modo, quindi basta progettare un precondizionatore per raggruppare gli autovalori dell'approssimazione di Hessiasn.

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.