σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsSkills
Ctrl K
AO
+1,2 Tsd. Lernende
AnmeldenBeitreten ↗
RoadmapsSkills
AO
+1,2 Tsd. Lernende
Anmelden
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsSkills
Ctrl K
AO
+1,2 Tsd. Lernende
AnmeldenBeitreten ↗
RoadmapsSkills
AO
+1,2 Tsd. Lernende
Anmelden
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Optimization-Skill›Modul 3 · Konvexität und Krümmung›Thema 3.2·~55 Min.Mittelstufe

Newton- und Quasi-Newton-Verfahren

Position in der SkillModul 3 von 5 · Thema 2 von 2
3.2 Newton- und Quasi-Newton-Verfahren
—Lab-Punkte— / 100XP gesamt—Serie—

Die Krümmung nutzen

Das Gradientenverfahren kennt nur die Steigung. Das Newton-Verfahren nutzt auch die Krümmung: Es ersetzt fff nahe dem aktuellen Punkt durch die Quadrik mit gleichem Wert, Gradienten und gleicher Hesse-Matrix und springt direkt zu deren Minimum. Der Schritt ist w←w−H−1g\mathbf w\leftarrow\mathbf w-H^{-1}\mathbf gw←w−H−1g. Bei einer exakt quadratischen Funktion trifft das das Minimum in einem einzigen Schritt, egal wie die Konditionszahl ist. In der Nähe des Minimums jeder glatten Funktion ist die Konvergenz quadratisch: Der Fehler wird pro Schritt etwa quadriert, die Zahl korrekter Stellen verdoppelt sich also ungefähr.

wk+1=wk−H(wk)−1∇f(wk),∥wk+1−w∗∥ ≲ C ∥wk−w∗∥2\mathbf w_{k+1}=\mathbf w_k-H(\mathbf w_k)^{-1}\nabla f(\mathbf w_k),\qquad \lVert\mathbf w_{k+1}-\mathbf w^{*}\rVert\ \lesssim\ C\,\lVert\mathbf w_k-\mathbf w^{*}\rVert^{2}wk+1​=wk​−H(wk​)−1∇f(wk​),∥wk+1​−w∗∥ ≲ C∥wk​−w∗∥2(1)
Newton auf e^x − 2xMinimiere f(x)=ex−2xf(x)=e^x-2xf(x)=ex−2x, deren Minimum bei x∗=ln⁡2=0.693147x^{*}=\ln2=0.693147x∗=ln2=0.693147 liegt. Hier ist f′=ex−2f'=e^x-2f′=ex−2 und f′′=exf''=e^xf′′=ex. Ab x0=0x_0=0x0​=0: x1=0−(−1)/1=1x_1=0-(-1)/1=1x1​=0−(−1)/1=1, dann x2=1−0.7183/2.7183=0.7358x_2=1-0.7183/2.7183=0.7358x2​=1−0.7183/2.7183=0.7358, x3=0.6940x_3=0.6940x3​=0.6940 und x4=0.693148x_4=0.693148x4​=0.693148. Die Fehler 0.307, 0.0426, 0.0009, 4⋅10−70.307,\ 0.0426,\ 0.0009,\ 4\cdot10^{-7}0.307, 0.0426, 0.0009, 4⋅10−7 schrumpfen schneller als mit jedem festen Faktor. In zwei Variablen gilt für f=(x−1)2+2(y+2)2f=(x-1)^2+2(y+2)^2f=(x−1)2+2(y+2)2 bei (3,0)(3,0)(3,0): g=(4,8)\mathbf g=(4,8)g=(4,8) und H=diag(2,4)H=\mathrm{diag}(2,4)H=diag(2,4), der Schritt ist −H−1g=(−2,−2)-H^{-1}\mathbf g=(-2,-2)−H−1g=(−2,−2), und ein Schritt erreicht das Minimum (1,−2)(1,-2)(1,−2).

