Combinez les probabilités de plusieurs modèles multi-classes

Aug 18 2020

Disons que j'ai deux modèles multi-classes (A et B) qui prédisent si un ensemble d'entrées appartient ou non à l'une des 5 classes. Les prédictions de chaque modèle sont des probabilités totalisant 1. À titre d'exemple, imaginez ce qui suit:

+---------+---------+---------+--------+
|         | 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    | ?      |
+---------+---------+---------+--------+

Comment pourrais-je combiner ces probabilités en une seule probabilité qui se résume toujours à une?

Réponses

4 StephanKolassa Aug 18 2020 at 15:25

L'approche la plus simple serait de prendre simplement une moyenne des prédictions pour chaque classe. Vous pouvez utiliser un poids.

Supposons que le premier modèle donne des prédictions $p_1, \dots, p_5$ et le second donne $q_1, \dots, q_5$. ensuite

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

Prenez n'importe quel poids $0<w<1$, définissez la prédiction combinée par $r_i := wp_i+(1-w)q_i$. ensuite

$$ \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. $$

Ainsi, vos prédictions se résument à nouveau à 1. Cela fonctionne également pour plus de deux classificateurs.

En tant que pondérations, vous pouvez utiliser les performances passées de vos deux classificateurs. Ou prenez la moyenne non pondérée,$w=\frac{1}{2}$, ce qui est souvent mieux que d'essayer d'estimer des poids «optimaux» ( Claeskens et al., 2016, IJF ).

Vous pouvez également utiliser toute autre méthode pour combiner vos prédictions et simplement renormaliser les résultats par la suite pour les additionner à 1.