Denken Sie daran, dass die Gratregression Koeffizienten nicht auf Null setzen kann. Sie schließen also entweder alle oder keine Koeffizienten in das Modell ein. Im Gegensatz dazu führt der LASSO sowohl die Parameterschrumpfung als auch die Variablenauswahl automatisch durch. Wenn einige Ihrer Kovariaten stark korreliert sind, sollten Sie sich das elastische Netz [3] anstelle des LASSO ansehen.
Ich würde persönlich empfehlen, die nicht negative Garotte (NNG) [1] zu verwenden, da sie in Bezug auf Schätzung und Variablenauswahl konsistent ist [2]. Im Gegensatz zu LASSO und Gratregression erfordert NNG eine anfängliche Schätzung, die dann zum Ursprung hin geschrumpft wird. In der Originalarbeit empfiehlt Breiman die Lösung der kleinsten Fehlerquadrate für die anfängliche Schätzung (Sie können jedoch die Suche auch von einer Gratregressionslösung aus starten und den Strafparameter mit etwas wie GCV auswählen).
In Bezug auf die verfügbare Software habe ich das ursprüngliche NNG in MATLAB implementiert (basierend auf Breimans ursprünglichem FORTRAN-Code). Sie können es herunterladen von:
http://www.emakalic.org/blog/wp-content/uploads/2010/04/nngarotte.zip
Übrigens, wenn Sie eine Bayes'sche Lösung bevorzugen, lesen Sie [4,5].
Verweise:
[1] Breiman, L. Better Subset Regression Using The Non-Negative Garrote Technometrics, 1995, 37, 373-384
[2] Yuan, M. & Lin, Y. Zum nicht-negativen Garrotte Estimator Journal der Royal Statistical Society (Reihe B), 2007, 69, 143-161
[3] Zou, H. & Hastie, T. Regularisierung und variable Auswahl über das elastische Netz Journal der Royal Statistical Society (Reihe B), 2005, 67, 301-320
[4] Park, T. & Casella, G., Bayesian Lasso Journal der American Statistical Association, 2008, 103, 681-686
[5] Kyung, M .; Gill, J .; M. Ghosh & G. Casella, Penalized Regression, Standard Errors und Bayesian Lassos Bayesian Analysis, 2010, 5, 369-412