Adloun

Thème 7 — Répétition d'expériences indépendantes, échantillonnage

Cours complet · mathématiques complémentaires (terminale), chapitre 17 · terminale, option mathématiques complémentaires

Travailler ce chapitre sur Adloun Exercices corrigés de ce chapitre

Le même mois, sur la même question — l'adoption d'une réforme soumise à référendum —, deux instituts publient deux chiffres. Le premier annonce de soutien, le second . Les deux ont interrogé mille personnes. La presse titre sur un « retournement de l'opinion », les commentateurs cherchent l'événement qui, entre les deux enquêtes, aurait fait basculer trois points.

Il n'y a peut-être rien eu à basculer. Deux enquêtes menées le même jour, dans la même population, par des instituts également honnêtes, ne donnent pas le même résultat — parce qu'elles n'interrogent pas les mêmes gens. Cet écart-là n'est pas une erreur : il est la conséquence mécanique du tirage au sort. Il porte un nom, la fluctuation d'échantillonnage, et il se calcule.

Ce thème est une étude suivie de deux à quatre semaines. Elle part de la question précédente et n'y répond qu'au dernier problème. Elle mobilise le chapitre 8 (schéma de Bernoulli, loi binomiale, détermination d'un intervalle tel que ), le chapitre 9 (simuler une variable de Bernoulli à partir d'un tirage uniforme sur ), le chapitre 10 (ajustement affine après changement de variable), et, en chemin, le chapitre 4 (dérivée et tableau de variation), le chapitre 3 (logarithme) et le chapitre 2 (limites).

Problématique. De combien la fréquence observée sur un échantillon peut-elle s'écarter de la proportion vraie, que coûte le fait de réduire cet écart, et que reste-t-il de tout cela si l'échantillon est mal tiré ?

17.1 La question, et ce qu'il faut de neuf pour y répondre

17.1.1 Ce que le chapitre 8 sait déjà faire, et ce qui manque

Le modèle est acquis. On interroge personnes tirées au hasard dans une population très grande devant , de sorte que le tirage soit assimilable à un tirage avec remise : chaque personne interrogée est une épreuve à deux issues — favorable ou non —, les épreuves sont indépendantes et de même paramètre , la proportion de favorables dans la population. Le nombre de personnes favorables suit donc la loi binomiale , et le chapitre 8 en donne tout :

les deux dernières formules étant admises par le programme. Il sait même déterminer un intervalle tel que .

Il manque pourtant l'essentiel pour lire un sondage. Un institut ne publie pas « personnes favorables sur » : il publie « ». Et la question posée n'est jamais « combien de personnes ? » mais « de combien ce pourcentage peut-il se tromper ? ». Il faut donc changer de variable.

17.1.2 La fréquence observée

Définition 17.1Fréquence observée sur un échantillon

On répète fois, de façon indépendante, une même épreuve de Bernoulli de paramètre , et l'on note le nombre de succès. La fréquence observée de succès sur cet échantillon est la variable aléatoire

Elle prend ses valeurs parmi .

Proposition 17.2Espérance et écart type de la fréquence observée

Si suit et si , alors

Démonstration

On utilise deux résultats de la classe de première, que nous admettons ici : pour tout nombre , et . Avec , et en reprenant les valeurs admises du chapitre 8 :

!Le réflexe

Ces deux formules disent tout le thème, et il faut les lire séparément.

: la fréquence observée vise juste. Elle ne dérive pas, elle ne penche d'aucun côté — à condition que l'échantillon ait été tiré au hasard dans la bonne population. C'est cette condition, et non le calcul, qui fera défaut à la section 6.

: elle vise juste mais elle tremble, et son tremblement décroît comme — pas comme . Toute la section 4 tient dans cette racine carrée.

Exemple 17.3Un sondage sur mille personnes

Pour et :

soit environ point de pourcentage. Deux écarts types font points : un sondage sur mille personnes situe la proportion à environ trois points près, et non à un dixième de point près. Les trois points qui séparent nos deux instituts sont exactement de cet ordre.

17.2 Voir la fluctuation : simuler beaucoup d'échantillons

