Giải các tham số hồi quy ở dạng đóng và giảm độ dốc


71

Trong khóa học máy của Andrew Ng , ông giới thiệu hồi quy tuyến tính và hồi quy logistic, và chỉ ra cách điều chỉnh các tham số mô hình bằng cách sử dụng phương pháp giảm độ dốc và phương pháp Newton.

Tôi biết giảm dần độ dốc có thể hữu ích trong một số ứng dụng của học máy (ví dụ: backpropogation), nhưng trong trường hợp tổng quát hơn, có bất kỳ lý do nào khiến bạn không giải quyết được các tham số ở dạng đóng-- nghĩa là bằng cách lấy đạo hàm của hàm chi phí và giải thông qua Giải tích?

Lợi thế của việc sử dụng thuật toán lặp như giảm độ dốc so với giải pháp dạng đóng nói chung, khi có sẵn là gì?


9
Tôi không nghĩ rằng có một giải pháp dạng đóng cho MLE của các tham số hồi quy trong hầu hết các glms (ví dụ hồi quy logistic). Hồi quy tuyến tính với các lỗi bình thường là một ngoại lệ.
Macro

5
Thú vị ... Điều này có nghĩa là các gói thống kê khác nhau có thể đưa ra các câu trả lời khác nhau cho hồi quy logistic tùy thuộc vào, ví dụ: cài đặt tham số ban đầu, số lần lặp, nhiều cực tiểu cục bộ, v.v .-- hoặc có một quy trình thông thường mà tất cả các gói thống kê tốt sẽ theo? (Mặc dù tôi chắc chắn có bất kỳ sự khác biệt nào, nếu chúng tồn tại, là phút trong hầu hết các trường hợp)
Jeff

3
(+1) Đối với câu hỏi và nhận xét của bạn, Jeff. GLM sử dụng liên kết chính tắc (như hồi quy logistic) được hưởng lợi từ các đặc tính tốt đẹp của độ lồi. Có thể có nhiều hơn một thuật toán để giải quyết các vấn đề như vậy, nhưng kết quả cơ bản của vấn đề này là (modulo một số chi tiết khá nhỏ), các thuật toán số được triển khai tốt sẽ cho kết quả nhất quán giữa chúng.
Đức hồng y

2
Cá nhân tôi không thích khóa học của Andrew Ng vì nó khiến mọi người tin rằng Hồi quy tuyến tính là "học máy".
Digio

Câu trả lời:


85

Trừ khi giải pháp dạng đóng cực kỳ tốn kém để tính toán, nó thường là cách để đi khi có sẵn. Tuy nhiên,

  1. Đối với hầu hết các vấn đề hồi quy phi tuyến, không có giải pháp dạng đóng.

  2. Ngay cả trong hồi quy tuyến tính (một trong số ít trường hợp có sẵn giải pháp dạng đóng), việc sử dụng công thức có thể không thực tế. Ví dụ sau đây cho thấy một cách mà điều này có thể xảy ra.

y=XβX

β^=argminXβy2

được đưa ra bởi

β^=(XTX)1XTy

Bây giờ, hãy tưởng tượng rằng là một ma trận rất lớn nhưng thưa thớt. ví dụ: có thể có 100.000 cột và 1.000.000 hàng, nhưng chỉ 0,001% các mục trong là khác không. Có các cấu trúc dữ liệu chuyên biệt để chỉ lưu trữ các mục khác không của các ma trận thưa thớt như vậy. XXX

Cũng hãy tưởng tượng rằng chúng ta không may mắn và là một ma trận khá dày đặc với tỷ lệ mục nhập khác không cao hơn nhiều. Việc lưu trữ một ma trận dày đặc 100.000 đến 100.000 phần tử sau đó sẽ yêu cầu dấu phẩy động (ở mức 8 byte mỗi số, điều này có thể là 80 gigabyte.) nhưng là một siêu máy tính. Hơn nữa, nghịch đảo của ma trận này (hay phổ biến hơn là một yếu tố Cholesky) cũng có xu hướng có hầu hết các mục khác. XTXXTX1×1010

Tuy nhiên, có phương pháp lặp để giải quyết vấn đề phương nhỏ nhất mà không cần lưu trữ lớn hơn , , và và không bao giờ hình thành một cách rõ ràng sản phẩm ma trận . Xyβ^XTX

Trong tình huống này, sử dụng phương pháp lặp có hiệu quả tính toán cao hơn nhiều so với sử dụng giải pháp dạng đóng cho bài toán bình phương nhỏ nhất.

Ví dụ này có vẻ lớn một cách vô lý. Tuy nhiên, các vấn đề bình phương nhỏ nhất thưa thớt với kích thước này thường được giải quyết bằng các phương pháp lặp trên máy tính để bàn trong nghiên cứu chụp cắt lớp địa chấn.


