Hồi quy nào để sử dụng để tính kết quả bầu cử trong một hệ thống đa đảng?


11

Tôi muốn đưa ra một dự đoán cho kết quả của cuộc bầu cử quốc hội. Đầu ra của tôi sẽ là% mỗi bên nhận được. Có hơn 2 bên nên hồi quy logistic không phải là một lựa chọn khả thi. Tôi có thể thực hiện hồi quy riêng cho mỗi bên nhưng trong trường hợp đó, kết quả sẽ độc lập với nhau. Nó sẽ không đảm bảo rằng tổng kết quả sẽ là 100%.

Tôi nên sử dụng hồi quy nào (hoặc phương pháp khác)? Có thể sử dụng phương thức này trong R hoặc Python thông qua một thư viện cụ thể không?


Nếu bạn được phép thay đổi đầu ra của mình thành nhị phân (tùy thuộc vào bên nào thắng), hồi quy logistic đa phương là phù hợp. Nó vẫn xem xét đầu ra độc lập có thể không phải là những gì bạn muốn.
Robert Smith

Câu trả lời:


5

Robert đã đúng, hồi quy logistic đa thức là công cụ tốt nhất để sử dụng. Mặc dù bạn sẽ cần phải có một giá trị nguyên đại diện cho bên là biến phụ thuộc, ví dụ:

1 = Đa số bảo thủ, 2 = Đa số lao động, 3 = Đa số tự do .... (vân vân)

Bạn có thể thực hiện điều này trong R bằng cách sử dụng gói nnet. Đây là một nơi tốt để nhanh chóng chạy qua cách sử dụng nó.


3

Dựa trên những gì bạn muốn dựa trên dự đoán của bạn? Tôi đã cố gắng dự đoán kết quả bầu cử nhiều bên cho luận án của mình dựa trên các năm trước và sau đó sử dụng kết quả cho một số trạm bỏ phiếu từ năm nay để dự đoán kết quả trong tất cả các trạm bỏ phiếu khác. Đối với điều này, mô hình tuyến tính mà tôi đã so sánh ước tính số phiếu mà mỗi bên sẽ có được bằng cách hồi quy số phiếu từ các năm trước. Nếu bạn có số phiếu bầu ước tính cho tất cả các bên, bạn có thể tính tỷ lệ phần trăm từ đó. Xem Dự báo từ các mẫu không ngẫu nhiên cho bài báo liên quan, mở rộng mô hình tuyến tính.


2

Đây không phải là một hồi quy mà là một vấn đề phân loại nhiều lớp. Đầu ra thường là xác suất của tất cả các lớp cho bất kỳ trường hợp thử nghiệm cụ thể nào (hàng thử nghiệm). Vì vậy, trong trường hợp của bạn, đầu ra cho bất kỳ hàng thử nghiệm cụ thể nào từ mô hình được đào tạo sẽ có dạng:

prob_1, prob_2, prob_3,..., prob_k

trong đó prob_i biểu thị xác suất của lớp thứ i (trong trường hợp của bạn là bên thứ i), giả sử có k lớp trong biến trả lời. Lưu ý rằng tổng của các xác suất k này sẽ là 1. Dự đoán lớp trong trường hợp này sẽ là lớp có xác suất tối đa.

Có nhiều phân loại trong R thực hiện phân loại nhiều lớp. Bạn có thể sử dụng hồi quy logistic với sự hỗ trợ đa lớp thông qua gói nnet trong R và gọi multinomlệnh.

Để thay thế, bạn cũng có thể sử dụng gói gbm trong R và gọi gbmlệnh. Để tạo một trình phân loại nhiều lớp, chỉ cần sử dụng distribution="multinomial" while using thehàm gbm`.

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.