Effectuer une analyse exploratoire des données () EDA - Amazon SageMaker

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Effectuer une analyse exploratoire des données () EDA

Data Wrangler inclut des analyses intégrées qui vous aident à générer des visualisations et des analyses de données en quelques clics. Vous pouvez également créer des analyses personnalisées à l'aide de votre propre code.

Vous ajoutez une analyse à un dataframe en sélectionnant une étape dans votre flux de données, puis en cliquant sur Add analysis (Ajouter une analyse). Pour accéder à une analyse que vous avez créée, sélectionnez l'étape qui contient l'analyse et sélectionnez l'analyse.

Les analyses sont générées à l'aide d'un échantillon de 200 000 lignes maximum de votre jeu de données, et vous pouvez configurer la taille de l'échantillon. Pour plus d'informations sur la modification de la taille de l'échantillon de votre flux de données, consultezModifier la configuration d'échantillonnage du flux de données.

Note

Les analyses sont optimisées pour les données comportant 1 000 colonnes ou moins. Il se peut que vous rencontriez une certaine latence lors de la génération d'analyses pour des données comportant des colonnes supplémentaires.

Vous pouvez ajouter les analyses suivantes à un dataframe :

  • Visualisations de données, y compris les histogrammes et les nuages de points.

  • Un résumé rapide de votre jeu de données, incluant le nombre d'entrées, les valeurs minimales et maximales (pour les données numériques) et les catégories les plus et les moins fréquentes (pour les données catégorielles).

  • Un modèle rapide du jeu de données, qui peut être utilisé pour générer un score d'importance pour chaque caractéristique.

  • Un rapport de fuite cible, que vous pouvez utiliser pour déterminer si une ou plusieurs caractéristiques sont fortement corrélées avec votre caractéristique cible.

  • Une visualisation personnalisée utilisant votre propre code.

Utilisez les sections suivantes pour en savoir plus sur ces options.

Obtenez des informations sur les données et leur qualité

