Ich habe bereits eine Vorstellung von den Vor- und Nachteilen der Gratregression und des LASSO.
Für das LASSO ergibt der L1-Strafausdruck einen Vektor mit geringem Koeffizienten, der als Merkmalsauswahlmethode angesehen werden kann. Es gibt jedoch einige Einschränkungen für den LASSO. Wenn die Merkmale eine hohe Korrelation aufweisen, wählt der LASSO nur eines davon aus. Zusätzlich wählt der LASSO bei Problemen mit > höchstens Parameter aus ( und sind die Anzahl der Beobachtungen bzw. Parameter). Diese machen den LASSO empirisch zu einer suboptimalen Methode hinsichtlich der Vorhersagbarkeit im Vergleich zur Gratregression.
Für die Gratregression bietet es im Allgemeinen eine bessere Vorhersagbarkeit. Die Interpretierbarkeit ist jedoch nicht so gut wie beim LASSO.
Die obige Erklärung findet sich häufig in Lehrbüchern zum maschinellen Lernen / Data Mining. Ich bin jedoch immer noch verwirrt über zwei Dinge:
Wenn wir den Merkmalsbereich normalisieren (z. B. zwischen 0 und 1 oder mit dem Mittelwert Null und der Einheitsvarianz) und die Gratregression ausführen, können wir immer noch eine Vorstellung von der Wichtigkeit des Merkmals haben, indem wir die absoluten Werte der Koeffizienten sortieren (das wichtigste Merkmal hat die höchster absoluter Wert der Koeffizienten). Obwohl wir Features nicht explizit auswählen, geht die Interpretierbarkeit mithilfe der Ridge-Regression nicht verloren. Gleichzeitig können wir immer noch eine hohe Vorhersagekraft erzielen. Warum brauchen wir dann den LASSO? Vermisse ich hier etwas?
Wird der LASSO aufgrund seiner Funktionsauswahl bevorzugt? Nach meinem Verständnis sind die Gründe für die Auswahl von Features die Fähigkeit zur Verallgemeinerung und die einfache Berechnung.
Um die Berechnung zu vereinfachen, möchten wir nicht alle 1 Million Features in unser Modell einspeisen, wenn wir einige NLP-Aufgaben ausführen. Daher lassen wir zuerst einige offensichtlich nutzlose Features fallen, um die Rechenkosten zu senken. Für den LASSO können wir jedoch das Ergebnis der Merkmalsauswahl (den spärlichen Vektor) erst kennen, nachdem wir alle Daten in unser Modell eingespeist haben. Daher profitieren wir vom LASSO nicht, wenn es darum geht, die Rechenkosten zu senken. Wir können die Vorhersage nur ein wenig schneller machen, da wir jetzt nur die Teilmenge der Merkmale (z. B. 500 von 1 Million) in unser Modell einspeisen, um vorhergesagte Ergebnisse zu generieren.
Wenn der LASSO wegen seiner Fähigkeit zur Verallgemeinerung bevorzugt wird, können wir das gleiche Ziel auch mithilfe der Gratregression (oder einer anderen Art der Regularisierung) erreichen. Warum brauchen wir wieder LASSO (oder elastische Netze)? Warum können wir uns nicht einfach an die Gratregression halten?
Könnte jemand bitte etwas Licht ins Dunkel bringen? Vielen Dank!