Ce module se concentre sur les différents types de conditions utilisés pour créer des arbres de décision.
Alignement à l'axe et conditions obliques
Une condition alignée sur l'axe implique une seule caractéristique. Une condition oblique implique plusieurs caractéristiques. Par exemple, voici une condition alignée sur l'axe:
num_legs ≥ 2
La condition suivante est une condition oblique:
num_legs ≥ num_fingers
Souvent, les arbres de décision sont entraînés uniquement avec des conditions alignées sur l'axe. Cependant, les fractionnements obliques sont plus puissants, car ils peuvent exprimer des modèles plus complexes. Les divisions obliques produisent parfois de meilleurs résultats, mais les coûts d'entraînement et d'inférence sont plus élevés.
split_axis="SPARSE_OBLIQUE"
.
Figure 4. Exemples de condition alignée sur l'axe et d'une condition oblique.
Représenter graphiquement les deux conditions précédentes permet de séparer l'espace des caractéristiques comme suit:
Figure 5. Séparation dans l'espace des caractéristiques pour les conditions de la figure 4
Conditions binaires et non binaires
Les conditions ayant deux résultats possibles (par exemple, vrai ou faux) sont appelées conditions binaires. Les arbres de décision ne contenant que des conditions binaires sont appelés arbres de décision binaires.
Les conditions non binaires peuvent avoir plus de deux résultats. Par conséquent, les conditions non binaires ont plus de pouvoir discriminatif que les conditions binaires. Les décisions contenant une ou plusieurs conditions non binaires sont appelées arbres de décision non binaires.
Figure 6: Arbres de décision binaires et non binaires
Les conditions avec trop de puissance sont également plus susceptibles de surapprentissage. Pour cette raison, les forêts de décision utilisent généralement des arbres de décision binaires. Ce cours va donc s'y intéresser.
Le type de condition le plus courant est la condition de seuil, exprimée comme suit:
feature ≥ threshold
Exemple :
num_legs ≥ 2
Il existe d'autres types de conditions. Voici d'autres types de conditions binaires couramment utilisés:
Tableau 2. Types courants de conditions binaires.
Nom | Condition | Exemple |
condition de seuil | $\mathrm{fonctionnalité}_i \geq \mathrm{threshold}$ | $\mathrm{num\_legs} \geq 2$ |
condition d'égalité | $\mathrm{feature}_i = \mathrm{value}$ | $\mathrm{species} = ``cat"$ |
condition d'encart | $\mathrm{fonctionnalité}_i \in \mathrm{collection}$ | $\mathrm{species} \in Dialogflow, `chien", `oiseau"\}$ |
condition oblique | $\sum_{i} \mathrm{weight}_i \mathrm{fonctionnalité}_i \geq \mathrm{threshold}$ | 5 $ \ \mathrm{num\_legs} + 2 \ \mathrm{num\_eyes} \geq 10$ |
caractéristique manquante | $\mathrm{fonctionnalité}_i \mathrm{is} \mathrm{Manquant}$ | $\mathrm{num\_legs} \mathrm{est} \mathrm{Manquant}$ |