Aller au contenu
Apprendre.
  • M1 · toutes les matières15 matières : Préparation de données, API & sécurité, CI/CD, Docker, Merise, Dataviz, KNIME, ML appliqué : projet LoL, SQL & UML, SQL avancé, Machine Learning, Git, IA frugale & responsable, Qualité des données, MathématiquesAnnée
  • M2 · toutes les matières4 matières : Deep Learning, AI Act, Comex & Fundraising, Gouvernance & DataMeshAnnée
  • Deep LearningM2 · 4 modules · Réseaux de neurones, CNN, texte, modèles génératifs.Matière
  • Préparation de donnéesM1 · 3 modules · Nettoyer, transformer et fusionner des données avec Python.Matière
  • API & sécuritéM1 · 2 modules · Consommer, concevoir et sécuriser des API.Matière
  • CI/CDM1 · 1 module · Intégration et livraison continues.Matière
  • DockerM1 · 3 modules · Conteneurs, images, volumes, réseaux, Compose.Matière
  • MeriseM1 · 2 modules · Modéliser une base : MCD, MLD, MPD.Matière
  • DatavizM1 · 2 modules · Visualiser pour comprendre et décider.Matière
  • KNIMEM1 · 1 module · Explorer et nettoyer des données en workflow.Matière
  • ML appliqué : projet LoLM1 · 2 modules · Du besoin métier au POC de vision par ordinateur.Matière
  • SQL & UMLM1 · 3 modules · Modèles UML et requêtes SQL.Matière
  • SQL avancéM1 · 3 modules · Jointures, fenêtres, CTE, optimisation.Matière
  • Machine LearningM1 · 3 modules · Régression, classification, segmentation, projet.Matière

↑↓ naviguer↵ ouvre le résultat en surbrillanceesc fermer

Partie 5 · Deux variables

Fonctions de deux variables, dérivées partielles et gradient

Fonctions à deux variables

Une fonction de deux variables est une application f:R2→Rf : \mathbb{R}^2 \to \mathbb{R}, (x,y)↦f(x,y)(x,y) \mapsto f(x,y). On la rencontre en probabilités (densités), économie (coût, profit), physique (température, potentiel) et surtout en optimisation (machine learning, statistiques). Exemples : f(x,y)=x2+y2f(x,y)=x^2+y^2, f(x,y)=ex+yf(x,y)=e^{x+y}, f(x,y)=xyf(x,y)=\frac{x}{y} avec y≠0y\neq0.

Deux façons de la représenter : une surface 3D z=f(x,y)z=f(x,y), ou des courbes de niveau f(x,y)=cf(x,y)=c. Pour f(x,y)=x2+y2f(x,y)=x^2+y^2, ce sont des cercles centrés en l'origine.

Schéma ajouté : niveaux c=1,4,9c=1, 4, 9 de x2+y2x^2+y^2 (rayons 1,2,31, 2, 3).

Dérivées partielles

Une dérivée partielle décrit comment ff varie quand on modifie une seule variable, l'autre étant tenue pour une constante :

fx=∂f∂x,fy=∂f∂y.f_x=\frac{\partial f}{\partial x}, \qquad f_y=\frac{\partial f}{\partial y}.
f(x,y)f(x,y)fxf_xfyf_y
x2+3yx^2+3y2x2x33
xy2xy^2y2y^22xy2xy

Pour fxf_x de xy2xy^2, y2y^2 joue le rôle d'un nombre fixé : on dérive xx et il reste y2y^2.

Vérifie que tu as compris

Quelle est la dérivée partielle fyf_y de f(x,y)=xy2f(x,y)=xy^2 ?

Gradient

Le gradient regroupe les deux dérivées partielles dans un vecteur :

∇f(x,y)=(fxfy).\nabla f(x,y)=\begin{pmatrix} f_x \\ f_y \end{pmatrix}.
  • c'est un vecteur local, calculé en un point donné ;
  • il pointe vers la direction de variation la plus rapide (la plus forte augmentation) ;
  • sa norme donne l'intensité de cette augmentation maximale.

Exemple : f(x,y)=x2+y2⇒∇f=(2x,2y)f(x,y)=x^2+y^2 \Rightarrow \nabla f=(2x,2y). En (1,2)(1,2), le gradient vaut (2,4)(2,4) : pour monter vite, on s'éloigne de l'origine. Pour descendre, on suit −∇f-\nabla f, idée de la descente de gradient (leçon 6).

Dérivée directionnelle

La fonction peut varier dans n'importe quelle direction u=(u1,u2)u=(u_1,u_2) :

Duf(x,y)=fxu1+fyu2=∇f⋅u.D_u f(x,y)=f_x u_1 + f_y u_2 = \nabla f \cdot u.

C'est une combinaison pondérée des dérivées partielles. Le cours demande de normaliser uu : pour f(x,y)=x2+3yf(x,y)=x^2+3y et u=(1,2)u=(1,2), on prend u∥u∥=(1,2)5\frac{u}{\|u\|}=\frac{(1,2)}{\sqrt5} et Duf=2x+65D_uf = \frac{2x+6}{\sqrt5} (calcul ajouté).

Vérifie que tu as compris

Quel est le gradient de f(x,y)=3x2−yf(x,y)=3x^2-y ?

Approximation locale

Près d'un point, une fonction est presque linéaire. Pour de petits Δx\Delta x, Δy\Delta y :

f(x+Δx,y+Δy)≈f(x,y)+∇f⋅(Δx,Δy).f(x+\Delta x, y+\Delta y)\approx f(x,y) + \nabla f \cdot (\Delta x,\Delta y).

Exemple du cours : f(x,y)=x2+2yf(x,y)=x^2+2y au point (1,1)(1,1) avec (Δx,Δy)=(0,1;−0,2)(\Delta x,\Delta y)=(0{,}1;-0{,}2). Le gradient est (2x,2)=(2,2)(2x, 2)=(2,2) en (1,1)(1,1), donc la variation estimée est 2⋅0,1+2⋅(−0,2)=−0,22\cdot0{,}1+2\cdot(-0{,}2)=-0{,}2 : on passe de f(1,1)=3f(1,1)=3 à environ 2,82{,}8 (le calcul exact donne 2,812{,}81).

Vérifie que tu as compris

Avec ∇f(1,1)=(2,2)\nabla f(1,1)=(2,2) et (Δx,Δy)=(0,1;−0,2)(\Delta x,\Delta y)=(0{,}1;-0{,}2), quelle est la variation estimée de ff ?

À toi de coder

Gradient numérique en 2D

Approche chaque dérivée partielle par une différence centrée en ne bougeant qu'une variable. Écris gradient(f, x, y, h=1e-5) qui renvoie la liste [f_x, f_y]. Pour f(x,y)=x2+y2f(x,y)=x^2+y^2 en (1,2)(1,2) on attend environ [2,4][2, 4].

Ctrl/⌘+Entrée