Changement de covariance

Changement de covariance
La modification des distributions de diverses variables du train à tester est appelée le changement de données. Cela peut entraîner divers problèmes lors de la prévision des valeurs dans le modèle déployé. Le changement se présente sous une variété de formes. L'un des changements est le changement de covariance, qui se produit à l'intérieur des variables indépendantes des données de train et de test. Nous allons examiner le décalage des ensembles de données en détail, y compris ses explications, ses causes, son identification et son décalage covariant.

Quelles sont la variance et la covariance?

La dispersion des données est mesurée par variance. Il nous dit à quel point les données sont distribuées autour d'un certain nombre «vrai» ou «correct» (tendance centrale - dont une mesure est la moyenne des données. Dans l'analyse univariée, le terme variance est utilisé pour décrire le comportement d'une seule variable. La covariance est utilisée dans une analyse multivariée pour examiner le comportement conjoint de deux variables. Lorsque deux variables se déplacent dans la même direction, leur covariance est positive; C'est négatif quand ils se déplacent dans des directions opposées.

Qu'est-ce que le changement de données?

Lorsque la distribution de vos données de train et de test diffère, c'est connu sous le nom de décalage d'ensemble de données. Parce que le modèle a été formé sur une distribution et est maintenant utilisé pour prédire différentes distributions de données, ce qui entraîne une plus faible précision sur les données de test, en conséquence, vous devez toujours tester vos distributions de données de train et tester et les rendre aussi similaires que possibles.

Types de changements de données

  1. Modifications des variables ou caractéristiques indépendantes de l'ensemble de données: Décalage de covariable
  2. Modifications de la variable cible ou de la variable dépendante dans l'ensemble de données:
    Avant Changement de probabilité
  3. Changement dans la connexion entre la variable indépendante et cible sur les ensembles de données: Changement de concept

Pourquoi le changement de données se produit-il?

Biais de sélection des échantillons: La variation de la distribution est attribuable au fait que les données de formation ont été obtenues via une méthode biaisée et ne représente pas avec précision l'environnement opérationnel à partir de laquelle les données de test ont été obtenues.

Environnements non stationnaires: L'environnement d'entraînement diffère de l'environnement de test, soit le temps ou l'espace.

Qu'est-ce que le changement de covariable dans l'apprentissage automatique?

La différence entre la formation et les distributions d'ensembles de données de test est connue sous le nom de shift covariable. Cela signifie que la formation de l'ensemble de données est effectuée sur un type de distribution, et le modèle est utilisé pour prédire les données d'une autre distribution. Le changement de covariable peut indiquer que le modèle ne peut pas généraliser assez bien. La capacité d'un modèle à s'appliquer à de nouvelles données à l'aide de fonctionnalités acquises à partir de données de formation est connue sous le nom de généralisation. On pourrait penser qu'ils viendraient de la même distribution, mais ce n'est presque jamais le cas. En conséquence, vous devez tenir vos modèles à jour avec le dernier ensemble de train. Ceci est généralement causé par des changements dans l'état des variables latentes, qui pourraient être temporelles (y compris les changements dans la stationnarité d'un processus temporel), spatial ou moins évident. Il est également possible de le considérer comme une «région» inexplorée de l'univers de données. C'est un domaine de recherche fascinant car il peut être observé de diverses manières dans la nature. Nous pouvons y faire face dans l'espace de données par extrapolation créative, mais cela fonctionne rarement, et des alternatives comme la réestimation des variables latentes ou la tente de rendre une fonction de prédiction adaptative au domaine. Des circonstances spéciales, telles que des variables de temps stationnaires et, parfois, des données numériques pures, sont nécessaires pour voir si nous sommes vraiment sortis de notre espace covariable d'origine. Dans ce scénario, nous pouvons calculer l'espace de données de la coque convexe et voir si notre nouveau point de données tombe en dehors. Bien sûr, cela est coûteux en calcul, donc c'est rarement fait jusqu'à ce que nos prévisions soient incorrectes. Il est bien sûr dépendant de l'application.

Exemples de décalage covariant

La détection de la dérive covariée et d'autres types de dérive du modèle est une étape clé pour améliorer la précision du test du modèle. Voici quelques exemples de changement de covariable dans les cas d'utilisation de l'apprentissage automatique commun:

Classification d'image et reconnaissance faciale: Un modèle a peut-être été formé sur des images de quelques races de chiens, mais elle fonctionnera mal lorsqu'il sera utilisé pour prévoir des races qui n'étaient pas présentes dans les données de formation.

Détection et traduction de la parole: Un modèle peut être formé sur des haut-parleurs avec un accent particulier. Lorsqu'il est utilisé avec une parole avec de nouveaux dialectes ou accents, le modèle peut atteindre un niveau élevé de précision avec les données de formation, mais elle deviendra inexacte lorsqu'elle sera utilisée avec de nouveaux dialectes ou accents.

Soins de santé: Un modèle formé sur les données de formation accessibles des patients dans la vingtaine sera moins précis lors du dépistage des données des patients âgés de 60 ans et plus.

Gérer le changement de covariance

Nous supprimons les fonctionnalités classées comme dérivant dans notre stratégie pour gérer le changement de données. Cependant, la simple suppression des fonctionnalités pourrait entraîner une perte de données. Plus tard, nous pouvons simplement laisser tomber les fonctionnalités les moins importantes. En conséquence, les fonctionnalités d'une valeur de dérive supérieure à un certain seuil sont supprimées. Vous trouverez ci-dessous le code qui calcule et affiche l'importance de la fonctionnalité pour un modèle de régression linéaire.

de Sklearn.Les ensembles de données importent Make_Regression
De Skl
gagner.Linear_Model Import Lineargression
à partir de Matplotlib import pyplot
X, y = make_regression (n_sample = 2000, n_features = 15, n_informative = 5, random_state = 1)
modèle = linéaire ()
modèle.ajustement (x, y)
CoEF_Array = modèle.coef_
pour i, v en énumération (coef_array):
Imprimer ('fonctionnalité:% 0D, score:%.5f '% (i, v))
pypllot.bar ([x pour x dans la gamme (Len (coef_array))], coef_array)
pypllot.montrer()

Sortir

Caractéristique: 0, score: 0.00000
Caractéristique: 1, score: 0.00000
Caractéristique: 2, score: 51.76768
Caractéristique: 3, score: 0.00000
Caractéristique: 4, score: 0.00000
Caractéristique: 5, score: 0.00000
Caractéristique: 6, score: 77.69109
Caractéristique: 7, score: 0.00000
Caractéristique: 8, score: 41.53725
Caractéristique: 9, score: 0.00000
Caractéristique: 10, score: 14.19662
Caractéristique: 11, score: 80.91086
Caractéristique: 12, score: -0.00000
Caractéristique: 13, score: -0.00000
Caractéristique: 14, score: -0.00000

Conclusion

Cet article examine de nombreux concepts, raisons et remèdes liés au décalage de l'ensemble de données. Le changement de distribution de données de la formation aux données de test est appelé changement de données. Différentes conditions de formation et de test peuvent déplacer la covariance entre les variables indépendantes. Après avoir estimé l'importance des fonctionnalités, nous pouvons utiliser la chute des fonctionnalités pour éliminer le décalage de l'ensemble de données.