σμ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 1 · Objectifs et gradients›Sujet 1.1·~40 minDébutant

Fonctions objectif gradients et minima

Position dans le parcoursModule 1 sur 5 · Sujet 1 sur 1
1.1 Fonctions objectif gradients et minima
—Score du lab— / 100XP total—Série—

Ce que cherche un optimiseur

Un problème d'optimisation a un nombre à rendre petit, l'objectif f(w)f(\mathbf w)f(w), et des variables w\mathbf ww que l'on peut modifier. L'objectif peut être une perte des moindres carrés, la variance wTΣw\mathbf w^{T}\Sigma\mathbf wwTΣw d'un portefeuille ou l'écart entre prix du modèle et prix du marché dans une calibration. Rendre quelque chose grand est le même problème au signe près, car maximiser fff revient à minimiser −f-f−f.

∇f(w)=(∂f∂w1,…,∂f∂wn),Hij=∂2f∂wi ∂wj\nabla f(\mathbf w)=\Big(\frac{\partial f}{\partial w_1},\dots,\frac{\partial f}{\partial w_n}\Big),\qquad H_{ij}=\frac{\partial^{2} f}{\partial w_i\,\partial w_j}∇f(w)=(∂w1​∂f​,…,∂wn​∂f​),Hij​=∂wi​∂wj​∂2f​(1)

Le gradient pointe vers la direction où fff augmente le plus vite, donc −∇f-\nabla f−∇f est la direction de plus forte descente. En un minimum le gradient est nul : c'est la condition du premier ordre. Un gradient nul ne suffit pas, car les maxima et les points selle l'ont aussi. La hessienne HHH les distingue : si HHH est définie positive (toutes les valeurs propres positives) le point est un minimum local, si elle est définie négative un maximum, et si elle a des valeurs propres des deux signes le point est un col.

Un exemple à deux variablesPrenons f(x,y)=(x−1)2+2(y+2)2f(x,y)=(x-1)^2+2(y+2)^2f(x,y)=(x−1)2+2(y+2)2. Alors ∇f=(2(x−1), 4(y+2))\nabla f=(2(x-1),\,4(y+2))∇f=(2(x−1),4(y+2)). Au point (3,0)(3,0)(3,0) le gradient vaut (4,8)(4,8)(4,8), donc aller à l'opposé fait baisser fff. Le gradient ne s'annule qu'en (1,−2)(1,-2)(1,−2). Là, H=diag(2,4)H=\mathrm{diag}(2,4)H=diag(2,4) a des valeurs propres positives : (1,−2)(1,-2)(1,−2) est le minimum et f=0f=0f=0 en ce point.
  • Point stationnaire : ∇f=0\nabla f=0∇f=0. Nécessaire pour un minimum, pas suffisant.
  • Classification : HHH définie positive donne un minimum local, HHH indéfinie un col.
  • En une variable : f′(x)=0f'(x)=0f′(x)=0 avec f′′(x)>0f''(x)>0f′′(x)>0 donne un minimum.
Vérifiez votre gradient numériquementLa plupart des bugs d'optimisation viennent d'un gradient faux. Comparez votre formule à la différence centrée (f(x+h)−f(x−h))/(2h)\big(f(x+h)-f(x-h)\big)/(2h)(f(x+h)−f(x−h))/(2h) pour un petit hhh comme 10−510^{-5}10−5 : les deux doivent coïncider sur plusieurs chiffres. Faites-le une fois pour chaque nouvel objectif avant de faire confiance à un solveur qui l'utilise.

Lab : ce qui est noté

  • Une dérivée partielle15 pts
  • La longueur du gradient15 pts
  • Le minimum d'un cubique15 pts
  • Classer un point stationnaire15 pts
  • Associer le vocabulaire15 pts
  • Trouver un minimum à la main10 pts
  • Pourquoi aller contre le gradient15 pts
0/ 7 traités
Exercices
1Réponse numérique15 ptsSans réponse

Pour f(x,y)=(x−1)2+2(y+2)2f(x,y)=(x-1)^2+2(y+2)^2f(x,y)=(x−1)2+2(y+2)2, combien vaut ∂f/∂y\partial f/\partial y∂f/∂y au point (3,0)(3,0)(3,0) ?

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

Pour le même fff en (3,0)(3,0)(3,0) le gradient vaut (4,8)(4,8)(4,8). Quelle est sa longueur euclidienne ∥∇f∥\lVert\nabla f\rVert∥∇f∥ ? Donnez-la avec deux décimales.

length=length =length=accepté : ± 0.02
3Réponse numérique15 ptsSans réponse

La fonction f(x)=x3−3xf(x)=x^3-3xf(x)=x3−3x a un minimum local là où f′(x)=0f'(x)=0f′(x)=0 et f′′(x)>0f''(x)>0f′′(x)>0. Quelle est la valeur de fff à ce minimum local ?

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

La fonction f(x,y)=x2−y2f(x,y)=x^2-y^2f(x,y)=x2−y2 a ∇f=0\nabla f=0∇f=0 à l'origine et H=diag(2,−2)H=\mathrm{diag}(2,-2)H=diag(2,−2). Qu'est-ce que l'origine ?

5Associer15 ptsSans réponse

Associez chaque terme à son sens.

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

Gradient
Hessienne
Point stationnaire
Objectif
6Remettre les étapes dans l'ordre10 ptsSans réponse

Mettez les étapes dans l'ordre.

Faites glisser pour réordonner, ou placez le focus sur un élément, Espace pour le soulever, les flèches pour le déplacer et Espace pour le déposer.

  1. 1Vérifier que la hessienne est définie positive
  2. 2Écrire l'objectif fff
  3. 3Résoudre ∇f=0\nabla f=0∇f=0 pour trouver les points stationnaires
  4. 4Calculer le gradient ∇f\nabla f∇f et la hessienne HHH
7Expliquer avec des mots15 ptsSans réponse

En une ou deux phrases, expliquez pourquoi un optimiseur qui veut faire baisser fff avance dans la direction −∇f-\nabla f−∇f.

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