Aller au contenu

Jugez la qualité d'un estimateur

Pendant la Seconde Guerre mondiale, les Alliés estimaient la production de chars allemands à partir des numéros de série des chars capturés. Le problème est le même pour un service de vélos en libre-service dont les vélos sont numérotés de 1 à θ\theta : en voyant passer quelques numéros, combien de vélos compte la flotte ?

On peut imaginer plusieurs formules. Laquelle est la meilleure ? Pour trancher, il faut des critères. C’est l’objet de ce chapitre, et ces vélos numérotés seront notre fil rouge.

Vous observez 5 vélos, de numéros 112, 47, 305, 198 et 260. On modélise ces numéros comme un 5-échantillon X1,…,X5X_1, \dots, X_5 de la loi uniforme sur [0,θ][0, \theta] (une approximation continue de « un numéro au hasard entre 1 et θ\theta »). Le nombre θ\theta est le paramètre inconnu.

Un estimateur de θ\theta est une statistique Tn=h(X1,…,Xn)T_n = h(X_1, \dots, X_n) dont l’expression ne dépend pas de θ\theta. On le note souvent θ^\hat\theta. Une estimation est la valeur tnt_n qu’il prend sur les données observées.

Voici deux candidats raisonnables.

  • Par la moyenne. Pour la loi uniforme sur [0,θ][0, \theta], l’espérance vaut θ/2\theta/2. D’où l’idée Tn=2XˉnT_n = 2 \bar X_n. Ici xˉ5=184,4\bar x_5 = 184{,}4, donc t5=368,8t_5 = 368{,}8.
  • Par le maximum. Le plus grand numéro vu, X(n)=max⁡XiX_{(n)} = \max X_i, est forcément inférieur à θ\theta. On le gonfle un peu : Tn′=n+1nX(n)T'_n = \frac{n+1}{n} X_{(n)}. Ici 305×6/5=366305 \times 6/5 = 366.

Les deux estimations sont proches, mais sur un autre échantillon elles pourraient différer beaucoup. Comme TnT_n est une variable aléatoire, c’est sa loi qu’il faut juger.

Le biais d’un estimateur TnT_n de θ\theta est

b(Tn)=E[Tn]−θb(T_n) = E[T_n] - \theta

où E[Tn]E[T_n] est l’espérance de l’estimateur, c’est-à-dire la valeur moyenne qu’il prendrait sur une infinité d’échantillons. L’estimateur est sans biais si b(Tn)=0b(T_n) = 0, et asymptotiquement sans biais si b(Tn)→0b(T_n) \to 0 quand n→+∞n \to +\infty.

Voici le résultat qui justifie le n−1n - 1 du chapitre précédent. Notons σ2=V(X)\sigma^2 = V(X) et m=E[X]m = E[X]. On part de l’écriture Sn2=1n∑Xi2−Xˉn2S_n^2 = \frac{1}{n}\sum X_i^2 - \bar X_n^2 et de l’identité E[Z2]=V(Z)+E[Z]2E[Z^2] = V(Z) + E[Z]^2 :

E[Sn2]=E[X2]−E[Xˉn2]=(σ2+m2)−(σ2n+m2)=n−1n σ2E[S_n^2] = E[X^2] - E[\bar X_n^2] = (\sigma^2 + m^2) - \left( \frac{\sigma^2}{n} + m^2 \right) = \frac{n-1}{n} \, \sigma^2

On a utilisé V(Xˉn)=σ2/nV(\bar X_n) = \sigma^2/n, qui vient de l’indépendance : V(1n∑Xi)=1n2∑V(Xi)=σ2nV\left(\frac{1}{n}\sum X_i\right) = \frac{1}{n^2} \sum V(X_i) = \frac{\sigma^2}{n}.

Le biais de Sn2S_n^2 vaut donc −σ2/n-\sigma^2/n : il est négatif (on sous-estime la dispersion) mais tend vers 0. En multipliant par nn−1\frac{n}{n-1}, on obtient S~n2\tilde S_n^2, dont l’espérance vaut exactement σ2\sigma^2.

