Les fonctions convexes jouent un rôle central en analyse et en optimisation. Le principe est simple : une fonction convexe a une courbe qui se situe toujours en dessous de ses cordes. Cette propriété géométrique a une conséquence majeure : tout minimum local d’une fonction convexe est automatiquement un minimum global. C’est ce qui rend la convexité si importante en machine learning, où l’on cherche à minimiser des fonctions de coût.
Dans cet article, on définit les fonctions convexes, on présente leurs caractérisations (dérivée première, dérivée seconde, Hessienne), puis on démontre les propriétés fondamentales, dont l’inégalité de Jensen. On termine par cinq exercices corrigés et trois exercices d’entraînement.
Prérequis : dérivation, notions de fonctions (continuité, limites). Pour la partie en dimension supérieure : gradient et matrices symétriques.
Définition d’une fonction convexe
Définition par les cordes
Soit f : I \to \mathbb{R} une fonction définie sur un intervalle I de \mathbb{R}. On dit que f est convexe sur I si pour tous a, b \in I et tout t \in [0, 1] :
f(ta + (1-t)b) \leq t,f(a) + (1-t),f(b)
Géométriquement, le membre de gauche est un point de la courbe, et le membre de droite est le point correspondant sur la corde reliant (a, f(a)) et (b, f(b)) . La condition dit que la courbe est toujours en dessous de ses cordes.