Le calcul donne un écart type. Il ne montre pas ce qu'est la fluctuation. Pour la voir, il faut faire ce qu'aucun institut ne peut se permettre : refaire l'enquête des milliers de fois dans une population dont on connaît la vraie proportion. C'est précisément ce qu'un ordinateur sait faire.

17.2.1 Le protocole

Méthode : Simuler une campagne d'échantillonnage

  • Fixer la population : on se donne , que l'on connaît puisque c'est nous qui le choisissons.
  • Un échantillon : répéter fois le tirage d'un nombre au hasard dans et compter un succès chaque fois qu'il est inférieur à (chapitre 9). Diviser par : on obtient une réalisation de .
  • Une campagne : recommencer fois, avec grand ( ici).
  • Regarder la liste des fréquences obtenues : sa moyenne, son écart type, son histogramme.

On fixe la graine du générateur : sans cela, deux exécutions ne donnent pas les mêmes chiffres et rien n'est vérifiable.


from random import random, seed

def succes(n, p):
    # Nombre de succes sur n epreuves independantes de parametre p.
    total = 0
    for _ in range(n):
        if random() < p:
            total = total + 1
    return total

def echantillon(n, p):
    # Frequence observee de succes sur un echantillon de taille n.
    return succes(n, p) / n

def campagne(n, p, M):
    # M echantillons independants de taille n : la liste des M frequences.
    return [echantillon(n, p) for _ in range(M)]

def moyenne(valeurs):
    return sum(valeurs) / len(valeurs)

def ecart_type(valeurs):
    m = moyenne(valeurs)
    return (sum((v - m) ** 2 for v in valeurs) / len(valeurs)) ** 0.5

seed(2027)
for n in [25, 100, 400]:
    f = campagne(n, 0.52, 10000)
    print(n, round(moyenne(f), 4), round(ecart_type(f), 4),
          round((0.52 * 0.48 / n) ** 0.5, 4))

Sortie du programme :


25 0.5193 0.1004 0.0999
100 0.5197 0.0501 0.05
400 0.5201 0.0246 0.025

Les trois colonnes de droite se comparent deux à deux : l'écart type observé sur échantillons et l'écart type calculé coïncident à la troisième décimale. La proposition de la section précédente n'est pas seulement démontrée, elle est vérifiée.

17.2.2 Trois histogrammes

iRemarque

Les trois paquets sont centrés au même endroit et n'ont pas la même largeur. C'est la totalité du phénomène. Augmenter ne déplace pas la fréquence observée vers la bonne valeur — elle y était déjà en moyenne : cela réduit son tremblement.

!Attention

Le hasard ne « se compense » pas. Sur personnes interrogées, il n'y a aucun mécanisme qui rattraperait une série de réponses favorables par une série de réponses défavorables : les épreuves sont indépendantes, et chacune ignore les précédentes (c'est déjà ce que disait l'absence de mémoire, au chapitre 8). Si le paquet se resserre, ce n'est pas parce que les écarts se corrigent, c'est parce qu'un écart de points sur épreuves demande une conspiration bien plus improbable qu'un écart de points sur .

17.3 L'intervalle de fluctuation, et le sens de sa lecture

17.3.1 Le passer en fréquences

Méthode : De l'intervalle du chapitre 8 à une fourchette de pourcentages

Le chapitre 8 fournit , plus petit intervalle d'entiers tel que : est le plus petit entier avec , et le plus petit entier avec .

Comme équivaut à , et de même à gauche, on a exactement le même événement des deux côtés :

La fourchette de pourcentages cherchée est donc : on divise les deux bornes par , et rien d'autre.

Le programme du chapitre 8 calculait directement. Il suffit tant que reste modeste ; ici, vaudra . Nous le remplaçons donc par un calcul de proche en proche à partir du mode, qui ne fabrique aucun nombre géant : on part d'un poids arbitraire égal à en , on propage par la relation

qui se lit directement sur l'expression de la loi binomiale, puis on divise par la somme obtenue.


