J'ai implémenté la version GLMNET de filet élastique pour la régression linéaire avec un autre logiciel que R. J'ai comparé mes résultats avec la fonction R glmnet en mode lasso sur les données du diabète .
La sélection des variables est correcte lorsque l'on fait varier la valeur du paramètre (lambda) mais j'obtiens des valeurs de coefficients légèrement différentes. Pour cela et pour d'autres raisons, je pense que cela vient de l'interception dans la boucle de mise à jour, lorsque je calcule l'ajustement actuel, car je ne varie pas l'interception (que je considère comme la moyenne de la variable cible) dans l'ensemble de l'algorithme: as expliqué dans l'article de Trevor Hastie ( Chemins de régularisation pour les modèles linéaires généralisés via la descente de coordonnées , page 7, section 2.6):
l'ordonnée à l'origine n'est pas régularisée, [...] pour toutes les valeurs de [...] lambda [le paramètre de contrainte L1]
Mais malgré l'article, la fonction R glmnet fournit des valeurs différentes pour l'interception le long du chemin de régularisation (les différentes valeurs lambda). Quelqu'un a-t-il une idée de la façon dont les valeurs de l'interception sont calculées?