Une introduction en douceur aux Intervalles de tolérance statistiques dans l’apprentissage automatique

Tweet Partager Partager

Dernière mise à jour le 8 août 2019

Il peut être utile d’avoir une limite supérieure et inférieure sur les données.

Ces limites peuvent être utilisées pour identifier les anomalies et définir les attentes à quoi s’attendre. Une limite sur les observations d’une population est appelée intervalle de tolérance. Un intervalle de tolérance provient du domaine des statistiques d’estimation.

Un intervalle de tolérance est différent d’un intervalle de prédiction qui quantifie l’incertitude pour une seule valeur prédite. Il est également différent d’un intervalle de confiance qui quantifie l’incertitude d’un paramètre de population tel qu’une moyenne. Au lieu de cela, un intervalle de tolérance couvre une proportion de la distribution de la population.

Dans ce tutoriel, vous découvrirez les intervalles de tolérance statistiques et comment calculer un intervalle de tolérance pour les données gaussiennes.

Après avoir terminé ce tutoriel, vous saurez:

  • Que les intervalles de tolérance statistiques fournissent une limite sur les observations d’une population.
  • Qu’un intervalle de tolérance nécessite qu’une proportion de couverture et une confiance soient spécifiées.
  • Que l’intervalle de tolérance pour un échantillon de données avec une distribution gaussienne peut être facilement calculé.

Lancez votre projet avec mon nouveau livre Statistiques pour l’apprentissage automatique, y compris des tutoriels étape par étape et les fichiers de code source Python pour tous les exemples.

Commençons.

Une introduction en Douceur aux Intervalles de Tolérance Statistiques dans l’Apprentissage automatique
Photo de Paul Hood, certains droits réservés.

Présentation du tutoriel

Ce tutoriel est divisé en 4 parties; elles sont:

  1. Limites sur les données
  2. Que Sont les Intervalles de Tolérance Statistiques?
  3. Comment Calculer les Intervalles de tolérance
  4. Intervalle de tolérance pour la Distribution Gaussienne

Besoin d’aide avec les statistiques pour l’apprentissage automatique?

Suivez mon cours intensif gratuit de 7 jours par e-mail maintenant (avec un exemple de code).

Cliquez pour vous inscrire et obtenez également une version PDF Ebook gratuite du cours.

Téléchargez votre Mini-Cours GRATUIT

Limites sur les données

Il est utile de mettre des limites sur les données.

Par exemple, si vous avez un échantillon de données d’un domaine, connaître la borne supérieure et inférieure des valeurs normales peut être utile pour identifier des anomalies ou des valeurs aberrantes dans les données.

Pour un processus ou un modèle qui fait des prédictions, il peut être utile de connaître la plage attendue que les prédictions sensées peuvent prendre.

Connaître la plage de valeurs commune peut aider à définir des attentes et à détecter des anomalies.

La plage de valeurs communes pour les données est appelée intervalle de tolérance.

Que Sont Les Intervalles De Tolérance Statistiques ?

L’intervalle de tolérance est une limite sur une estimation de la proportion de données dans une population.

Intervalle de tolérance statistique une proportion spécifiée des unités de la population ou du processus échantillonné.

— Page 3, Intervalles statistiques: Un guide pour les praticiens et les chercheurs, 2017.

L’intervalle est limité par l’erreur d’échantillonnage et par la variance de la distribution de la population. Compte tenu de la loi des grands nombres, à mesure que la taille de l’échantillon augmente, les probabilités correspondent mieux à la distribution de la population sous-jacente.

Voici un exemple d’intervalle de tolérance déclaré :

La plage de x à y couvre 95% des données avec une confiance de 99%.

Si les données sont gaussiennes, l’intervalle peut être exprimé dans le contexte de la valeur moyenne ; par exemple :

x +/-y couvre 95% des données avec une confiance de 99%.

Nous appelons ces intervalles des intervalles de tolérance statistiques, pour les différencier des intervalles de tolérance en ingénierie qui décrivent des limites d’acceptabilité, par exemple pour une conception ou un matériau. En général, nous les décrirons simplement comme des « intervalles de tolérance » pour plus de commodité.

Un intervalle de tolérance est défini en termes de deux grandeurs :

  • Couverture : La proportion de la population couverte par l’intervalle.
  • Confiance: La confiance probabiliste que l’intervalle couvre la proportion de la population.

