J'étudie le Data Scaling, et en particulier la méthode de Standardisation. J'ai compris les mathématiques derrière cela, mais je ne comprends pas pourquoi il est important de donner aux caractéristiques une moyenne nulle et une variance unitaire.
Peux tu m'expliquer ?
Réponses:
La question de savoir si et pourquoi c'est important dépend du contexte.
Pour les arbres de décision amplifiés par gradient, par exemple, ce n'est pas important - ces algorithmes ML "ne se soucient pas" des transformations monotones des données; ils cherchent juste des points pour le diviser.
Pour les prédicteurs linéaires, par exemple, la mise à l'échelle peut améliorer l'interprétabilité des résultats. Si vous souhaitez considérer l'ampleur des coefficients comme une indication de la façon dont une caractéristique affecte le résultat, alors les caractéristiques doivent être mises à l'échelle d'une manière ou d'une autre dans la même zone.
Pour certains prédicteurs, en particulier les NN, la mise à l'échelle, et en particulier la mise à l'échelle vers une plage particulière, peut être importante pour des raisons techniques. Certaines couches utilisent des fonctions qui ne changent effectivement que dans une certaine zone (similaire à la famille de fonctions hyperbolique ), et si les caractéristiques sont trop hors de la plage, une saturation peut se produire. Si cela se produit, les dérivées numériques fonctionneront mal et l'algorithme risque de ne pas pouvoir converger vers un bon point.
la source
En cas de moyenne nulle, c'est parce que certains modèles d'apprentissage automatique n'incluent pas de terme de biais dans leur représentation, nous devons donc déplacer les données autour de l'origine avant de les alimenter à l'algorithme pour compenser le manque de terme de biais. En cas de variance unitaire, c'est parce que de nombreux algorithmes d'apprentissage automatique utilisent une sorte de distance (par exemple euclidienne) pour décider ou prédire. Si une entité particulière a des valeurs larges (c'est-à-dire une grande variance), la distance sera fortement affectée par cette entité et l'effet des autres entités sera ignoré. Soit dit en passant, certains algorithmes d'optimisation (y compris la descente de gradient) ont de meilleures performances lorsque les données sont normalisées.
la source
Cependant, on peut émettre un doute ici que même si les caractéristiques ne sont pas normalisées, les poids qui lui sont attribués pendant l'apprentissage peuvent aider l'ensemble de données à converger vers la sortie attendue pendant l'entraînement. Le problème, c'est qu'il faudra très longtemps pour s'entraîner et produire des résultats.
Par conséquent, il est suggéré d'amener toutes les fonctionnalités à la même échelle suffisamment petites pour pouvoir s'entraîner facilement. Le lien ci-dessous traite également d'un concept similaire. /stats/41704/how-and-why-do-normalization-and-feature-scaling-work
la source