Quand supprimer les variables corrélées

11

Quelqu'un peut-il suggérer quelle est la bonne étape pour supprimer les variables corrélées avant l'ingénierie des fonctionnalités ou après l'ingénierie des fonctionnalités?

bp89
la source

Réponses:

8

Vous ne souhaitez pas supprimer toutes les variables corrélées. Ce n'est que lorsque la corrélation est si forte qu'ils ne véhiculent pas d'informations supplémentaires. Cela dépend à la fois de la force de la corrélation, de la quantité de données dont vous disposez et de la question de savoir si une petite différence entre les variables corrélées vous dit quelque chose sur le résultat, après tout.

Les deux premiers que vous pouvez dire avant de faire n'importe quel modèle, le dernier non. Ainsi, il peut être très raisonnable de supprimer des variables basées sur la combinaison des deux premières considérations (c.-à-d. Même si les variables supplémentaires peuvent en principe contenir des informations utiles, vous ne seriez pas en mesure de le dire étant donné la force de la corrélation et la quantité de données vous avez) avant de faire toute modélisation / ingénierie de fonctionnalités. Le dernier point ne peut vraiment être évalué qu'après avoir effectué une modélisation.

Björn
la source
2

Bizarre que personne d'autre n'ait mentionné l' interprétabilité .

Si vous ne vous préoccupez que des performances , il est inutile de supprimer deux variables corrélées, sauf si corrélation = 1 ou -1, auquel cas l'une des variables est redondante.

Mais si vous êtes préoccupé par l'interprétabilité, il pourrait être judicieux de supprimer l'une des variables, même si la corrélation est faible. Cela est particulièrement vrai pour les modèles linéaires. L'une des hypothèses de la régression linéaire est le manque de multicolinéarité parfaite dans les prédicteurs.

Si A est corrélé avec B, alors vous ne pouvez pas interpréter les coefficients ni de A ni de B. Pour voir pourquoi, imaginez le cas extrême où A = B (corrélation parfaite). Ensuite, le modèle y = 100 * A + 50 * B est le même que le modèle y = 5 * A + 10 * B ou y = -2000 * A + 4000 * B. Il y a de multiples équilibres dans les solutions possibles au problème de minimisation des moindres carrés, donc vous ne pouvez pas "faire confiance" non plus.

Des choses similaires peuvent se produire avec d'autres modèles. Par exemple, si A est très corrélé avec B, alors si l'arbre de décision choisit A ​​le double de fois comme B, alors vous ne pouvez pas dire que A est plus important que B. Si vous recyclez le modèle, l'inverse aurait pu se produire.

Ricardo Cruz
la source
2

Vous devriez envisager de vérifier le VIF (Variance Inflation Factor). Essayez de supprimer des fonctionnalités avec un VIF plus élevé. Généralement, il est préférable que VIF soit inférieur à 10.

Siddhi Kiran Bajracharya
la source
Ceci est assez similaire à ma réponse dans datascience.stackexchange.com/questions/36634/…
Siddhi Kiran Bajracharya
1

Ça n'a pas d'importance. Mais pour l'efficacité avant l'ingénierie des fonctionnalités.

Mohit Motwani
la source
1

Déterminez la covariance et effectuez votre travail initial avec l'ensemble le plus élevé.

Richard Careaga
la source