Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler

Dans cet article, nous vous présentons deux techniques d'échantillonnage dans Gestionnaire de données Amazon SageMaker afin que vous puissiez créer rapidement des workflows de traitement pour vos données. Nous couvrons à la fois les techniques d'échantillonnage aléatoire et d'échantillonnage stratifié pour vous aider à échantillonner vos données en fonction de vos besoins spécifiques.

Data Wrangler réduit le temps nécessaire à l'agrégation et à la préparation des données pour l'apprentissage automatique (ML) de quelques semaines à quelques minutes. Vous pouvez simplifier le processus de préparation des données et d'ingénierie des fonctionnalités, et effectuer chaque étape du flux de travail de préparation des données, y compris la sélection, le nettoyage, l'exploration et la visualisation des données, à partir d'une interface visuelle unique. Avec l'outil de sélection de données de Data Wrangler, vous pouvez choisir les données souhaitées parmi différentes sources de données et les importer en un seul clic. Data Wrangler contient plus de 300 transformations de données intégrées afin que vous puissiez rapidement normaliser, transformer et combiner des fonctionnalités sans avoir à écrire de code. Avec les modèles de visualisation de Data Wrangler, vous pouvez rapidement prévisualiser et vérifier que ces transformations sont terminées comme vous le souhaitiez en les affichant dans Amazon SageMakerStudio, le premier environnement de développement (IDE) entièrement intégré pour le ML. Une fois vos données préparées, vous pouvez créer des workflows ML entièrement automatisés avec Pipelines Amazon SageMaker et enregistrez-les pour les réutiliser dans Magasin de fonctionnalités Amazon SageMaker.

Qu'est-ce que l'échantillonnage et comment peut-il aider

En analyse statistique, l’ensemble total des observations est appelé population. Lorsque l’on travaille avec des données, il n’est souvent pas possible, informatiquement, de mesurer toutes les observations de la population. Échantillonnage statistique est une procédure qui vous permet de comprendre vos données en sélectionnant des sous-ensembles de la population.

L'échantillonnage offre une solution pratique qui sacrifie une certaine précision au profit de l'aspect pratique et de la facilité. Pour garantir que votre échantillon est une bonne représentation de la population globale, vous pouvez utiliser des stratégies d'échantillonnage. Data Wrangler prend en charge deux des stratégies les plus courantes : échantillonnage aléatoire ainsi que le échantillonnage stratifié.

Échantillonnage aléatoire

Si vous disposez d’un grand ensemble de données, l’expérimentation sur cet ensemble de données peut prendre beaucoup de temps. Data Wrangler fournit un échantillonnage aléatoire afin que vous puissiez traiter et visualiser efficacement vos données. Par exemple, vous souhaiterez peut-être calculer le nombre moyen d’achats pour un client sur une période donnée, ou vous souhaiterez peut-être calculer le taux d’attrition d’un abonné. Vous pouvez utiliser un échantillon aléatoire pour visualiser des approximations de ces métriques.

Un échantillon aléatoire de votre ensemble de données est choisi de manière à ce que chaque élément ait une probabilité égale d'être sélectionné. Cette opération est effectuée de manière efficace et adaptée aux grands ensembles de données, de sorte que la taille de l'échantillon renvoyée est approximativement la taille demandée, et pas nécessairement égale à la taille demandée.

Vous pouvez utiliser l'échantillonnage aléatoire si vous souhaitez effectuer des calculs approximatifs rapides pour comprendre votre ensemble de données. À mesure que la taille de l'échantillon augmente, l'échantillon aléatoire peut mieux se rapprocher de l'ensemble de données dans son intégralité, mais à moins que vous n'incluiez tous les points de données, votre échantillon aléatoire peut ne pas inclure toutes les valeurs aberrantes et tous les cas extrêmes. Si vous souhaitez préparer l'intégralité de votre ensemble de données de manière interactive, vous pouvez également passer à un type d'instance plus grand.

En règle générale, l’erreur d’échantillonnage lors du calcul de la moyenne de la population à l’aide d’un échantillon aléatoire tend vers 0 à mesure que l’échantillon s’agrandit. À mesure que la taille de l’échantillon augmente, l’erreur diminue comme l’inverse de la racine carrée de la taille de l’échantillon. Ce qu’il faut retenir, c’est que plus l’échantillon est grand, meilleure est l’approximation.

