2 défis scientifiques sur l’approche globale de gestion des données pour l’apprentissage
Concevoir un composant à base d’apprentissage automatique nécessite la maitrise du cycle de vie des données et connaissances utilisées pour son entrainement et sa qualification. Si les données ne sont pas fiables, l’IA qui les traite ne pourra pas l’être. Ainsi, pour garantir la confiance, une gestion des données et connaissances doit être mise en place, et cela tout au long du cycle de vie de la solution à base d’apprentissage. Cet objectif induit deux défis scientifiques principaux :
- La définition d’un processus d’ingénierie des données et connaissances sans adhérence à un outil spécifique ;
- La maitrise du cycle de vie de la donnée incluant la caractérisation et le maintien de qualité de la donnée.
Définition d’un processus d’ingénierie des données et connaissances
L’ingénierie de la donnée est un processus itératif nécessitant la compréhension approfondie des données et du problème à résoudre. Elle joue un rôle crucial dans la préparation des données pour l’apprentissage automatique et a un impact sur les performances des modèles. Cette ingénierie comprend plusieurs étapes.
- La collecte des données :
- Tout d’abord, la tâche que l’apprentissage automatique doit réaliser (classification, prédiction, génération de contenu…) doit être spécifiée.
- L’identification des informations pertinentes doit être déduite de la définition du contexte de conception opérationnel (ODD : Operational Design Domain) du système/solution.
- Le type de données pour créer un modèle efficace est précisé : les données peuvent être structurées (tableaux, bases de données…) ou non structurées (textes, images…). Il faut aussi préciser les sources appropriées de données.
- Ensuite, il faut définir la taille de l’échantillon, c’est-à-dire la quantité de données nécessaires pour former et évaluer le modèle de façon fiable. La taille de l’échantillon dépendra du type de problème, de la complexité du modèle et de la variabilité des données.
- Il faut ensuite s’assurer que les données collectées soient de haute qualité, ce qui implique de minimiser les erreurs de mesure, les valeurs aberrantes, les données manquantes et autres problèmes similaires. Il est également important de vérifier la conformité avec la réglementation comme sur la confidentialité des données ou l’absence de biais.
- Enfin, les données pouvant devenir obsolètes avec le temps, il faut mettre en place une stratégie de maintenance des données.
- L’analyse des données : Après cette étape de collecte, l’analyse des données permet comprendre leur structure, leur qualité et leur disponibilité. Cela peut nécessiter des activités de visualisation des données, d’analyse statistique, d’identification des valeurs manquantes ou aberrantes…
- La sélection de variables : Il s’agit de sélectionner les variables pertinentes pour l’entraînement du modèle. Cela peut impliquer l’utilisation de connaissances expertes, d’analyses statistiques ou d’outils automatisés.
- Le nettoyage des données : Une fois que les anomalies et les valeurs manquantes ont été identifiées, il faut les nettoyer avec des techniques appropriées comme le remplacement des valeurs manquantes, l’élimination des valeurs aberrantes, la normalisation… Les valeurs manquantes doivent être aussi gérées de manière appropriée. Cela peut inclure le remplacement des valeurs manquantes par une estimation (moyenne, médiane, etc.) ou la suppression des lignes ou des colonnes contenant des valeurs manquantes.
- La transformation des données : Selon la nature des données et le type de modèle d’apprentissage, il peut être utile de transformer les données en utilisant diverses techniques comme la réduction de la dimensionnalité, la normalisation, etc. Parfois, la création de nouvelles variables à partir des données existantes peut être utile pour améliorer les performances du modèle. Cela peut être réalisé en appliquant des opérations mathématiques, des combinaisons de variables existantes ou en utilisant des techniques de réduction de dimensionnalité.
- L’étiquetage des données : Si les données nécessitent un étiquetage (pour un apprentissage supervisé par exemple), il est nécessaire de spécifier comment les données seront étiquetées, par exemple grâce à l’utilisation de techniques d’apprentissage actif (active learning).
- La séparation des jeux de données : Il faut ensuite diviser l’ensemble des données en jeux d’entraînement, de validation et de test. L’ensemble d’entraînement sera utilisé pour entraîner le modèle, l’ensemble de validation permettra d’ajuster les hyperparamètres du modèle et l’évaluation des performances finales du modèle se fera à partir du jeu de test.
- L’entraînement du modèle : Cela implique de choisir un algorithme approprié, d’ajuster les hyperparamètres du modèle, de fournir les données d’entraînement et d’évaluer les performances du modèle à mesure qu’il apprend.
- La validation et l’ajustement du modèle : Après l’entraînement initial du modèle, il est important de le valider par le biais de l’ensemble de validation. Cette étape permet d’ajuster les hyperparamètres du modèle, de sélectionner les meilleures caractéristiques et d’améliorer les performances générales du modèle.
- L’évaluation du modèle : Une fois le modèle validé et ajusté, il est évalué en utilisant l’ensemble de test afin d’estimer ses performances sur des données non vues auparavant. L’évaluation peut être effectuée en utilisant diverses mesures de performance telles que l’exactitude, la précision, le rappel, la F-mesure, etc.
- Enfin, la réitération : Ce processus d’ingénierie est souvent itératif, ce qui signifie qu’il peut nécessiter plusieurs cycles de collecte, nettoyage, transformation, entraînement, validation et ajustement du modèle pour améliorer progressivement les performances du modèle et d’obtenir des résultats plus précis.
En conclusion, le processus d’ingénierie de la donnée comprend la collecte, l’exploration, le nettoyage, la transformation, la séparation des ensembles de données, l’entraînement du modèle, la validation et l’ajustement, l’évaluation du modèle et la réitération. Celui-ci doit être reposer sur une méthodologie rigoureuse sans adhérence avec un ou plusieurs outil(s) pour concevoir un apprentissage automatique de qualité et cela pour trouver et préparer les variables qui seront utilisées pour entraîner le modèle dans le but d’obtenir une représentation plus informative et pertinente des données.
Maitrise du cycle de vie de la données incluant la caractérisation et le maintien de la qualité de la donnée
Comme mentionné ci-dessus, dans le cadre de l’apprentissage, le cycle de vie des données est généralement divisé en plusieurs étapes :
- La collecte des données ;
- La préparation des données où les données brutes sont analysées, nettoyées, transformées puis éventuellement étiquetées ;
- Puis l’entraînement du modèle : à cette étape, le modèle d’apprentissage automatique est entraîné à partir des données préparées. Cela implique de sélectionner un algorithme d’apprentissage adapté au problème, de définir les paramètres du modèle, de séparer les données en ensembles d’entraînement et de test, puis de faire passer les données d’entraînement dans le modèle pour ajuster ses paramètres ;
- Une fois le modèle entraîné, celui-ci est évalué en utilisant les données de test permettant ainsi d’évaluer les performances du modèle et sa capacité à généraliser sur de nouvelles données.
- Sur la base de ces résultats, le modèle peut être optimisé en ajustant les hyperparamètres, en modifiant sa structure, en ajoutant ou en supprimant des caractéristiques, etc.
- Une fois que le modèle a été entraîné et optimisé, il peut être déployé sur de nouvelles données. Cependant, le modèle doit être régulièrement « monitoré » (surveillé) pour s’assurer qu’il fonctionne correctement et qu’il maintient de bonnes performances. Parfois, il peut être ré-entraîné à mesure que de nouvelles données deviennent disponibles.
Ce cycle de vie des données est itératif, car de nouvelles données peuvent être collectées, de nouveaux modèles peuvent être développés et voire être améliorés au fil du temps.
Ainsi la qualité des données est déterminante. En effet, si les données d’entraînement sont de mauvaise qualité, faiblement pertinentes, avec des erreurs, des valeurs manquantes, du bruit ou des biais, le modèle risque de fournir des réponses inexactes ou biaisées. Il est donc nécessaire d’évaluer la qualité des données lors des différentes étapes décrites ci-dessus, c’est-à-dire tout au long du cycle de vie de la donnée et de proposer des méthodes et outils permettant d’améliorer ou de maintenir le niveau de qualité requis.
Pour cela, il faut mettre en place des méthodes outillées pour permettre le profilage des données reposant sur une spécification claire des attributs/critères contribuant à la qualité des données et donc du modèle d’apprentissage comme l’exactitude, la pertinence, la complétude, la fiabilité, l’absence de biais, la validité…. Pour chacun de ces attributs, leur évaluation doit reposer sur des métriques, indicateurs ou méthodes clairement définies pouvant dépendre du type des données et/ou de l’approche sous-jacente à l’apprentissage. Enfin, une fois l’évaluation réalisée, des approches outillées sont nécessaires pour garantir le niveau requis voire offrir des méthodes de correction en cas de « drift » du modèle.