Làm thế nào để lấy công cụ ước lượng bình phương nhỏ nhất cho hồi quy tuyến tính bội?


30

Trong đơn giản tuyến tính trường hợp hồi quy y=β0+β1x , bạn có thể lấy được các ước lượng bình phương tối thiểu β 1 = Σ ( x i - ˉ x ) ( y i - ˉ y )β^1=(xix¯)(yiy¯)(xix¯)2 như vậy mà bạn không cần phải biết β 0để ước lượng β 1β^0β^1

Giả sử tôi có y=β1x1+β2x2 , làm thế nào để lấy được β 1 mà không ước lượng β 2 ? hoặc điều này là không thể?β^1β^2


1
Bạn có thể bỏ qua một trong các biến và vẫn có được ước tính không thiên vị của biến khác nếu chúng độc lập.
david25272

Câu trả lời:


51

Đạo hàm trong ký hiệu ma trận

Bắt đầu từ y=Xb+ϵ , mà thực sự chỉ là giống như

[y1y2yN]=[x11x12x1Kx21x22x2KxN1xN2xNK][b1b2bK]+[ϵ1ϵ2ϵN]

tất cả đi xuống để giảm thiểu :ee

ϵϵ=[e1e2eN][e1e2eN]=i=1Nei2

Vì vậy, giảm thiểu cho chúng ta:ee

e e = ( y - X b ) ( y - X b )minb ee=(yXb)(yXb)

e e = y y - 2 b X y + b X X bminb ee=yy2bXy+bXXb

(ee)b=2Xy+2XXb=!0

XXb=Xy

b=(XX)1Xy

Một điều toán học cuối cùng, điều kiện bậc hai ở mức tối thiểu đòi hỏi ma trận là xác định dương. Yêu cầu này được đáp ứng trong trường hợp X có thứ hạng đầy đủ.XXX

Đạo hàm chính xác hơn bao gồm tất cả các bước trong phòng lớn hơn có thể được tìm thấy trong http: // ec economtheoryblog.com/2015/02/19/ols_estimator/


3
Đạo hàm này chính xác là những gì tôi đang tìm kiếm. KHÔNG CÓ BƯỚC BỎ. Đáng ngạc nhiên là khó tìm như thế nào.
javadba 20/03/2015

1
Trong phương trình ma trận, không nên thứ hai *là a +? Ngoài ra, không nên là thay vì b N để có kích thước phù hợp? bKbN
Alexis Olson

Alexis Olson, bạn đã đúng! Tôi chỉnh sửa câu trả lời của tôi.
Andreas Dibiasi

13

Có thể ước tính chỉ một hệ số trong hồi quy bội mà không ước tính các hệ số khác.

β1x2yx1


Trong trường hợp hiện tại , hồi quy bội có thể được thực hiện bằng ba bước hồi quy thông thường:

  1. yx2y=αy,2x2+δ

    αy,2=iyix2iix2i2.
    δ=yαy,2x2.
    δyx2
  2. x1x2x1=α1,2x2+γ

    α1,2=ix1ix2iix2i2.
    γ=x1α1,2x2.
    γx1x2
  3. δγ

    β^1=iδiγiiγi2.
    δ=β^1γ+εβ^1δyx2γx1x2

β2β^0β^1εyx1x2

x2

β^1yx1y


1
Câu trả lời tuyệt vời, đây là một định lý chung en.wikipedia.org/wiki/ Kẻ
JohnK

4

ββYiXki

(β0,β1,...,βk)

Yi=β0+β1X1i+...+βkXki+ϵi

ϵiiidN(0,σ2)i=1,...,nXn×knkthXkβ^=(β^0,β^1,...,β^k) , đó là

β^=(XX)1XY

giả sử rằng tồn tại nghịch đảo . Các hệ số ước tính là các chức năng của dữ liệu, không phải là các hệ số ước tính khác.(XX)1


Tôi có một câu hỏi tiếp theo, trong trường hợp hồi quy đơn giản, bạn biến sau đó trở thành ma trận của và , sau đó theo dõi qua . Làm thế nào tôi nên viết lại phương trình trong trường hợp của tôi? yi=β0+β1x¯+β1(xix¯)+eiX(1,...,1)(x1x¯,...,xnx¯)β^=(XX)(1)XY
Sabre CN

Và thêm 1 câu hỏi, điều này có áp dụng cho các trường hợp và không tuyến tính không, nhưng mô hình vẫn là tuyến tính? Ví dụ: đường cong phân rã , tôi có thể thay thế số mũ bằng và để nó trở thành câu hỏi ban đầu của tôi không? x1x2y=β1ex1t+β2ex2tx1x2
Sabre CN

