Phục hồi các hệ số thô và phương sai từ hồi quy đa thức trực giao


14

Dường như nếu tôi có một mô hình hồi quy như yiβ0+β1xi+β2xi2+β3xi3Tôi có thể điều chỉnh một đa thức thô và nhận được kết quả không đáng tin cậy hoặc phù hợp với đa thức trực giao và nhận các hệ số không có giải thích vật lý trực tiếp (ví dụ: tôi không thể sử dụng chúng để tìm vị trí của điểm cực trị trên thang đo ban đầu). Có vẻ như tôi sẽ có thể có được cả hai thế giới tốt nhất và có thể biến đổi các hệ số trực giao được trang bị và phương sai của chúng trở lại quy mô thô. Tôi đã tham gia một khóa học sau đại học về hồi quy tuyến tính ứng dụng (sử dụng Kutner, 5ed) và tôi đã xem qua chương hồi quy đa thức trong Draper (3ed, được đề cập bởi Kutner) nhưng không tìm thấy thảo luận nào về cách thực hiện. Văn bản trợ giúp chopoly()Hàm trong R thì không. Tôi cũng không tìm thấy bất cứ điều gì trong tìm kiếm web của tôi, bao gồm cả ở đây. Là tái cấu trúc các hệ số thô (và thu được phương sai của chúng) từ các hệ số phù hợp với đa thức trực giao ...

  1. không thể làm được và tôi đang lãng phí thời gian
  2. có thể có thể nhưng không biết làm thế nào trong trường hợp chung.
  3. có thể nhưng không được thảo luận vì "ai sẽ muốn?"
  4. có thể nhưng không được thảo luận vì "nó rõ ràng".

Nếu câu trả lời là 3 hoặc 4, tôi sẽ rất biết ơn nếu ai đó có đủ kiên nhẫn để giải thích làm thế nào để làm điều này hoặc chỉ ra một nguồn làm như vậy. Nếu là 1 hoặc 2, tôi vẫn tò mò muốn biết chướng ngại vật là gì. Cảm ơn bạn rất nhiều vì đã đọc nó, và tôi xin lỗi trước nếu tôi nhìn thấy một cái gì đó rõ ràng.


1
Tôi không hiểu điểm của bạn. x, x 2 và x 3 không trực giao. Do đó chúng có mối tương quan và các tham số hồi quy có thể không ổn định, nhưng nó không tự động là trường hợp không đáng tin cậy. Chuyển đổi sang đa thức nhận thức có thể đáng tin cậy hơn. Nhưng điều gì làm cho hệ số của các lũy thừa ban đầu của x trở nên dễ hiểu hơn các hệ số của đa thức trực giao? Nếu x là biến duy nhất như trong mô hình y = a + bx thì y = yi - yi - 1 = b∆x và b có thể hiểu là sự thay đổi của y trên mỗi đơn vị thay đổi trong x. Nhưng với quyền hạn liên quan đến giải thích như vậy là mất. 23
Michael R. Chernick

Tôi đã sử dụng một mô hình với chỉ x là biến để đơn giản, nhưng thực tế tôi đang so sánh các đường cong giữa các nhóm điều trị. Vì vậy, tùy thuộc vào thuật ngữ nào có ý nghĩa và độ lớn của chúng, tôi có thể diễn giải chúng - ví dụ: sự thay đổi tổng thể lên / xuống hoặc độ dốc ban đầu lớn hơn / nhỏ hơn. Ngoài ra, như câu hỏi của tôi nói, một so sánh tự nhiên để thực hiện giữa các đường cong là vị trí của cực đại / cực tiểu, dễ giải thích hơn nếu nó ở quy mô ban đầu. Vì vậy, phiếu bầu của bạn là cho sự lựa chọn 3, tôi lấy nó?
F1r3br4

Không, tôi chưa biết liệu có thể hay không. Tôi chỉ hiểu lý do tại sao bạn muốn làm điều đó.
Michael R. Chernick