On dit que f est strictement convexe si l’inégalité est stricte pour a \neq b et t \in ,]0, 1[.
Fonction concave
On dit que f est concave sur I si -f est convexe, c’est-à-dire si pour tous a, b \in I et tout t \in [0, 1] :
f(ta + (1-t)b) \geq tf(a) + (1-t)f(b)
La courbe d’une fonction concave est toujours au-dessus de ses cordes.
Exemples classiques
Fonctions convexes : x \mapsto x^2, x \mapsto e^x, x \mapsto |x|, x \mapsto x \ln x (sur ,]0, +\infty[), x \mapsto -\ln x (sur ,]0, +\infty[).
Fonctions concaves : x \mapsto \ln x (sur ,]0, +\infty[), x \mapsto \sqrt{x} (sur [0, +\infty[), x \mapsto -x^2.
Fonctions à la fois convexes et concaves : les fonctions affines x \mapsto ax + b. Ce sont les seules fonctions vérifiant simultanément les deux inégalités.
Caractérisations d’une fonction convexe
Caractérisation par la dérivée première
Si f est dérivable sur I, alors :
f est convexe sur I si et seulement si f' est croissante sur I.
Cette caractérisation a une conséquence géométrique importante : si f est convexe et dérivable, alors sa courbe est toujours au-dessus de ses tangentes. En effet, pour tout a \in I et tout x \in I :
f(x) \geq f(a) + f'(a)(x - a)
Cette inégalité est fondamentale : elle dit que la tangente en tout point est un minorant de la fonction.
Caractérisation par la dérivée seconde
Si f est deux fois dérivable sur I, alors :
f est convexe sur I si et seulement si f''(x) \geq 0 pour tout x \in I.
C’est le critère le plus pratique pour vérifier la convexité. On dit que f est strictement convexe si f''(x) > 0 pour tout x \in I (condition suffisante mais pas nécessaire : x \mapsto x^4 est strictement convexe mais f''(0) = 0).
Exemples :
- f(x) = e^x : f''(x) = e^x > 0 pour tout x \in \mathbb{R}, donc f est strictement convexe.
- f(x) = \ln x : f''(x) = -\frac{1}{x^2} < 0 pour tout x > 0, donc f est strictement concave.
- La fonction sigmoïde \sigma(x) = \frac{1}{1 + e^{-x}} : on a \sigma''(x) = \sigma(x)(1 - \sigma(x))(1 - 2\sigma(x)). Le signe change en x = 0 : \sigma est convexe sur ,]-\infty, 0] et concave sur [0, +\infty[.
En dimension supérieure : critère de la Hessienne
Pour une fonction f : \mathbb{R}^n \to \mathbb{R} deux fois différentiable, la convexité se caractérise par la matrice Hessienne :
f est convexe si et seulement si H_f(x) est semi-définie positive en tout point x.
On retrouve le critère en dimension 1 : quand n = 1, la Hessienne est la matrice 1 \times 1 contenant f''(x), et « semi-définie positive » se lit f''(x) \geq 0.
Ce critère est utilisé en permanence en machine learning. Par exemple, la fonction de coût MSE (erreur quadratique moyenne) de la régression linéaire a pour Hessienne \frac{2}{n} \mathbf{X}^\top \mathbf{X}, qui est semi-définie positive. La MSE est donc convexe, ce qui garantit la convergence de la descente de gradient.
Propriétés des fonctions convexes
Minimum local = minimum global
C’est la propriété la plus importante des fonctions convexes :
Si f est convexe et admet un minimum local en x_0, alors x_0 est un minimum global de f.
Démonstration : supposons que f admet un minimum local en x_0 et qu’il existe y tel que f(y) < f(x_0). Pour tout t \in ,]0, 1], par convexité :
f(x_0 + t(y - x_0)) = f((1-t)x_0 + ty) \leq (1-t)f(x_0) + tf(y) < f(x_0)
Quand t \to 0, le point x_0 + t(y - x_0) est arbitrairement proche de x_0, ce qui contredit le fait que x_0 est un minimum local.
En machine learning, cette propriété est fondamentale : quand on minimise une fonction de coût convexe par descente de gradient, on est sûr de converger vers le minimum global. C’est le cas pour la régression linéaire (MSE convexe) et la régression logistique (entropie croisée convexe).
Inégalité de Jensen
L’inégalité de Jensen généralise la définition de convexité à un nombre quelconque de points. Si f est convexe et \lambda_1, \ldots, \lambda_n \geq 0 avec \lambda_1 + \cdots + \lambda_n = 1, alors :
f(\lambda_1 x_1 + \cdots + \lambda_n x_n) \leq \lambda_1 f(x_1) + \cdots + \lambda_n f(x_n)
En termes probabilistes, si X est une variable aléatoire et f est convexe, alors :
f(\mathbb{E}[X]) \leq \mathbb{E}[f(X)]Exemple : comme x \mapsto e^x est convexe, on a e^{\mathbb{E}[X]} \leq \mathbb{E}[e^X] pour toute variable aléatoire X. Prenons X valant 0 et 2 avec probabilité \frac{1}{2} chacun. Alors \mathbb{E}[X] = 1, et :
e^1 \approx 2{,}72 \leq \frac{1}{2}(e^0 + e^2) \approx 4{,}19Opérations conservant la convexité
- Somme : si f et g sont convexes, f + g est convexe.
- Multiplication par un scalaire positif : si f est convexe et \alpha \geq 0, \alpha f est convexe.
- Maximum : si f et g sont convexes, \max(f, g) est convexe.
- Composition : si g est convexe et croissante et f est convexe, alors g \circ f est convexe.
Ces propriétés permettent de construire des fonctions convexes complexes à partir de briques élémentaires. Par exemple, x \mapsto e^{x^2} est convexe comme composée de x \mapsto x^2 (convexe) et x \mapsto e^x (convexe et croissante).
Point d’inflexion
Un point d’inflexion est un point où la fonction passe de convexe à concave (ou inversement). Si f est deux fois dérivable, c’est un point x_0 où f'' change de signe. Au point d’inflexion, la courbe traverse sa tangente.
Application en machine learning
La convexité est au coeur de l’optimisation en machine learning. Quand on entraîne un modèle, on minimise une fonction de coût par descente de gradient. Si cette fonction est convexe, on a deux garanties essentielles :
- Pas de faux minimum : tout minimum local est global, donc la descente de gradient ne peut pas se retrouver piégée.
- Convergence assurée : pour un taux d’apprentissage bien choisi, l’algorithme converge vers la solution optimale.
Voici les fonctions de coût convexes les plus courantes en ML :
- MSE (régression linéaire) : J(\boldsymbol{\beta}) = \frac{1}{n}\lVert \mathbf{y} - \mathbf{X}\boldsymbol{\beta} \rVert^2, convexe car sa Hessienne \frac{2}{n}\mathbf{X}^\top\mathbf{X} est semi-définie positive.
- Entropie croisée (régression logistique) : convexe en \boldsymbol{\beta}, ce qui garantit un unique minimum global.
- Hinge loss (SVM) : convexe comme maximum de deux fonctions affines.
En revanche, les fonctions de coût des réseaux de neurones profonds ne sont pas convexes : elles possèdent de nombreux minima locaux et points-selles. La descente de gradient fonctionne quand même remarquablement bien en pratique, mais sans garantie théorique de minimum global.
Exercices corrigés
Exercice 1 : montrer que e^x ≥ 1 + x
Montrer que pour tout x \in \mathbb{R}, e^x \geq 1 + x.
Correction :
La fonction f(x) = e^x est convexe sur \mathbb{R} (car f''(x) = e^x > 0). Pour une fonction convexe, la courbe est au-dessus de chacune de ses tangentes. La tangente en x = 0 a pour équation :
y = f(0) + f'(0)(x - 0) = 1 + x
Donc e^x \geq 1 + x pour tout x \in \mathbb{R}, avec égalité uniquement en x = 0.
Exercice 2 : inégalité arithmético-géométrique
Soient a, b > 0. En utilisant la concavité du logarithme, montrer que \frac{a + b}{2} \geq \sqrt{ab}.
Correction :
La fonction \ln est concave sur ,]0, +\infty[ (car (\ln x)'' = -\frac{1}{x^2} < 0). L’inégalité de Jensen pour une fonction concave donne (avec \lambda_1 = \lambda_2 = \frac{1}{2}) :
\ln!\left(\frac{a+b}{2}\right) \geq \frac{\ln a + \ln b}{2} = \ln\sqrt{ab}La fonction \ln étant strictement croissante, on en déduit :
\frac{a + b}{2} \geq \sqrt{ab}C’est l’inégalité arithmético-géométrique (AM-GM), l’une des inégalités les plus utiles en mathématiques.
Exercice 3 : convexité et point d’inflexion de x ln(x)
Soit f la fonction définie sur ,]0, +\infty[ par f(x) = x \ln x - x + 1.
- Montrer que f est convexe.
- En déduire que x \ln x \geq x - 1 pour tout x > 0.
Correction :
- On calcule : f'(x) = \ln x et f''(x) = \frac{1}{x}. Pour tout x > 0, f''(x) > 0, donc f est strictement convexe sur ,]0, +\infty[.
- Comme f est convexe, son minimum global est atteint là où f'(x) = 0, soit en x = 1. On a f(1) = 0. Donc f(x) \geq 0 pour tout x > 0, ce qui donne :
x \ln x \geq x - 1 \quad \text{pour tout } x > 0Exercice 4 : Hessienne et convexité en dimension 2
Soit f la fonction définie sur \mathbb{R}^2 par f(x, y) = (x - 1)^2 + (y - 2)^2 + (x + y - 4)^2.
- Calculer la matrice Hessienne de f.
- Montrer que f est strictement convexe.
- Trouver le minimum global de f.
Correction :
- On développe : f(x, y) = 2x^2 + 2xy - 10x + 2y^2 - 12y + 21. Les dérivées partielles secondes sont :
H_f = \left(\begin{array}{cc} 4 & 2 \\ 2 & 4 \end{array}\right)- Les valeurs propres de H_f sont \lambda_1 = 2 et \lambda_2 = 6 (toutes deux strictement positives). La Hessienne est donc définie positive en tout point, et f est strictement convexe.
- Comme f est strictement convexe, elle admet un unique minimum global, atteint là où le gradient s’annule :
\nabla f = \left(\begin{array}{c} 4x + 2y - 10 \\ 2x + 4y - 12 \end{array}\right) = \left(\begin{array}{c} 0 \\ 0 \end{array}\right)Le système donne x = \frac{4}{3} et y = \frac{7}{3}, avec f!\left(\frac{4}{3}, \frac{7}{3}\right) = \frac{1}{3}.
Exercice 5 : montrer que ln(1 – x) ≤ -x
Montrer que pour tout x < 1, \ln(1 - x) \leq -x.
Correction :
Posons g(x) = -\ln(1 - x) sur ,]-\infty, 1[. On a g'(x) = \frac{1}{1-x} et g''(x) = \frac{1}{(1-x)^2} > 0 pour tout x < 1. Donc g est strictement convexe.
La tangente à g en x = 0 a pour équation y = g(0) + g'(0)x = x. Comme g est convexe, sa courbe est au-dessus de ses tangentes :
-\ln(1 - x) \geq x \quad \text{pour tout } x < 1soit \ln(1 - x) \leq -x, avec égalité en x = 0.
Exercices d’entraînement
- Soit f la fonction définie par f(x) = x^2 e^x. Déterminer les intervalles sur lesquels f est convexe et ceux sur lesquels elle est concave. Trouver les points d’inflexion.
- Montrer que pour tous x_1, \ldots, x_n > 0, on a \frac{x_1 + \cdots + x_n}{n} \geq \sqrt[n]{x_1 \cdots x_n} (inégalité AM-GM généralisée). On pourra utiliser l’inégalité de Jensen appliquée au logarithme avec \lambda_i = \frac{1}{n}.
- Soit f(x, y) = e^{x+y} + e^{x-y}. Calculer la Hessienne de f, montrer que f est convexe sur \mathbb{R}^2 et trouver son minimum global.
FAQ
Une fonction convexe est une fonction dont la courbe « creuse vers le haut », comme un bol. Plus précisément, si on relie deux points quelconques de la courbe par un segment, ce segment est toujours au-dessus de la courbe. Les exemples les plus courants sont x², la fonction exponentielle e^x et la valeur absolue |x|.
Le critère le plus pratique est le signe de la dérivée seconde : si f »(x) ≥ 0 sur tout l’intervalle, la fonction est convexe. En dimension supérieure, on vérifie que la matrice Hessienne (matrice des dérivées secondes) est semi-définie positive, c’est-à-dire que toutes ses valeurs propres sont positives ou nulles.
Une fonction est convexe si sa courbe est en dessous de ses cordes (forme de bol), et concave si sa courbe est au-dessus de ses cordes (forme de dôme). Si f est convexe, alors -f est concave. Par exemple, le logarithme ln(x) est concave, tandis que -ln(x) est convexe. Les fonctions affines sont les seules à être à la fois convexes et concaves.
En machine learning, on entraîne un modèle en minimisant une fonction de coût par descente de gradient. Si cette fonction est convexe, tout minimum local est automatiquement un minimum global : l’algorithme est garanti de trouver la meilleure solution. C’est le cas en régression linéaire et en régression logistique. En revanche, les réseaux de neurones ont des fonctions de coût non convexes, ce qui complique l’optimisation.