0,00,51,01,52,02,53,03,54,0variance estimée sur un échantillon gaussien de taille n = 5 (σ² = 1)0,00,20,40,60,81,0densitéE[Sₙ²] = (n − 1)/n · σ² = 0,80E[S̃ₙ²] = σ² = 1Sₙ² (division par n)S̃ₙ² (division par n − 1)
Avec n = 5, Sₙ² vise en moyenne 0,8 σ² : elle sous-estime la dispersion. Multiplier par n/(n − 1) recentre la distribution sur σ².

Mais pourquoi sous-estime-t-on ? Parce que les écarts sont mesurés par rapport à Xˉn\bar X_n, qui est calculée sur les mêmes données et « colle » donc aux points plus que la vraie moyenne mm. On dit qu’on a perdu un degré de liberté.

Un estimateur sans biais peut quand même être mauvais : s’il vise juste en moyenne mais s’éparpille énormément, une estimation isolée peut tomber très loin. On mesure donc l’erreur globale par l’erreur quadratique moyenne (EQM, ou risque quadratique, en anglais mean squared error) :

EQM(Tn)=E[(Tn−θ)2]=V(Tn)+b(Tn)2EQM(T_n) = E\left[(T_n - \theta)^2\right] = V(T_n) + b(T_n)^2

La décomposition vient du développement de (Tn−E[Tn]+E[Tn]−θ)2(T_n - E[T_n] + E[T_n] - \theta)^2, dont le terme croisé a une espérance nulle. Elle dit que l’erreur se compose d’une partie variance (l’éparpillement) et d’une partie biais au carré (le décalage systématique).

θ au centresans biais, faible variancebiaisé, faible variancesans biais, forte variancebiaisé, forte variance
Chaque point est l'estimation tirée d'un échantillon. Le biais décale le nuage, la variance l'étale : l'EQM pénalise les deux.

Entre deux estimateurs sans biais, on préfère celui de plus petite variance. Le meilleur possible, s’il existe, s’appelle estimateur sans biais de variance minimale (ESBVM). Mais un estimateur légèrement biaisé peut avoir une EQM plus faible qu’un estimateur sans biais. Les vélos en donnent un exemple frappant.

2 X̄ₙ (sans biais)E[T] ≈ 300EQM ≈ 0,067 θ²θ = 300X₍ₙ₎ (biaisé)E[T] ≈ 250EQM ≈ 0,048 θ²0100200300400500600valeur de l’estimateur (200 000 échantillons de 5 vélos, θ = 300)(n + 1)/n · X₍ₙ₎ (sans biais)E[T] ≈ 300EQM ≈ 0,029 θ²
Le maximum brut est biaisé (sa moyenne tombe vers 250) mais bien moins dispersé que 2 X̄ₙ ; une fois corrigé, il vise juste et reste serré : la plus petite EQM.
import numpy as np
rng = np.random.default_rng(0)
theta, n, R = 300, 5, 200_000
X = rng.uniform(0, theta, size=(R, n)) # R échantillons de taille n
estimateurs = {
"2 * moyenne": 2 * X.mean(axis=1),
"maximum": X.max(axis=1),
"maximum corrigé": (n + 1) / n * X.max(axis=1),
}
for nom, T in estimateurs.items():
eqm = np.mean((T - theta) ** 2) / theta**2
print(f"{nom:>16} : biais {T.mean() - theta:+6.1f}, EQM / theta^2 = {eqm:.3f}")

Que se passe-t-il quand l’échantillon grandit ?

Section intitulée « Que se passe-t-il quand l’échantillon grandit ? »

On attend d’un estimateur raisonnable qu’il s’améliore avec plus de données. Il y a plusieurs façons de le formaliser.