4
Chà, lưu ý rằng mô hình phù hợp với đa thức trực giao sẽ có cùng độ chính xác (nghĩa là cùng , cùng các giá trị được trang bị, v.v.) như mô hình phù hợp với các điều khoản đa thức thô. Vì vậy, nếu bạn đang tìm cách liên hệ lại dữ liệu gốc này với dữ liệu gốc, bạn có thể xem xét các hệ số cho các số hạng thô nhưng sử dụng các đa thức trực giao để suy luận các thuật ngữ riêng lẻ theo cách "tính" sự phụ thuộc giữa chúng . R2
Macro

1
Hóa ra, các spline hình khối và B-splines đều nằm trong một lớp, và là tốt nhất của hai thế giới.
Carl

Câu trả lời:


6

Vâng nó có thể.

Đặt là các phần không hằng của các đa thức trực giao được tính từ x i . (Mỗi là một vectơ cột.) Áp dụng các giá trị này so với x i phải cho một sự phù hợp hoàn hảo. Bạn có thể thực hiện điều này với phần mềm ngay cả khi nó không ghi lại các quy trình của nó để tính các đa thức trực giao. Hồi quy của z j mang lại hệ số γ i j choz1,z2,z3xixizjγij

zij=γj0+xiγj1+xi2γj2+xi3γj3.

Kết quả là một ma trận Γ rằng, khi nhân quyền, chuyển đổi ma trận thiết kế X = ( 1 ; x ; x 2 ; x 3 ) vào Z = ( 1 ; z 1 ; z 2 ; z 3 ) = X Γ .4×4ΓX=(1;x;x2;x3)

(1)Z=(1;z1;z2;z3)=XΓ.

Sau khi lắp mô hình

E(Y)=Zβ

và lấy hệ số ước lượng β (một vector cột phần tử bốn), bạn có thể thay thế ( 1 ) để có đượcβ^(1)

Y^=Zβ^=(XΓ)β^=X(Γβ^).

Do đó là vector hệ số ước tính cho mô hình về mặt bản gốc (thô, un-orthogonalized) quyền hạn của x .Γβ^x

Đoạn Rmã sau minh họa các quy trình này và kiểm tra chúng bằng dữ liệu tổng hợp.

n <- 10        # Number of observations
d <- 3         # Degree
#
# Synthesize a regressor, its powers, and orthogonal polynomials thereof.
#
x <- rnorm(n)
x.p <- outer(x, 0:d, `^`); colnames(x.p) <- c("Intercept", paste0("x.", 1:d))
z <- poly(x, d)
#
# Compute the orthogonal polynomials in terms of the powers via OLS.
#
xform <- lm(cbind(1, z) ~ x.p-1)
gamma <- coef(xform)
#
# Verify the transformation: all components should be tiny, certainly
# infinitesimal compared to 1.
#
if (!all.equal(as.vector(1 + crossprod(x.p %*% gamma - cbind(1,z)) - 1), 
    rep(0, (d+1)^2)))
  warning("Transformation is inaccurate.")
#
# Fit the model with orthogonal polynomials.
#
y <- x + rnorm(n)
fit <- lm(y ~ z)
#summary(fit)
#
# As a check, fit the model with raw powers.
#
fit.p <- lm(y ~ .-1, data.frame(x.p))
#summary(fit.p)
#
# Compare the results.
#
(rbind(Computed=as.vector(gamma %*% coef(fit)), Fit=coef(fit.p)))

if (!all.equal(as.vector(gamma %*% coef(fit)), as.vector(coef(fit.p))))
  warning("Results were not the same.")

Γ

110161

Hai năm sau ... @whuber, có thể mở rộng điều này lên 95% TCTD của các hệ số không?
user2602640

@ user2602640 Có. Bạn cần phải trích xuất các ma trận sai-hiệp phương sai của các hệ số (sử dụng vcovtrong R) để chuyển đổi chênh lệch tính trong một cơ sở để chênh lệch trong cơ sở mới, và sau đó tính toán các TCTD bằng tay theo cách thông thường.
whuber

@whuber Tôi đã theo dõi bình luận của bạn khoảng nửa chừng, sau đó mất bạn hoàn toàn ... bất kỳ cơ hội nào bạn sẽ thương hại cho một nhà sinh học bị thách thức toán học và viết nó ra bằng mã?
user2602640
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.