Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Préparer les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler

Les équipes de science des données et d'ingénierie des données passent une partie importante de leur temps dans la phase de préparation des données d'un cycle de vie d'apprentissage automatique (ML) en effectuant des étapes de sélection, de nettoyage et de transformation des données. Il s'agit d'une étape nécessaire et importante de tout flux de travail ML afin de générer des informations et des prévisions significatives, car des données de mauvaise qualité ou de mauvaise qualité réduisent considérablement la pertinence des informations obtenues.

Les équipes d'ingénierie des données sont traditionnellement responsables de l'ingestion, de la consolidation et de la transformation des données brutes pour la consommation en aval. Les scientifiques des données doivent souvent effectuer un traitement supplémentaire sur les données pour des cas d'utilisation de ML spécifiques à un domaine, tels que le langage naturel et les séries chronologiques. Par exemple, certains algorithmes ML peuvent être sensibles aux valeurs manquantes, aux caractéristiques éparses ou aux valeurs aberrantes et nécessitent une attention particulière. Même dans les cas où l'ensemble de données est en bon état, les scientifiques des données peuvent vouloir transformer les distributions des fonctionnalités ou créer de nouvelles fonctionnalités afin de maximiser les informations obtenues à partir des modèles. Pour atteindre ces objectifs, les scientifiques des données doivent s'appuyer sur des équipes d'ingénierie des données pour s'adapter aux modifications demandées, ce qui entraîne une dépendance et un retard dans le processus de développement du modèle. Alternativement, les équipes de science des données peuvent choisir d'effectuer la préparation des données et l'ingénierie des fonctionnalités en interne en utilisant divers paradigmes de programmation. Cependant, cela nécessite un investissement en temps et en efforts dans l'installation et la configuration des bibliothèques et des frameworks, ce qui n'est pas idéal car ce temps peut être mieux utilisé pour optimiser les performances du modèle.

Gestionnaire de données Amazon SageMaker simplifie le processus de préparation des données et d'ingénierie des fonctionnalités, réduisant le temps nécessaire pour agréger et préparer les données pour le ML de quelques semaines à quelques minutes en fournissant une interface visuelle unique aux scientifiques des données pour sélectionner, nettoyer et explorer leurs ensembles de données. Data Wrangler propose plus de 300 transformations de données intégrées pour aider à normaliser, transformer et combiner des fonctionnalités sans écrire de code. Vous pouvez importer des données à partir de plusieurs sources de données, telles que Service de stockage simple d'Amazon (Amazon S3), Amazone Athéna, Redshift d'Amazonet une Flocon. Vous pouvez désormais également utiliser Databricks en tant que source de données dans Data Wrangler pour préparer facilement les données pour le ML.

La plate-forme Databricks Lakehouse combine les meilleurs éléments des lacs de données et des entrepôts de données pour offrir la fiabilité, la gouvernance solide et les performances des entrepôts de données avec l'ouverture, la flexibilité et la prise en charge de l'apprentissage automatique des lacs de données. Avec Databricks comme source de données pour Data Wrangler, vous pouvez désormais vous connecter rapidement et facilement à Databricks, interroger de manière interactive les données stockées dans Databricks à l'aide de SQL et prévisualiser les données avant de les importer. De plus, vous pouvez joindre vos données dans Databricks avec des données stockées dans Amazon S3 et des données interrogées via Amazon Athena, Amazon Redshift et Snowflake pour créer le bon ensemble de données pour votre cas d'utilisation ML.

Dans cet article, nous transformons l'ensemble de données Lending Club Loan à l'aide d'Amazon SageMaker Data Wrangler pour une utilisation dans la formation du modèle ML.

Vue d'ensemble de la solution

Le diagramme suivant illustre notre architecture de solution.

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

L'ensemble de données Lending Club Loan contient des données complètes sur tous les prêts émis entre 2007 et 2011, y compris l'état actuel du prêt et les dernières informations de paiement. Il comporte 39,717 22 lignes, 3 colonnes de caractéristiques et XNUMX étiquettes cibles.

Pour transformer nos données à l'aide de Data Wrangler, nous effectuons les étapes de haut niveau suivantes :

  1. Téléchargez et divisez l'ensemble de données.
  2. Créez un flux Data Wrangler.
  3. Importez des données de Databricks vers Data Wrangler.
  4. Importez des données d'Amazon S3 vers Data Wrangler.
  5. Joignez-vous aux données.
  6. Appliquer des transformations.
  7. Exportez le jeu de données.

