Méthode de gradient

Leçon 1.2 : Méthode du gradient (plus forte descente)

Objectif

Maîtriser la méthode du gradient et comprendre ses propriétés de convergence.


1. Direction de plus forte descente

2.1.1 Définition et propriétés

Définition

La direction de plus forte descente est donnée par :

dk = − ∇f(xk)

Propriété fondamentale

Cette direction minimise localement la variation de la fonction.

Justification

On cherche à minimiser :

∇f(x)T d sous la contrainte ||d|| = 1

La solution est :

d = − ∇f(x) / ||∇f(x)||

Exemple corrigé

Soit f(x,y) = x2 + y2

∇f(x,y) = (2x, 2y)

Au point (1,2) :

∇f = (2,4)

d = (−2, −4)


2.1.2 Relation avec la norme du gradient

La vitesse de décroissance de la fonction est proportionnelle à :

||∇f(xk)||

Plus le gradient est grand, plus la descente est rapide.

Exemple

Si ||∇f|| = 10 → descente rapide

Si ||∇f|| = 0.001 → descente lente


2.1.3 Interprétation géométrique

Le gradient est orthogonal aux courbes de niveau.

La direction −∇f est la direction de descente la plus rapide.

Image mentale

Comme une balle qui descend la pente la plus raide.


2. Convergence de la méthode du gradient

2.2.1 Convergence linéaire

La méthode du gradient converge en général de manière linéaire :

||xk − x*|| ≤ C · qk

avec :

  • 0 < q < 1
  • C constante

Interprétation

L’erreur diminue proportionnellement à chaque itération.


2.2.2 Rôle du conditionnement

Le conditionnement influence fortement la convergence.

Pour une fonction quadratique :

f(x) = 1/2 · xT A x − bTx

Le taux dépend du nombre de condition :

κ(A) = λmax / λmin

Interprétation

  • κ petit → convergence rapide
  • κ grand → convergence lente

2.2.3 Lenteur dans les vallées étroites

Dans certaines fonctions, les courbes de niveau sont très allongées.

La méthode du gradient oscille :

  • elle zigzague
  • elle avance lentement

Exemple

f(x,y) = x2 + 100y2

Les directions changent fortement à chaque itération.


2.2.4 Analyse sur les fonctions quadratiques

Soit :

f(x) = 1/2 · xT A x − bTx

La solution exacte vérifie :

A x = b

La méthode du gradient devient :

xk+1 = xk − αk (A xk − b)

Exemple corrigé

Soit f(x) = x2

Alors :

∇f(x) = 2x

Avec α = 0.5 :

xk+1 = xk − 0.5 · 2xk = 0

Convergence en une étape.


3. Implémentation pratique

2.3.1 Structure algorithmique


Initialiser x0

Pour k = 0,1,2,...

    Calculer le gradient ∇f(xk)

    Si ||∇f(xk)|| < ε alors arrêter

    Choisir αk

    xk+1 = xk − αk ∇f(xk)

Fin


2.3.2 Stockage de l’historique

On peut stocker :

  • les points xk
  • les valeurs f(xk)
  • les normes ||∇f(xk)||

Permet d’analyser la convergence.


2.3.3 Visualisation des itérés

On peut représenter :

  • les trajectoires
  • les courbes de niveau

Permet de comprendre le comportement de l’algorithme.


Exercices corrigés

Exercice 1

f(x) = x2

  1. ∇f(x) = 2x
  2. d = −2x
  3. Avec x0 = 4 et α = 0.25 :
  4. x1 = 4 − 0.25 × 8 = 2

  5. f(4) = 16, f(2) = 4
  6. Minimum en x = 0

Exercice 2

f(x,y) = x2 + y2

  1. ∇f = (2x,2y)
  2. Au point (1,1) → (2,2)
  3. d = (−2,−2)
  4. Avec α = 0.5 :
  5. (1,1) → (0,0)

  6. ||∇f|| = √(8)

Exercice 3

f(x,y) = x2 + 4y2

  1. ∇f = (2x,8y)
  2. Au point (1,1) → (2,8)
  3. d = (−2,−8)
  4. Avec α = 0.1 :
  5. x1 = (0.8, 0.2)

  6. La convergence est lente (vallée étroite)

Exercices d’entraînement

Exercice A

  • f(x) = x2 + 2x
  • Calculer le gradient
  • Donner la direction
  • Faire une itération
  • Trouver le minimum
  • Étudier la convergence

Exercice B

  • f(x,y) = x2 + 5y2
  • Calculer le gradient
  • Direction en (2,1)
  • Faire une itération
  • Calculer ||∇f||
  • Interpréter la convergence

Conclusion

La méthode du gradient est simple mais :

  • facile à implémenter
  • peut être lente
  • dépend du conditionnement

Elle constitue la base de nombreuses méthodes en optimisation et en apprentissage automatique.

Enregistrer un commentaire

0 Commentaires