Gabungkan kemungkinan beberapa model kelas jamak

Aug 18 2020

Katakanlah saya memiliki dua model multi-kelas (A dan B) yang memprediksi apakah satu set input termasuk dalam salah satu dari 5 kelas atau tidak. Setiap prediksi model adalah probabilitas yang berjumlah 1. Sebagai contoh, bayangkan hal berikut:

+---------+---------+---------+--------+
|         | Model A | Model B | Result |
+---------+---------+---------+--------+
| Class 1 | 0.2     | 0.4     | ?      |
+---------+---------+---------+--------+
| Class 2 | 0.3     | 0.3     | ?      |
+---------+---------+---------+--------+
| Class 3 | 0.15    | 0.2     | ?      |
+---------+---------+---------+--------+
| Class 4 | 0.25    | 0.05    | ?      |
+---------+---------+---------+--------+
| Class 5 | 0.1     | 0.05    | ?      |
+---------+---------+---------+--------+

Bagaimana cara menggabungkan probabilitas ini menjadi satu probabilitas tunggal yang masih berjumlah satu?

Jawaban

4 StephanKolassa Aug 18 2020 at 15:25

Pendekatan paling sederhana adalah dengan mengambil rata-rata prediksi untuk setiap kelas. Anda bisa menggunakan beban.

Misalkan model pertama memberikan prediksi $p_1, \dots, p_5$ dan yang kedua memberi $q_1, \dots, q_5$. Kemudian

$$\sum_{i=1}^5 p_i=\sum_{i=1}^5 q_i = 1.$$

Ambil beban apapun $0<w<1$, tentukan prediksi gabungan dengan $r_i := wp_i+(1-w)q_i$. Kemudian

$$ \sum_{i=1}^5 r_i = \sum_{i=1}^5\big(wp_i+(1-w)q_i\big) = w\sum_{i=1}^5 p_i+(1-w)\sum_{i=1}^5 q_i = w+(1-w) = 1. $$

Jadi prediksi Anda kembali berjumlah 1. Ini juga berlaku untuk lebih dari dua pengklasifikasi.

Sebagai bobot, Anda dapat menggunakan performa sebelumnya dari dua pengklasifikasi Anda. Atau ambil rata-rata tidak tertimbang,$w=\frac{1}{2}$, yang seringkali lebih baik daripada mencoba memperkirakan bobot "optimal" ( Claeskens et al., 2016, IJF ).

Atau, Anda dapat menggunakan metode lain untuk menggabungkan prediksi Anda, dan menormalkan ulang hasilnya setelah itu menjadi 1.