4
Tôi nên đề cập rằng cũng có những vấn đề chính xác về số có thể làm cho việc sử dụng giải pháp dạng đóng cho vấn đề bình phương nhỏ nhất không thể giải quyết được. Tuy nhiên, điều này sẽ đòi hỏi một cuộc thảo luận về điều hòa không tốt dường như vượt quá sự hiểu biết hiện tại về poster gốc.
Brian Borchers

17
xin vui lòng gửi câu trả lời vì bạn không nghĩ rằng tôi sẽ hiểu nó. đầu tiên-- sẽ không hại gì khi cung cấp thêm thông tin, ngay cả khi tôi phải mất một số nghiên cứu để nắm bắt nó. thứ hai-- mô hình stackexchange giả định rằng câu hỏi và câu trả lời này sẽ có lợi cho những người khác trong tương lai. nói cách khác, đừng bỏ qua câu trả lời của bạn dựa trên mức độ bạn nghĩ OP biết, hoặc bạn sẽ làm cho người khác không hài lòng.
Jeff

2
@Brian, cảm giác của tôi là bình luận của bạn đánh gần hơn vào trọng tâm của vấn đề và có một chút mâu thuẫn với câu đầu tiên trong câu trả lời. Tôi không nghĩ rằng bất kỳ phần mềm bình phương nhỏ nhất (theo đúng nghĩa của nó) sử dụng giải pháp dạng đóng. :)
Đức hồng y

4
Trong thực tế, tốt nhất là sử dụng hệ số QR hoặc SVD để giải quyết các vấn đề bình phương nhỏ nhất ở quy mô nhỏ. Tôi cho rằng một giải pháp sử dụng một trong các yếu tố trực giao này cũng là một "giải pháp dạng đóng" so với sử dụng một kỹ thuật lặp như LSQR. Tôi đã không đi sâu vào vấn đề này trong câu trả lời của mình vì nó không cần phải thu hút sự chú ý khỏi quan điểm chính của tôi.
Brian Borchers

2
Bệnh tật? Sách giáo khoa giải pháp đóng? Tôi yêu mùi của số điều kiện bình phương vào buổi sáng. Có một số điều kiện lớn? Tại sao không vuông nó và làm cho nó thậm chí còn lớn hơn? Có một số điều kiện không quá lớn? Tại sao không vuông nó và làm cho nó lớn.
Mark L. Stone

2

Đã có một số bài viết về học máy (ML) và hồi quy. ML không cần thiết để giải các bình phương tối thiểu thông thường (OLS), vì nó liên quan đến thao tác kẹp ma trận một bước để giải hệ phương trình tuyến tính - tức là . Thực tế là tất cả mọi thứ là tuyến tính có nghĩa là chỉ cần một hoạt động một bước để giải quyết các hệ số. Hồi quy logistic dựa trên việc tối đa hóa hàm khả năng , có thể giải quyết bằng Newton-Raphson hoặc các phương pháp tăng độ dốc ML khác, siêu dữ liệu (leo đồi, thuật toán di truyền, trí thông minh, tối ưu hóa kiến, v.v.) . β=(XTX)1XTyL=ipi

Liên quan đến phân tích cú pháp, việc sử dụng ML cho OLS sẽ gây lãng phí vì việc học lặp không hiệu quả để giải OLS.

Bây giờ, trở lại câu hỏi thực sự của bạn về các phương pháp dẫn xuất so với ML để giải quyết các vấn đề dựa trên độ dốc. Cụ thể, đối với hồi quy logistic, phương pháp giảm độ dốc (dựa trên đạo hàm) của Newton-Raphson thường được sử dụng. Newton-Raphson yêu cầu bạn biết hàm mục tiêu và các đạo hàm riêng của nó ghi từng tham số (liên tục trong giới hạn và khác biệt). ML chủ yếu được sử dụng khi hàm mục tiêu quá phức tạp ("narly") và bạn không biết các dẫn xuất. Ví dụ, một mạng nơ ron nhân tạo (ANN) có thể được sử dụng để giải quyết vấn đề gần đúng chức năng hoặc vấn đề phân loại có giám sát khi chức năng không được biết. Trong trường hợp này, ANN là hàm.

Đừng phạm sai lầm khi sử dụng các phương thức ML để giải quyết vấn đề hồi quy logistic, chỉ vì bạn có thể. Đối với logistic, Newton-Raphson cực kỳ nhanh và là kỹ thuật thích hợp để giải quyết vấn đề. ML thường được sử dụng khi bạn không biết chức năng là gì. (nhân tiện, ANN là từ lĩnh vực trí thông minh tính toán, chứ không phải ML).

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.