L’intervalle de tolérance est construit à partir de données utilisant deux coefficients, la couverture et le coefficient de tolérance. La couverture est la proportion de la population (p) que l’intervalle est censé contenir. Le coefficient de tolérance est le degré de confiance avec lequel l’intervalle atteint la couverture spécifiée. Un intervalle de tolérance avec une couverture de 95% et un coefficient de tolérance de 90% contiendra 95% de la distribution de la population avec une confiance de 90%.

— Page 175, Statistics for Environmental Engineers, Deuxième édition, 2002.

Comment calculer les intervalles de tolérance

La taille d’un intervalle de tolérance est proportionnelle à la taille de l’échantillon de données de la population et à la variance de la population.

Il existe deux méthodes principales pour calculer les intervalles de tolérance en fonction de la distribution des données: les méthodes paramétriques et non paramétriques.

  • Intervalle de tolérance paramétrique: Utilisez la connaissance de la distribution de la population pour spécifier à la fois la couverture et la confiance. Souvent utilisé pour désigner une distribution gaussienne.
  • Intervalle de tolérance non paramétrique: Utilisez des statistiques de rang pour estimer la couverture et la confiance, ce qui entraîne souvent moins de précision (intervalles plus larges) étant donné le manque d’informations sur la distribution.

Les intervalles de tolérance sont relativement simples à calculer pour un échantillon d’observations indépendantes tirées d’une distribution gaussienne. Nous démontrerons ce calcul dans la section suivante.

Intervalle de tolérance pour la distribution Gaussienne

Dans cette section, nous allons travailler à travers un exemple de calcul des intervalles de tolérance sur un échantillon de données.

Tout d’abord, définissons notre échantillon de données. Nous allons créer un échantillon de 100 observations tirées d’une distribution gaussienne avec une moyenne de 50 et un écart type de 5.

1
2
# générer un ensemble de données
data=5* randn(100 ) +50

Pendant l’exemple, nous supposerons que nous ignorons la vraie moyenne et l’écart type de la population et que ces valeurs doivent être estimées.

Comme les paramètres de population doivent être estimés, il y a une incertitude supplémentaire. Par exemple, pour une couverture de 95%, nous pourrions utiliser 1,96 (ou 2) écarts types par rapport à la moyenne estimée comme intervalle de tolérance. Nous devons estimer la moyenne et l’écart type par rapport à l’échantillon et prendre en compte cette incertitude, le calcul de l’intervalle est donc légèrement plus complexe.

Ensuite, nous devons spécifier le nombre de degrés de liberté. Ceci sera utilisé dans le calcul des valeurs critiques et dans le calcul de l’intervalle. Plus précisément, il est utilisé dans le calcul de l’écart-type.

Rappelez-vous que les degrés de liberté sont le nombre de valeurs dans le calcul qui peuvent varier. Ici, nous avons 100 observations, donc 100 degrés de liberté. Nous ne connaissons pas l’écart type, il doit donc être estimé en utilisant la moyenne. Cela signifie que nos degrés de liberté seront (N–1) ou 99.

1
2
3

# spécifiez les degrés de liberté
n = len(données)
dof = n-1

Ensuite, nous devons spécifier la couverture proportionnelle des données. Dans cet exemple, nous nous intéressons au milieu de 95% des données. La proportion est de 95. Nous devons déplacer cette proportion de manière à ce qu’elle couvre les 95% moyens, c’est-à-dire du 2,5 e percentile au 97,5 e percentile.

Nous savons que la valeur critique pour 95% est de 1,96 étant donné que nous l’utilisons si souvent; néanmoins, nous pouvons le calculer directement en Python compte tenu du pourcentage 2,5% de la fonction de survie inverse. Cela peut être calculé en utilisant la norme.fonction SciPy isf().

1
2
3
4
# spécifiez la valeur couverture des données
prop=0,95
prop_inv=(1,0-prop) /2.0
gauss_critical=norm.isf(prop_inv)

Ensuite, nous devons calculer la confiance de la couverture. Nous pouvons le faire en récupérant la valeur critique de la distribution au carré Chi pour le nombre donné de degrés de liberté et la probabilité souhaitée. On peut utiliser le chi2.fonction SciPy isf().

