Une implémentation de l’algorithme d’apprentissage automatique C4.5 en python
Algorithme C4.5
C4.5 est un algorithme développé par John Ross Quinlan qui crée des contraintes de décision. Un arbre de décision est un outil qui estutilisé pour la classification en apprentissage automatique, qui utilise une structure arborescente où les nœuds internes représentent des tests et les feuilles représentent des décisions. C4.5 utilise des concepts théoriques de l’information tels que l’entropie pour classer les données.
Format de données
Pour chaque jeu de données, il doit y avoir deux fichiers, un qui décrit les classes et les attributs et un qui consiste en les données réelles. Le fichier d’attributs et de classes doit contenir toutes les classes de la première ligne et ensuite, ligne par ligne, les attributs et leurs valeurs possibles si l’attribut est discret. Pour les attributs continus (numériques), les valeurs possibles seraient des « continuos ». Vérifiez le dossier iris dataset pour des données réelles et une syntaxe plus spécifique.
Utilisation
Créez un C4.5 objet comme celui-ci
c1 = C45("path_to_data_file", "path_to_description_file")
Après cela, vous pouvez récupérer et prétraiter les données, générer l’arborescence et l’imprimer à l’écran.
Exécution de tests
Accédez au répertoire « C4.5 » et tapez python -m unittest discover
pour exécuter tous les modules de test sous le dossier « C4.5/tests ». (les noms des modules doivent commencer par « test » et se terminer par « .py »)
Liens pertinents
- https://en.wikipedia.org/wiki/C4.5_algorithm
- https://en.wikipedia.org/wiki/Decision_tree_learning
- http://www.rulequest.com/Personal/
- http://www2.cs.uregina.ca/~dbd/cs831/notes/ml/dtrees/c4.5/tutorial.html