Aller au contenu

Descente de Gradient

Minimisation itérative de fonctions

Exercice Intermédiaire · Ia · prepa scientifique et economique (CPGE)

Enonce

Implémenter la descente de gradient. Tester sur $f(x,y)=x^2+4y^2$ (minimum en $(0,0)$) et observer l'effet du learning rate.

Signature attendue

def descente_gradient(grad_f, x0, lr: float, max_iter: int) -> list:

Exemple

  • [round(float(v), 4) for v in descente_gradient(lambda v: 2 * v, [3.0, 2.0], 0.1, 50)[0]] → [0.0, 0.0]

📖 Rappel de cours

La descente de gradient minimise une fonction $f$ en se déplaçant dans la direction opposée au gradient.

Itération :

$x_{n+1} = x_n - \eta \, \nabla f(x_n)$

Taux d'apprentissage $\eta$ :

Trop grand → divergence. Trop petit → convergence très lente.

Pour $f$ convexe et $L$-lisse : convergence en $O(1/\varepsilon)$ itérations avec $\eta < 1/L$.

⚠ Le piège : Le taux d'apprentissage est le seul réglage qui compte : trop petit, la convergence n'en finit pas ; trop grand, les itérations divergent en oscillant. Sur une fonction dont les courbures diffèrent selon les axes, le chemin zigzague — c'est visible en traçant l'historique des points.

← Exercices d'IA et d'apprentissage automatique en Python — CPGE

Exercices du meme theme

  • K-Means Clustering
  • Régression Linéaire
  • Perceptron Simple
  • Matrice de Confusion et Métriques
  • Validation Croisée k-fold
  • Arbre de Décision Simple

La correction commentee, les indices progressifs, l'execution du code dans le navigateur et la verification par l'IA sont reserves aux abonnes.

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Essai gratuit
Testez toutes les fonctionnalités sans engagement
En continuant, vous acceptez notre politique de confidentialité.
Déjà abonné ? Se reconnecter
Recevez un lien de connexion par email
Parcourir gratuitement →
Aperçu limité · sans inscription · sans vérification IA
€4,99
/ mois · accès illimité · résiliable
Paiement sécurisé
En vous abonnant, vous acceptez nos conditions et politique de confidentialité.
Résiliation possible depuis votre espace PayPal.

Chargement...

Initialisation de l'environnement

Prepa🐍ython
Progresser en Python & SQL · Prépa scientifique
Progression
0 / 0
Solo
— / —
Python... SQL...
Recherche
🔬 Bac a sable Python ↗ 🧪 Bac a sable SQL ↗ 📝 Concours blanc ↗ 🏖️ Code à la plage ↗ 📚 Listes de rentrée ↗ 🛠️ Admin ↗
Tu aimes PrepaPython ?
Fais-le savoir !
← Retour à l'accueil Mentions legales & confidentialite