dtreeTrain
Description
L'action dtreeTrain permet d'entraîner un modèleReprésentation mathématique entraînée sur des données pour capturer des tendances, prédire des résultats ou classifier des observations via des algorithmes (Régression, Forêt aléatoire, Gradient Boosting). d'arbre de décision à partir de vos données en utilisant . Que vous cherchiez à faire de la classification ou de la régression, elle plantera de belles graines analytiques (pardon pour le jeu de mots végétal !). En bref, elle génère un de décision robuste pour vous aider à y voir plus clair dans vos variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. explicatives et à extraire de la valeur prédictive de votre table.
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| table | Spécifie la table d'entrée contenant vos précieuses données à analyser. |
| inputs | Liste des variables (colonnes) prédictives utilisées pour faire pousser l'arbre. |
| target | La variable cible (variable à prédire). Si elle est numérique sans être déclarée dans 'nominals', hop, on fait un arbre de régression ! |
| casOut | Table de sortie contenant le modèle de l'arbre généré, prêt à être sauvegardé ou utilisé pour du scoring ultérieur. |
| maxLevel | Profondeur maximale de l'arbre. Évitez de faire un baobab de 100 niveaux si vous voulez que l'algorithme reste interprétable pour les humains. |
| maxBranch | Nombre maximum de branches (enfants) autorisées pour chaque nœud ou niveau de l'arbre. |
| nominals | Liste des variables d'entrée et/ou cibles à traiter strictement de manière catégorielle (nominales). |
| prune | Active l'élagage () avec la méthode C4.5. On coupe les branches mortes pour éviter le surapprentissage de votre modèle ! |
| varImp | Génère l'information d'importance des variables (basé sur la réduction de l'indice de Gini). Idéal pour savoir quelle variable est réellement le patron dans vos données. |
| saveState | Spécifie la table dans laquelle générer le modèle binaire (très performant pour un déploiement et scoring à grande échelle). |
Préparation des données
Création du jeu de données Iris
Création d'une table CAS de test en utilisant le célèbre jeu de données public Iris disponible dans SAShelp.
| 1 | PROC CAS; TABLE.loadTable / caslib="sashelp" path="iris.sashdat" casOut={name="iris", replace=true}; RUN; QUIT; |
Exemples d'utilisation
Arbre de décision basique sur les fleurs Iris
Entraînement d'un arbre de décision simple pour classifier les espèces d'iris avec les paramètres obligatoires.
| 1 | PROC CAS; decisionTree.dtreeTrain / TABLE={name="iris"} target="Species" inputs={"SepalLength", "SepalWidth", "PetalLength", "PetalWidth"} nominals={"Species"} maxLevel=5 casOut={name="modele_iris", replace=True}; RUN; QUIT; |
Résultat Attendu :
Arbre de décision avancé avec élagage et importance des variables
On passe aux choses sérieuses : entraînement d'un arbre avec calcul de l'importance des variables (varImp), contrôle fin de la croissance (maxBranch, leafSize) et sauvegarde du code de scoring via aStore.
| 1 | PROC CAS; decisionTree.dtreeTrain / TABLE={name="iris"} target="Species" inputs={"SepalLength", "SepalWidth", "PetalLength", "PetalWidth"} nominals={"Species"} maxLevel=7 maxBranch=2 leafSize=5 prune=True varImp=True casOut={name="modele_iris_avance", replace=True} saveState={name="astore_iris", replace=True}; RUN; QUIT; |