2012-02-16 20 views
5

Tôi muốn thiết lập một hệ thống mà đám đông cung cấp 10 mục tốt nhất từ ​​một tập hợp có thể thay đổi từ 20-2000 mục (xếp hạng trong danh sách mười mục hàng đầu không quan trọng). Có một bài đăng ngăn xếp tuyệt vời trên các thuật toán để thực hiện sắp xếp thực tế tại How to rank a million images with a crowdsourced sort. Tôi đang nghiêng về phía yêu cầu người dùng mà họ thích nhất giữa hai mục và sau đó sử dụng thuật toán TrueSkill.Thuật toán tốt nhất cho mai mối cho một thứ hạng có nguồn gốc từ đám đông?

Câu hỏi của tôi được đưa ra là tôi đang sử dụng một cái gì đó như TrueSkill, thuật toán tốt nhất để quyết định cặp mục nào để hiển thị một người dùng để xếp hạng? Tôi sẽ có một số cơ hội hạn chế để hỏi mọi người về những mặt hàng nào họ thích nhất vì vậy điều quan trọng là các cặp được trình bày sẽ cung cấp cho hệ thống thông tin giá trị nhất trong việc xác định top 10. Một lần nữa, tôi chủ yếu quan tâm đến việc tìm kiếm ít hơn như thế nào phần còn lại của các hạng mục xếp hạng trong số họ hoặc thậm chí làm thế nào mười xếp hạng hàng đầu trong số họ.

Trả lời

1

Vấn đề này rất giống với việc tổ chức giải đấu knock-out mà kỹ năng của người chơi không được biết rõ và số lượng người chơi rất cao (nghĩ giải đấu cấp trường). Kể từ vòng robin (O (n^2) trận đấu) là rất tốn kém, nhưng một giải đấu knock-out đơn giản là quá đơn giản, tùy chọn thông thường là để đi với cấu trúc loại bỏ k. Về cơ bản, mọi người chơi (trong ngữ cảnh của bạn một vật phẩm) đều bị đánh gục sau khi thua k. Hãy xem xét cấu trúc loại bỏ đôi: http://en.wikipedia.org/wiki/Double-elimination_tournament.

Có lẽ bạn có thể sửa đổi đủ để đáp ứng nhu cầu của mình.

1

Một thuật toán nổi tiếng khác cho điều này được tạo ra để tính toán thứ hạng trong các giải đấu Go hoặc Cờ vua. Bạn có thể xem số MacMahon Algorithms để tính các cặp như vậy và các cấp bậc cùng một lúc. Nó sẽ có thể cắt ngắn thuật toán này, do đó nó sẽ chỉ sản xuất một bộ 10 mục tốt nhất.

Bạn có thể tìm thêm chi tiết trong Christian Gerlach's thesis, nơi ông mô tả thuật toán tối ưu hóa thực tế (không may là luận án bằng tiếng Đức).

Các vấn đề liên quan