Comment traiter les prédicteurs catégoriques dans LASSO

17

Je gère un LASSO qui a des prédicteurs de variables catégoriques et des prédicteurs continus. J'ai une question sur les variables catégorielles. La première étape que je comprends est de les diviser en deux nuls, de les normaliser pour une pénalisation équitable, puis de régresser. Plusieurs options se présentent pour traiter les variables fictives:

  1. Incluez tous les variables, sauf un, pour chaque facteur, en laissant celui-ci comme niveau de référence. L'interprétation d'un coefficient fictif est relative à la catégorie "référence" exclue. L'ordonnée à l'origine est maintenant la réponse moyenne pour la catégorie de référence.

  2. Regroupez les variables dans chaque facteur afin qu'elles soient toutes exclues ou toutes sauf une incluses. Je pense que c'est ce que @Glen_b suggère ici :

    Normalement, oui, vous gardez tous vos facteurs ensemble. Il existe plusieurs packages R qui peuvent le faire, y compris glmnet

  3. Incluez tous les niveaux, comme suggéré par @Andrew M ici :

    Vous pouvez également vouloir changer la fonction de contraste par défaut, qui par défaut omet un niveau de chaque facteur (codage de traitement). Mais à cause de la pénalité du lasso, celle-ci n'est plus nécessaire pour l'identifiabilité et rend en fait plus compliquée l'interprétation des variables sélectionnées. Pour ce faire, définissez

    contr.Dummy <- function(contrasts, ...){
       conT <- contr.treatment(contrasts=FALSE, ...)
       conT
    }
    options(contrasts=c(ordered='contr.Dummy', unordered='contr.Dummy'))
    

    Maintenant, quels que soient les niveaux d'un facteur sélectionnés, vous pouvez penser que cela suggère que ces niveaux spécifiques importent, par rapport à tous les niveaux omis. Dans l'apprentissage automatique, j'ai vu ce codage appelé codage à chaud.

Des questions:

  1. Quelle est l'interprétation de l' ordonnée à l'origine et des coefficients sous chacune de ces approches?
  2. Quelles sont les considérations impliquées dans la sélection de l'un d'entre eux?
  3. Devons-nous redimensionner les coefficients fictifs et les interpréter ensuite comme un changement du passage de l'actuel à l'actif?
Hatchepsout
la source

Réponses:

6

β

En réponse à vos questions spécifiques:

(1) LASSO est une méthode d'estimation des coefficients, mais les coefficients eux-mêmes sont définis par l'équation initiale du modèle pour votre régression. À ce titre, l'interprétation des coefficients est la même que dans une régression linéaire standard; ils représentent les taux de variation de la réponse attendue en raison de changements dans les variables explicatives.

(2) La littérature ci-dessus recommande de regrouper les variables, mais de conserver une catégorie de référence. Cela suppose implicitement que vous comparez la présence d'une variable catégorielle avec un modèle qui la supprime mais qui a toujours un terme d'interception.

(3) Comme indiqué ci-dessus, la méthode d'estimation n'affecte pas l'interprétation des coefficients, qui sont fixés par l'énoncé du modèle.

Réintégrer Monica
la source
1
Hatchepsout: Si vous avez trouvé cette réponse utile, veuillez envisager de voter et / ou de l' accepter . Sinon, pourriez-vous indiquer ce qui manque encore?
S.Kolassa - Rétablir Monica
@StephanKolassa fait
Hatshepsut