Ich habe diese Verwirrung über die Armijo-Regel, die bei der Zeilensuche verwendet wird. Ich habe die Suche nach Verfolgungslinien zurückgelesen, aber nicht verstanden, worum es bei dieser Armijo-Regel geht. Kann jemand erläutern, was die Armijo-Regel ist? Die Wikipedia scheint nicht gut zu erklären. Vielen Dank
optimization
user34790
quelle
quelle
Antworten:
Sobald Sie eine Abstiegsrichtung für Ihre Zielfunktion f ( x ) erhalten , müssen Sie eine "gute" Schrittlänge wählen. Sie möchten keinen zu großen Schritt ausführen, sodass die Funktion an Ihrem neuen Punkt größer ist als der aktuelle Punkt. Gleichzeitig möchten Sie Ihren Schritt nicht so klein machen, dass die Konvergenz ewig dauert.p f(x)
Armijos Zustand legt im Grunde nahe, dass eine "gute" Schrittlänge so ist, dass Sie an Ihrem neuen Punkt eine "ausreichende Abnahme" von haben. Die Bedingung wird mathematisch wie gesagt f ( x k + α p k ) ≤ f ( x k ) + & bgr; α weiterempfehlen ∇ f ( x k ) T p k wobei p k ist eine Abstiegsrichtung in x k und & bgr; ∈ ( 0 , 1 ) .f
Die Intuition dahinter ist, dass der Funktionswert am neuen Punkt unter der reduzierten "Tangente" bei x k in Richtung von p k liegen sollte . Siehe Nocedal & Wrights Buch "Numerical Optimization". In Kapitel 3 finden Sie eine hervorragende grafische Beschreibung des ausreichenden Abnahmezustands von armijo.f(xk+αpk) xk pk
quelle
Fünf Jahre später ist diese Frage immer noch gültig.
Hier (Seiten 16 und 17) finden Sie eine großartige Erklärung, einschließlich eines Algorithmus.
quelle