Khi sử dụng glmnet làm thế nào để báo cáo ý nghĩa giá trị p để khẳng định tầm quan trọng của các yếu tố dự đoán?


9

Tôi có một bộ dự đoán lớn (hơn 43.000) để dự đoán một biến phụ thuộc có thể lấy 2 giá trị (0 hoặc 1). Số lượng quan sát là hơn 45.000. Hầu hết các dự đoán là unigram, bigram và trigram của các từ, vì vậy có mức độ cộng tác cao trong số đó. Có rất nhiều sự thưa thớt trong bộ dữ liệu của tôi. Tôi đang sử dụng hồi quy logistic từ gói glmnet, hoạt động cho loại dữ liệu tôi có. Vấn đề của tôi là làm thế nào tôi có thể báo cáo ý nghĩa giá trị p của các yếu tố dự đoán. Tôi có được hệ số beta, nhưng có cách nào để khẳng định rằng các hệ số beta có ý nghĩa thống kê không?

Đây là mã của tôi:

library('glmnet')
data <- read.csv('datafile.csv', header=T)
mat = as.matrix(data)
X = mat[,1:ncol(mat)-1] 
y = mat[,ncol(mat)]
fit <- cv.glmnet(X,y, family="binomial")

Một câu hỏi khác là: Tôi đang sử dụng hình phạt alpha = 1, lasso mặc định gây ra vấn đề bổ sung rằng nếu hai yếu tố dự đoán kết hợp thì Lasso sẽ chọn một trong số chúng một cách ngẫu nhiên và gán trọng số không beta cho cái còn lại. Tôi cũng đã thử với hình phạt sườn núi (alpha = 0) chỉ định các hệ số tương tự cho các biến có tương quan cao thay vì chọn một trong số chúng. Tuy nhiên, mô hình với hình phạt Lasso cho tôi độ lệch thấp hơn nhiều so với mô hình có hình phạt sườn núi. Có cách nào khác để tôi có thể báo cáo cả hai yếu tố dự đoán có tính cộng tác cao không?


Âm thanh với tôi như thế này là một vấn đề phân loại đa biến, trái ngược với mô hình tuyến tính.
ADP

cảm ơn @ADP mô hình đề xuất của bạn cho loại tình huống này là gì?
tan

Câu trả lời:


8

Có một bài báo mới, Thử nghiệm đáng tin cậy cho Lasso , bao gồm cả người phát minh ra LASSO với tư cách là một tác giả báo cáo kết quả về vấn đề này. Đây là một lĩnh vực nghiên cứu tương đối mới, vì vậy các tài liệu tham khảo trong bài viết bao gồm rất nhiều điều được biết đến vào thời điểm này.

Đối với câu hỏi thứ hai của bạn, bạn đã thử chưa? Thường có một giá trị trong phạm vi giữa này đạt được sự thỏa hiệp tốt. Điều này được gọi là chính quy đàn hồi . Vì bạn đang sử dụng cv.glmnet, nên có thể bạn sẽ muốn xác thực chéo qua một lưới các giá trị .α(0,1)(λ,α)


2

Suy luận sau lựa chọn là một chủ đề rất tích cực của nghiên cứu thống kê. Theo quan điểm của tôi, một vấn đề với phương pháp được mô tả trong Thử nghiệm quan trọng đối với Lasso là các giả định nghiêm ngặt được yêu cầu (được sao chép từ đây ):

  1. Mô hình tuyến tính là chính xác.
  2. Phương sai không đổi.
  3. Các lỗi có phân phối chuẩn.
  4. Các vector tham số là thưa thớt.
  5. Ma trận thiết kế có cộng tuyến rất yếu. Điều này thường được nêu dưới dạng không tuân thủ, hạn chế eigenvalue hoặc giả định không tương thích.

Cách tiếp cận tôi thấy hữu ích - miễn là có đủ dữ liệu - là chia dữ liệu. Ý tưởng phân chia dữ liệu quay trở lại ít nhất là Moran (1974) và chỉ đơn giản là đòi hỏi phải chia ngẫu nhiên dữ liệu thành hai bộ, đưa ra các lựa chọn mô hình hóa trên tập đầu tiên và suy luận về tập thứ hai.

Vì vậy, trong trường hợp này, bạn sẽ chia dữ liệu thành hai, thực hiện lựa chọn biến trong nửa đầu, sau đó (giả sử bạn có ) sử dụng các kỹ thuật hồi quy tiêu chuẩn ở nửa sau để xác định ý nghĩa thống kê của các hệ số. Tất nhiên, các giả định vẫn được yêu cầu ở cả hai giai đoạn nhưng chúng có thể dễ dàng thỏa mãn hơn cho từng giai đoạn riêng lẻ.n>p

Bạn đề cập rằng các hiệp phương sai là uni-, bi- và tri-gram nên chúng có tính cộng tuyến cao. Vì vậy, trong trường hợp này, áp dụng Lasso trong giai đoạn đầu tiên cũng sẽ vi phạm các giả định - đặc biệt, số 5 từ trên cao. Vì vậy, để làm cho một cách tiếp cận như vậy thực sự hữu ích và âm thanh về mặt lý thuyết, bạn sẽ cần phải thực hiện một số loại sàng lọc cộng tác trước Lasso.


0

Có thể có một cái nhìn về gói CRAN hdi , rằng người ta cung cấp suy luận cho các mô hình chiều cao và nên thực hiện thủ thuật ... Các phương pháp đầy đủ hơi tẻ nhạt để lặp lại ở đây (có một số, và nó vẫn còn là một khu vực hoạt động khá nghiên cứu), nhưng chúng được mô tả tốt trong bài viết này: http://projecteuclid.org/euclid.ss/1449670857 (Nếu bạn đăng công khai một số dữ liệu thử nghiệm hoặc mô phỏng một số dữ liệu, tôi cũng có thể cung cấp cho bạn một ví dụ cụ thể)


Bạn không thể làm điều này và nhận được giá trị p có ý nghĩa. Họ không tính đến phương sai trong lựa chọn biến của bạn.
Matthew Drury

Đã chỉnh sửa câu trả lời của tôi - gói hdi mà tôi trích dẫn sẽ ổn, và có tính đến phương sai gây ra bởi lựa chọn biến của bạn ...
Tom Wenseleers
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.