TnT_n converge en moyenne quadratique vers θ\theta si EQM(Tn)→0EQM(T_n) \to 0. Pour un estimateur sans biais, il suffit que sa variance tende vers 0. C’est le cas de Xˉn\bar X_n, dont la variance σ2/n\sigma^2/n tend vers 0 dès que σ2\sigma^2 est finie.

TnT_n est consistant (ou convergent) si, pour toute marge a>0a > 0,

P(∣Tn−θ∣>a)→n→+∞0P\left(\lvert T_n - \theta \rvert > a\right) \xrightarrow[n \to +\infty]{} 0

Autrement dit, la probabilité de se tromper de plus de aa devient négligeable. L’outil de base pour le montrer est l’inégalité de Bienaymé-Tchebychev : pour toute variable XX de variance finie et tout a>0a > 0,

P(∣X−E[X]∣≥a)≤V(X)a2P\left(\lvert X - E[X] \rvert \ge a\right) \le \frac{V(X)}{a^2}

On en déduit que la convergence en moyenne quadratique entraîne la consistance.

1502002503003504004502 X̄ₙ (vélos, θ = 300)0,000,010,020,030,040,050,060,070,08densité (approx. normale)n = 10 : P(|T − θ| ≥ 20) ≈ 0,715n = 100 : P(|T − θ| ≥ 20) ≈ 0,248n = 1000 : P(|T − θ| ≥ 20) ≈ 0,0003±20 autour de θ
Quand n grandit, la loi de l'estimateur se resserre autour de θ : la probabilité de se tromper de plus de 20 vélos tend vers 0. C'est la consistance.

Une propriété très pratique : si TnT_n est consistant pour θ\theta et ff est continue, alors f(Tn)f(T_n) est consistant pour f(θ)f(\theta). C’est ainsi qu’on voit directement que 2Xˉn2\bar X_n est consistant pour θ\theta dans le modèle uniforme.

La consistance dit que TnT_n se rapproche de θ\theta, mais pas comment il fluctue autour. Pour cela, on utilise la convergence en loi : ZnZ_n converge en loi vers ZZ si P(Zn≤t)→P(Z≤t)P(Z_n \le t) \to P(Z \le t) en tout point tt où la fonction de répartition de ZZ est continue.

Le résultat phare est le théorème central limite (TCL) : si X1,…,XnX_1, \dots, X_n sont i.i.d. d’espérance mm et de variance σ2\sigma^2 finie,

n (Xˉn−m)σ→n→+∞LN(0,1)\frac{\sqrt{n}\,(\bar X_n - m)}{\sigma} \xrightarrow[n \to +\infty]{\mathcal{L}} \mathcal{N}(0, 1)

Quelle que soit la loi de départ, la moyenne fluctue autour de mm selon une loi à peu près normale, d’écart-type σ/n\sigma/\sqrt{n}. C’est ce résultat qui rendra possibles les intervalles de confiance et les tests asymptotiques.

−2024√n (X̄ₙ − m) / σ0,00,20,40,60,8densitéloi de départ :exponentiellen = 1−2024√n (X̄ₙ − m) / σn = 5−2024√n (X̄ₙ − m) / σN(0, 1)n = 30
Partie d'une loi très dissymétrique, la moyenne standardisée prend déjà une forme de cloche à n = 30 : c'est le théorème central limite à l'œuvre.

Plus généralement, on dit que TnT_n est asymptotiquement normal si n (Tn−θ)\sqrt{n}\,(T_n - \theta) converge en loi vers N(0,Σ(θ))\mathcal{N}(0, \Sigma(\theta)) ; Σ(θ)\Sigma(\theta) est la variance asymptotique.

Et si l’on s’intéresse à une fonction du paramètre ? La delta-méthode répond : si n (Tn−θ)→N(0,Σ(θ))\sqrt{n}\,(T_n - \theta) \to \mathcal{N}(0, \Sigma(\theta)) en loi et si gg est dérivable avec g′(θ)≠0g'(\theta) \ne 0, alors