Pré-requis

La publication suppose que vous disposez d'un cluster Databricks en cours d'exécution. Si votre cluster s'exécute sur AWS, vérifiez que vous avez configuré les éléments suivants :

Configuration des briques de données

FOLLOW Accès sécurisé aux compartiments S3 à l'aide de profils d'instance pour le requis Gestion des identités et des accès AWS (IAM), stratégie de compartiment S3 et configuration de cluster Databricks. Assurez-vous que le cluster Databricks est configuré avec le bon Instance Profile, sélectionné dans les options avancées, pour accéder au compartiment S3 souhaité.

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Une fois que le cluster Databricks est opérationnel avec l'accès requis à Amazon S3, vous pouvez récupérer le JDBC URL de votre cluster Databricks pour être utilisé par Data Wrangler pour s'y connecter.

Récupérer l'URL JDBC

Pour récupérer l'URL JDBC, procédez comme suit :

  1. Dans Databricks, accédez à l'interface utilisateur des clusters.
  2. Choisissez votre cluster.
  3. Sur le configuration onglet, choisissez Options avancées.
  4. Sous Options avancées, choisir la JDBC/ODBC languette.
  5. Copiez l'URL JDBC.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Assurez-vous de remplacer votre accès personnel jeton dans l'URL.

Configuration de Data Wrangler

Cette étape suppose que vous avez accès à Amazon SageMaker, une instance de Amazon SageMakerStudio, et un utilisateur de Studio.

Pour autoriser l'accès à la connexion Databricks JDBC à partir de Data Wrangler, l'utilisateur Studio nécessite l'autorisation suivante :

  • secretsmanager:PutResourcePolicy

Suivez les étapes ci-dessous pour mettre à jour le rôle d'exécution IAM attribué à l'utilisateur Studio avec l'autorisation ci-dessus, en tant qu'utilisateur administratif IAM.

  1. Sur la console IAM, choisissez Rôles dans le volet de navigation.
  2. Choisissez le rôle attribué à votre utilisateur Studio.
  3. Selectionnez Ajouter des autorisations.
  4. Selectionnez Créer une politique en ligne.
  5. Pour Service, choisissez Gestionnaire de secrets.
  6. On Actions, choisissez Niveau d'accès.
  7. Selectionnez Gestion des autorisations.
  8. Selectionnez PutResourcePolitique.
  9. Pour Resources, choisissez Autres ingrédients et sélectionnez Tout dans ce compte.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Télécharger et diviser l'ensemble de données

Vous pouvez commencer par téléchargement du jeu de données. À des fins de démonstration, nous divisons l'ensemble de données en copiant les colonnes de caractéristiques id, emp_title, emp_length, home_owneret une annual_inc pour créer un deuxième prêts_2.csv fichier. Nous supprimons les colonnes susmentionnées du fichier des prêts d'origine, à l'exception des id colonne et renommez le fichier d'origine en prêts_1.csv. Télécharger le prêts_1.csv déposer à Databricks créer un tableau loans_1 et les prêts_2.csv dans un compartiment S3.

Créer un flux Data Wrangler

Pour plus d'informations sur les prérequis de Data Wrangler, voir Premiers pas avec Data Wrangler.

Commençons par créer un nouveau flux de données.

  1. Sur la console Studio, sur le Déposez votre dernière attestation menu, choisissez Nouveauté.
  2. Selectionnez Flux de Data Wrangler.
  3. Renommez le flux comme vous le souhaitez.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Vous pouvez également créer un nouveau flux de données à partir du lanceur.

  • Sur la console Studio, choisissez Amazon SageMakerStudio dans le volet de navigation.
  • Selectionnez Nouveau flux de données.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

La création d'un nouveau flux peut prendre quelques minutes. Une fois le flux créé, vous voyez le Importer des dates .

Importer des données de Databricks dans Data Wrangler

Ensuite, nous avons configuré Databricks (JDBC) en tant que source de données dans Data Wrangler. Pour importer des données depuis Databricks, nous devons d'abord ajouter Databricks en tant que source de données.

  1. Sur le Importer des dates de votre flux Data Wrangler, choisissez Ajouter une source de données.
  2. Dans le menu déroulant, choisissez Databrick (JDBC).
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Sur le Importer des données depuis Databricks page, vous entrez les détails de votre cluster.

  1. Pour Nom du jeu de données, entrez un nom que vous souhaitez utiliser dans le fichier de flux.
  2. Pour Tournevis, choisissez le pilote com.simba.spark.jdbc.Driver.
  3. Pour URL JDBC, entrez l'URL de votre cluster Databricks obtenu précédemment.

