σμ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 AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • 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 AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Parcours Optimization›Module 3 · Convexité et courbure›Sujet 3.2·~55 minIntermédiaire

Méthodes de Newton et quasi-Newton

Position dans le parcoursModule 3 sur 5 · Sujet 2 sur 2
3.2 Méthodes de Newton et quasi-Newton
—Score du lab— / 100XP total—Série—

Utiliser la courbure

La descente de gradient ne connaît que la pente. La méthode de Newton utilise aussi la courbure : elle remplace fff près du point courant par la quadratique de même valeur, même gradient et même hessienne, et saute directement au minimum de cette quadratique. Le pas est w←w−H−1g\mathbf w\leftarrow\mathbf w-H^{-1}\mathbf gw←w−H−1g. Sur une fonction exactement quadratique, cela tombe sur le minimum en un seul pas, quel que soit le conditionnement. Près du minimum d'une fonction lisse, la convergence est quadratique : l'erreur est à peu près élevée au carré à chaque pas, donc le nombre de chiffres exacts double environ.

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 sur e^x − 2xMinimisons f(x)=ex−2xf(x)=e^x-2xf(x)=ex−2x, de minimum en x∗=ln⁡2=0.693147x^{*}=\ln2=0.693147x∗=ln2=0.693147. Ici f′=ex−2f'=e^x-2f′=ex−2 et f′′=exf''=e^xf′′=ex. Depuis x0=0x_0=0x0​=0 : x1=0−(−1)/1=1x_1=0-(-1)/1=1x1​=0−(−1)/1=1, puis 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 et x4=0.693148x_4=0.693148x4​=0.693148. Les erreurs 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 diminuent plus vite que tout facteur fixe. En deux variables, pour f=(x−1)2+2(y+2)2f=(x-1)^2+2(y+2)^2f=(x−1)2+2(y+2)2 en (3,0)(3,0)(3,0) on a g=(4,8)\mathbf g=(4,8)g=(4,8) et H=diag(2,4)H=\mathrm{diag}(2,4)H=diag(2,4), donc le pas est −H−1g=(−2,−2)-H^{-1}\mathbf g=(-2,-2)−H−1g=(−2,−2) et un seul pas atteint le minimum (1,−2)(1,-2)(1,−2).

La méthode de Newton a un prix. Avec nnn paramètres la hessienne a n2n^2n2 entrées et résoudre avec elle coûte environ n3n^3n3 opérations : correct pour des centaines de paramètres, impossible pour des millions. Loin du minimum, ou là où HHH n'est pas définie positive, le pas de Newton peut même monter ; les versions pratiques l'amortissent donc par une recherche linéaire. Les méthodes quasi-Newton gardent l'essentiel de la vitesse sans le coût. BFGS construit une approximation de l'inverse de la hessienne à partir des variations observées s=wk+1−wk\mathbf s=\mathbf w_{k+1}-\mathbf w_ks=wk+1​−wk​ et y=gk+1−gk\mathbf y=\mathbf g_{k+1}-\mathbf g_ky=gk+1​−gk​, en imposant la condition sécante Bs=yB\mathbf s=\mathbf yBs=y. Elle n'utilise que des gradients, coûte O(n2)O(n^2)O(n2) par pas et converge de façon superlinéaire. L-BFGS ne stocke que les mmm dernières paires, typiquement 5 à 20, donc la mémoire est O(mn)O(mn)O(mn). C'est le cheval de trait habituel des calibrations lisses et des estimations de maximum de vraisemblance, comme les optimiseurs par défaut de SciPy.

  • Newton : w←w−H−1g\mathbf w\leftarrow\mathbf w-H^{-1}\mathbf gw←w−H−1g ; un pas sur une quadratique, convergence quadratique près du minimum.
  • BFGS : apprend une approximation de l'inverse de la hessienne à partir des différences de gradient, sans dérivées secondes.
  • L-BFGS : ne garde que les dernières paires, donc passe à l'échelle de nombreux paramètres.
Newton demande une protectionNewton pur peut dépasser le but ou diverger depuis un mauvais point de départ. Les bibliothèques ajoutent une recherche linéaire ou une région de confiance, et reviennent à un pas de gradient quand la hessienne n'est pas définie positive. N'écrivez pas à la main une boucle de Newton nue pour une calibration sans ces protections.

Lab : ce qui est noté

  • Le premier pas de Newton15 pts
  • Le deuxième pas de Newton15 pts
  • Un pas de Newton en deux variables15 pts
  • Pas sur une quadratique15 pts
  • La condition sécante15 pts
  • Méthodes et idées10 pts
  • Pourquoi on évite Newton exact pour les très gros problèmes15 pts
0/ 7 traités
Exercices
1Réponse numérique15 ptsSans réponse

Minimisez f(x)=ex−2xf(x)=e^x-2xf(x)=ex−2x par la méthode de Newton depuis x0=0x_0=0x0​=0. Avec f′=ex−2f'=e^x-2f′=ex−2 et f′′=exf''=e^xf′′=ex, que vaut x1x_1x1​ ?

x1=x1 =x1=accepté : ± 0.01
2Réponse numérique15 ptsSans réponse

Continuez depuis x1=1x_1=1x1​=1. Avec e1=2.71828e^1=2.71828e1=2.71828, que vaut x2x_2x2​ ? Donnez quatre décimales.

x2=x2 =x2=accepté : ± 0.001
3Réponse numérique15 ptsSans réponse

Pour f=(x−1)2+2(y+2)2f=(x-1)^2+2(y+2)^2f=(x−1)2+2(y+2)2 en (3,0)(3,0)(3,0) le gradient vaut (4,8)(4,8)(4,8) et H=diag(2,4)H=\mathrm{diag}(2,4)H=diag(2,4). Après un pas de Newton, que vaut la coordonnée yyy ?

y=y =y=accepté : ± 0.01
4Choix15 ptsSans réponse

Combien de pas de Newton faut-il pour minimiser exactement une fonction quadratique strictement convexe ?

5Choix15 ptsSans réponse

Avec s=wk+1−wk\mathbf s=\mathbf w_{k+1}-\mathbf w_ks=wk+1​−wk​ et y=gk+1−gk\mathbf y=\mathbf g_{k+1}-\mathbf g_ky=gk+1​−gk​, quelle relation l'approximation de hessienne BBB de BFGS impose-t-elle ?

6Associer10 ptsSans réponse

Associez chaque méthode à son idée clé.

Choisissez le partenaire de chaque élément de gauche.

Descente de gradient
Newton
BFGS
L-BFGS
7Expliquer avec des mots15 ptsSans réponse

En une ou deux phrases, expliquez pourquoi la méthode de Newton exacte n'est pas utilisée pour des problèmes à des millions de paramètres.

Mode mathsSaisie au clavier ou en LaTeXExercice 1 sur 7 · Ctrl ⏎ pour vérifier

Connectez-vous pour exécuter votre code.

Tous les cours sont gratuits à lire. Créez un compte ou connectez-vous pour exécuter du code, lancer les tests et soumettre ce lab.

  • IDE dans le navigateur avec terminal bash — rien à installer
  • Correction instantanée, XP et votre place dans le parcours
Créer un compteSe connecter
OU
Continuer avec GitHub