Có, ma trận hiệp phương sai của tất cả các biến - giải thích và phản hồi - chứa thông tin cần thiết để tìm tất cả các hệ số, với điều kiện là một thuật ngữ chặn (không đổi) được đưa vào mô hình. (Mặc dù hiệp phương sai không cung cấp thông tin về thuật ngữ không đổi, nhưng nó có thể được tìm thấy từ các phương tiện của dữ liệu.)
Phân tích
Hãy để các dữ liệu cho các biến giải thích được sắp xếp như vectơ cột chiều và biến phản ứng là vector cột , được coi là một thực hiện của một biến ngẫu nhiên . Các ước lượng bình phương nhỏ nhất bình thường của các hệ số trong mô hìnhx 1 , x 2 , ... , x p y Y βnx1,x2, ...,xpyYβ^
E(Y) =α+Xβ
thu được bằng cách tập hợp các vectơ cột thành một mảng và giải hệ phương trình tuyến tínhX 0 = ( 1 , 1 , Hoài , 1 ) ′ , X 1 , Rắc , X p n × p + 1 Xp + 1X0= ( 1 , 1 , ... , 1)',X1, ... ,Xpn×p+1X
X′Xβ^=X′y.
Nó tương đương với hệ thống
1nX'Xβ^= 1nX'y.
Loại bỏ Gaussian sẽ giải quyết hệ thống này. Nó tiến hành bằng cách nối ma trận và -vector vào mảng và giảm hàng. 1p + 1 × p + 1p+111nX'Xp + 1p+1×p+2A1nX'yp + 1 × p + 2Một
Bước đầu tiên sẽ kiểm tra . Nhận thấy điều này là khác không, nó tiến hành trừ các bội số thích hợp của hàng đầu tiên của khỏi các hàng còn lại để loại bỏ các mục còn lại trong cột đầu tiên. Các bội số này sẽ là và số bị trừ khỏi mục sẽ bằng . Đây chỉ là công thức cho hiệp phương sai của và . Hơn nữa, số còn lại ở vị trí bằngA11n( X'X)11= 1nX'0X0= 1MộtAi+1,j+1=X ′ i Xj ¯ X i ¯ X jXiXji+1,p+211nX'0Xtôi= X¯¯¯¯tôiMộti + 1 , j + 1= X'tôiXjX¯¯¯¯tôiX¯¯¯¯jXtôiXji + 1 , p + 2 Xiy1nX'tôiy- Xtôi¯¯¯¯¯¯y¯¯¯, hiệp phương sai của với .Xtôiy
Do đó, sau bước đầu tiên loại bỏ Gaussian, hệ thống được rút gọn để giải quyết
Cβ^= ( Cov ( Xtôi, y) )'
và rõ ràng - vì tất cả các hệ số là hiệp phương sai - giải pháp đó có thể được tìm thấy từ ma trận hiệp phương sai của tất cả các biến.
(Khi không thể đảo ngược, giải pháp có thể được viết . Các công thức được đưa ra trong câu hỏi là những trường hợp đặc biệt này khi và Viết ra các công thức như vậy một cách rõ ràng sẽ ngày càng trở nên phức tạp hơn khi phát triển. Hơn nữa, chúng kém hơn về tính toán số, được thực hiện tốt nhất bằng cách giải hệ phương trình thay vì đảo ngược ma trận )C - 1 ( Cov ( X i , y ) ) ′ p = 1 p = 2 p CCC- 1( Cov ( Xtôi, y) )'p = 1p = 2pC
Thuật ngữ không đổi sẽ là sự khác biệt giữa giá trị trung bình của và giá trị trung bình được dự đoán từ các ước tính, .X βyXβ^
Thí dụ
Để minh họa, R
đoạn mã sau tạo ra một số dữ liệu, tính toán hiệp phương sai của chúng và thu được ước tính hệ số bình phương nhỏ nhất chỉ từ thông tin đó. Nó so sánh chúng với các ước tính thu được từ công cụ ước lượng bình phương nhỏ nhất lm
.
#
# 1. Generate some data.
#
n <- 10 # Data set size
p <- 2 # Number of regressors
set.seed(17)
z <- matrix(rnorm(n*(p+1)), nrow=n, dimnames=list(NULL, paste0("x", 1:(p+1))))
y <- z[, p+1]
x <- z[, -(p+1), drop=FALSE];
#
# 2. Find the OLS coefficients from the covariances only.
#
a <- cov(x)
b <- cov(x,y)
beta.hat <- solve(a, b)[, 1] # Coefficients from the covariance matrix
#
# 2a. Find the intercept from the means and coefficients.
#
y.bar <- mean(y)
x.bar <- colMeans(x)
intercept <- y.bar - x.bar %*% beta.hat
Đầu ra cho thấy sự thỏa thuận giữa hai phương pháp:
(rbind(`From covariances` = c(`(Intercept)`=intercept, beta.hat),
`From data via OLS` = coef(lm(y ~ x))))
(Intercept) x1 x2
From covariances 0.946155 -0.424551 -1.006675
From data via OLS 0.946155 -0.424551 -1.006675