Ich versuche, ein reduziertes Modell zu erstellen, um viele abhängige Variablen (DV) (~ 450) vorherzusagen, die stark korreliert sind.
Meine unabhängigen Variablen (IV) sind ebenfalls zahlreich (~ 2000) und stark korreliert.
Wenn ich das Lasso verwende, um ein reduziertes Modell für jede Ausgabe einzeln auszuwählen, wird nicht garantiert, dass ich dieselbe Teilmenge unabhängiger Variablen erhalte, wenn ich jede abhängige Variable durchlaufe.
Gibt es eine multivariate lineare Regression, die das Lasso in R verwendet?
Dies ist kein Gruppen-Lasso. Gruppe Lasso gruppiert die IV. Ich möchte eine multivariate lineare Regression (dh der DV ist eine Matrix, kein Vektor von Skalaren), die auch Lasso implementiert. (Hinweis: Wie NRH betont, ist dies nicht der Fall. Gruppen-Lasso ist ein allgemeiner Begriff, der Strategien umfasst, die die IV gruppieren, aber auch Strategien, die andere Parameter wie die DV gruppieren.)
Ich habe dieses Papier gefunden, das in etwas namens Sparse Overlapping Sets Lasso gerät
Hier ist ein Code, der eine multivariate lineare Regression ausführt
> dim(target)
[1] 6060 441
> dim(dictionary)
[1] 6060 2030
> fit = lm(target~dictionary)
Hier ist ein Code, der Lasso auf einem einzelnen DV macht
> fit = glmnet(dictionary, target[,1])
Und das möchte ich tun:
> fit = glmnet(dictionary, target)
Error in weighted.mean.default(y, weights) :
'x' and 'w' must have the same length
Auswählen von Funktionen, die auf ALLE Ziele gleichzeitig passen
glmnet
und hat eine gründliche Vignette.