Master Data Science & Big Data
Année 2022-2023
TP : Machine Learning
TP- Decision Trees
Arbres de décision
Les arbres de décision sont l'une des méthodes d'apprentissage
supervisé les plus largement utilisées.
Un arbre de décision est une structure en forme de diagramme où un
nœud interne représente une caractéristique, la branche représente une
règle de décision, et chaque nœud terminal représente le résultat.
Le nœud le plus haut dans un arbre de décision est appelé le nœud
racine. Il apprend à partitionner les données en fonction de la valeur
d'une caractéristique. Cette structure en forme de diagramme vous aide
dans la prise de décision.
Cela se visualise comme un diagramme de flux, qui imite facilement la
pensée humaine.
Bonne Chance !
Les arbres de décision peuvent traiter des données de grande dimension
avec une précision raisonnable.
Voici un exemple simple d'arbre de décision pour déterminer s'il faut
jouer au golf.
Le processus de décision commence par le nœud racine de l'arbre et se
poursuit le long des branches jusqu'aux nœuds terminaux. Ainsi, chaque
branche représente une règle "si-alors".
Dans cet exemple, les premières branches de l'arbre de décision
représentent la règle suivante : si la prévision météorologique est
ensoleillée et l'humidité est élevée, alors il n'y a pas de golf. Plus l'arbre
est profond, plus les règles et les modèles sont complexes. L'algorithme
d'apprentissage des arbres de décision vise à créer un arbre de décision
basé sur un ensemble de données et à produire finalement un ensemble
de règles pour la prédiction.
Exercice
Titre : Classification du diabète avec un arbre de décision Objectif :
Implémenter un classificateur d'arbre de décision pour prédire si une personne
est atteinte de diabète en utilisant le jeu de données sur le diabète.
Instructions :
1- Utilisez le jeu de données "[Link]".
2- Importez la bibliothèque Pandas.
3- Chargez le jeu de données "[Link]" en utilisant la méthode
read_csv() et stockez-le dans une variable df.
4- Affichez un résumé du jeu de données en utilisant la méthode info().
Séparez les caractéristiques (features) du jeu de données en enlevant la
colonne "Outcome" du dataframe X.
5- Chargez la colonne cible nommée "Outcome" dans une variable y.
6- Importez le modèle d'arbre de décision en utilisant la classe
DecisionTreeClassifier de la bibliothèque scikit-learn. Instanciez un objet
de la classe DecisionTreeClassifier.
Bonne Chance !
7- Entraînez le modèle en utilisant la méthode fit() avec les données
complètes (X et y).
8- Faites une prédiction sur un exemple de test en utilisant la méthode
predict() avec les valeurs fournies (par exemple, [5, 77, 60, 10, 100, 30,
0.35, 40]).
9- Affichez la prédiction. Divisez le jeu de données en un ensemble
d'entraînement (80%) et un ensemble de test (20%) en utilisant la
méthode train_test_split() de la bibliothèque scikit-learn.
10- Entraînez le modèle en utilisant la méthode fit() avec les données
d'entraînement (X_train, y_train).
11- Faites des prédictions sur l'ensemble de test en utilisant la méthode
predict() avec les données de test (X_test). Calculez et affichez la matrice
de confusion en utilisant la fonction confusion_matrix() de la
bibliothèque scikit-learn.
12- Calculez et affichez l'exactitude (accuracy), la précision (precision) et
le rappel (recall) en utilisant les fonctions appropriées de la bibliothèque
scikit-learn.
Bonne Chance !