Warum weicht der von der linearen Anpassung zurückgegebene RMSE von sqrt(sum(residuals^2)/n) ab?Ich bin verwirrt über den quadratischen Mittelwertfehler, der in der „Zusammenfassung der Anpassung“ in der Plattform „Linear Fit“ gemeldet wird.
x = [1.309, 1.471, 1.49, 1.565, 1.611, 1.68];
y = [2.138, 3.421, 3.597, 4.34, 4.882, 5.66];
{Estimates, Std_Error, Diagnostics} = Linear Regression( y, x, <<PRINTTOLOG></PRINTTOLOG>Das Ergebnis der letzten Zeile:
rmse_lin_reg = 0.111508840972607;
rmse_lin_fit = 0.136569881096024;
Was ist hier falsch?
Danke
Erweiterte statistische ModellierungInhaltsorganisationDatenexploration und -visualisierungMassenanpassungErgebnisse teilen und kommunizierenBetreff: Warum weicht der von der linearen Anpassung zurückgegebene RMSE von sqrt(sum(residuals^2)/n) ab?Hallo @ragnarl ,
Ich kann sehen, wie widersprüchlich das erscheint! Bei allen mittleren Quadraten wird die Summe der quadratischen Abweichungen durch ihre Freiheitsgrade dividiert. In Ihrer Formel, die mit den Ergebnissen von LinearRegression() arbeitet, scheinen Sie durch n und nicht durch df zu dividieren.
rmse_lin_reg=sqrt(sum((z-y)^2)/nrows(y));
Die Freiheitsgrade für den mittleren quadratischen Fehler in einer einfachen linearen Regression betragen n-2 (1 df geht durch die Schätzung des Achsenabschnitts verloren und 1 weiterer geht durch die Schätzung der Steigung von x verloren). Wenn Sie Ihr Skript wie folgt anpassen, müssen Sie Folgendes tun rmse_lin_reg=sqrt(sum((zy)^2)/(nrows(y)-2)) Sie finden den gleichen Wert für MSE (und damit RMSE).
Ich hoffe das hilft!
@julianisch
x = [1.309, 1.471, 1.49, 1.565, 1.611, 1.68];
y = [2.138, 3.421, 3.597, 4.34, 4.882, 5.66];
{Estimates, Std_Error, Diagnostics} = Linear Regression( y, x, <<PRINTTOLOG></PRINTTOLOG>
kehrt zurück
rmse_lin_reg = 0.13656988109602;
rmse_lin_fit = 0.13656988109602;