Nettoyage automatique des données


10

Un problème courant est que le ML est la mauvaise qualité des données: erreurs dans les valeurs des entités, instances mal classées, etc., etc.

Une façon de résoudre ce problème consiste à parcourir manuellement les données et à vérifier, mais existe-t-il d'autres techniques? (Je parie qu'il y en a!)

Quels sont les meilleurs et pourquoi?


Google Affiner vaut peut-être le coup d'œil.
Dimitriy V. Masterov

Réponses:


6

La réduction de dimensionnalité via quelque chose comme PCA serait utile pour avoir une idée du nombre de dimensions qui sont essentielles pour représenter vos données.

Pour vérifier les instances mal classées, vous pouvez effectuer un regroupement rudimentaire de k-means de vos données pour avoir une idée de la façon dont vos données brutes correspondraient aux catégories proposées. Bien qu'elle ne soit pas automatique, la visualisation à ce stade serait utile, car votre cerveau visuel est un puissant classificateur en soi.

En termes de données qui manquent carrément, les statistiques disposent déjà de nombreuses techniques pour faire face à cette situation, y compris l'imputation, en prenant des données de l'ensemble existant ou d'un autre ensemble pour combler les lacunes.


3
Le traçage des données est une vérification manuelle.
andreister

@andreister Je considère que la vérification point par point sur une feuille de calcul est une vérification manuelle, mais d'accord, je vois où vous en êtes.
jonsca

5

Vous ne pouvez pas vraiment retirer une personne bien informée de la boucle et vous attendre à des résultats raisonnables. Cela ne signifie pas que la personne doit examiner chaque élément individuellement, mais en fin de compte, il faut des connaissances réelles pour savoir si les résumés / graphiques de données sont raisonnables. (Par exemple: la variable A peut-elle être négative, la variable B peut-elle être plus grande que la variable A, ou y a-t-il 4 ou 5 choix pour la variable catégorielle C?)

Une fois que vous avez eu un regard humain compétent sur les données, vous pouvez probablement créer une série de règles que vous pourriez utiliser pour tester les données automatiquement. Le problème est que d'autres erreurs peuvent survenir auxquelles vous n'avez pas pensé. (Par exemple, une erreur de programmation dans le processus de collecte de données qui duplique la variable A en variable C.)


Très bonne réponse. Je voudrais seulement ajouter pour m'assurer que la syntaxe utilisée pour nettoyer les variables est conservée dans la documentation, avec des commentaires sinon des passages descriptifs sur la raison pour laquelle les choses ont été modifiées. :)
Michelle

1

Si vous savez que vos données ne sont pas assez bonnes, il est toujours bon de vérifier également les valeurs aberrantes. La plupart du temps, il y a des anomalies.

Si vous avez beaucoup de fonctionnalités, la réduction de dimensionnalité est un must. PCA est assez efficace pour cela.

Si vous avez des données manquantes, vous pouvez utiliser l'imputation ou l'interpolation, mais si vos besoins le permettent, le cas gagnant est d'utiliser le filtrage collaboratif.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.