Tôi đang sử dụng glmnet để dự đoán xác suất dựa trên một bộ 5 tính năng sử dụng mã sau. Tôi cần công thức thực tế vì tôi cần sử dụng nó trong một chương trình khác (không phải R).Diễn giải tên hệ số trong glmnet trong R
deg = 3
glmnet.fit <- cv.glmnet(poly(train.matrix,degree=deg),train.result,alpha=0.05,family='binomial')
Tên của các hệ số kết quả có năm vị trí (tôi giả sử đây là một trong mỗi đối tượng) và mỗi một trong số họ là một số giữa 0 và 3 (tôi giả sử đây là bậc của đa thức). Nhưng tôi vẫn còn bối rối về cách chính xác để tái tạo lại công thức.
Thực hiện các ví dụ:
> coef(glmnet.fit,s= best.lambda)
(Intercept) -2.25e-01
...
0.1.0.0.1 3.72e+02
1.1.0.0.1 9.22e+04
0.2.0.0.1 6.17e+02
...
Hãy gọi các tính năng A, B, C, D, E. Đây có phải là cách công thức nên được giải thích?
Y =
-2.25e-01 +
...
(3.72e+02 * (B * E) +
(9.22e+04 * (A * B * E) +
(6.17e+02 * (B^2 + E)
...
Nếu điều đó không đúng thì tôi nên diễn giải như thế nào?
Tôi đã thấy question and answer sau đây nhưng không giải quyết được các loại tên hệ số này.
Cảm ơn trước sự giúp đỡ của bạn.
Cảm ơn phản hồi của bạn. Thật không may, tôi vẫn không chắc chắn làm thế nào để chuyển đổi các tên hệ số và giá trị thành một công thức. "Vì vậy, mỗi hệ số tương ứng với một cột trong dữ liệu đào tạo của bạn". Điều đó không thể đúng. Tôi có ~ 80 hệ số khác 0. Nhưng tôi chỉ có 5 cột dữ liệu huấn luyện. Tôi nghĩ rằng mỗi một trong những con số được phân tách theo thời gian đó có thể tương ứng với một trong các cột của tôi. Bất kỳ ý kiến thứ hai? – dougp
Kiểm tra các cột của: polyData <- poly (train.matrix, degree = deg). poly đang mở rộng dữ liệu đào tạo của bạn (từ 5 cols đến ~ 80) với đa thức trực giao. Đó là những gì bạn đang tìm kiếm? Bạn sẽ thấy rằng có các cột/tên mới và các cột này khớp với các hệ số. – julieth
Tôi hiểu. Điều đó giúp ích rất nhiều. Cảm ơn bạn. Tôi đã thử điều này một lần mà không có "poly" và một lần với mức độ = 1 và mọi thứ rõ ràng hơn. Khi tôi nhìn vào điều này, có vẻ như việc xây dựng lại công thức chung của tôi là chính xác, ngoại trừ một điều. Tôi nghĩ rằng các tính năng A, B, C, D, E thực sự là đa thức trực giao (không phải là dữ liệu thô). – dougp