Débogage de données et de caractéristiques

Des données de faible qualité auront un impact important sur les performances de votre modèle. Il est beaucoup plus facile de détecter les données de mauvaise qualité en entrée plutôt que de deviner leur existence une fois que votre modèle a prédit mal. Surveillez vos données en suivant les conseils de cette section.

Valider des données d'entrée à l'aide d'un schéma de données

Pour surveiller vos données, vous devez les comparer en fonction des valeurs statistiques attendues en définissant des règles que les données doivent respecter. Cet ensemble de règles est appelé schéma de données. Définissez un schéma de données en procédant comme suit:

  1. Pour vos données de caractéristiques, vous devez comprendre la plage et la distribution. Pour les caractéristiques catégorielles, comprenez l'ensemble des valeurs possibles.
  2. Encodez vos connaissances en règles définies dans le schéma. Exemples de règles:

    • Assurez-vous que les notes attribuées par les utilisateurs sont toujours comprises entre 1 et 5.
    • Vérifiez que l'élément "the" apparaît le plus souvent (pour une fonctionnalité de texte en anglais).
    • Vérifiez que les caractéristiques catégorielles comportent des valeurs issues d'un ensemble fixe.
  3. Tester vos données par rapport au schéma de données Votre schéma doit identifier les erreurs de données telles que:

    • anomalies
    • valeurs inattendues de variables catégorielles
    • distributions de données inattendues

Assurez-vous que les répartitions sont de bonne qualité

Vos divisions test et entraînement doivent être aussi représentatives de vos données d'entrée. Si les divisions test et entraînement sont statistiquement différentes, les données d'entraînement ne permettent pas de prédire les données de test. Pour apprendre à échantillonner et à diviser des données, consultez la section Échantillonner et diviser des données du cours "Préparation des données et extraction de caractéristiques dans le ML".

Surveillez les propriétés statistiques de vos répartitions. Si les propriétés divergent, levez une option. Vérifiez également que le ratio d'exemples dans chaque division reste constant. Par exemple, si vos données sont divisées à 80:20, ce ratio ne doit pas changer.

Tester les données

Bien que vos données brutes puissent être valides, votre modèle ne voit que les données de caractéristiques extraites. Étant donné que les données d'ingénierie ressemblent beaucoup aux données d'entrée brutes, vous devez les vérifier séparément. En fonction de vos connaissances en ingénierie, écrivez des tests unitaires. Par exemple, vous pouvez écrire des tests unitaires pour vérifier les conditions suivantes:

  • Toutes les caractéristiques numériques sont mises à l'échelle (par exemple, entre 0 et 1).
  • Les vecteurs à encodage one-hot ne contiennent qu'un seul zéro et un zéro.
  • Les données manquantes sont remplacées par des moyennes ou des valeurs par défaut.
  • Les distributions de données après la transformation sont conformes aux attentes. Par exemple, si vous avez normalisé les scores en z, la moyenne de ces scores est de 0.
  • Les anomalies sont traitées, par exemple par le scaling ou le rognage.