Das Newton-Verfahren hat einen Preis. Bei nnn Parametern hat die Hesse-Matrix n2n^2n2 Einträge, und das Lösen mit ihr kostet etwa n3n^3n3 Operationen, das ist bei Hunderten Parametern in Ordnung und bei Millionen unmöglich. Weit vom Minimum entfernt oder wo HHH nicht positiv definit ist, kann der Newton-Schritt sogar bergauf zeigen, deshalb dämpfen praktische Varianten ihn mit einer Liniensuche. Quasi-Newton-Verfahren behalten den Großteil der Geschwindigkeit ohne die Kosten. BFGS baut aus den beobachteten Änderungen s=wk+1−wk\mathbf s=\mathbf w_{k+1}-\mathbf w_ks=wk+1​−wk​ und y=gk+1−gk\mathbf y=\mathbf g_{k+1}-\mathbf g_ky=gk+1​−gk​ eine Näherung der inversen Hesse-Matrix auf und erzwingt die Sekantenbedingung Bs=yB\mathbf s=\mathbf yBs=y. Es braucht nur Gradienten, kostet O(n2)O(n^2)O(n2) pro Schritt und konvergiert superlinear. L-BFGS speichert nur die letzten mmm Paare, typischerweise 5 bis 20, der Speicher ist also O(mn)O(mn)O(mn). Es ist das übliche Arbeitspferd für glatte Kalibrierungen und Maximum-Likelihood-Schätzungen, etwa die Standardoptimierer in SciPy.

  • Newton: w←w−H−1g\mathbf w\leftarrow\mathbf w-H^{-1}\mathbf gw←w−H−1g; ein Schritt bei einer Quadrik, quadratische Konvergenz nahe dem Minimum.
  • BFGS: lernt aus Gradientendifferenzen eine Näherung der inversen Hesse-Matrix, ohne zweite Ableitungen.
  • L-BFGS: speichert nur die letzten Paare und skaliert daher auf viele Parameter.
Newton braucht eine AbsicherungReines Newton kann von einem schlechten Startpunkt aus überschießen oder divergieren. Bibliotheken ergänzen eine Liniensuche oder einen Vertrauensbereich und fallen auf einen Gradientenschritt zurück, wenn die Hesse-Matrix nicht positiv definit ist. Schreiben Sie für eine Kalibrierung keine nackte Newton-Schleife ohne diese Schutzmaßnahmen.

Lab: Was bewertet wird

  • Der erste Newton-Schritt15 Pkt.
  • Der zweite Newton-Schritt15 Pkt.
  • Ein Newton-Schritt in zwei Variablen15 Pkt.
  • Schritte bei einer Quadrik15 Pkt.
  • Die Sekantenbedingung15 Pkt.
  • Methoden und Ideen10 Pkt.
  • Warum exaktes Newton bei riesigen Problemen vermieden wird15 Pkt.
0/ 7 beantwortet
Aufgaben
1Numerische Antwort15 Pkt.Nicht beantwortet

Minimieren Sie f(x)=ex−2xf(x)=e^x-2xf(x)=ex−2x mit dem Newton-Verfahren ab x0=0x_0=0x0​=0. Mit f′=ex−2f'=e^x-2f′=ex−2 und f′′=exf''=e^xf′′=ex: Wie groß ist x1x_1x1​?

x1=x1 =x1=akzeptiert: ± 0.01
2Numerische Antwort15 Pkt.Nicht beantwortet

Machen Sie ab x1=1x_1=1x1​=1 weiter. Mit e1=2.71828e^1=2.71828e1=2.71828: Wie groß ist x2x_2x2​? Geben Sie vier Dezimalstellen an.

x2=x2 =x2=akzeptiert: ± 0.001
3Numerische Antwort15 Pkt.Nicht beantwortet

Für f=(x−1)2+2(y+2)2f=(x-1)^2+2(y+2)^2f=(x−1)2+2(y+2)2 ist der Gradient bei (3,0)(3,0)(3,0) gleich (4,8)(4,8)(4,8) und H=diag(2,4)H=\mathrm{diag}(2,4)H=diag(2,4). Wie groß ist die yyy-Koordinate nach einem Newton-Schritt?

y=y =y=akzeptiert: ± 0.01
4Auswahl15 Pkt.Nicht beantwortet

Wie viele Newton-Schritte braucht man, um eine streng konvexe quadratische Funktion exakt zu minimieren?

5Auswahl15 Pkt.Nicht beantwortet

Mit s=wk+1−wk\mathbf s=\mathbf w_{k+1}-\mathbf w_ks=wk+1​−wk​ und y=gk+1−gk\mathbf y=\mathbf g_{k+1}-\mathbf g_ky=gk+1​−gk​: Welche Beziehung erzwingt die BFGS-Näherung BBB der Hesse-Matrix?

6Zuordnen10 Pkt.Nicht beantwortet

Ordnen Sie jeder Methode ihre Kernidee zu.

Wähle den Partner für jedes Element links.

Gradientenverfahren
Newton
BFGS
L-BFGS
7In Worten erklären15 Pkt.Nicht beantwortet

Erklären Sie in ein bis zwei Sätzen, warum das exakte Newton-Verfahren bei Problemen mit Millionen Parametern nicht verwendet wird.

Mathe-ModusEingabe per Tastatur oder LaTeXAufgabe 1 von 7 · Strg ⏎ zum Prüfen

Melde dich an, um deinen Code auszuführen.

Alle Lektionen kannst du kostenlos lesen. Erstelle ein Konto oder melde dich an, um Code auszuführen, Tests zu starten und dieses Lab abzugeben.

  • IDE im Browser mit Bash-Terminal — nichts zu installieren
  • Sofortige Bewertung, XP und dein Platz auf der Skill
Konto erstellenAnmelden
ODER
Weiter mit GitHub