Trong bình luận đầu tiên của bạn, bạn có thể căn giữa biến (trừ trung bình của nó từ nó) và sử dụng đó là biến độc lập của bạn. Tìm kiếm "hồi quy chuẩn hóa". Công thức bạn viết dưới dạng ma trận là không chính xác. Đối với câu hỏi thứ hai của bạn, vâng, bạn có thể làm điều đó, mô hình tuyến tính là mô hình tuyến tính trong , miễn là bằng với tổ hợp tuyến tính của , bạn vẫn ổn. βyβ
caburke

2
(+1). Nhưng không nên là " ma trận" thay vì ? n×kk×n
miura

3

Một lưu ý nhỏ về lý thuyết so với thực hành. Về mặt toán học có thể được ước tính bằng công thức sau:β0,β1,β2...βn

β^=(XX)1XY

Trong đó là dữ liệu đầu vào ban đầu và là biến mà chúng tôi muốn ước tính. Điều này sau khi giảm thiểu lỗi. Tôi sẽ chứng minh điều này trước khi đưa ra một điểm thực tế nhỏ.XY

Đặt là lỗi hồi quy tuyến tính tạo ra tại điểm . Sau đó:eii

ei=yiyi^

Tổng số lỗi bình phương chúng tôi thực hiện là:

i=1nei2=i=1n(yiyi^)2

Bởi vì chúng tôi có một mô hình tuyến tính, chúng tôi biết rằng:

yi^=β0+β1x1,i+β2x2,i+...+βnxn,i

Mà có thể được viết lại trong ký hiệu ma trận như:

Y^=Xβ

Chúng ta biết rằng

i=1nei2=EE

Chúng tôi muốn giảm thiểu tổng lỗi vuông, sao cho biểu thức sau phải càng nhỏ càng tốt

EE=(YY^)(YY^)

Điều này tương đương với:

EE=(YXβ)(YXβ)

Việc viết lại có vẻ khó hiểu nhưng nó xuất phát từ đại số tuyến tính. Lưu ý rằng các ma trận hoạt động tương tự như các biến khi chúng ta nhân chúng trong một số liên quan.

Chúng tôi muốn tìm các giá trị của sao cho biểu thức này càng nhỏ càng tốt. Chúng ta sẽ cần phân biệt và đặt đạo hàm bằng 0. Chúng tôi sử dụng quy tắc chuỗi ở đây.β

dEEdβ=2XY+2XXβ=0

Điều này mang lại:

XXβ=XY

Cuối cùng cũng vậy:

β=(XX)1XY

Về mặt toán học, chúng ta dường như đã tìm ra một giải pháp. Tuy nhiên, có một vấn đề và đó là rất khó tính nếu ma trận rất lớn. Điều này có thể cung cấp cho các vấn đề chính xác số. Một cách khác để tìm các giá trị tối ưu cho trong tình huống này là sử dụng loại phương thức giảm độ dốc. Hàm mà chúng ta muốn tối ưu hóa là không giới hạn và lồi, vì vậy chúng ta cũng sẽ sử dụng một phương thức gradient trong thực tế nếu cần. (XX)1Xβ


ngoại trừ việc bạn không thực sự cần phải tính toán ...(XX)1
user603

điểm hợp lệ. người ta cũng có thể sử dụng quy trình gram schmidt, nhưng tôi chỉ muốn nhận xét rằng việc tìm các giá trị tối ưu cho vectơ cũng có thể được thực hiện bằng số vì độ lồi. β
Vincent Warmerdam

2

Một dẫn xuất đơn giản có thể được thực hiện chỉ bằng cách sử dụng giải thích hình học của LR.

Hồi quy tuyến tính có thể được hiểu như là sự phóng chiếu của vào không gian cột . Như vậy, lỗi, là trực giao với không gian cột của . YXϵ^X

Do đó, sản phẩm bên trong giữa và lỗi phải là 0, nghĩa là X

<X,yXβ^>=0

XyXXβ^=0

Xy=XXβ^

Ngụ ý rằng,

(XX)1Xy=β^ .

Bây giờ điều tương tự có thể được thực hiện bởi:

(1) Chiếu lên (lỗi ), ,YX2δ=YX2D^D^=(X2X2)1X2y

(2) Chiếu lên (lỗi ), ,X 2 γ = X 1 - X 2 G G = ( X ' 1 X 1 ) - 1 X 1 X 2X1X2γ=X1X2G^G^=(X1X1)1X1X2

và cuối cùng,

(3) Chiếu lên ,gamma beta 1δγβ^1

nhập mô tả hình ảnh ở đây

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.