Ridge Regression unterscheidet sich von OLS Regression sehr leicht. Mathematisch verwendet OLS Regression der FormelRidge Regression und OLS Regression in Matlab
dem der Ridge-Regression verwendet die Formel
Ich wollte Ridge-Regression verwenden Multikollinearität zu vermeiden, bekam aber wieder sehr seltsame Ergebnisse, die im Wesentlichen waren schlimmer als einfach mit regress(). Um in Matlab den Funktionskamm aufzurufen, muss man ein X, ein Y und einen Wert für k eingeben. Theoretisch sollten diese Gleichungen gleich sein, wenn k auf Null gesetzt ist; Aber wenn beide in meinem Code mit den gleichen Werten von X und Y wieder zurück aufgerufen werden, erhalte ich zwei sehr unterschiedliche Matrizen für B (siehe unten). Kann jemand erklären, warum das passieren würde?
b_ridge = ridge(Y_current,X, 0)
12.4525
9.0099
0.2808
-1.5426
-1.1107
b_regress = regress(Y_current,X)
3.5586
0.8805
0.1670
-0.3934
-0.8526
Ist es möglich, giv e uns eine Vorstellung von 'Y_current' und' X' sind? – edwinksl