Fondations : estimateur, MSE, CRLB
Cette page pose les outils pour juger un estimateur, sans encore dire comment en construire un. La section 1 définit ce qu'est un estimateur et montre, sur un exemple, qu'il s'agit d'une variable aléatoire. La section 2 en tire les trois quantités qui le caractérisent, biais, variance et MSE. La section 3 montre comment les estimer par simulation lorsque le calcul analytique n'aboutit pas. La section 4 reporte cette incertitude sur le résultat lui-même, sous la forme d'un intervalle de confiance. La section 5 lève la dernière hypothèse commode, celle d'une variance connue.
1. Problématique
⚠ Bascule de notation
Le chapitre 1 écrivait
Modèle d'estimateur
Considérons que nous disposons de données
où
est une fonction des données, choisie par nous, est lui-même une variable aléatoire, puisque fonction de données aléatoires : il possède une loi, une espérance et une variance.
Confusion
Attention à ne pas confondre la valeur vraie
Exemple : estimation de la borne supérieure
Une machine produit des pièces dont la cote varie uniformément entre
Répétons trois fois la même expérience, huit mesures à chaque fois, et plaçons les valeurs obtenues sur un axe.
Figure 2.1a, Trois répétitions indépendantes de la même expérience, figures/ch2/01-echantillon-uniforme.py).
Les points se répartissent sans privilégier aucune zone, c'est le propre de la loi uniforme, et aucun ne dépasse
Trois candidats se présentent pour estimer
Illustration
Fixons
Figure 2.1b, Les trois estimateurs recalculés sur les figures/ch2/01-fondations.py).
Les trois courbes se rapprochent de
2. Métriques de performance : Biais, variance et MSE
Comment résumer, en un seul nombre, la qualité d'un estimateur sur l'ensemble de ses tirages possibles ? La mesure la plus naturelle est une distance moyenne à la cible, l'erreur quadratique moyenne, l'espérance du carré de l'écart entre l'estimateur et la vraie valeur.
Définition
Définition, Erreur quadratique moyenne (MSE)
où
est l'estimateur évalué, est la valeur vraie, inconnue en pratique.
⚠ Statut de
La définition de
Cette quantité peut se décomposer en deux termes de natures différentes.
Définition, Biais et variance
Pour un estimateur
où
correspond au biais de l'estimateur, correspond à la variance de l'estimateur.
Preuve
Posons
Le second terme,
Le biais mesure une erreur systématique (nous visons à côté, toujours du même côté) ; la variance mesure une erreur de fluctuation (nous dispersons autour de notre propre cible). La MSE les réunit en un seul nombre, mais un nombre ne dit pas lequel des deux défauts pèse le plus.
Propriétés
En pratique, nous n'aurons pas de technique sur étagère pour choisir l'estimateur optimal
Théorème, Borne de Cramér-Rao (CRLB)
Pour tout estimateur sans biais
où
et
Illustration
Cette décomposition se lit aussi sur un schéma classique : imaginez trois séries de tirs sur une cible, chaque tir étant une estimation
Figure 2.1c, Trois cibles, de gauche à droite : tirs groupés mais décalés du centre (biais fort, variance faible) ; tirs dispersés mais centrés en moyenne (sans biais, variance forte) ; tirs groupés et proches du centre malgré un léger décalage (biais faible, MSE la plus faible des trois) (script figures/ch2/01-fondations.py).
Le biais déplace le nuage de tirs loin du centre ; la variance l'étale autour de sa propre moyenne. Les cibles de gauche et du centre n'illustrent chacune qu'un seul défaut, et leur MSE reste élevée, celle de gauche à cause du biais, celle du centre à cause de la variance. La cible de droite cumule un peu des deux, un biais non nul et une variance non nulle, mais tous deux petits : sa MSE est la plus faible des trois. Un peu de biais, bien maîtrisé, peut valoir mieux qu'aucun biais du tout.
Exemple : estimation de la borne supérieure
En utilisant les propriétés de l'espérance mathématique, il est parfois possible d'obtenir analytiquement l'expression de la MSE, du biais et de la variance d'un estimateur.
Pour les trois candidats du §1 (
| Biais | |||
| Variance | |||
| MSE |
Calcul des moments de et
Sous indépendance,
et
Un seul de ces estimateurs est sans biais,
Illustration
Figure 2.1d, Biais, variance et MSE des trois estimateurs en fonction de figures/ch2/01-fondations.py).
En échelle log-log, une décroissance en
3. Simulation de Monte-Carlo
Les trois définitions du §2 posent une difficulté pratique immédiate. Elles reposent toutes sur une espérance, rarement calculable analytiquement dès que l'estimateur s'écarte des quelques cas d'école. La simulation de Monte-Carlo contourne cet obstacle : elle génère
Définition
Définition, Estimation Monte-Carlo du biais, de la variance et de la MSE
Soient
Ces trois expressions se justifient par la loi des grands nombres : une moyenne empirique se rapproche de l'espérance qu'elle estime à mesure que
Implémentation
La mise en œuvre suit toujours les trois mêmes étapes, quelle que soit la loi des données et quel que soit l'estimateur étudié :
- simuler un jeu de
mesures selon le modèle, avec une valeur de que nous fixons ; - estimer
sur ce jeu, en appliquant l'estimateur à évaluer ; - répéter
fois, puis moyenner selon les trois formules ci-dessus.
Seules les deux premières étapes dépendent du problème traité. Elles s'isolent donc dans deux fonctions, simulate et g, que le reste du code ne fait qu'appeler :
import numpy as np
rng = np.random.default_rng(2026)
theta, N, B = 10.0, 8, 100_000
def simulate(theta, N):
"""Draw N measurements from the model, here x[n] ~ U(0, theta)."""
return rng.uniform(0, theta, size=N)
def g(x):
"""The estimator under study: from data to an estimate of theta."""
return x.max()
# steps 1 and 2, repeated B times: B estimates of theta
theta_hat = np.empty(B)
for b in range(B):
x = simulate(theta, N) # one repetition of the experiment
theta_hat[b] = g(x) # the corresponding estimate
# step 3: each expectation becomes an average over these B values
bias = theta_hat.mean() - theta
variance = theta_hat.var()
mse = ((theta_hat - theta) ** 2).mean()Changer d'estimateur revient à changer le corps de g, changer de modèle à changer celui de simulate : le reste du code est inchangé. Lorsque l'estimateur s'exprime de façon vectorielle, comme ici avec max, il est plus rapide de remplacer la boucle par un unique tirage dans un tableau
Exemple
Appliquons cette méthode à
Figure 2.2, MSE de figures/ch2/01-monte-carlo-convergence.py).
Les deux estimations suivent la décroissance théorique sans jamais s'en écarter systématiquement : elles oscillent autour de la courbe, tantôt au-dessus, tantôt en dessous. C'est la signature d'un estimateur sans biais de la MSE, et c'est ce qui rend la méthode fiable. Leur dispersion, en revanche, diffère nettement. À
Cette technique dépasse largement l'exemple : dès qu'un estimateur est trop compliqué pour un calcul analytique, ce qui est la règle plutôt que l'exception, la simulation de Monte-Carlo reste disponible, et c'est alors le seul accès à son risque.
4. Intervalle de confiance
Le biais, la variance et la MSE jugent un estimateur sur l'ensemble de ses tirages possibles. Le résultat livré à l'utilisateur reste pourtant un nombre unique, une estimation dont rien n'indique la précision. Comment reporter, à côté de l'estimation, l'incertitude qui l'accompagne ? La réponse consiste à remplacer ce nombre par un intervalle, dont les deux bornes sont elles aussi calculées sur les données.
Définition
Définition, Intervalle de confiance
Un intervalle de confiance de niveau
où
et sont deux fonctions des données, donc deux variables aléatoires, est la valeur vraie, déterministe et inconnue, est le niveau de confiance, et le risque toléré.
Dans cette probabilité,
Confusion classique
« Il y a
Propriétés
Construire un intervalle de confiance exige de connaître la loi de l'estimateur. Le cas de la moyenne empirique d'un échantillon Gaussien se traite exactement, à partir de la loi de la moyenne empirique.
Proposition, Intervalle de confiance de la moyenne d'une Gaussienne
Soient
est de niveau exactement
est le quantile d'ordre de la loi , pour un niveau de confiance de .
Démonstration
La moyenne empirique de
suit
La demi-largeur
Confusion classique
« L'intervalle contient
Implémentation
La couverture annoncée se vérifie par simulation, en reprenant les trois étapes du §3 :
- simuler un jeu de
mesures selon le modèle, avec une valeur de que nous fixons ; - construire l'intervalle sur ce jeu, puis tester s'il contient
; - répéter
fois, puis compter la proportion d'intervalles qui le contiennent.
import numpy as np
rng = np.random.default_rng(2026)
theta, sigma, N, B = 2.30, 0.10, 10, 100_000
z = 1.96
def simulate(theta, sigma, N):
"""Draw N measurements from the model, here x[n] ~ N(theta, sigma^2)."""
return rng.normal(theta, sigma, size=N)
def confidence_interval(x, sigma, z):
"""Two-sided interval centred on the sample mean, half-width z*sigma/sqrt(N)."""
half_width = z * sigma / np.sqrt(len(x))
return x.mean() - half_width, x.mean() + half_width
# steps 1 and 2, repeated B times: count the intervals that catch theta
covered = 0
for b in range(B):
x = simulate(theta, sigma, N) # one repetition of the experiment
lower, upper = confidence_interval(x, sigma, z)
if lower <= theta <= upper:
covered += 1
# step 3: the coverage is a frequency over repetitions, not a probability on theta
coverage = covered / B # >>> 0.9495 (predicted: 0.95)Ce calcul n'est possible qu'en simulation, où
Exemple : mesure d'une tension
Un voltmètre bruité mesure
Cet intervalle contient-il la vraie tension ? Sur des données réelles, la question reste sans réponse : le résultat obtenu est un intervalle numérique, et la vraie tension y est ou n'y est pas.
Illustration
En simulation, en revanche, la vraie tension est connue, et la couverture se lit directement. Si le niveau de
Figure 2.3, Cent répétitions indépendantes de la mesure (figures/ch2/01-intervalle-confiance.py).
Chaque segment est un intervalle obtenu sur un jeu de données différent. Tous ont la même largeur,
5. Variance inconnue
L'intervalle du §4 suppose
Définition
Définition, Variance empirique
Pour
où
est la moyenne empirique, estimée sur les mêmes données, est le nombre de degrés de liberté restants une fois fixée.
Le diviseur
Propriétés
Proposition, Biais des deux diviseurs
Pour
L'estimateur à diviseur
Démonstration
En insérant
Le premier terme a pour espérance
Le biais du diviseur ddof de NumPy : np.var(x, ddof=1) calcule l'estimateur sans biais, et le défaut ddof=0 l'estimateur biaisé.
Confusion classique
«
Remplacer
Proposition, Intervalle de confiance à variance inconnue
Soient
suit une loi de Student à
est de niveau exactement
Illustration
Si l'ignorance de
Figure 2.4, Loi de Student à figures/ch2/01-student-gaussienne.py).
Les deux densités se ressemblent au centre et diffèrent dans les queues, là où se lisent les quantiles. Les aires colorées représentent
Implémentation
La couverture des deux intervalles se compare par la simulation du §4, en construisant les deux à chaque répétition :
- simuler un jeu de
mesures, avec des et que nous fixons ; - estimer
et sur ce jeu, puis construire les deux intervalles ; - répéter
fois, puis compter la proportion de chacun qui contient .
import numpy as np
import scipy.stats as sta
rng = np.random.default_rng(2026)
theta, sigma, N, B = 2.30, 0.10, 10, 100_000
z = sta.norm.ppf(0.975)
t = sta.t.ppf(0.975, N - 1) # >>> 2.2622 (Gaussian quantile: 1.96)
covered_z, covered_t = 0, 0
for b in range(B):
x = rng.normal(theta, sigma, N) # one repetition of the experiment
mean, sigma_hat = x.mean(), x.std(ddof=1)
half_width = sigma_hat / np.sqrt(N)
if abs(mean - theta) <= z * half_width:
covered_z += 1 # naive interval, Gaussian quantile
if abs(mean - theta) <= t * half_width:
covered_t += 1 # Student interval
coverage_z = covered_z / B # >>> 0.9179 (predicted: 0.9184)
coverage_t = covered_t / B # >>> 0.9493 (predicted: 0.95)L'intervalle naïf n'est pas seulement imprécis, il est trop étroit : il annonce
Exemple : mesure d'une tension
Reprenons les dix mesures du §4, en supposant cette fois la notice du voltmètre indisponible. Les mêmes données donnent
Il est presque identique à celui du §4,