Échantillonnage stratifié

Dans certains cas, votre population peut être divisée en strates ou en tranches mutuellement exclusives, telles que l'emplacement géographique pour les adresses, l'année de publication pour les chansons ou les tranches d'imposition pour les revenus. L'échantillonnage aléatoire est la technique d'échantillonnage la plus populaire, mais si certaines strates sont rares dans votre population, vous pouvez utiliser l'échantillonnage stratifié dans Data Wrangler pour garantir que chaque strate est représentée proportionnellement dans votre échantillon. Cela peut être utile pour réduire les erreurs d'échantillonnage et pour garantir que vous capturez les cas extrêmes lors de votre expérimentation.

Dans le monde réel, les transactions frauduleuses par carte de crédit sont des événements rares et représentent généralement moins de 1 % de vos données. Si nous devions échantillonner au hasard, il n’est pas rare que l’échantillon contienne très peu ou pas de transactions frauduleuses. Par conséquent, lors de la formation d’un modèle, nous aurions trop peu d’exemples frauduleux pour apprendre un modèle précis. Nous pouvons utiliser un échantillonnage stratifié pour garantir une représentation proportionnelle des transactions frauduleuses.

Dans l'échantillonnage stratifié, la taille de chaque strate de l'échantillon est proportionnelle à la taille des strates de la population. Cela fonctionne en divisant vos données en strates en fonction de la colonne spécifiée, en sélectionnant des échantillons aléatoires de chaque strate avec la proportion correcte et en combinant ces échantillons dans un échantillon stratifié de la population.

L'échantillonnage stratifié est une technique utile lorsque vous souhaitez comprendre comment les différents groupes de vos données se comparent les uns aux autres et que vous souhaitez vous assurer d'avoir une représentation appropriée de chaque groupe.

Échantillonnage aléatoire lors de l'importation depuis Amazon S3