def loi_binomiale(n, p):
    # Liste des P(X = k), calculee de proche en proche depuis le mode.
    k0 = int(n * p)
    poids = [0.0] * (n + 1)
    poids[k0] = 1.0
    for k in range(k0, n):
        poids[k + 1] = poids[k] * (n - k) / (k + 1) * p / (1 - p)
    for k in range(k0, 0, -1):
        poids[k - 1] = poids[k] * k / (n - k + 1) * (1 - p) / p
    total = sum(poids)
    return [w / total for w in poids]

def intervalle(n, p, alpha):
    # Plus petit intervalle [a ; b] tel que P(a <= X <= b) >= 1 - alpha.
    loi = loi_binomiale(n, p)
    cumul, a = 0.0, 0
    while cumul + loi[a] <= alpha / 2:
        cumul = cumul + loi[a]
        a = a + 1
    cumul, b = 0.0, n
    while cumul + loi[b] <= alpha / 2:
        cumul = cumul + loi[b]
        b = b - 1
    return a, b, sum(loi[a:b + 1])
!Attention

Le programme du chapitre 8, avec comb(n, k), donne exactement les mêmes résultats que celui-ci jusqu'à — nous l'avons vérifié. À il s'arrête sur une erreur : OverflowError: int too large to convert to float. Le coefficient est un entier de plus de quatre cents chiffres, que Python calcule sans peine, mais qu'il ne peut plus convertir en nombre décimal pour le multiplier par . Un algorithme juste peut cesser de fonctionner pour la seule raison que les nombres qu'il fabrique en chemin sont trop gros, alors que le résultat, lui, est un nombre compris entre et .

Pour et , ce programme donne :

iRemarque

La probabilité vaut pour et se rapproche de quand grandit, sans jamais descendre en dessous. C'est inévitable : ne prend que des valeurs isolées, et l'on ne peut pas retirer une probabilité exactement égale à de chaque côté — on retire ce que valent les bâtons entiers dont on se prive. L'intervalle est donc légèrement trop large, et d'autant plus que est petit. On ne s'en plaint pas : la garantie annoncée est tenue.

17.3.2 Vérifier que quatre-vingt-quinze pour cent veut bien dire quatre-vingt-quinze pour cent

Un intervalle calculé reste une promesse. La simulation permet de la mettre à l'épreuve : on tire échantillons et l'on compte simplement combien de fois la fréquence observée tombe dans l'intervalle annoncé.


def taux_dans(frequences, u, v):
    # Proportion des frequences observees qui tombent dans [u ; v].
    dedans = sum(1 for f in frequences if u <= f <= v)
    return dedans / len(frequences)

seed(2028)
for (n, a, b) in [(100, 42, 62), (400, 188, 228), (1600, 793, 871)]:
    f = campagne(n, 0.52, 10000)
    print(n, a / n, b / n, taux_dans(f, a / n, b / n))

Sortie du programme :


100 0.42 0.62 0.9642
400 0.47 0.57 0.9584
1600 0.495625 0.544375 0.9544

Les taux observés — , , — reproduisent les probabilités calculées — , , — à quelques millièmes près. Ce n'est pas une démonstration, c'est un contrôle ; et un contrôle qui échouerait signalerait une erreur dans le calcul ou dans le modèle.

17.3.3 Dans quel sens l'intervalle se lit-il ?

!Attention

L'intervalle de fluctuation se lit de vers , jamais dans l'autre sens. Il dit :

si la proportion vraie est , alors la fréquence observée a au moins de chances de tomber dans .

Il ne dit pas : « on a observé , donc est dans avec de chances ». Cette seconde phrase parle de , qui n'est pas une variable aléatoire : est un nombre fixé, inconnu de nous, et il n'a aucune « probabilité » d'être quelque part. Ce sont les deux membres de l'implication qu'on a échangés, et c'est le contresens le plus fréquent sur les sondages.

iRemarque

