Tôi cần sắp xếp một số sản phẩm dựa trên xếp hạng của người dùng.Thuật toán xếp hạng
Giả sử chúng ta có 3 sản phẩm {một, b, c} và chúng tôi có lưng thức ăn của người dùng về các sản phẩm này. Điều quan trọng không phải người dùng cung cấp cho chúng tôi nguồn cấp dữ liệu (câu hỏi này không phải là về lọc tương quan nếu bạn quen thuộc với nó - quyền lợi của người dùng không phải là trường hợp ở đây)
Mỗi dòng dưới đây là nguồn cấp dữ liệu từ người dùng khi họ cố gắng để so sánh các sản phẩm 3:
150 điểm-b 0 điểm (thành viên này chỉ nói với chúng tôi những gì ông nghĩ về 2 sản phẩm a, b và trong so sánh a và b anh dù rằng nếu ông đưa ra một 150 điểm thì b trị giá 0 điểm)
150 điểm-c 20 điểm
c 200 điểm-10 điểm (mặc dù trước đó thành viên này nghĩ rằng c là tốt hơn mà một)
200 điểm-b 40 chỉ-c 100 điểm
150 điểm-b 50 điểm
150 điểm-b 20 điểm
(.Những đánh giá này chỉ là một mẫu và trong số một thế giới thực sự của sản phẩm và xếp hạng là lớn hơn nhiều so với điều này)
Bây giờ Tôi cần một thuật toán để tìm thứ hạng của sản phẩm dựa trên số phiếu của người dùng. Theo quan điểm của tôi, cách tốt nhất là mô tả vấn đề này với một đồ thị tương quan và kết nối tất cả các sản phẩm với nhau.
Bất kỳ loại trợ giúp hoặc mẹo nào được đánh giá cao.
/******************************************** ************************************/
bạn không thể chỉ thêm điểm và tính toán giá trị trung bình của các điểm sản phẩm của Nguyên nhân đó là tầm quan trọng của nó đã điểm của mình cho rằng một đã có 800 điểm so với b - sau đó c nhận được 10 điểm so với một như thế này:
200 - b 0
200 - b 0
200 - b 0
200 - b 0
c 10 - 0 (điều này có nghĩa là c là tốt hơn so với a)
vì vậy chắc chắn a tốt hơn b nhưng với 10 điểm nhỏ c có xếp hạng tốt hơn từ a
/******************************************** ************************************/
Các baysean hệ thống xếp hạng hoạt động khi các yếu tố được xếp hạng, nhưng không phải khi chúng được xếp hạng liên quan đến các yếu tố khác. –