Làm thế nào để thực hiện hồi quy logistic với một số lượng lớn các tính năng?


10

Tôi có một bộ dữ liệu với 330 mẫu và 27 tính năng cho mỗi mẫu, với một vấn đề về lớp nhị phân cho Hồi quy logistic.

Theo "quy tắc nếu mười", tôi cần ít nhất 10 sự kiện cho mỗi tính năng được đưa vào. Mặc dù vậy, tôi có một bộ dữ liệu không cân bằng, với 20% o lớp dương và 80% lớp âm.

Điều đó mang lại cho tôi chỉ 70 sự kiện, cho phép chỉ có khoảng 7/8 tính năng được đưa vào mô hình Logistic.

Tôi muốn đánh giá tất cả các tính năng như dự đoán, tôi không muốn chọn bất kỳ tính năng nào.

Vì vậy, những gì bạn sẽ đề nghị? Tôi có nên thực hiện tất cả 7 tính năng kết hợp? Tôi có nên đánh giá từng tính năng một mình với một mô hình kết hợp và sau đó chỉ chọn những tính năng tốt nhất cho một mô hình cuối cùng không?

Tôi cũng tò mò về việc xử lý các tính năng phân loại và liên tục, tôi có thể trộn chúng không? Nếu tôi có phân loại [0-1] và liên tục [0-100], tôi có nên bình thường hóa không?

Tôi hiện đang làm việc với Python.

Cảm ơn sự giúp đỡ của bạn!


"Tôi cũng tò mò về việc xử lý các tính năng phân loại và liên tục" Tôi tin rằng điều đó sẽ tạo ra một câu hỏi riêng biệt. Trong thực tế, nó đã được hỏi ở đây .
E_net4 hàng tuần lau

2
có một sự khác biệt giữa việc không có đủ mẫu và có các tính năng không liên quan. Tôi sẽ không tập trung quá nhiều vào việc chọn chính xác 7 tính năng vì một số quy tắc đơn giản ...
oW_

1
Hãy làm những gì bạn sẽ làm: sử dụng xác nhận chéo để tối ưu hóa chính quy. Tôi đề nghị lưới đàn hồi (L1 + L2).
Emre

Câu trả lời:


6

Để giảm mô hình của bạn xuống còn 7 biến, có một vài cách tiếp cận bạn có thể thực hiện:

  1. PCA (không được giám sát): điều này tạo ra các kết hợp tuyến tính "mới" của dữ liệu của bạn trong đó mỗi thành phần xử lý giải thích càng nhiều phương sai trong dữ liệu càng tốt. Vì vậy, 7 thành phần đầu tiên (trong số 27) sẽ có thể giải thích tỷ lệ phần trăm tốt của biến thể trong dữ liệu của bạn. Sau đó, bạn có thể cắm bảy thành phần này vào phương trình hồi quy logistic của bạn. Nhược điểm ở đây là bởi vì các thành phần là sự kết hợp của các biến ban đầu của bạn, bạn mất một số khả năng diễn giải với mô hình hồi quy của mình. Tuy nhiên, nó sẽ tạo ra độ chính xác rất tốt. Kỹ thuật tương tự này được áp dụng cho các phương pháp giảm kích thước khác như
  2. Một phương pháp phổ biến khác trong hồi quy là chuyển tiếp từng bước trong đó bạn bắt đầu với một biến và thêm vào từng bước khác, được giữ hoặc bỏ dựa trên một số tiêu chí (thường là điểm BIC hoặc AIC). Hồi quy ngược từng bước là điều tương tự nhưng bạn bắt đầu với tất cả các biến và loại bỏ từng biến một lần nữa dựa trên một số tiêu chí. Dựa trên một tìm kiếm ngắn gọn, dường như python không có hồi quy từng bước nhưng chúng thực hiện một thuật toán loại bỏ tính năng tương tự được mô tả trong bài đăng Khoa học dữ liệu này .
  3. L1L1

Như @ E_net4 đã nhận xét, câu hỏi liên tục của bạn được giải quyết trong một bài đăng khác.


5

Bạn đang thực hiện "Quy tắc 10" quá nghiêm túc. Đó là một quy tắc rất thô sơ. Nó không có ý định được sử dụng như bạn đang sử dụng nó.

Nghe có vẻ như bạn đang nghĩ: "Tôi chỉ có 70 trường hợp tích cực, vì vậy theo Quy tắc 10, tôi chỉ được phép sử dụng 7 tính năng; làm cách nào để chọn 7 tính năng sẽ sử dụng?"

Đó không phải là quy tắc 10 có nghĩa là gì. Đây không phải là một số quy tắc chỉ định số lượng tính năng bạn được phép sử dụng. Quy tắc 10 là mô tả, không quy định và đó là một hướng dẫn gần đúng: nếu số lượng phiên bản ít hơn 10 lần số lượng tính năng, bạn có nguy cơ quá cao và bạn có thể nhận được kết quả kém.

Vậy bạn nên làm gì? Dù sao thì bạn cũng nên làm những gì bạn làm: sử dụng chính quy hóa và sử dụng xác thực chéo để chọn siêu tham số chính quy. Ngoài ra, điều quan trọng là phải có một bộ kiểm tra giữ mà bạn không chạm vào cho đến khi bạn hoàn thành mọi thứ về bộ phân loại, để tránh ước tính chính xác quá mức và sai lệch.

Và nếu bạn có thể nhận được nhiều dữ liệu hơn, điều đó thực sự có ích.

Cuối cùng, vì bạn có các lớp mất cân bằng, bạn có thể cân nhắc đọc về sự mất cân bằng của lớp và các phương pháp để xử lý nó.

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.