Tham số chính quy LASSO từ thuật toán LARS


9

Trong bài báo chuyên đề 'Hồi quy góc tối thiểu' , Efron et al mô tả một sửa đổi đơn giản của thuật toán LARS cho phép tính toán các đường dẫn chính quy LASSO đầy đủ.

Tôi đã triển khai biến thể này một cách thành công và thường vẽ đường dẫn đầu ra so với số bước (lặp lại liên tiếp của thuật toán LARS) hoặc -norm của các hệ số hồi quy ( ).β 1l1β1

Tuy nhiên, có vẻ như hầu hết các gói có sẵn cung cấp đường dẫn chính quy theo hệ số xử phạt LASSO λ (ví dụ: LARS trong R, nơi bạn có thể chơi với đối số 'chế độ' để chuyển đổi giữa các cách biểu diễn khác nhau).

Câu hỏi của tôi là: cơ học được sử dụng để chuyển từ đại diện này sang đại diện khác là gì. Tôi đã thấy nhiều câu hỏi khác nhau liên quan đến vấn đề đó (hay cụ thể hơn là vấn đề ánh xạ ràng buộc bất bình đẳng β1t với một điều khoản phạt thích hợp λβ1 ), nhưng không tìm thấy câu trả lời thỏa mãn.


[Biên tập]

Tôi đã xem xét bên trong một số mã MATLAB thực hiện chuyển đổi cần thiết và, đối với mỗi bước LARS , đây là cách dường như được tính toán:λkλ

λ(k)=max(2|XTy|),   for k=1
λ(k)=median(2|XAkTrAk|),   k>1

Trong đó X (kích thước n×p ) và y (kích thước n×1 ) biểu thị đầu vào / phản hồi được tiêu chuẩn hóa, Ak đại diện cho bộ dự đoán hoạt động 'được đặt ở bước kr đại diện cho hồi quy hiện tại ở bước k .

Tôi không thể nắm bắt logic đằng sau tính toán đó. Ai đó có thể giúp đỡ?

Câu trả lời:


4

Tôi đã tìm ra cách thực hiện chuyển đổi cần thiết.

Giả sử rằng các đầu vào được chuẩn hóa (trung bình bằng không, phương sai đơn vị) và các phản hồi được căn giữa.yXy

Chúng tôi biết rằng thuật toán LARS đã sửa đổi cung cấp đường dẫn chính quy LASSO đầy đủ, xem giấy gốc của Efron et al .

Điều này có nghĩa là, ở mỗi lần lặp , thuật toán cũ tìm thấy một cặp tối ưu giảm thiểu hàm mất thường xuyên: ( β , λ ) ( β , λ )k(β,λ)

(β,λ)=argmin(β,λ)L(β,λ)L(β,λ)=yXβ22+λβ1=i=1N(yij=1pβjXij)2+λj=1p|βj|

Đối với tất cả các thành phần hoạt động trong bộ hoạt động ở cuối bước , áp dụng điều kiện ổn định KKT sẽ cho A k k 0a={1,...,q}Akk

0=Lβa(β,λ)=2i=1NXia(yij=1qβjXij)+λ sign(βa)

Nói cách khác hoặc trong các ký hiệu ma trận (lưu ý rằng việc chia / nhân với là giống nhau) phương trình sau được thỏa mãn cho bất kỳ thành phần hoạt động nào :

λ=2i=1NXia(yij=1qβjXij)sign(βa)
sign(x)a
λ=2 sign(βa)XaTr

Trong bài báo gốc, các tác giả đề cập rằng đối với bất kỳ giải pháp nào cho vấn đề LASSO, dấu hiệu của trọng số hồi quy hoạt động ( ) phải giống hệt với dấu hiệu tương quan của yếu tố dự đoán hoạt động tương ứng với dư lượng hồi quy hiện tại ( ), đó chỉ là logic vì phải dương. Do đó chúng ta cũng có thể viết:βaXaTrλ

λ=2|XaTr|

Ngoài ra, chúng tôi thấy rằng ở bước cuối cùng (OLS fit, ), chúng tôi nhận được do bổ đề trực giao. Việc sử dụng trung bình trong triển khai MATLAB tôi thấy IMHO có vẻ như là một nỗ lực để 'trung bình hóa' các lỗi số trên tất cả các thành phần hoạt động:kβ=(XTX)1XTyλ=0

λ=median(2|XAkTrAk|),   k>1

Để tính giá trị của khi không có thành phần hoạt động (bước ), người ta có thể sử dụng thủ thuật tương tự như trên nhưng trong giới hạn vô hạn trong đó tất cả các trọng số hồi quy đều bằng 0 và chỉ có dấu hiệu của thành phần đầu tiên trở thành hoạt động (ở bước ) vấn đề. Sản lượng này:λk=1bk=2

λ=2 sign(βb)XbTy
tương đương hoàn toàn với

λ=max(2|XTy|), for k=1

bởi vì (i) nhận xét tương tự như trước đó liên quan đến dấu hiệu của trọng số hồi quy; (ii) thuật toán LARS xác định thành phần tiếp theo để nhập tập hợp hoạt động là thành phần tương quan nhất với phần dư hiện tại , ở bước chỉ đơn giản là .k = 1 ybk=1y


2
Đây là điều được đề cập trong mọi tác phẩm của LASSO nhưng không ai quan tâm giải thích nó (tôi không biết nó rất cơ bản hay là gì, nhưng tôi đã mất rất nhiều thời gian để tìm ra nó). Tôi chỉ muốn nhấn mạnh rằng, mặc dù "tương đương", bạn chỉ có thể đi từ công thức này sang công thức khác (bị ràng buộc không bị ràng buộc và ngược lại) một khi bạn đã giải quyết vấn đề tối ưu hóa và bạn có trọng số tối ưu.
skd

2
Tôi cảm thấy như vậy! Theo như nhận xét của bạn, có thực sự. Ở đây, điều này được phản ánh trong phần dư , chỉ có thể được tính khi trọng số hồi quy tối ưu đã đạt được ở cuối bước . β k krAkβkk
Quantuple
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.