• 12 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 13/03/2024

Découvrez les tests d'adéquation : le Khi-deux et Kolmogorov Smirnov

L'objectif

Dans les travaux de modélisation que le data analyst sera amené à traiter, il y a aura régulièrement des hypothèses sur des lois de probabilité qu'il lui faudra vérifier.

Il existe de nombreux tests pour vérifier qu'un échantillon suit ou non une loi de probabilité donnée, on en donne ici deux représentants, un dans le cas discret, le test dit du Khi-deux, et un dans le cas continu, le test de Kolmogorov Smirnov.

Si on reprend nos deux exemples introductifs, la loi de probabilité était acquise dans le premier cas (loi de Bernoulli) tandis que dans le second cas on a supposé que l'échantillon était potentiellement gaussien. Cette dernière hypothèse peut tout à fait être testée ; si Kolmogorov-Smirnov est utilisable (et présenté ici car plutôt intuitif), il nous faut reconnaître que l'on utilise souvent d'autres tests comme celui de Shapiro-Wilk (non présenté ici).

Le test du Khi-deux

L'idée

On considère un échantillon dont la loi de probabilité est discrète, avec un nombre de valeurs potentielles finies (si la loi n'est pas de support borné, il suffit de regrouper les valeurs en queue, de probabilité plus faible).
Prenons un exemple simple, le lancer d'un dé à 6 faces. Pour savoir s'il est équilibré, il nous faudrait idéalement vérifier que la probabilité d'obtenir la face 1 vaut $\(\frac{1}{6}\)$, ... , la probabilité d'obtenir la face 6 vaut $\(\frac{1}{6}\)$. Le test du Khi-deux nous simplifie la tâche car il permet de regrouper ces six tests élémentaires. Pour cela on considère une (pseudo-)distance entre les probabilités estimées (que sont les fréquences empiriques) et les valeurs testées : plus cette quantité sera grande, plus on sera enclin à rejeter l'hypothèse que le dé est équilibré.

Le test

On suppose qu'on dispose de $\(n\)$ variables aléatoires $\(X_{i}\)$ discrètes, à valeurs dans $\(\left\{ a_{1},\ldots,a_{k}\right\} \)$, indépendantes et de même loi caractérisée par $\(p=\left( p_{1},\ldots,p_{k}\right)\)$$\(p_{i}=\mathbb{P}\left( X=a_{i}\right) \)$.
On souhaite tester :

$\[\begin{cases} H_{0}=p^{0}\\ H_{1}\ne p^{0} \end{cases}\]$

$\(p^{0}=\left( p_{1}^{0},\ldots,p_{k}^{0}\right)\)$ est connue.
On utilise à cet effet le test du Khi-deux avec comme statistique :

$\[\xi_{n}=n\sum_{i=1}^{k}\frac{\left( \widehat{p}_{i}-p_{i}^{0}\right) ^{2}}{p_{i}^{0}}\]$

.

$\(\widehat{p}_{i}\)$ est égal à la fréquence empirique de la valeur $\(a_i\)$.

La loi asymptotique de $\(\xi_{n}\)$ sous $\(H_0\)$ est connue, il s'agit d'une loi du Khi-deux à $\(k-1\)$ degrés de liberté. On prend donc comme décision, pour un niveau de test $\(\alpha\)$ :

  • le rejet de $\(H_{0}\)$ si $\(\xi_{n}>\chi_{k-1,1-\alpha}^{2}\)$ ,

  • le non-rejet de $\(H_{0}\)$ si $\( \xi_{n}\leq\chi_{k-1,1-\alpha}^{2}\)$ .

Le coin R : exemple des dés de Weldon

Weldon a réalisé   $\(n=26306\)$ lancers de 12 dés à 6 faces et a comptabilisé, à chaque lancer, le nombre de dés indiquant soit 5 soit 6. Il a obtenu les résultats suivants :

Nb de 5 ou 6

0

1

2

3

4

5

6

7

8

9

10

11

12

Effectif

185

1149

3265

5475

6114

5194

3067

1331

403

105

14

4

0

Soit $\(X_i\)$ la v.a.r. à valeurs dans  $\( \left\{ 0,\ldots,12\right\}\)$ désignant le nombre de faces comportant un cinq ou un six lors du $\(i\)$ -ème lancer.

Dans le cas où les dés sont équilibrés : $\(X_i\sim\mathcal{B}\left(\frac{1}{3}\right)\)$ .

On teste si les dés sont équilibrés :

n <- c(185,1149,3265,5475,6114,5194,3067,1331,403,105,14,4,0)
p0 <- dbinom(0:12,12,1/3)
chisq.test(n,p=p0)

## Warning in chisq.test(n, p = p0): Chi-squared approximation may be
## incorrect

## 
## Results of Hypothesis Test
## --------------------------
## 
## Alternative Hypothesis: 
## 
## Test Name: Chi-squared test for given probabilities
## 
## Data: n
## 
## Test Statistic: X-squared = 41.31222
## 
## Test Statistic Parameter: df = 12
## 
## P-value: 4.344864e-05

Le test n’est pas valide car les effectifs ne sont pas suffisants pour les valeurs 10, 11 et 12. On agrège ces modalités et on relance les calculs :

n <- c(185,1149,3265,5475,6114,5194,3067,1331,403,105,18)
p0 <- c(dbinom(0:9,12,1/3),sum(dbinom(10:12,12,1/3)))
chisq.test(n,p=p0)

## 
## Results of Hypothesis Test
## --------------------------
## 
## Alternative Hypothesis: 
## 
## Test Name: Chi-squared test for given probabilities
## 
## Data: n
## 
## Test Statistic: X-squared = 35.4943
## 
## Test Statistic Parameter: df = 10
## 
## P-value: 0.0001027878

On rejette très largement l’hypothèse de dés équilibrés au niveau de test 5%.

Le test de Kolmogorov Smirnov

L'idée

On considère un échantillon dont la loi de probabilité est continue.
Revenons à notre exemple de la consommation d'essence. Pour évaluer si cet échantillon peut être considéré comme gaussien, on peut étudier l'écart entre la fonction de répartition d'une loi normale et celle estimée de notre échantillon : la fonction de répartition empirique !
Plus cette quantité est grande, plus on est enclin à rejeter l'hypothèse comme quoi l'échantillon est gaussien. Le test du Kolmogorov-Smirnov, qui permet de tester toute loi de probabilité, repose sur l'écart maximum observé entre les deux fonctions de répartition, l'empirique et la théorique testée. La loi de cette statistique est toujours la même quelle que soit la loi testée, et est connue asymptotiquement : on peut donc réaliser sans souci un test d'adéquation.

Le test

Soit $\((X_{1},\ldots,X_{n})\)$ un échantillon i.i.d de même loi que $\(X\)$ admettant $\(F\)$ comme fonction de répartition.
On souhaite tester :

$\[\begin{cases}H_{0}:F=F_{0}\\H_{1}:F\ne F_{0}\end{cases}\]$

$\(F_{0}\)$ est connue.
On utilise à cet effet le test de Kolmogorov-Smirnov avec comme statistique :

$\[D_{n}=\sup_{x\in\mathbb{R}}\left|F_{emp}(x)-F_{0}(x)\right|\]$

$\(F_{emp}\)$ est la fonction de répartition empirique de l'échantillon :

$\[F_{emp}(x)=\frac{1}{n}\sum_{i=1}^{n}\, \mathbb{1}_{X_i\leq x}\]$

La statistique de test $\(D_{n}\)$ est basée sur la distance maximale entre la fonction de répartition empirique de l'échantillon, estimation de sa fonction de répartition, et $\(F_{0}\)$.

La loi asymptotique de $\(D_{n}\)$ sous $\(H_0\)$ est connue. Son équation, pas très explicite, n'est pas donnée ici ; elle est néanmoins implémentée dans les logiciels et permet de déterminer la p-valeur, utilisée en pratique pour la prise de décision.

Le coin R : exemple de la consommation d'essence

On peut tester l’adéquation de la consommation d’essence à une loi normale à l’aide de Kolmogorov-Smirnov :

ks.test(essence$conso,"pnorm",mean=mean(essence$conso),sd=sd(essence$conso))

## Warning in ks.test(essence$conso, "pnorm", mean = mean(essence$conso), sd
## = sd(essence$conso)): ties should not be present for the Kolmogorov-Smirnov
## test

## 
## Results of Hypothesis Test
## --------------------------
## 
## Alternative Hypothesis: two-sided
## 
## Test Name: One-sample Kolmogorov-Smirnov test
## 
## Data: essence$conso
## 
## Test Statistic: D = 0.04830966
## 
## P-value: 0.9262283

On ne peut donc pas rejeter l’hypothèse de normalité au niveau de test 5%.

On aurait également pu lancer un test de Shapiro-Wilk :

shapiro.test(essence$conso)
## 
## Results of Hypothesis Test
## --------------------------
## 
## Alternative Hypothesis: 
## 
## Test Name: Shapiro-Wilk normality test
## 
## Data: essence$conso
## 
## Test Statistic: W = 0.9871523
## 
## P-value: 0.2743285

Résumons !

Au cours de cette partie 4, nous avons vu beaucoup de tests statistiques différents. Voici un petit résumé des différents types de tests que nous avons vu :

  • Tests sur les paramètres de la loi d'un échantillon :

    • sur une proportion,

    • sur une moyenne,

    • sur une variance.

  • Test de comparaison de deux échantillons (gaussiens).

  • Tests d'adéquation à une loi :

    • dans le cas discret : test du Khi-deux.

    • dans le cas continu : test de Kolmogorov-Smirnov.

Exemple de certificat de réussite
Exemple de certificat de réussite