Gradient giảm hoặc không cho hồi quy tuyến tính đơn giản


9

Có một số trang web mô tả độ dốc gốc để tìm các tham số cho hồi quy tuyến tính đơn giản ( đây là một trong số chúng). Google cũng mô tả nó trong khóa học ML mới (công khai) của họ.

Tuy nhiên, trên Wikipedia , các công thức sau đây để tính toán các tham số được cung cấp:

α^=y¯β^x¯,β^=i=1n(xix¯)(yiy¯)i=1n(xix¯)2

Ngoài ra, các scikit-học hồi quy tuyến tính chức năng, không có một n_iter_(số lần lặp) thuộc tính như đối với nhiều chức năng học tập khác, mà tôi giả sử cho thấy gradient descent không được sử dụng?

Câu hỏi:

  1. Có phải các trang web mô tả độ dốc giảm dần cho hồi quy tuyến tính đơn giản chỉ làm như vậy để dạy khái niệm về nó trên mô hình ML cơ bản nhất? Là công thức trên Wikipedia mà hầu hết các phần mềm thống kê sẽ sử dụng để tính toán các tham số (ít nhất là scikit-learn dường như không sử dụng độ dốc gốc)?
  2. Những gì thường được sử dụng cho nhiều hồi quy tuyến tính?
  3. Đối với những loại mô hình học thống kê nào thì độ dốc gốc thường được sử dụng để tìm các tham số so với các phương thức khác? Tức là có một số quy tắc của ngón tay cái?

Câu trả lời:


8
  1. Hồi quy tuyến tính thường được sử dụng như một cách để giới thiệu khái niệm về độ dốc.

  2. Yếu tố QR là chiến lược phổ biến nhất. SVD và nhân tố Cholesky là các tùy chọn khác. Xem Chúng ta có cần giảm độ dốc để tìm các hệ số của mô hình hồi quy tuyến tính không

Cụ thể, lưu ý rằng các phương trình mà bạn đã viết có thể chứng minh điều kiện số kém và / hoặc tốn kém để tính toán. Yếu tố QR ít bị ảnh hưởng bởi các vấn đề điều hòa (nhưng không miễn dịch) và không quá đắt.

  1. Mạng lưới thần kinh là ví dụ nổi bật nhất về việc sử dụng độ dốc gốc được áp dụng, nhưng nó khác xa với ví dụ duy nhất. Một ví dụ khác về một vấn đề yêu cầu cập nhật lặp là hồi quy logistic, không cho phép các giải pháp trực tiếp, do đó, điển hình là Newton-Raphson được sử dụng. (Nhưng GD hoặc các biến thể của nó cũng có thể được sử dụng.)

Trong liên kết bạn cung cấp, số 3: "Phương trình bình thường", tham khảo các phương trình trong câu hỏi của tôi ở đây? Nếu không, thuật ngữ kỹ thuật cho các phương trình này là gì?
Oliver Angelil

1
@OliverAngelil "phương trình bình thường" thực sự là thuật ngữ biệt ngữ cho hệ phương trình tuyến tính là điều kiện thứ tự đầu tiên cho bài toán tối ưu hóa bình phương nhỏ nhất thông thường.
Matthew Gunn

Vậy các "phương trình bình thường" được sử dụng trong phần mềm thống kê khi chỉ có 1 biến dự đoán? Với n = 100, tôi nhận được các hệ số b0 và b1 giống hệt nhau (đến 6 chữ số thập phân) khi tôi sử dụng các phương trình bình thường so với hàm linearRegression trong scikit-learn. Mặc dù tôi bối rối: # 3 trong liên kết nói rằng "phương trình bình thường" là một ý tưởng "TERRIBLE" ??
Oliver Angelil

1
6 chữ số thập phân là quá đủ cho tôi!
Oliver Angelil

2
@anu Giải quyết hồi quy logistic theo cách không lặp lại đòi hỏi tối thiểu hóa một hệ phương trình phi tuyến tính; nói chung, điều này thật khó! Tình huống này tương tự như định lý Abel-Ruffini (không có giải pháp đại số cho gốc đa thức bậc 5): chúng ta đơn giản không có phương pháp tính toán trực tiếp để giải chính xác hệ thống. IIRC, điều này được thảo luận trong chương Các yếu tố của học tập thống kê về hồi quy logistic. Có lẽ có một chủ đề ở đâu đó trên thống kê. Cũng về nó, nhưng tôi gặp khó khăn khi tìm một cái tốt.
Sycorax nói Phục hồi lại
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.