Bình phương tối thiểu bình thường (OLS)
Bình phương tối thiểu thông thường (OLS) là đặc điểm của thống kê. Nó đưa ra một cách để có kết quả phức tạp và giải thích hành vi (như xu hướng) bằng cách sử dụng tuyến tính. Ứng dụng đơn giản nhất của OLS là phù hợp với một dòng.
Dư
Dư lượng là các lỗi có thể quan sát được từ các hệ số ước tính. Theo một nghĩa nào đó, phần dư là ước tính của các lỗi.
Hãy giải thích những điều sử dụng R
mã:
Đầu tiên phù hợp với một dòng dữ liệu kim cương nhỏ nhất bình thường trong UsingR
thư viện:
library(UsingR)
data("diamond")
y <- diamond$price
x <- diamond$carat
n <- length(y)
olsline <- lm(y ~ x)
plot(x, y,
main ="Odinary Least square line",
xlab = "Mass (carats)",
ylab = "Price (SIN $)",
bg = "lightblue",
col = "black", cex = 2, pch = 21,frame = FALSE)
abline(olsline, lwd = 2)
Bây giờ, chúng ta hãy tính tổng số dư còn lại của bình phương: Trong R
bạn có thể dễ dàng tính toán phần dư như resid(olsline)
, để trực quan hóa, hãy tính toán thủ công:
# The residuals from R method
e <- resid(olsline)
## Obtain the residuals manually, get the predicated Ys first
yhat <- predict(olsline)
# The residuals are y -yhat, Let's check by comparing this with R's build in resid function
ce <- y - yhat
max(abs(e-ce))
## Let's do it again hard coding the calculation of Yhat
max(abs(e- (y - coef(olsline)[1] - coef(olsline)[2] * x)))
# Residuals arethe signed length of the red lines
plot(diamond$carat, diamond$price,
main ="Residuals sum of (actual Y - predicted Y)^2",
xlab = "Mass (carats)",
ylab = "Price (SIN $)",
bg = "lightblue",
col = "black", cex = 2, pch = 21,frame = FALSE)
abline(olsline, lwd = 2)
for (i in 1 : n)
lines(c(x[i], x[i]), c(y[i], yhat[i]), col = "red" , lwd = 2)
Hy vọng những hình ảnh này sẽ xóa tan nghi ngờ của bạn giữa RSS & OLS