Dans cette section, nous utilisons un échantillonnage aléatoire avec un ensemble de données composé d'événements frauduleux et non frauduleux provenant de notre système de détection de fraude. Tu peux download l'ensemble de données à suivre avec cet article (Licence d'attribution internationale CC 4.0).

Au moment d'écrire ces lignes, vous pouvez importer des ensembles de données depuis Service de stockage simple Amazon (Amazon S3), Amazone Athéna, Redshift d'Amazon, et Flocon de neige. Notre ensemble de données est très volumineux, contenant 1 million de lignes. Dans ce cas, nous souhaitons échantillonner 1,0000 3 lignes lors de l'importation depuis Amazon SXNUMX pour une expérimentation interactive dans Data Wrangler.

  1. Ouvrez SageMaker Studio et créez un nouveau flux Data Wrangler.
  2. Sous Importer des dates, choisissez Amazon S3.
    Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  3. Choisissez l'ensemble de données à importer.
  4. Dans le Détails Dans le volet , indiquez le nom de votre ensemble de données et le type de fichier.
  5. Pour Échantillonnage, choisissez aléatoire.
  6. Pour Taille de l'échantillon, Entrer 10000.
  7. Selectionnez L’ pour charger l'ensemble de données dans Data Wrangler.
    Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez visualiser deux étapes distinctes sur la page Flux de données dans Data Wrangler. La première étape indique le chargement de l'exemple de jeu de données en fonction de la stratégie d'échantillonnage que vous avez définie. Une fois les données chargées, Data Wrangler effectue une détection automatique des types de données pour chacune des colonnes de l'ensemble de données. Cette étape est ajoutée par défaut pour tous les ensembles de données.

Vous pouvez désormais examiner les données échantillonnées aléatoirement dans Data Wrangler en ajoutant une analyse.

  1. Choisissez le signe plus à côté de Types de données et choisissez Analyse.
    Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  2. Pour Type d'analyse¸ choisissez Nuage de points.
  3. Selectionnez exploit_1 ainsi que le exploit_2 pour ce qui est de axe des X, ainsi que le Axe Y, Respectivement.
  4. Pour Couleur par, choisissez est_fraude.

Lorsque vous êtes à l'aise avec l'ensemble de données, procédez à d'autres transformations de données selon les besoins de votre entreprise afin de préparer vos données pour le ML.

Dans la capture d'écran suivante, nous pouvons observer les transactions frauduleuses (bleu foncé) et non frauduleuses (bleu clair) dans notre analyse.
Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Dans la section suivante, nous discutons de l’utilisation d’un échantillonnage stratifié pour garantir que les cas frauduleux sont choisis proportionnellement.

Échantillonnage stratifié avec une transformation

Data Wrangler vous permet d'échantillonner lors de l'importation, ainsi que d'échantillonner via une transformation. Dans cette section, nous discutons de l'utilisation de l'échantillonnage stratifié via une transformation après avoir importé votre ensemble de données dans Data Wrangler.

  1. Pour lancer l'échantillonnage, sur le Flux de données , choisissez le signe plus à côté de l'ensemble de données importé et choisissez Ajouter une transformation.
    Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Au moment d’écrire ces lignes, Data Wrangler fournit plus de 300 transformations intégrées. En plus des transformations intégrées, vous pouvez écrire vos propres transformations personnalisées dans Pandas ou PySpark.

  1. Extrait du Ajouter une transformation liste, choisissez Échantillonnage.
    Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez désormais utiliser trois stratégies d'échantillonnage distinctes : limite, aléatoire et stratifié.
Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

  1. Pour Méthode d'échantillonnage, choisissez Stratifié.
  2. Utilisez l'option is_fraud colonne comme colonne de stratification.
  3. Selectionnez Aperçu pour prévisualiser la transformation, puis choisissez Ajouter pour ajouter cette transformation comme étape à votre recette de transformation.
    Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Votre flux de données reflète désormais l'étape d'échantillonnage ajoutée.
Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Nous pouvons maintenant examiner les données échantillonnées aléatoirement en ajoutant une analyse.

  1. Choisissez le signe plus et choisissez Analyse.
  2. Pour Type d'analyse¸ choisissez Histogramme.
  3. Selectionnez est_fraude à la fois axe des X, ainsi que le Couleur par.
  4. Selectionnez Aperçu.

Dans la capture d'écran suivante, nous pouvons observer la répartition des cas frauduleux (bleu foncé) et non frauduleux (bleu clair) choisis via un échantillonnage stratifié dans les proportions correctes de 20 % de frauduleux et 80 % de non frauduleux.

Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Conclusion

Il est essentiel d'échantillonner correctement les données lorsque vous travaillez avec des ensembles de données extrêmement volumineux et de choisir la bonne stratégie d'échantillonnage pour répondre aux besoins de votre entreprise. L'efficacité de votre échantillonnage dépend de divers facteurs, notamment les résultats commerciaux, la disponibilité des données et leur distribution. Dans cet article, nous avons expliqué comment utiliser Data Wrangler et ses stratégies d'échantillonnage intégrées pour préparer vos données.

Vous pouvez commencer à utiliser cette fonctionnalité dès aujourd'hui dans toutes les régions où SageMaker Studio est disponible. Pour commencer, visitez Préparer les données de ML avec Amazon SageMaker Data Wrangler.

Remerciements

Les auteurs tiennent à remercier Jonathan Chung (scientifique appliqué) pour sa révision et ses précieux commentaires sur cet article.


À propos des auteurs

Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.ben harris est un ingénieur logiciel expérimenté dans la conception, le déploiement et la maintenance de pipelines de données évolutifs et de solutions d'apprentissage automatique dans une variété de domaines.

Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Vishaal Kapoor est un scientifique appliqué senior avec AWS AI. Il se passionne pour aider les clients à comprendre leurs données dans Data Wrangler. Dans ses temps libres, il fait du VTT, du snowboard et passe du temps avec sa famille.

Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Meenakshisundaram Thandavarayan est un spécialiste senior de l'IA/ML chez AWS. Il aide les comptes stratégiques Hi-Tech dans leur parcours IA et ML. Il est très passionné par l’IA basée sur les données.

Créez des échantillons de données aléatoires et stratifiés avec Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Ajaï Sharma est chef de produit principal pour Amazon SageMaker où il se concentre sur Data Wrangler, un outil visuel de préparation de données pour les data scientists. Avant AWS, Ajai était expert en science des données chez McKinsey and Company, où il a dirigé des missions axées sur le ML pour de grandes sociétés de finance et d'assurance du monde entier. Ajai est passionné par la science des données et aime explorer les derniers algorithmes et techniques d'apprentissage automatique.

Horodatage:

Plus de Apprentissage automatique AWS