LASSO với các điều khoản tương tác - có ổn không nếu các hiệu ứng chính được thu nhỏ về 0?


25

Hồi quy LASSO thu nhỏ các hệ số về 0, do đó cung cấp lựa chọn mô hình hiệu quả. Tôi tin rằng trong dữ liệu của mình có những tương tác có ý nghĩa giữa hiệp phương sai danh nghĩa và liên tục. Tuy nhiên, không nhất thiết là "hiệu ứng chính" của mô hình thực sự có ý nghĩa (khác không). Tất nhiên tôi không biết điều này vì mô hình thực sự là không rõ. Mục tiêu của tôi là tìm ra mô hình thực sự và dự đoán kết quả càng sát càng tốt.

Tôi đã học được rằng cách tiếp cận cổ điển để xây dựng mô hình sẽ luôn bao gồm một hiệu ứng chính trước khi có sự tương tác. Do đó, không thể có một mô hình mà không có hiệu ứng chính của hai hiệp phương trình và nếu có sự tương tác của các đồng biến trong cùng một mô hình. Do đó, hàm chọn cẩn thận các thuật ngữ mô hình (ví dụ dựa trên AIC lùi hoặc tiến) tuân theo quy tắc này.XZX*ZstepR

LASSO dường như hoạt động khác nhau. Vì tất cả các tham số đều bị phạt nên có thể nghi ngờ rằng hiệu ứng chính bị thu nhỏ về 0 trong khi tương tác của mô hình tốt nhất (ví dụ: xác thực chéo) là khác không. Này, tôi thấy đặc biệt đối với dữ liệu của tôi khi sử dụng R's glmnetgói.

Tôi đã nhận được những lời chỉ trích dựa trên quy tắc đầu tiên được trích dẫn ở trên, tức là mô hình Lasso được xác thực chéo cuối cùng của tôi không bao gồm các điều khoản hiệu ứng chính tương ứng của một số tương tác khác không. Tuy nhiên quy tắc này có vẻ hơi lạ trong bối cảnh này. Vấn đề là liệu tham số trong mô hình thực có bằng không. Giả sử là vậy nhưng tương tác là khác không, thì LASSO sẽ xác định điều này có lẽ, do đó tìm ra mô hình chính xác. Trong thực tế, có vẻ như các dự đoán từ mô hình này sẽ chính xác hơn vì mô hình không chứa hiệu ứng chính đúng không, đây thực sự là một biến nhiễu.

Tôi có thể bác bỏ những lời chỉ trích dựa trên nền tảng này hay tôi nên đưa ra cảnh báo trước bằng cách nào đó rằng LASSO không bao gồm hiệu ứng chính trước thời hạn tương tác?


2
Ai đó đã đánh giá thấp điều này. Tôi sẽ quan tâm tại sao-
tomka

1
Là dự đoán mục tiêu, suy luận của bạn, hoặc một cái gì đó khác tất cả cùng nhau?
Andrew M

@AndrewM Tôi muốn ước tính mô hình thực sự tốt nhất có thể, diễn giải các biến gây ra các biến phụ thuộc và cũng sử dụng các giá trị dự đoán.
tomka

2
Đối với mục tiêu đầu tiên của bạn, lưu ý rằng xác thực chéo không phù hợp với lựa chọn mô hình. Trên thực tế, người ta đã chứng minh rằng mô hình mà mô hình "thật" có xu hướng là một tập hợp con của mô hình tối đa hóa ước tính của chúng tôi về hiệu suất dự đoán. Đối với mục tiêu thứ hai của bạn, lưu ý rằng Lasso cung cấp các ước tính sai lệch mạnh mẽ. Vì vậy, tôi nghĩ rằng bạn cần phải quyết định mục tiêu chính của bạn là gì và chỉnh sửa câu hỏi của bạn để làm rõ trước khi có thể đưa ra lời khuyên hữu ích.
Andrew M

@AndrewM câu hỏi của tôi là: có nên đưa vào hiệu ứng chính trong mô hình khi sử dụng LASSO không? Câu hỏi này có thể được trả lời riêng cho cả hai máy bay phản lực của tôi. Tôi không nghĩ rằng câu hỏi cần thêm sự trợ giúp, nhưng điều quan trọng là chỉ ra những mục tiêu này, xem chỉnh sửa trong đoạn đầu tiên.
tomka

Câu trả lời:


10