L'URL doit ressembler au format suivant jdbc:spark://<serve- hostname>:443/default;transportMode=http;ssl=1;httpPath=<http- path>;AuthMech=3;UID=token;PWD=<personal-access-token>.

  1. Dans l'éditeur de requête SQL, spécifiez l'instruction SQL SELECT suivante :
    select * from loans_1

Si vous avez choisi un nom de table différent lors du téléchargement des données vers Databricks, remplacez les prêts_1 dans la requête SQL ci-dessus en conséquence.

Dans le Requête SQL dans Data Wrangler, vous pouvez interroger n'importe quelle table connectée à la base de données JDBC Databricks. Les présélectionnés Activer l'échantillonnage récupère les 50,000 XNUMX premières lignes de votre jeu de données par défaut. En fonction de la taille de l'ensemble de données, désélectionner Activer l'échantillonnage peut entraîner un temps d'importation plus long.

  1. Selectionnez Courir.

L'exécution de la requête donne un aperçu de votre ensemble de données Databricks directement dans Data Wrangler.
Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

  1. Selectionnez L’.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Data Wrangler offre la flexibilité de configurer plusieurs connexions simultanées à un cluster Databricks ou à plusieurs clusters si nécessaire, permettant l'analyse et la préparation sur des ensembles de données combinés.

Importer les données d'Amazon S3 dans Data Wrangler

Ensuite, importons le loan_2.csv fichier d'Amazon S3.

  1. Dans l'onglet Importer, choisissez Amazon S3 comme source de données.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  2. Accédez au compartiment S3 pour le loan_2.csv fichier.

Lorsque vous sélectionnez le fichier CSV, vous pouvez prévisualiser les données.

  1. Dans le Détails volet, choisissez Configuration avancée assurer Activer l'échantillonnage est sélectionné et PARAGRAPHE est choisi pour Délimiteur.
  2. Selectionnez L’.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Après les loans_2.csv l'ensemble de données est importé avec succès, l'interface de flux de données affiche à la fois les sources de données Databricks JDBC et Amazon S3.

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Joindre les données

Maintenant que nous avons importé des données depuis Databricks et Amazon S3, joignons les ensembles de données à l'aide d'une colonne d'identifiant unique commune.

  1. Sur le Flux de données onglet, pour Types de données, choisissez le signe plus pour loans_1.
  2. Selectionnez S'inscrire.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  3. Choisissez le loans_2.csv fichier en tant que Droite jeu de données.
  4. Selectionnez Configurer pour configurer les critères de jointure.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  5. Pour Nom, entrez un nom pour la jointure.
  6. Pour Type de jointure, choisissez Inner pour ce poste.
  7. Choisissez le id colonne à rejoindre.
  8. Selectionnez Appliquer pour prévisualiser le jeu de données joint.
  9. Selectionnez Ajouter pour l'ajouter au flux de données.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Appliquer des transformations

Data Wrangler est livré avec plus de 300 transformations intégrées, qui ne nécessitent aucun codage. Utilisons des transformations intégrées pour préparer l'ensemble de données.

Déposer la colonne

Nous supprimons d'abord la colonne ID redondante.

  1. Sur le nœud joint, choisissez le signe plus.
  2. Selectionnez Ajouter une transformation.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  3. Sous Se transforme, '; '; ; + Ajouter une étape.
  4. Selectionnez Gérer les colonnes.
  5. Pour Transformer, choisissez Déposer la colonne.
  6. Pour Colonnes à supprimer, choisissez la colonne id_0.
  7. Selectionnez Aperçu.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  8. Selectionnez Ajouter.

Chaîne de formatage

Appliquons le formatage de chaîne pour supprimer le symbole de pourcentage du int_rate et les revol_util colonnes.

  1. Sur le Données onglet, sous Transforme, choisissez + Ajouter une étape.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  2. Selectionnez Chaîne de formatage.
  3. Pour Transformer, choisissez Supprimer les caractères à partir de la droite.

Data Wrangler vous permet d'appliquer la transformation que vous avez choisie sur plusieurs colonnes simultanément.

  1. Pour Colonnes d'entrée, choisissez int_rate et les revol_util.
  2. Pour Caractères à supprimer, Entrer %.
  3. Selectionnez Aperçu.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  4. Selectionnez Ajouter.

Caractériser le texte

