Échantillonnage bootstrap | Échantillonnage bootstrap dans l'apprentissage automatique

Contenu

introduction

Avez-vous déjà eu du mal à améliorer votre classement lors d'un hackathon d'apprentissage automatique en DataHack o Kaggle? Vous avez essayé toutes vos astuces et techniques préférées, mais votre score refuse de bouger. J'y étais et c'est une expérience assez frustrante!

Ceci est particulièrement pertinent lors de vos premiers jours dans ce domaine.. Nous avons tendance à utiliser des techniques familières que nous avons apprises, comme la régression linéaire, régression logistique, etc. (selon l'énoncé du problème).

Et puis vient le Bootstrap Sampling. C'est un concept puissant qui a propulsé mon rang dans les échelons supérieurs de ces classements de hackathon.. Et ce fut toute une expérience d'apprentissage!!

bootstrap-3838795

L'échantillonnage bootstrap est une technique que je ressens comme tout data scientist, aspirant ou établi, Tu dois apprendre.

Ensuite, dans cet article, nous apprendrons tout ce que vous devez savoir sur l'échantillonnage de démarrage. Qu'est que c'est, car il faut, comment cela fonctionne et où cela s'intègre dans l'image de l'apprentissage automatique. Nous allons également implémenter l'échantillonnage bootstrap en Python.

Qu'est-ce que l'échantillonnage Bootstrap?

Voici une définition formelle de Bootstrap Sampling:

Dans les statistiques, L'échantillonnage bootstrap est une méthode qui implique l'extraction de données d'échantillon à plusieurs reprises avec le remplacement d'une source de données pour estimer un paramètre de population.

Attendre, c'est trop complexe. Analysons et comprenons les termes clés:

  • Échantillonnage: Concernant les statistiques, l'échantillonnage est le processus de sélection d'un sous-ensemble d'éléments à partir d'une large collection d'éléments (Ville) estimer une certaine caractéristique de l'ensemble de la population.
  • Échantillonnage avec remplacement: Cela signifie qu'un point de données dans un échantillon tiré peut également réapparaître dans les futurs échantillons tirés.
  • Estimation des paramètres: Il s'agit d'une méthode d'estimation des paramètres de la population à l'aide d'échantillons. Un paramètre est une caractéristique mesurable associée à une population. Par exemple, la taille moyenne des habitants d'une ville, nombre de globules rouges, etc.

Avec cette connaissance, allez-y et relisez la définition ci-dessus. Cela aura beaucoup plus de sens maintenant!

Pourquoi avons-nous besoin d'un échantillonnage Bootstrap?

C'est une question fondamentale avec laquelle j'ai vu des passionnés d'apprentissage automatique se débattre.. Quel est l'intérêt de l'échantillonnage Bootstrap? Où pouvez-vous l'utiliser? Permettez-moi de prendre un exemple pour expliquer cela.

Disons que nous voulons trouver la taille moyenne de tous les élèves d'une école (qui a une population totale de 1000). Ensuite, Comment pouvons-nous effectuer cette tâche?

Une méthode consiste à mesurer la taille de tous les élèves, puis à calculer la taille moyenne. J'ai illustré ce processus ci-dessous:

img_1-1-7953286

Cependant, ce serait une tâche fastidieuse. Pensez-y juste, il faudrait mesurer individuellement les hauteurs de 1,000 élèves, puis calculez la taille moyenne. Cela prendra des jours! Nous avons besoin d'une approche plus intelligente ici.

C'est là qu'intervient Bootstrap Sampling..

Au lieu de mesurer la taille de tous les élèves, nous pouvons tirer un échantillon aléatoire de 5 élèves et mesurer leur taille. Nous répéterions ce processus 20 fois, puis nous ferions la moyenne des données de hauteur collectées à partir de 100 étudiants (5 X 20). Cette taille moyenne serait une estimation de la taille moyenne de tous les élèves de l'école.

Assez simple, vérité? C'est l'idée de base du Bootstrap Sampling.

img_2-1-8912401

Donc, quand on doit estimer un paramètre d'une grande population, nous pouvons prendre l'aide de Bootstrap Sampling.

Muestreo Bootstrap et Machine Learning

L'échantillonnage bootstrap est utilisé dans un algorithme d'ensemble d'apprentissage automatique appelé agrégation bootstrap (aussi appelé emballage). Aide à prévenir le surapprentissage et améliore la stabilité des algorithmes d'apprentissage automatique.

Dans l'ensachage, un certain nombre de sous-ensembles de même taille sont extraits d'un ensemble de données avec remise. Alors, un algorithme d'apprentissage automatique est appliqué à chacun de ces sous-ensembles et les sorties sont assemblées comme illustré ci-dessous:

ensachage-9992005

Vous pouvez lire et en savoir plus sur le co-apprentissage ici:

Implémenter l'échantillonnage Bootstrap en Python

Il est temps de mettre notre apprentissage à l'épreuve et d'implémenter le concept d'échantillonnage Bootstrap en Python.

Dans cette section, nous essaierons d'estimer la moyenne de la population à l'aide d'un échantillonnage bootstrap. Importons les bibliothèques nécessaires:

Ensuite, nous allons créer une distribution (Ville) gaussienne de 10,000 éléments avec la moyenne de population de 500:

Production: 500.00889503613934

À présent, nous allons extraire 40 échantillons de taille 5 de la répartition (Ville) et nous calculerons la moyenne pour chaque échantillon:

Vérifions la moyenne des valeurs moyennes des 40 échantillons:

np.moyenne(échantillon_moyen)

Production: 500.024133172629

Il s'avère que c'est assez proche de la moyenne de la population !! C'est pourquoi Bootstrap Sampling est une technique si utile dans les statistiques et l'apprentissage automatique..

Résumer ce que nous avons appris

Dans cet article, nous avons appris l'utilité de Bootstrap Sampling dans les statistiques et l'apprentissage automatique. Nous l'implémentons également en Python et vérifions son efficacité.

Voici quelques-uns des principaux avantages de l'amorçage:

  • Le paramètre estimé par échantillonnage bootstrap est comparable au paramètre de population réelle
  • Puisque nous n'avons besoin que de quelques échantillons pour le démarrage, l'exigence de calcul est beaucoup plus faible
  • Une forêt aléatoire, la taille de l'échantillon bootstrap de même 20% donne de très bonnes performances comme indiqué ci-dessous:

réf-6123404

Les performances du modèle culminent lorsque les données fournies sont inférieures à 0,2 fraction de l'ensemble de données d'origine.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.