Một khó khăn khi trả lời câu hỏi này là khó có thể dung hòa LASSO với ý tưởng về mô hình "thật" trong hầu hết các ứng dụng trong thế giới thực, thường có mối tương quan không đáng kể giữa các biến dự đoán. Trong trường hợp đó, như với bất kỳ kỹ thuật chọn biến nào, các yếu tố dự đoán cụ thể được LASSO trả về với các hệ số khác không của LASSO sẽ phụ thuộc vào sự mơ hồ của việc lấy mẫu từ dân số cơ bản. Bạn có thể kiểm tra điều này bằng cách thực hiện LASSO trên nhiều mẫu bootstrap từ cùng một bộ dữ liệu và so sánh các bộ biến dự đoán được trả về.

Hơn nữa, như @AndrewM đã lưu ý trong một nhận xét, sự thiên vị của các ước tính do LASSO cung cấp có nghĩa là bạn sẽ không dự đoán được kết quả "càng sát càng tốt". Thay vào đó, bạn đang dự đoán các kết quả dựa trên một sự lựa chọn cụ thể của sự đánh đổi sai lệch không thể tránh khỏi.

Vì vậy, với những khó khăn đó, tôi hy vọng rằng bạn sẽ muốn tự mình biết, không chỉ để thỏa mãn một nhà phê bình, tầm quan trọng của các tác động chính của các biến góp phần vào sự tương tác. Có một gói có sẵn trong R, gli Internet , dường như làm chính xác những gì bạn cần (mặc dù tôi không có kinh nghiệm với nó):

Tương tác nhóm-Lasso-NET. Phù hợp với các mô hình tương tác cặp tuyến tính thỏa mãn hệ thống phân cấp mạnh: nếu hệ số tương tác được ước tính là khác không, thì hai hiệu ứng chính liên quan của nó cũng có hệ số ước tính khác không. Chứa các biến phân loại (yếu tố) với số cấp tùy ý, biến liên tục và kết hợp của chúng.

Ngoài ra, nếu bạn không có quá nhiều yếu tố dự đoán, thay vào đó, bạn có thể xem xét hồi quy sườn, điều này sẽ trả về hệ số cho tất cả các biến có thể ít phụ thuộc hơn vào các mẫu dữ liệu cụ thể của bạn.


9

