L’impératif du nettoyage des données – Le démarrage
Importance du nettoyage des données, quels sont les problèmes de données? et comment résoudre ces problèmes?
réata nettoyage ou nettoyage des données est le processus de détection et de correction (ou de suppression) corrompu ou inexact enregistrements à partir d’un jeu d’enregistrements, table, ou base de données et fait référence à l’identification de parties incomplètes, incorrectes, inexactes ou non pertinentes des données, puis au remplacement, à la modification ou à la suppression du sale ou des données grossières. [Wikipedia]
Si vous avez parlé à un Data Scientist ou Data Analyst qui avait beaucoup d’expérience dans la construction de modèles de machines, il vous dira que la préparation des données prend beaucoup de temps et c’est très important.
Modèles d’apprentissage automatique conçus pour obtenir une énorme quantité de données et trouver des modèles dans ces données afin de pouvoir prendre des décisions intelligentes.
Supposons que vous construisez un modèle ML pour classer entre les pommes et les images orange. Si vous saisissez toutes vos données avec uniquement des images orange, le modèle ne sera pas en mesure de prédire la pomme car il ne dispose pas de suffisamment de données pour apprendre et définir des modèles pour les pommes.
Cet exemple jusqu’à nous « Garbage in Garbage out »
Si les données introduites dans le modèle ML sont de mauvaise qualité, le modèle sera de mauvaise qualité.
Comment aborder chacun des problèmes ci-dessus?
Données insuffisantes
[Sherlock Holmes:] J’étais arrivé à une conclusion tout à fait erronée, mon cher Watson, à quel point il est toujours dangereux de raisonner à partir de données insuffisantes.
-L’aventure de la bande mouchetée
Les modèles formés avec des données insuffisantes donnent de mauvais résultats en matière de prédiction. si vous n’avez que quelques enregistrements pour votre modèle ML, cela vous mènera à l’un des deux problèmes ci-dessous concernant la modélisation ML
Sur-ajustement: Lisez trop pour trop peu de données.
Sous-équipement: Créez un modèle trop simpliste à partir des données disponibles.
Dans le problème des données insuffisantes du monde réel, est une lutte courante pour le projet, vous pouvez trouver que les données pertinentes peuvent ne pas être disponibles et même s’il s’agit du traitement réel de la collecte des données, cela est très difficile et prend du temps.
La vérité, il n’y a pas de grande solution pour traiter les données insuffisantes, il vous suffit de trouver plus de sources de données et d’attendre longtemps jusqu’à ce que les données pertinentes soient collectées.
Mais, vous pouvez faire quelque chose pour contourner ce problème, mais notez que les techniques décrites ne sont pas largement applicables à tous les cas d’utilisation.
Maintenant, Que pouvons-nous faire si nous avons de petits ensembles de données?
Complexité du modèle: si vous avez de petites données, vous pouvez choisir de travailler avec un modèle plus simple, un modèle plus simple fonctionne mieux avec moins de données.
Transfert d’apprentissage: si vous travaillez avec des techniques d’apprentissage en profondeur de réseaux neuronaux, vous pouvez utiliser l’apprentissage par transfert.
Augmentation des données: vous pouvez essayer d’augmenter la quantité de données en utilisant les techniques d’augmentation des données, qu’il utilise généralement avec les données d’image.
Données synthétiques: comprendre le type de données dont vous avez besoin pour construire votre modèle et utiliser les propriétés statistiques de ces données et générer des données artificielles synthétiques.
Complexité du modèle
Chaque algorithme d’apprentissage automatique a son propre ensemble de paramètres. par exemple, régression linéaire simple vs régression d’arbre de décision.
Si vous avez moins de données, choisissez un modèle plus simple avec moins de paramètres de modèle. Un modèle plus simple est moins susceptible de sur-ajuster vos données et de mémoriser des modèles dans vos données.
Certains des modèles d’apprentissage automatique sont simples avec peu de paramètres comme le Naïve Bayes Classifier ou le modèle de régression logistique. Les arbres de décision ont beaucoup plus de paramètres et sont considérés comme un modèle complexe.
Une autre option pour entraîner vos données à l’aide de techniques d’ensemble.
Apprentissage en ensemble: Technique d’apprentissage automatique dans laquelle plusieurs apprenants sont combinés pour obtenir de meilleures performances que n’importe lequel des apprenants.
Transfert d’apprentissage
Si vous travaillez avec Neural Networks et que vous ne disposez pas de suffisamment de données pour former votre modèle de transfert, l’apprentissage peut résoudre ce problème.
Transfert d’apprentissage: la pratique de réutiliser un réseau de neurones formé qui résout un problème similaire au vôtre, laissant généralement l’architecture du réseau inchangée et réutilisant tout ou partie du poids du modèle.
Les connaissances transférées sont particulièrement utiles avec le nouvel ensemble de données lorsqu’il est petit et insuffisant pour entraîner un modèle à partir de zéro.
Augmentation des données
Les techniques d’augmentation des données vous permettent d’augmenter le nombre d’échantillons d’apprentissage et elles sont généralement utilisées avec les données d’image, vous prenez toutes les images avec lesquelles vous travaillez et vous perturbez et dérangez ces images d’une manière ou d’une autre pour générer de nouvelles images.
Vous pouvez perturber ces images en appliquant une mise à l’échelle, une rotation et une transformation affine. Et ces options de traitement d’image utilisent souvent des techniques de prétraitement pour rendre vos modèles de classification d’images construits à l’aide de CNN ou de réseaux neuronaux de calcul plus robustes, ils peuvent également être utilisés pour générer des échantillons supplémentaires avec lesquels vous pouvez travailler.
Données synthétiques
Les données synthétiques s’accompagnent de leur propre ensemble de problèmes.En gros, vous générez artificiellement des échantillons qui imitent les données du monde réel. Vous devez comprendre les caractéristiques des données dont vous avez besoin.
Vous pouvez suréchantillonner des points de données existants pour générer de nouveaux points de données ou vous pouvez utiliser d’autres techniques pour générer des données artificielles, mais cela peut introduire un biais dans les données existantes.
Trop de données
Il peut sembler étrange que trop de données soient un problème, mais à quoi servent les données si ce ne sont pas les bonnes données. Les données peuvent être excessives de deux manières:
1- Données historiques obsolètes: trop de lignes.
Travailler avec des données historiques est important, mais à quel point si vous avez trop de données historiques qui ne sont pas vraiment significatives, vous pourriez finir avec quelque chose appelé «Concept Drift».
Concept Drift: La relation entre les caractéristiques (variables X) et les étiquettes (variables Y) change avec le temps; Les modèles ML ne parviennent pas à suivre et, par conséquent, leurs performances en souffrent.
Concept Drift signifie que le modèle ML continue de le considérer comme la situation du monde qui est dépassé et qui n’est plus significatif ou pertinent.
Donc, si vous travaillez avec des données historiques, tenez compte des éléments suivants:
- S’il n’est pas éliminé, il entraîne une dérive du concept.
- Les données historiques obsolètes sont un problème grave en particulier lorsque vous travaillez avec des modèles ML qui fonctionnent avec des données financières, surtout si vous modélisez le marché boursier.
- Exige généralement des experts humains pour juger quelles lignes laisser de côté.
2- Malédiction de la dimensionnalité: trop de colonnes.
Vos échantillons qui devraient les utiliser pour former le modèle ML et chaque échantillon peuvent avoir trop de colonnes trop de fonctionnalités sous la forme la plus simple lorsque vous traitez la malédiction de la dimensionnalité, vous pourriez finir par utiliser des fonctionnalités non pertinentes qui n’aident pas vraiment votre modèle à s’améliorer.
La malédiction de la dimensionnalité est un sujet énorme qui a été étudié en détail par les scientifiques des données.
Deux problèmes spécifiques se posent lorsque trop de données sont disponibles:
- Décider quelles données sont réellement pertinentes.
- Agrégation de données de très bas niveau en fonctionnalités utiles.
Les données historiques sont un problème assez difficile à traiter, mais les problèmes liés à la malédiction de la dimensionnalité sont plus faciles à résoudre
Comment?
Vous pouvez utiliser Sélection de fonctionnalité pour décider quelles données sont pertinentes.
Vous pouvez utiliser Ingénierie des fonctionnalités pour agréger les données de bas niveau en fonctionnalités utiles.
Vous pouvez effectuer Réduction de la dimensionnalité pour réduire la complexité sans perdre d’informations.
Données non représentatives
Il existe plusieurs manifestations de données non représentatives, l’une alimente les mauvaises fonctionnalités de votre modèle et il existe également d’autres manifestations. Il est possible que les données que vous avez collectées contiennent des données inexactes d’une certaine manière, une petite erreur a un impact significatif sur votre modèle.
Une autre manifestation de données non représentatives est les données biaisées. Par exemple, vous collectez des données de 5 capteurs provenant de 5 emplacements différents et l’un de ces capteurs ne fonctionne pas tout le temps, vos données sont biaisées car vous ne disposez pas de données proportionnelles provenant de l’un des capteurs. Travailler avec des données biaisées conduit à des modèles biaisés peu performants en pratique.
Vous pouvez atténuer ce problème en suréchantillonnant et en sous-échantillonnant. Donc, si vous avez moins de données de l’un des capteurs, vous pouvez suréchantillonner à partir des données que vous avez. vous aurez donc un échantillon représentatif.
Données en double
Si vous collectez des données, elles peuvent être en double. Si les données peuvent être signalées comme doublons, problème relativement facile à résoudre en supprimant simplement les données avant de les alimenter dans votre modèle.
Mais le monde n’est pas si simple, il peut être difficile d’identifier les doublons dans certaines applications comme le streaming en temps réel. Vous pouvez simplement vivre avec et en rendre compte.
Les procédures de nettoyage des données peuvent aider à atténuer considérablement
– Données manquantes
– Valeurs aberrantes
C’est ce dont nous parlerons dans la partie 2. Alors, restez à l’écoute