Les forêts aléatoires présentent-elles un biais de prédiction?


12

Je pense que c'est une question simple, bien que le raisonnement derrière pourquoi ou pourquoi ne le soit pas. La raison pour laquelle je demande, c'est que j'ai récemment écrit ma propre implémentation d'un RF et bien qu'il fonctionne bien, il ne fonctionne pas aussi bien que prévu (basé sur l' ensemble de données du concours Kaggle Photo Quality Prediction , les scores gagnants et certains des les informations ultérieures disponibles sur les techniques utilisées).

La première chose que je fais dans de telles circonstances est l'erreur de prédiction de tracé pour mon modèle, donc pour chaque valeur de prédiction donnée, je détermine le biais (ou écart) moyen par rapport à la valeur cible correcte. Pour mon RF, j'ai obtenu cette intrigue:

Valeur de prédiction par rapport au biais de la valeur cible correcte

Je me demande s'il s'agit d'un modèle de biais couramment observé pour les RF (sinon, cela pourrait peut-être être quelque chose de spécifique à l'ensemble de données et / ou à ma mise en œuvre). Je peux bien sûr utiliser ce tracé pour améliorer les prévisions en l'utilisant pour compenser le biais, mais je me demande s'il y a une erreur ou une lacune plus fondamentale dans le modèle RF lui-même qui doit être corrigée. Merci.

== ADDENDUM ==

Mon enquête initiale se trouve sur cette entrée de blog Random Forest Bias - Update


2
Cela pourrait être une caractéristique de vos données; avez-vous essayé d'exécuter une autre implémentation RF sur le même ensemble de données pour voir si elle reproduit cet effet?

Réponses:


4

(Je suis loin d'être expert. Ce ne sont que des réflexions d'un statisticien subalterne qui a traité des problèmes différents, mais vaguement analogues. Ma réponse pourrait être hors contexte.)

Étant donné un nouvel échantillon à prévoir et un oracle qui a accès à un ensemble d'entraînement beaucoup plus vaste, alors la "meilleure" et la plus honnête prédiction est de dire "je prédis avec 60% de probabilité que cela appartienne à la classe rouge plutôt que la classe bleue ".

Je vais donner un exemple plus concret. Imaginez que, dans notre très grand ensemble de formation, il existe un grand ensemble d'échantillons très similaires à notre nouvel échantillon. Parmi ceux-ci, 60% sont bleus et 40% sont rouges. Et rien ne semble distinguer le Blues du Rouge. Dans un tel cas, il est évident qu'un 60% / 40% est la seule prédiction qu'une personne sensée peut faire.

Bien sûr, nous n'avons pas un tel oracle, au lieu de cela, nous avons beaucoup d'arbres. Les arbres de décision simples sont incapables de faire ces prédictions à 60% / 40% et donc chaque arbre fera une prédiction discrète (Rouge ou Bleu, rien entre les deux). Comme ce nouvel échantillon tombe juste du côté rouge de la surface de décision, vous constaterez que presque tous les arbres prédisent le rouge plutôt que le bleu. Chaque arbre prétend être plus certain qu'il ne l'est et déclenche une ruée vers une prédiction biaisée.

Le problème est que nous avons tendance à mal interpréter la décision à partir d'un seul arbre. Lorsqu'un seul arbre place un nœud dans la classe Red, nous ne devons pas interpréter cela comme une prédiction à 100% / 0% de l'arbre. (Je ne dis pas seulement que nous «savons» que c'est probablement une mauvaise prédiction. Je dis quelque chose de plus fort, c'est-à-dire que nous devons être prudents, nous interprétons comme étant la prédiction de l'arbre). Je ne peux pas développer de manière concise comment résoudre ce problème. Mais il est possible d'emprunter des idées dans des domaines statistiques sur la façon de construire des divisions plus «floues» au sein d'un arbre afin d'encourager un seul arbre à être plus honnête quant à son incertitude. Ensuite, il devrait être possible de faire une moyenne significative des prévisions d'une forêt d'arbres.

J'espère que cela aide un peu. Sinon, j'espère apprendre de toutes les réponses.


Séparations floues, je comprends, dans l'esprit de la RF extrême (mais peut-être pas si extrême?). Je vais essayer cela car votre explication est logique pour moi. Merci.
redcalx

[Random Forest - Réflexions sur le problème de biais] ( the-locster.livejournal.com/134241.html ) "La clé alors (je pense) est d'utiliser une randomisation non uniforme [du seuil de fractionnement] de telle sorte que l'ensemble de tous les points de partage une fois combinés recréeront y = f (x), et s'approcheront d'une représentation parfaite de y = f (x) car le nombre de DT dans le RF tend vers l'infini. "
redcalx

Les prévisions à 60/40% ne seraient-elles pas gérées par un arbre de régression? La confiance serait le rapport de classe dans la partition d'une feuille (pour l'ensemble d'apprentissage). Peut-être que cela peut / a été étendu pour gérer la puissance statistique aussi
Alter

3

Oui. La plupart des arbres ont un biais dans la queue. Voir:

Comment les fractionnements d'arbre de décision devraient-ils être mis en œuvre lors de la prévision des variables continues?

"Un problème potentiel avec les arbres est qu'ils ont tendance à mal s'intégrer dans la queue. Imaginez un nœud terminal qui capture la plage basse de l'ensemble d'apprentissage. Il prédira en utilisant la moyenne de ces points de consigne d'apprentissage, qui sous-estimeront toujours le résultat (puisque c'est la moyenne). "


Je ne pense pas que ce commentaire s'applique aux forêts aléatoires
Zach

Je crois que l'implémentation de référence des forêts aléatoires s'arrête avec environ 5 observations dans les nœuds lorsque la variable de réponse est continue. Cela introduirait encore une petite quantité de biais si la variable de fractionnement était également continue. Similaire à la raison pour laquelle LOESS semble souvent mieux qu'une moyenne mobile centrée sur les bords du support ...
Shea Parkes
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.