Données appropriées pour les forêts de décision

Les forêts de décision sont plus efficaces lorsque vous disposez d'un ensemble de données tabulaire (données que vous pouvez représenter dans une feuille de calcul, un fichier CSV ou une table de base de données). Les données tabulaires sont l'un des formats de données les plus courants, et les forêts d'arbres décisionnels doivent être votre solution de modélisation.

Tableau 1. Exemple d'ensemble de données tabulaire

Nombre de pattes Nombre d'yeux Poids (lb) Espèces (étiquette)
2 2 12 Pingouin
8 6 0.1 Araignée
4 2 44 Dog

Contrairement aux réseaux de neurones, les forêts de décision consomment de manière native les données tabulaires du modèle. Lorsque vous développez des forêts de décision, vous n'avez pas à effectuer les tâches suivantes:

  • effectuer un prétraitement tel que la normalisation des caractéristiques ou l'encodage one-hot ;
  • effectuer une imputation (par exemple, en remplaçant une valeur manquante par -1).

Cependant, les forêts de décision ne sont pas adaptées pour consommer directement des données non tabulaires (également appelées données non structurées), telles que des images ou du texte. Oui, il existe des solutions de contournement pour cette limitation, mais les réseaux de neurones gèrent généralement mieux les données non structurées.

Performances

Les forêts de décision sont des échantillons efficaces. En d'autres termes, les forêts d'arbres décisionnels sont bien adaptées à l'entraînement sur de petits ensembles de données, ou sur des ensembles de données dont le ratio de caractéristiques / nombre d'exemples est élevé (peut-être supérieur à 1). Même si les forêts de décision sont efficaces en termes d'échantillons, comme tous les modèles de machine learning, elles sont plus performantes lorsqu'une quantité importante de données est disponible.

Les forêts d'arbres décisionnels sont généralement déduites plus rapidement que les réseaux de neurones comparables. Par exemple, une forêt de décision de taille moyenne exécute l'inférence en quelques microsecondes sur un processeur moderne.