Vectorisons maintenant verification_status, une colonne de fonction de texte. Nous convertissons la colonne de texte en vecteurs fréquence de terme-fréquence de document inverse (TF-IDF) en appliquant le vectoriseur de comptage et un tokenizer standard comme décrit ci-dessous. Data Wrangler offre également la possibilité d'apporter votre propre tokenizer, si vous le souhaitez.

  1. Sous Transformateurs, choisissez + Ajouter une étape.
  2. Selectionnez Caractériser le texte.
  3. Pour Transformer, choisissez Vectoriser.
  4. Pour Colonnes d'entrée, choisissez verification_status.
  5. Selectionnez Aperçu.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  6. Selectionnez Ajouter.

Exporter le jeu de données

Après avoir appliqué plusieurs transformations sur différents types de colonnes, y compris textuelles, catégorielles et numériques, nous sommes prêts à utiliser l'ensemble de données transformé pour l'entraînement du modèle ML. La dernière étape consiste à exporter l'ensemble de données transformé vers Amazon S3. Dans Data Wrangler, vous avez le choix entre plusieurs options pour la consommation en aval des transformations :

Dans ce post, nous profitons de la Exporter les données option dans la Transformer view pour exporter l'ensemble de données transformé directement vers Amazon S3.

  1. Selectionnez Exporter les données.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.
  2. Pour Emplacement S3, choisissez Explorer et choisissez votre compartiment S3.
  3. Selectionnez Exporter les données.
    Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Nettoyer

Si votre travail avec Data Wrangler est terminé, arrêtez votre instance Data Wrangler pour éviter des frais supplémentaires.

Conclusion

Dans cet article, nous avons expliqué comment configurer et connecter rapidement et facilement Databricks en tant que source de données dans Data Wrangler, interroger de manière interactive les données stockées dans Databricks à l'aide de SQL et prévisualiser les données avant de les importer. De plus, nous avons examiné comment vous pouvez joindre vos données dans Databricks avec des données stockées dans Amazon S3. Nous avons ensuite appliqué des transformations de données sur l'ensemble de données combiné pour créer un pipeline de préparation des données. Pour explorer davantage les capacités d'analyse de Data Wrangler, y compris les fuites ciblées et la génération de rapports sur les biais, reportez-vous à l'article de blog suivant Accélérez la préparation des données à l'aide d'Amazon SageMaker Data Wrangler pour la prédiction de la réadmission des patients diabétiques.

Pour démarrer avec Data Wrangler, consultez Préparer les données de ML avec Amazon SageMaker Data Wrangler, et consultez les dernières informations sur le Data Wrangler page produit.


À propos des auteurs

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Roop Bains est un architecte de solutions chez AWS spécialisé dans l'IA/ML. Il est passionné d'aider les clients à innover et à atteindre leurs objectifs commerciaux en utilisant l'intelligence artificielle et l'apprentissage automatique. Dans ses temps libres, Roop aime lire et faire de la randonnée.

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Igor Alekseev est architecte de solution partenaire chez AWS dans le domaine des données et de l'analyse. Igor travaille avec des partenaires stratégiques pour les aider à créer des architectures complexes optimisées pour AWS. Avant de rejoindre AWS, en tant qu'architecte de données/solutions, il a mis en œuvre de nombreux projets dans le Big Data, y compris plusieurs lacs de données dans l'écosystème Hadoop. En tant qu'ingénieur de données, il a été impliqué dans l'application de l'IA/ML à la détection de fraude et à la bureautique. Les projets d'Igor concernaient divers secteurs, notamment les communications, la finance, la sécurité publique, la fabrication et les soins de santé. Auparavant, Igor a travaillé comme ingénieur full stack/tech lead.

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Huong Nguyen est Senior Product Manager chez AWS. Elle dirige l'expérience utilisateur de SageMaker Studio. Elle a 13 ans d'expérience dans la création de produits obsédés par le client et basés sur les données pour les espaces d'entreprise et de consommation. Dans ses temps libres, elle aime lire, être dans la nature et passer du temps avec sa famille.

Préparez les données de Databricks pour l'apprentissage automatique à l'aide d'Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Recherche verticale. Aï.Henry Wang est ingénieur en développement logiciel chez AWS. Il a récemment rejoint l'équipe Data Wrangler après avoir obtenu son diplôme de l'UC Davis. Il s'intéresse à la science des données et à l'apprentissage automatique et fait de l'impression 3D un passe-temps.

Horodatage:

Plus de Apprentissage automatique AWS