2. Le Random Forest
2.1 Tout savoir sur le Random Forest
Maintenant que vous êtes un expert de l’algorithme d’arbre de décision, vous allez découvrir un nouvel algorithme basé sur celui-ci : Le Random Forest.
A/ La sagesse des foules
Lorsque l’on demande à des experts de résoudre un problème, il est probable qu’ils ne retournent pas tous la même solution. Cela veut dire que même lorsque l’on fait appel à un expert, on peut toujours s’attendre à une marge d’erreur.
On appelle ce phénomène, la variabilité inter-opérateur.
Il existe une autre source de variabilité lorsque l’on demande à un expert de résoudre un même problème à interval de temps différent. C’est ce que l’on appelle la variabilité intra-opérateur.
Parmi toutes ces réponses, comment savoir laquelle est la bonne ?
La réponse de l’expert 3 ?
la deuxième réponse de l’expert 1 ?
On ne sait pas vraiment, mais ce que l’on peut faire c’est prendre en compte toutes ces réponses en même temps. Dans le cas général, la moyenne des réponses des experts sera plus précise que les réponses indépendantes, c’est ce que l’on appelle la sagesse des foules.
La sagesse des foules est une théorie qui présuppose que la perception et la résolution d’un problème sont plus efficaces par une foule que par n’importe quel individu.
Selon ce concept, une foule d’amateur peut mieux répondre à un problème qu’un expert du domaine.
La foule cependant doit répondre à trois hypothèses pour valider cette théorie :
- la diversité : avoir des personnes de divers milieux avec des idées originales ;
- l’indépendance : permettre à ces avis divers de s’exprimer sans aucune influence ;
- la décentralisation : laisser ces différents jugements s’additionner plutôt que de laisser une autorité supérieure choisir les idées qu’elle préfère.
De ce concept philosophique on en retire une application mathématique : l’ensemble learning.
Les méthodes d’ensemble learning utilisent plusieurs algorithmes d’apprentissage et prennent en compte les résultats de ces modèles afin d’obtenir de meilleures performances prédictives que les modèles pris séparément.
B/ L'ensemble learning
Imaginons que l’on a entraîné 5 modèles pour résoudre un problème avec un jeu de données de 5 exemples.
Dans le tableau ci-dessous, chaque colonne correspond à un modèle, chaque ligne à un exemple. Chaque 1 vert signifie que le modèle a donné la bonne réponse pour le problème en question. Chaque 0 rouge signifie que le modèle a échoué à la résolution du problème.

On peut voir, que chaque modèle à un taux de réussite de 60% sur nos 5 exemples.
Maintenant, appliquons la théorie de l’ensemble learning. Nous allons créer un modèle qui interroge chacun des 5 sous-modèles et qui retourne la valeur la plus souvent prédite par les sous-modèles.
Notre super modèle sur la colonne à droite arrive à prédire la bonne réponse à chaque exemple. Ce super modèle a donc une performance de 100% alors même qu’il utilise des sous-modèles n’ayant pas plus de 60% de performances.
Ce n’est pas de la magie, c’est l’ensemble learning.
C/ Le random forest
Comme on a pu le voir dans la première partie, les arbres de décision sont des modèles de prédictions intéressants mais trop sensibles aux changements dans le jeu d’entraînement ce qui les rend instables et difficilement généralisables sur d’autres jeux de données. Pour résoudre ce problème, il est possible de combiner la théorie de l’ensemble learning avec les arbres de décision.
L’objectif est d’entraîner plusieurs arbres à résoudre un même problème. Le modèle final utilisera les différentes réponses de ces arbres afin de retourner une réponse plus stable et précise pour résoudre le problème. C’est ce type de modèle que l’on appelle random forest.
La création du dataset
Si nous créons 5 nos arbres sur le même jeu de données, on obtient 5 fois le même modèle. Si nous avons 5 modèles identiques, cela nous est d’aucune utilité : nous voulons des modèles différents.
Dans ce but, nous allons utiliser des jeux de données différents pour la création de chaque arbre. Pour cela, on va sélectionner aléatoirement des exemples et des variables du jeu de données.
L’entraînement de l’arbre
L’échantillon extrait du jeu de données contient une partie des exemples et une partie des variables. Comme on l’a dit précédemment, les arbres de décision sont très sensibles aux variations dans le jeu d’entraînement. De ce fait, chaque arbre sera différent. De plus, chaque arbre se base sur des variables différentes pour obtenir sa prédiction.
De cette manière on ajoute à la forêt un arbre complètement différent.
On va répéter l’étape de création du dataset et de l’entraînement de l’arbre jusqu’à créer le nombre d’arbres désiré de notre forêt.
Pour la prédiction sur de nouveaux exemples, il suffit de donner les caractéristiques de l’exemple à chaque arbre, de prendre en compte leur prédiction et de retourner la moyenne de ces prédictions.
Les limites
Etant donné que l’on construit les arbres de manière aléatoire, on compte sur la chance pour créer un nouvel arbre qui soit utile à notre forêt. Il n’est pas rare non plus de créer des arbres doublons. Bref, la forêt n’est pas optimisée.