J'ai des données d'apprentissage composées de ~ 45k échantillons, chacun a 21 fonctionnalités. J'essaie de former un classificateur de forêt aléatoire sur ces données, qui sont étiquetées en 3 classes (-1, 0 et 1). Les classes sont plus ou moins égales dans leurs tailles.
Mon modèle de classificateur de forêt aléatoire utilise gini
comme critère de qualité divisé, le nombre d'arbres est de 10 et je n'ai pas limité la profondeur d'un arbre.
La plupart des caractéristiques ont montré une importance négligeable - la moyenne est d'environ 5%, un tiers d'entre elles est d'importance 0, un tiers d'entre elles a une importance supérieure à la moyenne.
Cependant, le fait le plus frappant est peut-être le score d'oob (out-of-bag): un peu moins de 1%. Cela m'a fait penser que le modèle échoue, et en effet, en testant le modèle sur un nouvel ensemble indépendant de taille ~ 40k, j'ai obtenu un score de 63% (ça sonne bien jusqu'à présent), mais une inspection plus approfondie de la matrice de confusion m'a montré que le le modèle ne réussit que pour la classe 0 et échoue dans environ 50% des cas lorsqu'il s'agit de décider entre 1 et -1.
La sortie de Python jointe:
array([[ 7732, 185, 6259],
[ 390, 11506, 256],
[ 7442, 161, 6378]])
C'est naturellement parce que la classe 0 a des propriétés spéciales qui la rendent beaucoup plus facile à prévoir. Cependant, est-il vrai que le score OOB que j'ai trouvé est déjà un signe que le modèle n'est pas bon? Qu'est-ce qu'un bon score OOB pour les forêts aléatoires ? Existe-t-il une loi empirique qui aide à déterminer si un modèle est «bon», en utilisant le score oob seul ou en combinaison avec d'autres résultats du modèle?
Modifier: après avoir supprimé les mauvaises données (environ le tiers des données), les étiquettes étaient plus ou moins 2% pour 0 et 49% pour chacun de -1 / + 1. Le score OOB était de 0,011 et le score sur les données de test était de 0,49, avec une matrice de confusion à peine biaisée vers la classe 1 (environ 3/4 des prédictions).
scikit
l » oob_score
est une partition, qui est une mesure d' un accord. Je n'ai cependant pas pu le trouver documenté.