Tôi đến trễ một bữa tiệc, nhưng đây là vài suy nghĩ của tôi về vấn đề của bạn.

  1. Lasso chọn những gì là thông tin. Hãy coi lasso như một phương pháp để có được hiệu suất dự đoán cao nhất với số lượng tính năng nhỏ nhất. Hoàn toàn ổn khi trong một số trường hợp, Lasso chọn tương tác và không phải là hiệu ứng chính. Nó chỉ có nghĩa là các hiệu ứng chính không phải là thông tin, nhưng tương tác là.

  2. Bạn chỉ đang báo cáo, những gì bạn phát hiện ra. Bạn đã sử dụng một số phương pháp và nó tạo ra một số kết quả. Bạn báo cáo nó một cách minh bạch cho phép tái sản xuất. Theo tôi, công việc của bạn đã xong. Kết quả là khách quan, bạn đã tìm thấy những gì bạn tìm thấy và đó không phải là công việc của bạn để biện minh, tại sao bạn không tìm thấy thứ gì khác.

  3. Tất cả các đơn vị là tùy ý. Tương tác chỉ là đơn vị. Hãy nói rằng bạn học màu sắc. Màu sắc có thể được bao gồm trong mô hình của bạn dưới dạng độ dài sóng hoặc độ dài sóng nhật ký hoặc 3 biến RGB hoặc dưới dạng tương tác của màu sắc và sắc độ, v.v. Không có sự thể hiện màu sắc chính xác hoặc không chính xác. Bạn sẽ chọn một trong đó có ý nghĩa nhất cho vấn đề của bạn. Tương tác cũng chỉ là các đơn vị mà bạn có thể sử dụng tùy ý. Diện tích của một cửa sổ, chỉ là sự tương tác giữa chiều cao và chiều rộng của nó, bạn có nên bao gồm chiều cao và chiều rộng của cửa sổ trong mô hình của mình không? Vận tốc chỉ là sự tương tác của khối lượng và tốc độ. Và tốc độ chỉ là sự tương tác của thời gian và khoảng cách. Manhours chỉ là sự tương tác của thời gian và số lượng người làm việc. Toán trị liệu liều * tuổi giống như chiều cao * chiều rộng. Câu nói "bạn phải luôn luôn bao gồm các hiệu ứng chính" được đánh giá cao.

  4. Lasso không gần đúng mô hình thực, nó không có nghĩa là suy luận và các biến được chọn là không ổn định. Nếu bạn có các yếu tố dự đoán thông tin tương quan, lasso có xu hướng chọn một và đẩy các số khác về 0, do đó mô hình của bạn sẽ bỏ qua tỷ lệ đáng kể của các biến thông tin. Ngoài ra, như đã được chỉ ra trong các ý kiến, nếu bạn tìm thấy lambda tốt nhất trong việc xác định giá trị chéo, lasso sẽ chọn nhiều biến hơn so với mô hình thực. Một vấn đề khác là, các lựa chọn từ Lasso không ổn định. Vì vậy, nếu bạn chạy lại Lasso trên một mẫu khác với dân số, bạn sẽ kết thúc với một tập hợp các biến được chọn khác nhau. Do đó, đừng đặt nặng vào các biến được chọn. Ngoài ra, các betas bị sai lệch, và do đó không thể được sử dụng để kiểm tra giả thuyết tham số cổ điển. Tuy nhiên, có nhiều cách xung quanh nó (điểm tiếp theo)

  5. suy luận với Lasso. Lasso có thể được sử dụng để suy luận về các yếu tố dự đoán. Cách đơn giản nhất là bootstrap nó và đếm số lần mỗi biến được chọn, chia cho số lượng mẫu và bạn có giá trị p của mình. P trong trường hợp đó là xác suất của một biến được chọn bởi lasso. Bạn vẫn có thể kết thúc với các hiệu ứng tương tác quan trọng và các hiệu ứng chính không đáng kể, nhưng đó không phải là vấn đề, nó cũng có thể xảy ra với thử nghiệm giả thuyết bình thường. Sự đối xử tuyệt vời của chủ đề này là ở Hastie et. al. sách miễn phí: Học thống kê với độ thưa thớt, chương 6 http://web.stanford.edu/~hastie/StatLearnSparsity/Bootstrap có thể được thực hiện cho toàn bộ phạm vi giá trị lambda, điều này sẽ dẫn đến một đường dẫn ổn định cho tất cả các biến. Điều này có thể được mở rộng với cách tiếp cận lựa chọn độ ổn định để tìm một tập hợp các biến quan trọng được sửa cho lỗi thông minh của gia đình. http: // onlinel Library.wiley.com/doi/10.1111/j.1467-9868.2010.00740.x/abab Ngoài ra còn có một số phương pháp khác để suy luận với lasso, có thể hữu ích. Cụ thể là Lasso thích nghi hoặc Lasso desparsified. Đánh giá với triển khai R tại đây DOI: 10.1214 / 15-STS527 hoặc IMO giải thích dễ tiếp cận hơn trong Buhlmanm, van de Geer Sách: Thống kê dữ liệu chiều cao http://www.springer.com/la/book/9783642201912

  6. Những điều liên quan đến Lasso khác để được nhận thức. Theo như tôi biết thì sườn hoặc lưới đàn hồi có xu hướng vượt trội hơn Lasso. Nếu có kiến ​​thức về các biến, lasso nhóm hoặc lasso nhóm thưa thớt có thể được sử dụng để buộc lasso giữ hoặc loại bỏ toàn bộ nhóm dự đoán thay vì xử lý chúng riêng lẻ (ví dụ: đường dẫn gen, biến nhân tố được mã hóa giả). Đối với lasso dữ liệu không gian hoặc theo thứ tự có thể được sử dụng. Lasso ngẫu nhiên, được giới thiệu trong bài báo lựa chọn độ ổn định được đề cập ở trên, có xu hướng sản xuất các mô hình sperer với hiệu suất tương tự như một Lasso tiêu chuẩn.


1
thực sự thích # 3
user4581

0

Tôi có một ứng dụng mà tôi đặc biệt muốn một số lượng nhỏ hiệu ứng chính không bị phạt. Đặt Y = X.main beta + X.inter beta.inter + eps

a) phù hợp.Y = OLS (X.main, Y). Đặt tilde.Y = Y - dự đoán (fit.Y, X.main) b) fit [, j] = OLS (X.main, X.inter [, j]) cho j = 1 ... k. Đặt tilde.X.inter [, j] = X.inter [, j] - dự đoán (fit.j, X.main) c) fit = Lasso (tilde.X.inter, tilde.y). Hệ số trên hiệu ứng chính bằng với fit.Y - coef (fit) * fit [, 1: dim (X.inter) [2]]. Hệ số về hiệu ứng tương tác bằng coef (phù hợp)

Trong bước a và b, không cần phải tách mẫu. Nó ổn với tô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.