Utilisez le Data Quality and Insights Report (Rapport d'informations et de qualité des données) pour effectuer une analyse des données que vous avez importées dans Data Wrangler. Nous vous recommandons de créer le rapport après avoir importé votre jeu de données. Vous pouvez utiliser le rapport pour vous aider à nettoyer et à traiter vos données. Il fournit des informations telles que le nombre de valeurs manquantes et le nombre de valeurs aberrantes. Si vous rencontrez des problèmes avec vos données, tels que des fuites ou des déséquilibres de cible, le rapport d'informations peut signaler ces problèmes.

Utilisez la procédure suivante pour créer un rapport d'informations et de qualité des données. Cela suppose que vous avez déjà importé un jeu de données dans votre flux Data Wrangler.

Pour créer un rapport d'informations et de qualité des données
  1. Choisissez l'icône représentant des points de suspension à côté d'un nœud dans votre flux Data Wrangler.

  2. Sélectionnez Obtenir des informations sur les données.

  3. Pour le type d'analyse, sélectionnez Data Quality and Insights Report.

  4. Dans le champ Nom de l'analyse, spécifiez le nom du rapport d'informations.

  5. Pour Type de problème, spécifiez Régression ou Classification.

  6. Pour Colonne cible, spécifiez la colonne cible.

  7. Pour Taille des données, spécifiez l'une des valeurs suivantes :

    • Ensemble de données échantillonné : utilise l'échantillon interactif issu de votre flux de données, qui peut contenir jusqu'à 200 000 lignes de votre ensemble de données. Pour plus d'informations sur la modification de la taille de votre échantillon, consultezModifier la configuration d'échantillonnage du flux de données.

    • Ensemble de données complet : utilise le jeu de données complet de votre source de données pour créer le rapport.

    Note

    La création d'un rapport sur la qualité des données et les informations sur l'ensemble de données complet utilise une tâche SageMaker de traitement Amazon. Une tâche de SageMaker traitement fournit les ressources informatiques supplémentaires nécessaires pour obtenir des informations sur toutes vos données. Pour plus d'informations sur SageMaker le traitement des tâches, consultezCharges de travail de transformation des données avec Processing SageMaker .

  8. Sélectionnez Create (Créer).

Les rubriques suivantes présentent les sections du rapport :

Vous pouvez télécharger le rapport ou le consulter en ligne. Pour télécharger le rapport, cliquez sur le bouton de téléchargement situé dans l'angle supérieur droit de l'écran.

Récapitulatif

Le rapport d'informations comporte un bref résumé des données qui inclut des informations générales telles que les valeurs manquantes, les valeurs non valides, les types de fonctions, le nombre de valeurs aberrantes, etc. Il peut également inclure des avertissements de sévérité élevée qui indiquent des problèmes probables avec les données. Nous vous recommandons d'examiner les avertissements.

Colonne cible

Lorsque vous créez le rapport sur la qualité et les informations des données, Data Wrangler vous donne la possibilité de sélectionner une colonne cible. Une colonne cible est une colonne que vous essayez de prédire. Lorsque vous choisissez une colonne cible, Data Wrangler crée automatiquement une analyse de colonne cible. Il classe également les fonctions par ordre de pouvoir prédictif. Lorsque vous sélectionnez une colonne cible, vous devez spécifier si vous tentez de résoudre un problème de régression ou de classification.

Pour la classification, Data Wrangler affiche une table et un histogramme des classes les plus courantes. Une classe est une catégorie. Il présente également des observations, ou des lignes, dont la valeur cible est manquante ou non valide.

Pour la régression, Data Wrangler affiche un histogramme de toutes les valeurs de la colonne cible. Il présente également des observations, ou des lignes, dont la valeur cible est manquante, non valide ou aberrante.

Modèle rapide

Le Quick model (modèle rapide) fournit une estimation de la qualité prédite attendue d'un modèle que vous entraînez sur vos données.

Data Wrangler fractionne vos données en blocs d'entraînement et de validation. Il utilise 80 % des échantillons pour l'entraînement et 20 % des valeurs pour la validation. Pour la classification, l'échantillon est un fractionnement stratifié. Pour un fractionnement stratifié, chaque partition de données a le même rapport d'étiquettes. Pour les problèmes de classification, il est important d'avoir le même rapport d'étiquettes entre les blocs d'entraînement et de classification. Data Wrangler entraîne le XGBoost modèle avec les hyperparamètres par défaut. Il applique un arrêt anticipé sur les données de validation et effectue un prétraitement minimal des caractéristiques.

Pour les modèles de classification, Data Wrangler renvoie à la fois un récapitulatif du modèle et une matrice de confusion.

Pour en savoir plus sur les informations renvoyées par le résumé du modèle de classification, consultezDéfinitions.

Une matrice de confusion fournit les informations suivantes :

  • Nombre de fois où l'étiquette prédite correspond à la vraie étiquette.

  • Nombre de fois où l'étiquette prédite ne correspondait pas à la vraie étiquette.

La vraie étiquette représente une observation réelle dans vos données. Par exemple, si vous utilisez un modèle pour détecter les transactions frauduleuses, la vraie étiquette représente une transaction réellement frauduleuse ou non frauduleuse. L'étiquette prédite représente l'étiquette que votre modèle attribue aux données.

Vous pouvez utiliser la matrice de confusion pour voir dans quelle mesure le modèle prédit la présence ou l'absence d'une condition. Si vous prédisez des transactions frauduleuses, vous pouvez utiliser la matrice de confusion pour vous faire une idée de la sensibilité et de la spécificité du modèle. La sensibilité fait référence à la capacité du modèle à détecter les transactions frauduleuses. La spécificité fait référence à la capacité du modèle à éviter de détecter les transactions non frauduleuses comme étant frauduleuses.

Récapitulatif des fonctions

Lorsque vous spécifiez une colonne cible, Data Wrangler classe les fonctions selon leur pouvoir de prédiction. Le pouvoir de prédiction est mesuré sur les données une fois celles-ci divisées en 80 % d'apprentissage et 20 % de validation. Data Wrangler adapte un modèle à chaque fonction séparément sur le bloc d'entraînement. Il applique un prétraitement minimal des caractéristiques et mesure les performances de prédiction sur les données de validation.

Il normalise les scores dans la plage [0,1]. Les scores de prédiction élevés indiquent des colonnes plus utiles pour prédire la cible par elles-mêmes. Les scores inférieurs indiquent des colonnes qui ne sont pas prédictives de la colonne cible.

Il est rare qu'une colonne qui n'est pas prédictive en elle-même soit prédictive lorsqu'elle est utilisée conjointement avec d'autres colonnes. Vous pouvez utiliser les scores de prédiction en toute confiance pour déterminer si une fonction de votre jeu de données est prédictive.

Un score faible indique généralement que la fonction est redondante. Un score de 1 correspond à des capacités prédictives parfaites, ce qui indique souvent une fuite de cible. La fuite de cible se produit généralement lorsque le jeu de données contient une colonne qui n'est pas disponible au moment de la prédiction. Par exemple, il peut s'agir d'un double de la colonne cible.

Exemples

Data Wrangler indique si vos échantillons sont anormaux ou si votre jeu de données contient des doublons.

Data Wrangler détecte les échantillons anormaux à l'aide de l'algorithme Isolation Forest (forêt d'isolation). La forêt d'isolation associe un score d'anomalie à chaque échantillon (ligne) du jeu de données. Les scores d'anomalie faibles indiquent des échantillons anormaux. Les scores élevés sont associés à des échantillons non anormaux. Les échantillons présentant un score d'anomalie négatif sont généralement considérés comme anormaux et les échantillons présentant un score d'anomalie positif sont considérés comme non anormaux.

Lorsque vous examinez un échantillon susceptible d'être anormal, nous vous recommandons de prêter attention aux valeurs inhabituelles. Par exemple, des valeurs anormales peuvent être issues d'erreurs qui se sont produites lors de la collecte et du traitement des données. Voici un exemple des échantillons les plus anormaux selon l'implémentation de l'algorithme « isolation forest » par Data Wrangler. Nous vous recommandons d'utiliser vos connaissances du domaine et la logique métier lorsque vous examinez les échantillons anormaux.

Data Wrangler détecte les lignes en double et calcule le rapport des doublons dans vos données. Certaines sources de données peuvent inclure des doublons valides. D'autres sources de données peuvent comporter des doublons indiquant des problèmes liés à la collecte de données. Les échantillons en double issus d'une collecte de données défectueuse peuvent interférer avec les processus de machine learning qui reposent sur le fractionnement des données en blocs d'entraînement et de validation indépendants.

Les éléments suivants sont issus du rapport d'informations et peuvent être affectés par les échantillons en double :

  • Modèle rapide

  • Estimation du pouvoir de prédiction

  • Réglage automatique des hyperparamètres

Vous pouvez retirer des échantillons en double du jeu de données à l'aide de la transformation Drop duplicates (Supprimer des doublons) sous Manage rows (Gérer les lignes). Data Wrangler affiche les lignes les plus fréquemment dupliquées.

Définitions

Les définitions suivantes s'appliquent à des termes techniques utilisés dans le rapport d'informations des données.

Feature types

Les définitions suivantes s'appliquent à chaque type de caractéristique :

  • Numérique – Les valeurs numériques peuvent être soit des valeurs flottantes, soit des entiers, tels que l'âge ou le revenu. Les modèles de machine learning supposent que les valeurs numériques sont ordonnées et qu'une distance est définie entre elles. Par exemple, 3 est plus proche de 4 que de 10 et 3 < 4 < 10.

  • Catégorique : les entrées de colonne appartiennent à un ensemble de valeurs uniques, généralement bien inférieur au nombre d'entrées de la colonne. Par exemple, une colonne de longueur 100 peut contenir les valeurs uniques Dog, Cat et Mouse. Les valeurs peuvent être numériques, textuelles ou une combinaison des deux. Horse, House, 8, Love et 3.1 sont toutes des valeurs valides et peuvent figurer dans la même colonne catégorielle. Le modèle de Machine Learning ne suppose pas un ordre ni une distance sur les valeurs des caractéristiques catégorielles, contrairement aux caractéristiques numériques, même lorsque toutes les valeurs sont des nombres.

  • Binaire – Les caractéristiques binaires constituent un type de caractéristique catégorielle spécial pour lequel la cardinalité du jeu de valeurs uniques est égale à 2.

  • Textuelle – Une colonne textuelle contient de nombreuses valeurs uniques non numériques. Dans les cas extrêmes, tous les éléments de la colonne sont uniques. Dans un cas extrême, il n'y a pas deux entrées identiques.

  • Date/heure – Une colonne date/heure contient des informations sur la date ou l'heure. Elle peut contenir des informations sur la date et l'heure.

Feature statistics

Les définitions suivantes s'appliquent à chaque statistique de fonction :

  • Pouvoir de prédiction – Le pouvoir de prédiction mesure l'utilité de la colonne dans la prédiction de la cible.

  • Valeurs aberrantes (dans des colonnes numériques) : Data Wrangler détecte les valeurs aberrantes à l'aide de deux statistiques robustes : l'écart médian et l'écart type robuste (). RSTD RSTDest dérivée en ajustant les valeurs des caractéristiques dans la plage [5 percentile, 95 centile] et en calculant l'écart type du vecteur découpé. Toutes les valeurs supérieures à la médiane + 5 * RSTD ou inférieures à la médiane - 5 * RSTD sont considérées comme des valeurs aberrantes.

  • Inclinaison (dans les colonnes numériques) – L'inclinaison mesure la symétrie de la distribution. Elle est définie comme le troisième moment de la distribution divisé par l'écart type à la puissance trois. L'asymétrie de la distribution normale ou de toute autre distribution symétrique est nulle. Les valeurs positives impliquent que la queue droite de la distribution est plus longue que la queue gauche. Les valeurs négatives impliquent que la queue gauche de la distribution est plus longue que la queue droite. En règle générale, une distribution est considérée comme asymétrique lorsque la valeur absolue de l'inclinaison est supérieure à 3.

  • Coefficient d'aplatissement (dans les colonnes numériques) – Le coefficient d'aplatissement de Pearson mesure la lourdeur de la queue de la distribution. Il est défini comme le quatrième moment de la distribution divisé par le carré du deuxième moment. L'aplatissement de la distribution normale est de 3. Les valeurs d'aplatissement inférieures à 3 impliquent que la distribution est concentrée autour de la moyenne et que les queues sont plus légères que les queues de la distribution normale. Les valeurs d'aplatissement supérieures à 3 impliquent des queues plus lourdes ou des valeurs aberrantes.

  • Valeurs manquantes – Les objets de type null, les chaînes vides et les chaînes composées uniquement d'espaces blancs sont considérés comme manquants.

  • Valeurs valides pour les caractéristiques numériques ou la cible de régression – Toutes les valeurs que vous pouvez convertir en valeurs flottantes finies sont valides. Les valeurs manquantes ne sont pas valides.

  • Valeurs valides pour les caractéristiques catégorielles, binaires ou textuelles, ou pour la cible de classification – Toutes les valeurs qui ne sont pas manquantes sont valides.

  • Caractéristiques de date/heure – Toutes les valeurs que vous pouvez convertir en objet de date/heure sont valides. Les valeurs manquantes ne sont pas valides.

  • Valeurs non valides – Valeurs manquantes ou qui ne peuvent pas être converties correctement. Par exemple, dans une colonne numérique, vous ne pouvez pas convertir la chaîne "six" ou une valeur null.

Quick model metrics for regression

Voici les définitions des métriques du modèle rapide :

  • R2 (coefficient de détermination) : R2 est la proportion de la variation de la cible prédite par le modèle. R2 se situe dans la plage [-infty, 1]. 1 est le score du modèle qui prédit parfaitement la cible et 0 est le score du modèle simple qui prédit toujours la moyenne de la cible.

  • MSEou erreur quadratique moyenne : MSE se situe dans la plage [0, infty]. 0 est le score du modèle qui prédit parfaitement la cible.

  • MAEou erreur absolue moyenne : MAE se situe dans la plage [0, infty] où 0 est le score du modèle qui prédit parfaitement la cible.

  • RMSEou erreur quadratique moyenne : RMSE se situe dans la plage [0, infty] où 0 est le score du modèle qui prédit parfaitement la cible.

  • Erreur max. : valeur absolue maximale de l'erreur sur le jeu de données. L'erreur max. se situe dans la plage [0, infty]. 0 est le score du modèle qui prédit parfaitement la cible.

  • Erreur absolue médiane – Elle se situe dans la plage [0, infty]. 0 est le score du modèle qui prédit parfaitement la cible.

Quick model metrics for classification

Voici les définitions des métriques du modèle rapide :

  • Exactitude – L'exactitude est le rapport des échantillons prédits avec exactitude. L'exactitude est comprise dans la plage [0, 1]. 0 est le score du modèle qui prédit de façon erronée tous les échantillons et 1 est le score du modèle parfait.

  • Exactitude équilibrée – L'exactitude équilibrée est le rapport des échantillons prédits avec exactitude quand les pondérations de classe sont ajustés pour équilibrer les données. Toutes les classes ont la même importance, quelle que soit leur fréquence. L'exactitude équilibrée est comprise dans la plage [0, 1]. 0 est le score du modèle qui prédit que tous les échantillons sont erronés. 1 est le score du modèle parfait.

  • AUC(classification binaire) — Il s'agit de la zone située sous la courbe des caractéristiques de fonctionnement du récepteur. AUCse situe dans la plage [0, 1] où un modèle aléatoire renvoie un score de 0,5 et le modèle parfait renvoie un score de 1.

  • AUC(OVR) — Pour la classification multiclasse, il s'agit de l'aire située sous la courbe des caractéristiques de fonctionnement du récepteur, calculée séparément pour chaque étiquette en utilisant une valeur par rapport au repos. Data Wrangler indique la moyenne des zones. AUCse situe dans la plage [0, 1] où un modèle aléatoire renvoie un score de 0,5 et le modèle parfait renvoie un score de 1.

  • Précision – La précision est définie pour une classe spécifique. La précision est la fraction des vrais positifs sur toutes les instances que le modèle a classées comme cette classe. La précision est comprise dans la plage [0, 1]. 1 est le score du modèle qui n'a pas de faux positifs pour la classe. Pour la classification binaire, Data Wrangler indique la précision de la classe positive.

  • Rappel – Le rappel est défini pour une classe spécifique. Le rappel est la fraction des instances de classe pertinentes qui ont été récupérées avec succès. Le rappel est compris dans la plage [0, 1]. 1 est le score du modèle qui classe correctement toutes les instances de la classe. Pour la classification binaire, Data Wrangler indique le rappel de la classe positive.

  • F1 – F1 est défini pour une classe spécifique. Il s'agit de la moyenne harmonique de la précision et du rappel. F1 est compris dans la plage [0, 1]. 1 est le score du modèle parfait. Pour la classification binaire, Data Wrangler indique la F1 des classes comportant des valeurs positives.

Textual patterns

Les patterns (modèles) décrivent le format textuel d'une chaîne à l'aide d'un format facile à lire. Voici des exemples de modèles textuels :

  • « {digits:4-7} » décrit une séquence de chiffres dont la longueur est comprise entre 4 et 7.

  • « {alnum:5} » décrit une chaîne alphanumérique d'une longueur exacte de 5.

Data Wrangler déduit les modèles en examinant des échantillons de chaînes non vides à partir de vos données. Il peut décrire un grand nombre des modèles couramment utilisés. La confiance exprimée en pourcentage indique la quantité de données estimée correspondant au modèle. À l'aide du modèle textuel, vous pouvez voir quelles lignes de vos données vous devez corriger ou supprimer.

Voici les modèles que Data Wrangler peut reconnaître :

Modèle Format de texte

{alnum}

Chaînes alphanumériques

{any}

Toute chaîne de caractères textuels

{digits}

Une séquence de chiffres

{lower}

Un mot en minuscules

{mixed}

Un mot en minuscules et majuscules

{name}

Un mot commençant par une majuscule

{upper}

Un mot en majuscules

{whitespace}

Personnages Whitespace

Un caractère textuel est soit un trait de soulignement, soit un caractère pouvant figurer dans un mot d'une langue quelconque. Par exemple, les chaînes 'Hello_word' et 'écoute' les deux sont constituées de caractères de mots. « H » et « é » sont deux exemples de caractères textuels.

Rapport de biais

SageMaker Canvas fournit le rapport sur les biais dans Data Wrangler pour aider à détecter les biais potentiels dans vos données. Le rapport de biais analyse la relation entre la colonne cible (étiquette) et une colonne susceptible, selon vous, de contenir un biais (variable à facettes). Par exemple, si vous essayez de prévoir la conversion des clients, la variable à facettes peut être l'âge du client. Le rapport sur les biais peut vous aider à déterminer si vos données sont biaisées en faveur d'un certain groupe d'âge.

Pour générer un rapport de biais dans Canvas, procédez comme suit :

  1. Dans votre flux de données dans Data Wrangler, cliquez sur l'icône Plus d'options ( Vertical ellipsis icon representing a menu or more options. ) à côté d'un nœud du flux.

  2. Dans le menu contextuel, choisissez Obtenir des informations sur les données.

  3. Le panneau latéral Créer une analyse s'ouvre. Dans le menu déroulant Type d'analyse, sélectionnez Rapport de biais.

  4. Dans le champ Nom de l'analyse, entrez le nom du rapport de biais.

  5. Dans le menu déroulant Sélectionnez la colonne que votre modèle prédit (cible), sélectionnez votre colonne cible.

  6. Pour Votre colonne prédite est-elle une valeur ou un seuil ? , sélectionnez Valeur si votre colonne cible contient des valeurs catégoriques ou Seuil si elle contient des valeurs numériques.

  7. Pour Valeur prévue (ou seuil prévu, selon votre sélection à l'étape précédente), entrez la ou les valeurs de colonne cible correspondant à un résultat positif. Par exemple, si vous prédisez la conversion d'un client, votre valeur peut yes indiquer qu'un client a été converti.

  8. Dans le menu déroulant Sélectionnez la colonne à analyser pour détecter le biais, sélectionnez la colonne qui, selon vous, est susceptible de contenir un biais, également connue sous le nom de variable à facettes.

  9. Pour Votre colonne est-elle une valeur ou un seuil ? , sélectionnez Valeur si la variable à facettes possède des valeurs catégorielles ou Seuil si elle contient des valeurs numériques.

  10. Pour Valeurs de colonne à analyser pour détecter le biais (ou Seuil de colonne pour analyser le biais, en fonction de votre sélection à l'étape précédente), entrez la ou les valeurs que vous souhaitez analyser pour détecter un biais potentiel. Par exemple, si vous recherchez des préjugés à l'encontre des clients ayant dépassé un certain âge, utilisez le début de cette tranche d'âge comme seuil.

  11. Pour Choisir les mesures de biais, sélectionnez les mesures de biais que vous souhaitez inclure dans votre rapport de biais. Passez le pointeur de la souris sur les icônes d'informations pour plus d'informations sur chaque métrique.

  12. (Facultatif) Lorsque vous y êtes invité, l'option Voulez-vous analyser des mesures supplémentaires ? , sélectionnez Oui pour afficher et inclure d'autres mesures de biais.

  13. Lorsque vous êtes prêt à créer le rapport de biais, choisissez Ajouter.

Une fois généré, le rapport vous donne un aperçu des mesures de biais que vous avez sélectionnées. Vous pouvez consulter le rapport de biais à tout moment depuis l'onglet Analyses de votre flux de données.

Histogramme

Utilisez des histogrammes pour afficher le nombre de valeurs d'entités pour une entité spécifique. Vous pouvez inspecter les relations entre les entités à l'aide de l'option Color by (Couleur par).

Vous pouvez utiliser la fonction Facet by (Facetter par) pour créer des histogrammes d'une colonne, pour chaque valeur d'une autre colonne.

Diagramme à points

Utilisez la fonction Scatter Plot (Nuage de points) pour inspecter la relation entre les caractéristiques. Pour créer un nuage de points, sélectionnez une caractéristique à représenter sur l'axe des X et l'axe des Y. Ces deux colonnes doivent être des colonnes à caractères numériques.

Vous pouvez colorer les nuages de points par une colonne supplémentaire.

En outre, vous pouvez facetter des nuages de points par caractéristiques.

Résumé du tableau

Utilisez l'analyse Table Summary (Résumé de la table) pour résumer rapidement vos données.

Pour les colonnes avec des données numériques, y compris les données logarithmiques et flottantes, un résumé de tableau indique le nombre d'entrées (nombre), le minimum (min), le maximum (max), la moyenne et l'écart-type (stddev) pour chaque colonne.

Pour les colonnes avec des données non numériques, y compris les colonnes avec des données de type chaîne, booléen ou date/heure, un résumé de table indique le nombre d'entrées (nombre), la valeur la moins fréquente (min) et la valeur la plus fréquente (max).

Modèle rapide

Utilisez la visualisation Quick Model (Modèle rapide) pour évaluer rapidement vos données et produire des scores d'importance pour chaque caractéristique. Un feature importance score (score d'importance d'une caractéristique) indique l'utilité d'une caractéristique pour prédire une étiquette cible. Le score d'importance d'une caractéristique se situe dans l'intervalle [0, 1] et une valeur élevée indique que la caractéristique est plus importante pour l'ensemble du jeu de données. En haut du graphique modèle rapide, il y a un score du modèle. Un problème de classification indique un score F1. Un problème de régression possède un score d'erreur quadratique moyen (MSE).

Lorsque vous créez un graphique modèle rapide, vous sélectionnez un jeu de données que vous souhaitez évaluer et une étiquette cible par rapport à laquelle vous souhaitez comparer l'importance de la caractéristique. Data Wrangler exécute les opérations suivantes :

  • Détermine les types de données de l'étiquette cible et de chaque caractéristique du jeu de données sélectionné.

  • Détermine le type de problème. En fonction du nombre de valeurs distinctes dans la colonne d'étiquette, Data Wrangler détermine s'il s'agit d'un type de problème de régression ou de classification. Data Wrangler définit un seuil de catégorie à 100. S'il y a plus de 100 valeurs distinctes dans la colonne d'étiquette, Data Wrangler la classe comme un problème de régression ; sinon, elle est classée comme un problème de classification.

  • Fonctions de pré-traitement et données d'étiquetage pour l'entraînement. L'algorithme utilisé nécessite l'encodage des caractéristiques en type vectoriel et l'encodage des étiquettes en type double.

  • Entraîne un algorithme de forêt aléatoire avec 70 % des données. Spark RandomForestRegressorest utilisé pour entraîner un modèle pour les problèmes de régression. Le RandomForestClassifierest utilisé pour entraîner un modèle pour les problèmes de classification.

  • Évalue un modèle de forêt aléatoire avec les 30 % de données restantes. Data Wrangler évalue les modèles de classification à l'aide d'un score F1 et évalue les modèles de régression à l'aide d'un score. MSE

  • Calcule l'importance de chacune des fonctions à l'aide de la méthode d'importance Gini.

Fuite ciblée

Une fuite de cible se produit lorsqu'il existe des données dans un jeu de données de machine learning fortement corrélées avec l'étiquette cible, mais qui ne sont pas disponibles dans les données du monde réel. Par exemple, vous pouvez avoir une colonne dans votre jeu de données qui sert de substitut à la colonne que vous voulez prédire avec votre modèle.

Lorsque vous utilisez Target Leakage (Fuite de cible), vous spécifiez les informations suivantes :

  • Target (Cible) : il s'agit de la caractéristique sur laquelle vous souhaitez que votre modèle ML puisse faire des prédictions.

  • Problem type (Type de problème) : c'est le type de problème ML sur lequel vous travaillez. Le type de problème peut être classification ou regression (régression).

  • (Facultatif) Max features (Nombre max de caractéristiques) : il s'agit du nombre maximal de caractéristiques à présenter dans la visualisation, qui affiche les caractéristiques classées par leur risque de fuite de cible.

Pour la classification, l'analyse des fuites cibles utilise la zone située sous la caractéristique de fonctionnement du récepteur, ou ROC courbe AUC - pour chaque colonne, jusqu'à la valeur maximale des caractéristiques. Pour la régression, il utilise un coefficient de détermination, ou métrique R2.

La ROC courbe AUC - fournit une métrique prédictive, calculée individuellement pour chaque colonne par validation croisée, sur un échantillon d'environ 1 000 lignes. Un score de 1 indique des capacités prédictives parfaites, ce qui indique souvent une fuite de cible. Un score de 0,5 ou moins indique que l'information figurant dans la colonne ne pouvait fournir, à elle seule, aucune information utile pour prédire la cible. Bien qu'il puisse arriver qu'une colonne n'apporte aucune information seule, mais qu'elle soit utile pour prédire la cible lorsqu'elle est utilisée en combinaison avec d'autres fonctions, un score faible peut indiquer que la fonction est redondante.

Multicolinéarité

La multicolinéarité est une circonstance dans laquelle deux variables prédictives ou plus sont liées les unes aux autres. Les variables prédictives sont les caractéristiques de votre jeu de données que vous utilisez pour prédire une variable cible. En cas de multicolinéarité, les variables prédictives sont non seulement prédictives de la variable cible, mais également prédictives les unes des autres.

Vous pouvez utiliser le facteur d'inflation de la variance (VIF), l'analyse en composantes principales (PCA) ou la sélection de fonctionnalités Lasso comme mesures de la multicolinéarité de vos données. Pour plus d’informations, consultez les rubriques suivantes.

Variance Inflation Factor (VIF)

Le facteur d'inflation de la variance (VIF) est une mesure de la colinéarité entre les paires de variables. Data Wrangler renvoie un VIF score pour mesurer dans quelle mesure les variables sont étroitement liées les unes aux autres. Un VIF score est un nombre positif supérieur ou égal à 1.

Un score de 1 signifie que la variable n'est pas corrélée avec les autres variables. Des scores supérieurs à 1 indiquent une corrélation plus élevée.

Théoriquement, vous pouvez avoir un VIF score d'une valeur infinie. Data Wrangler coupe les scores élevés jusqu'à 50. Si vous avez un VIF score supérieur à 50, Data Wrangler le fixe à 50.

Vous pouvez utiliser les directives suivantes pour interpréter vos VIF scores :

  • Un VIF score inférieur ou égal à 5 indique que les variables sont modérément corrélées avec les autres variables.

  • Un VIF score supérieur ou égal à 5 indique que les variables sont fortement corrélées avec les autres variables.

Principle Component Analysis (PCA)

L'analyse en composantes principales (PCA) mesure la variance des données dans différentes directions de l'espace des fonctionnalités. L'espace des caractéristiques comprend toutes les variables prédictives que vous utilisez pour prédire la variable cible dans votre jeu de données.

Par exemple, si vous essayez de prédire qui a survécu à bord du RMSTitanic après que celui-ci a heurté un iceberg, votre espace dédié peut inclure l'âge, le sexe et le billet payé par les passagers.

PCAGénère une liste ordonnée de variances à partir de l'espace des fonctionnalités. Ces variances portent également le nom de valeurs singulières. Les valeurs de la liste des variances sont supérieures ou égales à 0. Nous pouvons les utiliser pour déterminer le degré de multicolinéarité de nos données.

Lorsque les nombres sont approximativement uniformes, les données présentent très peu d'instances de multicolinéarité. En cas de forte variabilité entre les valeurs, nous avons de nombreuses instances de multicolinéarité. Avant de fonctionnerPCA, Data Wrangler normalise chaque caractéristique pour obtenir une moyenne de 0 et un écart type de 1.

Note

PCAdans ce cas, on peut également parler de décomposition en valeurs singulières (SVD).

Lasso feature selection

La sélection de caractéristiques par lasso utilise la technique de régularisation L1 pour inclure uniquement les caractéristiques les plus prédictives de votre jeu de données.

Pour la classification et la régression, la technique de régularisation génère un coefficient pour chaque caractéristique. La valeur absolue de ce coefficient fournit un score d'importance pour la caractéristique. Un score d'importance plus élevé indique qu'il est plus prédictif de la variable cible. Une méthode courante de sélection de caractéristiques consiste à utiliser toutes les entités dont le coefficient de lasso est différent de zéro.

Détecter les anomalies dans les données de séries chronologiques

Vous pouvez utiliser la visualisation de détection d'anomalies pour voir les valeurs aberrantes dans vos données de séries temporelles. Pour comprendre ce qui détermine une anomalie, vous devez savoir que nous décomposons la série temporelle en terme prédit et en terme d'erreur. Nous considérons la saisonnalité et la tendance des séries temporelles comme étant le terme prédit. Nous considérons les résidus comme étant le terme d'erreur.

Pour le terme d'erreur, vous spécifiez un seuil comme étant le nombre d'écarts-types dont le résidu peut s'éloigner de la moyenne pour être considéré comme une anomalie. Par exemple, vous définissez le seuil à trois écarts-types. Tout résidu à plus de 3 écarts-types de la moyenne est une anomalie.

Vous pouvez utiliser la procédure suivante pour exécuter une analyse Anomaly detection (Détection des anomalies).

  1. Ouvrez votre flux de données Data Wrangler.

  2. Cliquez sur Data type (Type de données) dans votre flux de données, choisissez le +, puis sélectionnez Add analysis (Ajouter une analyse).

  3. Pour Analysis Type Type d'analyse, choisissez Time Series (Séries temporelles).

  4. Pour Visualization (Visualisation), choisissez Anomaly detection (Détection des anomalies).

  5. Pour Anomaly threshold (Seuil d'anomalies), choisissez le seuil auquel une valeur est considérée comme une anomalie.

  6. Choisissez Preview (Prévisualisation) pour générer une prévisualisation de l'analyse.

  7. Choisissez Add (Ajouter) pour ajouter la transformation au flux de données Data Wrangler.

Décomposition des tendances saisonnières dans les données de séries chronologiques

Vous pouvez déterminer s'il existe une saisonnalité dans vos données de séries temporelles à l'aide de la visualisation de la décomposition des tendances saisonnières. Nous utilisons la méthode STL (décomposition des tendances saisonnières à l'aide deLOESS) pour effectuer la décomposition. Nous décomposons la série temporelle en composants saisonniers, tendances et résidus. La tendance reflète la progression à long terme de la série. Le composant saisonnier est un signal se répète au cours d'une période. Après avoir supprimé la tendance et les composants saisonniers de la série temporelles, vous avez les résidus.

Vous pouvez utiliser la procédure suivante pour exécuter une analyse Seasonal-Trend Decomposition (Décomposition de série temporelle).

  1. Ouvrez votre flux de données Data Wrangler.

  2. Cliquez sur Data type (Type de données) dans votre flux de données, choisissez le +, puis sélectionnez Add analysis (Ajouter une analyse).

  3. Pour Analysis Type Type d'analyse, choisissez Time Series (Séries temporelles).

  4. Pour Visualization (Visualisation), choisissez Seasonal-Trend Decomposition (Décomposition de série temporelle).

  5. Pour Anomaly threshold (Seuil d'anomalies), choisissez le seuil auquel une valeur est considérée comme une anomalie.

  6. Choisissez Preview (Prévisualisation) pour générer une prévisualisation de l'analyse.

  7. Choisissez Add (Ajouter) pour ajouter la transformation au flux de données Data Wrangler.

Créez des visualisations personnalisées

Vous pouvez ajouter une analyse à votre flux Data Wrangler pour créer une visualisation personnalisée. Votre jeu de données, avec toutes les transformations que vous avez appliquées, est disponible sous forme de Pandas DataFrame. Data Wrangler utilise la variable df pour stocker le dataframe. Vous accédez au dataframe en appelant la variable.

Vous devez fournir la variable de sortie, chart, pour stocker un graphique de sortie Altair. Par exemple, vous pouvez utiliser le bloc de code suivant pour créer un histogramme personnalisé à l'aide du jeu de données Titanic.

import altair as alt df = df.iloc[:30] df = df.rename(columns={"Age": "value"}) df = df.assign(count=df.groupby('value').value.transform('count')) df = df[["value", "count"]] base = alt.Chart(df) bar = base.mark_bar().encode(x=alt.X('value', bin=True, axis=None), y=alt.Y('count')) rule = base.mark_rule(color='red').encode( x='mean(value):Q', size=alt.value(5)) chart = bar + rule
Pour créer une visualisation personnalisée :
  1. À côté du nœud contenant la transformation que vous souhaitez visualiser, sélectionnez le signe +.

  2. Choisissez Add analysis (Ajouter une analyse).

  3. Pour Analysis type (Type d'analyse), choisissez Custom Visualization (Visualisation personnalisée).

  4. Pour Analysis name (Nom de l'analyse), spécifiez un nom.

  5. Saisissez votre code dans la zone de code.

  6. Cliquez sur Preview (Aperçu) pour avoir un aperçu de votre visualisation.

  7. Sélectionnez Save (Enregistrer) pour créer une visualisation.

Si vous ne savez pas comment utiliser le package de visualisation Altair dans Python, vous pouvez utiliser des extraits de code personnalisés pour bien démarrer.

Data Wrangler possède une collection interrogeable d'extraits de visualisation. Pour utiliser un extrait de visualisation, choisissez Search example snippets (Rechercher dans les exemples d'extraits) et spécifiez une requête dans la barre de recherche.

L'exemple suivant utilise l'extrait de code Binned scatterplot (Diagramme de dispersion échelonné). Il représente un histogramme pour 2 dimensions.

Les extraits contiennent des commentaires qui vous aident à comprendre les modifications que vous devez apporter au code. Vous devez généralement spécifier les noms de colonnes de votre jeu de données dans le code.

import altair as alt # Specify the number of top rows for plotting rows_number = 1000 df = df.head(rows_number) # You can also choose bottom rows or randomly sampled rows # df = df.tail(rows_number) # df = df.sample(rows_number) chart = ( alt.Chart(df) .mark_circle() .encode( # Specify the column names for binning and number of bins for X and Y axis x=alt.X("col1:Q", bin=alt.Bin(maxbins=20)), y=alt.Y("col2:Q", bin=alt.Bin(maxbins=20)), size="count()", ) ) # :Q specifies that label column has quantitative type. # For more details on Altair typing refer to # https://altair-viz.github.io/user_guide/encoding.html#encoding-data-types