Saya sedang mengerjakan sesuatu seperti masalah berikut. Saya memiliki banyak pengguna dan N buku. Setiap pengguna membuat peringkat yang diurutkan dari semua buku yang dia baca (yang kemungkinan merupakan subset dari buku N), misalnya, Buku 1> Buku 40> Buku 25.
Sekarang saya ingin mengubah peringkat masing-masing pengguna ini menjadi peringkat tunggal yang diperintahkan dari semua buku.
Apakah ada pendekatan yang baik atau standar untuk dicoba? Sejauh ini, saya memikirkan model Bradley-Terry yang diterapkan pada perbandingan berpasangan, tetapi saya bertanya-tanya apakah ada hal lain.
Jawaban:
Jika Anda tertarik digunakan (lebih dari dalam pembangunan), Anda harus memberikan mencoba rankade , sistem peringkat kami.
Rankade gratis dan mudah digunakan, dan ini berbeda dari model Bradley-Terry dan sistem peringkat Elo (berikut perbandingannya ) karena dapat mengelola pertandingan dengan 2+ faksi (yaitu buku, dalam skenario Anda). Memasukkan peringkat yang dipesan pengguna (seperti kecocokan antara dua buku atau lebih, dengan kedudukan akhir terperinci, termasuk ikatan) Anda akan memperoleh peringkat urutan tunggal dari semua buku yang Anda cari. Dalam kecanduan, peringkat memberi Anda kesempatan untuk memeriksa evolusi waktu untuk peringkat buku, dan statistik untuk pencocokan buku, dan banyak lagi.
sumber
Model pemeringkatan Plackett-Luce menangani masalah ini dan merupakan teknik berbasis kemungkinan di mana kemungkinan dimaksimalkan menggunakan rutinisasi maksimalisasi mayorisasi, yang mirip dengan Ekspektasi Maksimalisasi, dalam arti bahwa mereka menggunakan fungsi tujuan tambahan atas fungsi kemungkinan yang merupakan dioptimalkan untuk menjamin maksimalisasi monotonik iteratif dari fungsi kemungkinan. (Lihat algoritma MM untuk model peringkat Plackett-Luce oleh David Hunter). Dia juga menyediakan kode.
Dari perspektif peringkat, mereka adalah perpanjangan dari model Bradley-Terry yang Anda sebutkan di posting Anda. Model Bradley-Terry memperkirakan peringkat global dari sampel peringkat berpasangan. Model Plackett-Luce memperluas ini ke peringkat panjang> = 2. Mereka juga memungkinkan untuk setiap sampel menjadi peringkat dengan panjang yang berbeda.
Ini sangat cocok dengan dataset Anda:
Buku 1> Buku 40> Buku 25
Buku 40> Buku 30
Buku 25> Buku 17> Buku 11> Buku 3 dll.
sumber