Comment, alors, les instituts justifient-ils la « marge d'erreur » qu'ils publient, qui va bien de vers ? Par un raisonnement de compatibilité, que l'on peut mener avec les seuls outils de ce thème : pour chaque valeur candidate de , on calcule l'intervalle de fluctuation et l'on demande si la fréquence observée y tombe. Les valeurs de qui passent ce test sont dites compatibles avec l'observation ; les autres sont écartées. C'est exactement ce que fait le problème des deux instituts et du référendum pour trancher entre « la mesure est majoritaire » et « elle ne l'est pas ». La formalisation de cette démarche — l'intervalle de confiance — ne figure pas au programme de cet enseignement, et nous n'en ferons pas usage.

17.4 Le prix de la précision

17.4.1 Une marge qui ne dépend presque pas de

L'écart type fait intervenir , que l'on ne connaît justement pas. C'est gênant en apparence seulement, car le facteur varie très peu.

Proposition 17.4Le produit est majoré par un quart

Pour tout de , , avec égalité si et seulement si .

Démonstration

Posons sur . Cette fonction est dérivable, de dérivée , positive pour et négative pour . Le tableau de variation du chapitre 4 se lit alors sans ambiguïté :

Le maximum de sur vaut donc , atteint au seul point .

◆Théorème 17.5Marge garantie à deux écarts types

Quelle que soit la proportion inconnue ,

La quantité est donc une marge garantie : elle majore deux écarts types de la fréquence observée sans qu'on ait besoin de connaître .

!Le réflexe

Retenir la marge sous la forme , et la lire en points de pourcentage : enquêtes donnent points, en donnent , en donnent . C'est le calcul de tête qui permet de juger un sondage à la lecture du journal, avant tout autre calcul.

!Attention