n (g(Tn)−g(θ))→LN(0, Σ(θ) g′(θ)2)\sqrt{n}\,\big(g(T_n) - g(\theta)\big) \xrightarrow{\mathcal{L}} \mathcal{N}\big(0,\ \Sigma(\theta)\, g'(\theta)^2\big)

L’idée est un développement limité : près de θ\theta, g(Tn)−g(θ)≈g′(θ)(Tn−θ)g(T_n) - g(\theta) \approx g'(\theta)(T_n - \theta).

1,61,82,02,22,42,62,83,0x (vélos par minute)0,040,060,080,100,120,140,160,180,20g(x)exp(−2,3) ≈ 0,100tangente de pente g′(θ) = −exp(−θ)X̄ₙ : écart-type ≈ 0,152exp(−X̄ₙ) :écart-type ≈ 0,015g(x) = exp(−x)
Près de θ, la courbe se confond avec sa tangente : l'écart-type de g(X̄ₙ) est celui de X̄ₙ multiplié par |g′(θ)| = exp(−2,3) ≈ 0,1.
  • Un estimateur est une statistique qui ne dépend pas du paramètre ; une estimation est sa valeur sur les données.
  • Biais : E[Tn]−θE[T_n] - \theta. Xˉn\bar X_n est sans biais pour l’espérance ; Sn2S_n^2 est biaisée (−σ2/n-\sigma^2/n), d’où la variance corrigée S~n2\tilde S_n^2.
  • EQM =V(Tn)+b(Tn)2= V(T_n) + b(T_n)^2 : un estimateur biaisé peut battre un estimateur sans biais.
  • Convergence en moyenne quadratique (EQM→0EQM \to 0) entraîne la consistance, que l’on montre souvent avec Bienaymé-Tchebychev.
  • Le TCL donne la loi approchée de Xˉn\bar X_n : normale, d’écart-type σ/n\sigma/\sqrt{n} ; la delta-méthode l’étend à g(Tn)g(T_n).

Exercice · Deux estimateurs de la moyenne

facile

Avec un 3-échantillon X1,X2,X3X_1, X_2, X_3 d’espérance mm et de variance σ2\sigma^2, on propose T=Xˉ3T = \bar X_3 et T′=12X1+14X2+14X3T' = \frac{1}{2} X_1 + \frac{1}{4} X_2 + \frac{1}{4} X_3. Sont-ils sans biais ? Lequel préférer ?

Voir la solution

Par linéarité, E[T]=mE[T] = m et E[T′]=12m+14m+14m=mE[T'] = \frac{1}{2}m + \frac{1}{4}m + \frac{1}{4}m = m : les deux sont sans biais. On compare donc leurs variances, grâce à l’indépendance :

  • V(T)=σ2/3≈0,333 σ2V(T) = \sigma^2/3 \approx 0{,}333\,\sigma^2 ;
  • V(T′)=14σ2+116σ2+116σ2=38σ2=0,375 σ2V(T') = \frac{1}{4}\sigma^2 + \frac{1}{16}\sigma^2 + \frac{1}{16}\sigma^2 = \frac{3}{8}\sigma^2 = 0{,}375\,\sigma^2.

On préfère TT : à biais égal (nul), sa variance est plus faible. Plus généralement, parmi les moyennes pondérées de poids positifs de somme 1, les poids égaux minimisent la variance.

En code

import numpy as np
# Variances exactes (sigma^2 = 1) : somme des poids au carré
poids_T = np.array([1/3, 1/3, 1/3])
poids_Tp = np.array([1/2, 1/4, 1/4])
print(np.sum(poids_T**2), np.sum(poids_Tp**2)) # 0.333 0.375
# Vérification par simulation : m = 10, sigma = 1
rng = np.random.default_rng(0)
X = rng.normal(10, 1, size=(100_000, 3))
T, Tp = X @ poids_T, X @ poids_Tp
print(T.mean(), Tp.mean()) # 10.000 10.001 (sans biais)
print(T.var(), Tp.var()) # 0.333 0.376

Exercice · Consistance d'un estimateur uniforme

moyen

Dans le modèle uniforme sur [0,θ][0, \theta], montrez que Tn=2XˉnT_n = 2\bar X_n converge en moyenne quadratique vers θ\theta, puis qu’il est consistant.

Voir la solution

TnT_n est sans biais, donc EQM(Tn)=V(Tn)=4 V(Xˉn)=4×θ212n=θ23nEQM(T_n) = V(T_n) = 4\,V(\bar X_n) = 4 \times \frac{\theta^2}{12 n} = \frac{\theta^2}{3n}, qui tend vers 0 : il y a convergence en moyenne quadratique.

Par Bienaymé-Tchebychev, pour tout a>0a > 0 : P(∣Tn−θ∣≥a)≤θ23na2→0P(\lvert T_n - \theta \rvert \ge a) \le \frac{\theta^2}{3 n a^2} \to 0. L’estimateur est donc consistant.

On pouvait aussi dire : Xˉn\bar X_n est consistant pour θ/2\theta/2 et f(x)=2xf(x) = 2x est continue, donc 2Xˉn2\bar X_n est consistant pour θ\theta.

En code

import numpy as np
rng = np.random.default_rng(0)
theta, a, R = 300, 20, 20_000
for n in [10, 100, 1000]:
T = 2 * rng.uniform(0, theta, size=(R, n)).mean(axis=1)
eqm = np.mean((T - theta)**2)
p_erreur = np.mean(np.abs(T - theta) >= a)
borne = theta**2 / (3 * n * a**2) # Bienaymé-Tchebychev
print(n, round(eqm), round(theta**2 / (3 * n)), p_erreur, round(borne, 3))
# n EQM simulée theta^2/(3n) P(|T - theta| >= 20) borne
# 10 2994 3000 0.712 7.5 (borne inutile ici)
# 100 299 300 0.248 0.75
# 1000 30 30 0.00015 0.075 (tout tend vers 0)

Exercice · Delta-méthode pour une loi exponentielle

difficile

Les durées d’appel à une hotline suivent une loi exponentielle de paramètre λ\lambda : E[X]=1/λE[X] = 1/\lambda et V(X)=1/λ2V(X) = 1/\lambda^2. On estime λ\lambda par 1/Xˉn1/\bar X_n. Donnez sa variance asymptotique.

Voir la solution

Par le TCL, n (Xˉn−1/λ)→N(0,1/λ2)\sqrt{n}\,(\bar X_n - 1/\lambda) \to \mathcal{N}(0, 1/\lambda^2). On applique la delta-méthode avec g(x)=1/xg(x) = 1/x, donc g′(x)=−1/x2g'(x) = -1/x^2, évaluée en 1/λ1/\lambda : g′(1/λ)=−λ2g'(1/\lambda) = -\lambda^2.

La variance asymptotique vaut 1λ2×(λ2)2=λ2\frac{1}{\lambda^2} \times (\lambda^2)^2 = \lambda^2. Ainsi n (1/Xˉn−λ)→N(0,λ2)\sqrt{n}\,(1/\bar X_n - \lambda) \to \mathcal{N}(0, \lambda^2) : l’erreur-type approchée de λ^\hat\lambda est λ^/n\hat\lambda/\sqrt{n}. Nous retrouverons ce résultat au chapitre suivant par le maximum de vraisemblance.

En code

import numpy as np
rng = np.random.default_rng(0)
lam, n, R = 2.0, 500, 20_000
X = rng.exponential(scale=1 / lam, size=(R, n))
lam_hat = 1 / X.mean(axis=1) # estimateur 1 / moyenne
print(np.var(np.sqrt(n) * (lam_hat - lam))) # 4.02, proche de lambda^2 = 4
print(lam_hat.std(), lam / np.sqrt(n)) # 0.0896 0.0894 : simulée puis lambda / sqrt(n)