machine learning

L’algorithme Random Forest et le Machine Learning

Le Random Forest,  forêt d’arbres décisionnels ou encore forêt aléatoire est un algorithme très populaire dans le domaine du Machine Learning. Il est essentiellement basé sur l’assemblage de plusieurs arbres de décision. Ses avantages sont nombreux. On y a recours le plus souvent pour des tâches de régression ou de classification.

Random Forest : un algorithme de Machine Learning

Un Random Forest est un algorithme de Machine Learning visant à réduire la variance des prévisions d’un arbre de décision seul, ce qui en améliore les performances. Cet algorithme de classification est utilisé consiste en effet à combiner plusieurs arbres de décisions. Dans l’appellation « Random Forest », le terme « forest » signifiant « forêt » en français et renvoie à la structure arborescente de cet algorithme de Machine Learning.

Origine du Random Forest

La technique du Random Forest a été proposée en 2001 par le statisticien Leo Breiman et Adèle Cutler. L’algorithme permettant de la déployer est intuitif et rapide à prendre en main. En revanche, les résultats qui en découlent ne sont pas très lisibles.

Avantage du Random Forest

La méthode du Random Forest permet de présenter des estimations dont l’importance est variable, c’est-à-dire des réseaux neuronaux. Son utilisation favorise un travail avec des données manquantes, car celles-ci sont remplacées par la variable apparaissant dans un nœud particulier. Sur l’ensemble du spectre des méthodes de classification, les forêts aléatoires offrent une plus grande précision.

Gestion des données

En outre, le Random Forest favorise la gestion de données volumineuses (grand nombre de variables). La technique peut équilibrer de façon automatique plusieurs ensembles de données lorsqu’une classe est moins régulière que d’autres dans les données. Elle permet également de gérer rapidement les variables et peut ainsi s’adapter aux tâches complexes.

Gestion des paramètres

Avec le Random Forest, il n’y a pas de sur-apprentissage. Il est ainsi possible de réaliser une parallélisation et un calibrage plus aisé des paramètres. Contrairement à d’autres techniques, il n’y a que très peu d’hyperparamètres à gérer. En effet, il faut simplement se contenter du nombre d’arbres décisionnels qui la compose ainsi que de la profondeur maximale de chaque arbre. Cette réalité fait de la Random Forest le modèle de Machine Learning ayant le moins d’hyperparamètres. Et le peu à considérer pour le déploiement de la méthode n’est pas le plus compliqué à gérer. On s’en rend compte particulièrement quand on les compare avec ceux d’une SVM (Support Vector Machine), des algorithmes d’apprentissage automatique qui permettent de résoudre des problèmes de classification, de régression ou de détection d’anomalie. Le paramétrage d’une SVM est assez ambigu, car il met en avant des notions humainement difficiles à comprendre.

Des performances attendues 

Autre point essentiel avec les arbres de décision : leurs bonnes performances. Leur utilisation est très indiquée pour faire des prédictions réalistes. En général, après avoir mis en pratique la méthode du Random Forest, on obtient de bons résultats, que le but soit de résoudre des problèmes de classification ou des problèmes de régression. Il est vrai qu’il existe des modèles plus aboutis qui permettent de pousser plus loin le taux de bonne classification ou de réduire l’erreur moyenne quadratique en cas de régression. Mais la méthode du Random Forest demeure un excellent choix pour se lancer dans le Machine Learning. On note également que les forêts aléatoires sont très souvent exploitées en tant que benchmark dans les compétitions de Machine Learning.

Quand utiliser un Random Forest ? 

L’utilisation d’un algorithme de Random Forest est envisageable pour traiter les problématiques de prédiction. Il est possible de s’en servir dans des challenges Data Science, avec l’assurance d’obtenir de bons résultats. Les forêts aléatoires sont exploitables quand on a un nombre important de variables explicatives. Cette méthode s’appuie sur des techniques novatrices permettant de classer les prédicteurs par ordre d’importance.

Classification et traitement de données volumineuses


Elle est particulièrement utile quand les données comportent des milliers, ou des dizaines de milliers, voire même des centaines de milliers de variables ou de prédicteurs. Random Forest dépasse ainsi largement la portée des outils de classification de régression classiques. Il est alors plus facile de gérer les situations extrêmes par la détermination des variables à utiliser lors des recherches associées. Les étapes d’échantillonnage se multiplient. Plus celles-ci sont importantes, plus les informations qui en découlent sont fiables et performantes. Le Random Forest est le seul outil pouvant tirer parti de chaque enregistrement d’un ensemble de données sans faire de surajustement. C’est un point important à mettre particulièrement en avant pour des ensembles de données limités où chaque enregistrement est important. Tous les enregistrements sont pris en compte pour éviter toute perte d’information.

Des résultats interprétables et/ou efficaces

Dans le domaine du Machine Learning, l’un des défis majeurs ces dernières années est de parvenir à expliquer et à interpréter le mieux possible des modèles. Il existe un dilemme entre explicabilité et efficacité des modèles. La réalité est que les modèles considérés comme les plus efficaces, tels que les réseaux de neurones avec le deep learning, sont les moins interprétables. Le Random Forest se présente comme une excellente solution pour apporter la réponse idéale à ce dilemme. L’efficacité de cette méthode est assez bonne, car il est assez aisé d’interpréter les résultats obtenus. Le Random Forest permet notamment de déterminer quelles sont les features adéquates pour l’obtention d’une prédiction. Cette démarche de Machine Learning fait bénéficier d’une meilleure transparence relative à l’utilisation faite des données d’entraînement.

En mettant en pratique le Random Forest, les données sont utilisées intelligemment afin de limiter les erreurs. Il faut cependant reconnaître que l’algorithme ne peut être fiable à 100 %. Toutefois, il reste l’un des classifieurs les plus efficaces et les plus utilisés. Cela explique pourquoi on s’en est servi pour la classification d’images de la Kinect ou encore pour la mise au point du tutoriel Kaggle permettant de prédire les survivants du naufrage du Titanic.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.