« À deux écarts types » n'est pas « à ». La règle des deux écarts types est une approximation commode, dont le chapitre 8 a constaté qu'elle tombe très près de ; elle n'a pas été démontrée ici et ne le sera pas. Le tableau de la section 3 montre l'écart : pour et , la demi-largeur exacte vaut et la marge garantie également, mais pour et (cas traité dans l'exercice sur le variant génétique) la demi-largeur exacte vaut tandis que la marge garantie vaut . La marge garantie est prudente : elle majore, elle n'égale pas.

17.4.2 La décroissance en , et ce qu'elle coûte

Le panneau de droite mérite qu'on s'y arrête, car il illustre exactement la méthode du chapitre 10. Le nuage de gauche est courbé : impossible d'y lire une loi. On applique alors le changement de variable réservé aux modèles puissance : on pose et , de sorte que

qui est affine en . La droite des moindres carrés calculée sur les dix couples donne

La pente est l'exposant cherché : , c'est-à-dire à quatre millièmes près. Et l'ordonnée à l'origine donne , soit à un centième près. On retrouve, lue sur des données, la loi établie au paragraphe précédent :

Méthode : Quelle taille d'échantillon pour quelle marge ?

On veut annoncer un résultat à près (par exemple , soit deux points). La marge garantie doit être inférieure à :

La dernière équivalence utilise la stricte croissance de la fonction carré sur . On retient : la taille nécessaire varie comme l'inverse du carré de la marge.

!Le réflexe

Ce tableau explique la taille des sondages publiés. Mille personnes, c'est trois points ; c'est le compromis que retiennent la plupart des instituts, parce que passer à un point exigerait dix mille entretiens, soit dix fois le coût pour trois fois la précision. La fonction est décroissante et convexe (chapitre 5) : chaque enquête supplémentaire rapporte moins que la précédente. C'est un cas de rendements décroissants, et la décision qui en découle est économique autant que mathématique.

iRemarque

Une conséquence contre-intuitive, mais qui se lit directement dans : la taille de la population n'y figure pas. Un échantillon de mille personnes donne la même précision pour une commune de dix mille habitants que pour un pays de soixante-dix millions — pourvu, dans les deux cas, que la population soit assez grande devant pour qu'on puisse assimiler le tirage à un tirage avec remise. Ce n'est pas la proportion de la population interrogée qui fait la précision, c'est le nombre de personnes interrogées.

17.5 Décider

Jusqu'ici l'on connaissait et l'on prévoyait . En pratique c'est l'inverse : on observe et l'on doit trancher. Le lot est-il conforme ? Le traitement est-il meilleur ? Le dé est-il pipé ? Le passage de l'un à l'autre se fait par une règle de décision, qu'on fixe avant de regarder les données.

17.5.1 Le protocole, et ses deux risques

Méthode : Construire une règle de décision

  • Poser l'hypothèse de référence : une valeur que l'on met à l'épreuve (la norme annoncée, le taux du traitement de référence, pour un dé équilibré).
  • Choisir le risque que l'on accepte de rejeter cette hypothèse à tort — le plus souvent .
  • Calculer, sous l'hypothèse , la zone des observations ordinaires : l'intervalle de fluctuation si l'on se méfie des deux côtés, un seuil si un seul côté importe.
  • Décider : observation hors de la zone, on rejette l'hypothèse ; observation dans la zone, on ne la rejette pas.

L'ordre compte. Choisir le seuil après avoir vu le résultat revient à décider de la conclusion, puis à fabriquer la règle qui la produit.

Une règle de décision se trompe de deux façons, et il faut les nommer toutes les deux.

Définition 17.6Les deux risques

Soit une règle qui rejette l'hypothèse dans une certaine zone.

  • Le risque de rejeter à tort, noté , est la probabilité de tomber dans la zone de rejet alors que .
  • Le risque de ne pas détecter, noté , est la probabilité de tomber hors de la zone de rejet alors que vaut en réalité une autre valeur que l'on souhaitait repérer.

La quantité est la probabilité de conclure quand il y a effectivement quelque chose à conclure.

Exemple 17.7Contrôle de réception d'un lot de flacons

Un fournisseur garantit au plus de flacons non conformes. On en prélève et l'on note le nombre de non conformes ; sous l'hypothèse , suit , d'espérance et d'écart type .

Ici un seul côté importe : trop peu de défauts n'a jamais fait refuser un lot. On cherche donc le plus petit seuil tel que . Le calcul donne et , donc : on refuse le lot dès que l'on compte au moins onze flacons non conformes, et l'on refuse alors un bon lot avec la probabilité .

Que vaut l'autre risque ? Si le lot est en réalité à de défauts, alors suit , d'espérance , et

On laisserait donc passer un lot deux fois et demie trop mauvais dans environ des contrôles.

17.5.2 Contrôler le risque annoncé

Un risque de est une prévision. Elle se vérifie exactement comme on a vérifié le taux de couverture : en simulant des lots conformes et en comptant combien la règle en refuse.


def refuses(n, p, seuil, M):
    # Proportion de lots refuses par la regle, sur M controles simules.
    compte = 0
    for _ in range(M):
        if succes(n, p) >= seuil:
            compte = compte + 1
    return compte / M

seed(2033)
print(refuses(200, 0.03, 11, 20000))   # lots conformes : risque alpha
print(refuses(200, 0.08, 11, 20000))   # lots degrades : probabilite de detecter

Sortie du programme :


0.0397
0.9297

La règle refuse des bons lots, contre les annoncés, et détecte des lots à , contre les calculés. Le protocole se comporte comme prévu.

!Attention

On teste ici succes(n, p) &gt;= seuil et non echantillon(n, p) * n &gt;= seuil. Les deux expressions sont mathématiquement identiques, mais la seconde divise par puis remultiplie par : le résultat peut valoir au lieu de , et le lot est alors accepté à tort. Quand une décision repose sur une comparaison d'entiers, il faut comparer des entiers.

!Attention

Ne pas rejeter n'est pas démontrer. Si le contrôle compte huit flacons non conformes, on ne refuse pas le lot ; cela ne prouve nullement que . La figure précédente le montre : sous , la valeur est parfaitement possible. La conclusion correcte est « l'observation ne contredit pas la garantie du fournisseur », et rien de plus. Confondre les deux, c'est croire qu'un contrôle qui ne trouve rien prouve qu'il n'y avait rien.

17.6 Ce qu'aucun calcul ne rattrape

Tout ce qui précède repose sur une hypothèse énoncée une fois, au début, et jamais réexaminée : l'échantillon est tiré au hasard dans la population dont on veut connaître la proportion. Quand cette hypothèse tombe, les formules ne préviennent pas. Elles continuent de produire des marges d'erreur, de plus en plus petites, autour d'une valeur fausse.

17.6.1 Trois façons de mal tirer un échantillon

17.6.2 La non-réponse, mise en équation

Proposition 17.8Le biais de non-réponse ne dépend pas de

Une population se partage en deux groupes : une proportion de personnes qui répondraient à l'enquête, chez qui la proportion de favorables est , et une proportion qui ne répondrait pas, chez qui elle vaut . La proportion vraie dans la population entière est alors

et l'enquête, qui n'atteint que les répondants, a pour espérance . Son biais vaut donc

Ce nombre ne fait intervenir ni , ni la taille de la population.

Démonstration

Il suffit de développer. Puisque ,

Exemple 17.9Une enquête en ligne

Un questionnaire est adressé à un échantillon correctement tiré ; des personnes répondent, et d'entre elles se déclarent favorables. Si les non-répondants ne sont favorables qu'à , la proportion vraie est

et le biais vaut , soit points. On retrouve bien .

L'enquête annoncera , quelle que soit sa taille.

17.6.3 Quand le biais l'emporte sur la fluctuation

L'erreur totale d'une enquête a deux composantes : une fluctuation, qui décroît comme , et un biais, qui ne décroît pas. Il existe donc une taille d'échantillon à partir de laquelle la seconde domine la première :

Un biais de deux points, c'est-à-dire une bagatelle au regard de la plupart des enquêtes réelles, l'emporte sur la fluctuation dès personnes interrogées. Au-delà, agrandir l'échantillon n'améliore plus rien du tout.

!Attention

La taille de l'échantillon ne corrige pas le biais : elle le certifie. Un échantillon biaisé de deux millions de réponses donne une marge de fluctuation dérisoire autour d'une valeur fausse ; il produit donc une erreur énorme, accompagnée d'une confiance énorme. C'est exactement ce qui s'est produit en 1936 — le problème consacré au sondage du Literary Digest en fait le compte.

!Le réflexe

Avant tout calcul sur un sondage, poser trois questions dans cet ordre : qui a été interrogé, comment il a été choisi, combien ont répondu. Le nombre d'interrogés ne vient qu'en quatrième position, et c'est le seul que les journaux publient.

17.7 Bilan

Proposition 17.10L'essentiel du thème
  • On passe du nombre de succès à la fréquence observée , avec

La fréquence observée vise juste et tremble : deux propriétés à ne jamais confondre.

  • L'intervalle de fluctuation en fréquences est , où est l'intervalle du chapitre 8. Il se lit de vers , jamais dans l'autre sens.
  • Comme (démontré par le tableau de variation de ), la marge garantie à deux écarts types vaut , quelle que soit la proportion inconnue. D'où pour une marge : personnes donnent trois points, en donnent un.
  • Quadrupler l'échantillon divise la marge par deux. Cet exposant se lit sur des données réelles en portant contre : la pente des moindres carrés vaut .
  • Une règle de décision se fixe avant de voir les données, et se juge sur deux risques : refuser à tort () et ne pas détecter (). À fixé, le seuil ne fait que les échanger ; seul les fait baisser ensemble. Ne pas rejeter n'est jamais démontrer.
  • Le biais — échantillon non représentatif, biais de sélection, non-réponse — vaut pour la non-réponse : il ne dépend pas de . Dès que , il l'emporte sur la fluctuation, et agrandir l'échantillon ne le corrige pas : cela le certifie.
!Le réflexe

Une seule question résume le thème et se pose devant n'importe quel chiffre publié : de quelle population cet échantillon a-t-il été tiré, et qui a répondu ? Si la réponse est bonne, dit tout le reste. Si elle est mauvaise, aucun calcul de ce chapitre ne s'applique — et le nombre d'interrogés, si grand soit-il, ne mesure plus que l'assurance avec laquelle on se trompe.

Continuer sur Adloun : animation, QCM, fiches, exercices