Tôi muốn làm như sau:
1) Hồi quy OLS (không có thời hạn xử phạt) để có hệ số beta ; là viết tắt của các biến được sử dụng để hồi quy. Tôi làm điều này bằng cách j
lm.model = lm(y~ 0 + x)
betas = coefficients(lm.model)
2) Hồi quy Lasso với thời hạn xử phạt, tiêu chí lựa chọn sẽ là Tiêu chí Thông tin Bayes (BIC), được đưa ra bởi
Trong đó là viết tắt của số biến / hồi quy, cho số lượng quan sát và cho các betas ban đầu thu được ở bước 1). Tôi muốn có kết quả hồi quy cho giá trị cụ thể này , khác với từng biến hồi quy được sử dụng. Do đó, nếu có ba biến, sẽ có ba giá trị khác nhau .T b ∗ j λ j λ j
Vấn đề tối ưu hóa OLS-Lasso sau đó được đưa ra bởi
Làm thế nào tôi có thể làm điều này trong R với gói lars hoặc glmnet? Tôi không thể tìm cách chỉ định lambda và tôi không chắc chắn 100% nếu tôi nhận được kết quả chính xác nếu tôi chạy
lars.model <- lars(x,y,type = "lasso", intercept = FALSE)
predict.lars(lars.model, type="coefficients", mode="lambda")
Tôi đánh giá cao bất kỳ sự giúp đỡ ở đây.
Cập nhật:
Tôi đã sử dụng mã sau đây:
fits.cv = cv.glmnet(x,y,type="mse",penalty.factor = pnlty)
lmin = as.numeric(fits.cv[9]) #lambda.min
fits = glmnet(x,y, alpha=1, intercept=FALSE, penalty.factor = pnlty)
coef = coef(fits, s = lmin)
Trong dòng 1, tôi sử dụng xác thực chéo với hệ số hình phạt được chỉ định của mình ( ), khác nhau cho mỗi biến hồi quy . Dòng 2 chọn "lambda.min" của fit.cv, đây là lambda cung cấp lỗi xác thực chéo trung bình tối thiểu. Dòng 3 thực hiện một lasso fit ( ) trên dữ liệu. Một lần nữa tôi đã sử dụng yếu tố hình phạt . Dòng 4 trích xuất các hệ số từ phù hợp với "tối ưu" được chọn trong dòng 2.λλalpha=1
Bây giờ tôi có các hệ số beta cho các biến hồi quy mô tả giải pháp tối ưu cho bài toán tối thiểu hóa
với hệ số phạt . Tập hợp các hệ số tối ưu rất có thể là một tập hợp con của các biến hồi quy mà tôi đã sử dụng ban đầu, đây là hệ quả của phương pháp Lasso thu nhỏ số lượng hồi quy được sử dụng.
Là sự hiểu biết của tôi và mã chính xác?
$\alpha$
trở thành . Hãy làm điều này, vì nó sẽ khiến mọi người dễ hiểu câu hỏi của bạn hơn, và do đó trả lời nó.