Diberi pick tim Anda dan ban kedua sisi, ia memeringkat hero yang masih tersedia. Random forest scikit-learn dilatih di atas vektor hero multi-hot yang dibangun dari tabel sinergi dan counter per hero — 256 berkas relasi, sepasang untuk tiap hero.
Hasil pengukuran
Loop pelatihannya bermaksud memperlakukan counter sebagai contoh negatif — sebuah komentar menyatakannya — lalu menambahkannya dengan vektor masukan yang sama dan posisi label yang sama seperti pasangan sinergi. Tidak ada yang menandainya sebagai kasus kebalikan, sehingga modelnya mempelajari keterkaitan, bukan keunggulan.
src/HeroSuggestor/main.py, prepare_training_data
Fase draft dalam gim lima lawan lima adalah persoalan batasan dengan informasi publik: ban kedua sisi, pick sejauh ini, dan tabel besar berisi hero mana yang cocok bersama dan melawan hero mana. Yang ini mengubah tabel itu menjadi model dan modelnya menjadi daftar pendek berperingkat di baris perintah.
Hero bisa disebut lewat id atau lewat nama, dengan nama dinormalkan untuk spasi dan tanda baca, dan semua yang sudah dipick atau diban dikeluarkan dari himpunan kandidat sebelum penilaian.
Lima rekan terbaik dan lima counter terkuat tiap hero menjadi sampel pelatihan: hero-nya sebagai vektor masukan multi-hot, hero terkaitnya sebagai labelnya. Random forest berisi seratus pohon mempelajari pemetaan itu, dan menilai seorang kandidat berarti menanyai modelnya seberapa kuat ia mengaitkan kandidat itu dengan tim saat ini.
Satu detail menentukan apa arti keluarannya sebenarnya. Sebuah komentar di loop pelatihannya menyebut pasangan counter sebagai sampel negatif, lalu pasangan itu ditambahkan persis seperti pasangan sinergi — vektor masukan sama, posisi label sama — sehingga tidak ada apa pun di datanya yang menandainya sebagai kasus kebalikan. Modelnya dilatih atas satu gagasan keterkaitan yang tidak dibedakan.
Yang karenanya ia hasilkan adalah hero yang muncul di sekitar pick Anda: petunjuk yang berguna di dalam pewaktu draft tiga puluh detik, dan bukan probabilitas kemenangan. Membacanya sebagai yang terakhir berarti mengambil lebih banyak dari data pelatihannya daripada yang ada di dalamnya. Memperbaikinya berarti memberi counter label sendiri atau model sendiri, dan itu proyek yang berbeda, bukan sebuah tambalan.