Vielleicht bin ich nur müde, aber ich habe Probleme, den Forward Stagewise Regression-Algorithmus zu verstehen. Aus "Elemente des statistischen Lernens" Seite 60:
Die vorwärts-stufenweise Regression (FS) ist noch stärker eingeschränkt als die vorwärts-schrittweise Regression. Es beginnt wie eine schrittweise Vorwärtsregression mit einem Achsenabschnitt von [dem Mittelwert von] y und zentrierten Prädiktoren, deren Koeffizienten anfangs alle 0 sind.
Bei jedem Schritt identifiziert der Algorithmus die Variable, die am meisten mit dem aktuellen Residuum korreliert. Anschließend wird der einfache lineare Regressionskoeffizient des Residuums für diese ausgewählte Variable berechnet und dann zum aktuellen Koeffizienten für diese Variable addiert. Dies wird fortgesetzt, bis keine der Variablen mit den Residuen korreliert ist - dh die kleinste Quadrate passt, wenn N> p ist.
Also, ist das der Algorithmus ?:
b[1]=mean(y)
b[2..n]=0
r=(y-X*b)
index, maxCorr = max(transpose(r)*X)
while(abs(maxCorr) > someThreshold)
b[index]=b[index]+regress(r,X[1..n][index])
r=(y-X*b)
index, maxCorr = max(transpose(r)*X)
Wobei b ein Spaltenvektor der Koeffizienten ist, X eine Matrix von Eingaben ist und y ein Spaltenvektor von Ausgaben ist. Dh y = X * b + Fehler.
Fragen, weil dieser Algorithmus nur einige Koeffizienten ungleich Null für den Datensatz angibt, mit dem ich ihn teste (mit einem Schwellenwert von 0,0001), und die Vorhersagegenauigkeit ist überhaupt nicht sehr gut.
quelle