1
2
3
# spécifiez la confiance
prob=0.99
chi_critical=chi2.isf(q=prob, df=dof)

Nous avons maintenant toutes les pièces pour calculer l’intervalle de tolérance gaussienne. Le calcul est le suivant:

1
interval=sqrt((dof*(1+(1/n)) * gauss_critical^2) / chi_critical)

Où dof est le nombre en degrés de liberté, n est la taille de l’échantillon de données, gauss_critique est la valeur critique, telle que 1,96 pour une couverture de 95% de la population, et chi_critique est la valeur critique au carré du Chi pour la confiance et les degrés de liberté souhaités.

1
interval=sqrt((dof*(1+(1/n)) * gauss_critical**2) / chi_critical)

Nous pouvons lier tout cela ensemble et calculez l’intervalle de tolérance gaussienne pour notre échantillon de données.

L’exemple complet est répertorié ci-dessous.

L’exécution de l’exemple calcule et imprime d’abord les valeurs critiques pertinentes pour les distributions Gaussiennes et au carré Chi. La tolérance est imprimée, puis présentée correctement.

Il peut également être utile de démontrer comment l’intervalle de tolérance diminuera (deviendra plus précis) à mesure que la taille de l’échantillon augmentera.

L’exemple ci-dessous le démontre en calculant l’intervalle de tolérance pour différentes tailles d’échantillon pour le même petit problème artificiel.

L’exécution de l’exemple crée un graphique montrant l’intervalle de tolérance autour de la moyenne réelle de la population.

Nous pouvons voir que l’intervalle devient plus petit (plus précis) à mesure que la taille de l’échantillon passe de 5 à 15 exemples.

Graphique de la barre d’erreur de l’intervalle de tolérance par rapport à la taille de l’échantillon

Extensions

Cette section répertorie quelques idées pour étendre le tutoriel que vous souhaiterez peut-être explorer.

  • Liste 3 cas où un intervalle de tolérance pourrait être utilisé dans un projet d’apprentissage automatique.
  • Localisez un ensemble de données avec une variable gaussienne et calculez des intervalles de tolérance pour celui-ci.
  • Recherchez et décrivez une méthode de calcul d’un intervalle de tolérance non paramétrique.

Si vous explorez l’une de ces extensions, j’aimerais le savoir.

Pour en savoir plus

Cette section fournit plus de ressources sur le sujet si vous cherchez à aller plus loin.

Livres

  • Comprendre les nouvelles statistiques: Tailles d’effets, Intervalles de confiance et Méta-Analyse, 2017.
  • Intervalles statistiques: Un guide pour les praticiens et les chercheurs, 2017.

API

  • scipy.statistique.norm() API
  • scipy.statistique.chi2() API
  • matplotlib.pyplot.errorbar() API

Articles

  • Intervalle de tolérance sur Wikipedia
  • 68-95-99.7 règle sur Wikipedia
  • Percentile sur Wikipedia
  • Intervalles de tolérance pour une distribution normale

Résumé

Dans ce tutoriel, vous avez découvert des intervalles de tolérance statistiques et comment calculer un intervalle de tolérance pour les données gaussiennes.

Plus précisément, vous avez appris:

  • Que les intervalles de tolérance statistiques fournissent une limite sur les observations d’une population.
  • Qu’un intervalle de tolérance nécessite qu’une proportion de couverture et une confiance soient spécifiées.
  • Que l’intervalle de tolérance pour un échantillon de données avec une distribution gaussienne peut être facilement calculé.

Avez-vous des questions?
Posez vos questions dans les commentaires ci-dessous et je ferai de mon mieux pour y répondre.

Maîtrisez les statistiques pour l’apprentissage automatique !

Développer une compréhension fonctionnelle des statistiques

byen écrivant des lignes de code en python

Découvrez comment dans mon nouvel Ebook:
Méthodes statistiques pour l’Apprentissage automatique

Il fournit des tutoriels d’auto-apprentissage sur des sujets tels que:
Tests d’hypothèse, Corrélation, Statistiques non paramétriques, Rééchantillonnage, et bien plus encore…

Découvrez comment Transformer les Données en Connaissances

Ignorez les universitaires. Juste des résultats.

Voir Ce qu’il y a à l’intérieur

Tweet Partager Partager

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.