0% ont trouvé ce document utile (0 vote)
440 vues5 pages

Classification Et Évaluation: Objectif Du TP 4

Transféré par

Medilyass Elhamdaoui
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
440 vues5 pages

Classification Et Évaluation: Objectif Du TP 4

Transféré par

Medilyass Elhamdaoui
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Machine learning TP 4 2022/2023

Classification et évaluation

Objectif du TP 4 :

• Appliquer l’algorithme KNN en tant que technique transductive.

• Appliquer les algorithmes arbre de décision, Naive Bayes, SVM et la régression


logistique.

• Evaluation des modèles de classification : Recall, precision, Accuracy, F1 mesure et


matrice de confusion.

• Visualisaation avec yeloowbrick.

• Traiter le problème de déséquilibre des données.

Travail à faire : Nous allons appliquer plusieurs algorithmes de Machine learning supervisé
pour des objectifs de classification sur le dataset diabètes. La deuxième étape consiste à
évaluer ces modèles.

A. Répartition en données d’apprentissage et données de test

Dans toutes les techniques de prédiction, il est obligatoire de répartir tout d’abord la dataset
en deux parties : la première pour la création du model ou d'apprentissage et la deuxième
pour le test.

1. Charger les bibliothèques essentielles :

2. Charger votre dataset diabets.csv dans la dataframe datadiabetes :


data_diabetes = pd.read_csv('diabetes.csv ', sep=',',index_col=None, header=0)

3. Détecter la variable à expliquer Y (target) et les variables explicatives X dans votre


dataset.
4. Répartir vos données en X_train, Y_train et X_test et Y_test.
• from sklearn.model_selection import train_test_split
Pr. N. Daoudi
Machine learning TP 4 2022/2023

• X_train, X_test, Y_train, Y_test = train_test_split(X,Y,


test_size=0.3)

B. Classification par les k-plus proches voisins : KNN

La documentation Scikit learn sur les k-NN est disponible sur http://scikit-learn.org
stable/modules /neighbors.html
1. Entrainer un classifieur des k plus proches voisins (avec k = 15) sur ce jeu de
donné (Le choix du paramètre k est parmi les principales difficultés de K-NN) :

2. Pour évaluer le modèle, il faut l’utiliser tout d’abord prédire lla target pour X_test :
Y_predKNN=model_KNN.predict(X_test)
3. Evaluation du modèle :
3.1 La matrice de confusion : from sklearn.metrics import confusion_matrix

3.2 Calculer les différentes mesures de performances du classifieur crée et en donner


l’interprétation.

4. Utiliser classification_report. Qu’est-ce que vous avez obtenu ?


5. Afficher la courbe ROC. Commenter.

Pr. N. Daoudi
Machine learning TP 4 2022/2023

6. Proposer une façon pour choisir la meilleure valeur de K.


C. Visualisation avec yellowbrick

Yellowbrick est une bibliothèque de visualisation qui facilite la lecture des résultats de
l'évaluation des modèles et leur comparaison.

• Elle permet l’affichage du Rapport de classification, Matrice de confusion, la courbre


ROCAUC, les courbes de précision-rappel pour différents seuils de probabilité. Elle
permet également de detecter visuellement l'équilibre des classes, Erreur de
prédiction de classe (alternative à la matrice de confusion qui montre à la fois le
support et la différence entre les classes réelles et prédites.) et Seuil de discrimination
(affiche la précision, le rappel, f1 et le taux de file d'attente (queue rate) sur tous les
seuils pour les classificateurs binaires qui utilisent une probabilité ou un score de
discrimination.)

1. Utiliser yellowbrick pour afficher le rapport de cassification :

Pr. N. Daoudi
Machine learning TP 4 2022/2023

2. A quoi peut servir ClassePredictionError ?

3. Afficher la courbe de ROC avec yellowbrick et intérpréter le résultat.

D. Classification : Arbre de décision

La classification en apprentissage automatique peut se faire par l’algorithme Arbre de décision


disponible sous Scikit learn via DecisionTreeClassifier :

from sklearn.tree import DecisionTreeClassifier.

Cet algorithme dispose de plusieurs paramètres, notamment :

• min_samples_split qui indique qu’un sommet ne peut être segmenté s’il est composé
de moins de min_samples_split individus.
• min_samples_leaf qui indique qu’une segmentation n’est validée que si et seulement
si les feuilles générées comportent tous au moins min_samples_leaf observations.
• max_depth : la profondeur maximale de l’arbre.
• Criterion : c’est le critère qui permet de mesurer la qualité d'un split. Les critères pris
en charge sont « gini » pour l'impureté de Gini et « entropie » pour le gain
d'informations. par défaut="gini".
1. Entrainer un classifieur arbre de décision sur le même dataset.
2. Evaluer le modèle selon les différentes mesures de performances du classifieur
crée. Interpréter vos résultats
3. Utiliser classification_report.
4. Visualiser l’arbre obtenu :

5. Comparer le modèle KNN et le modèle arbre de décision.

Pr. N. Daoudi
Machine learning TP 4 2022/2023

E. Création d’autres modèles :

1. Refaire les questions de 1 à 4 pour les algorithmes Naive bayes, SVM, Modèle
régression logistique.

2. Proposer une manière pour comparer l’ensemble des modèles.

F. Données déséquilibrées : imbalanced data

1. Oversampling
1.1 Utiliser SMOTE comme technique oversampling pour équilibrer les données.

1.2 Reprendre le modèle SVM.


1.3 Evaluer les modèle.
2. Utilisation du paramétre class_weight
2.1 Reprendre le modèle SVM en précisant class_weight
2.2 Reprendre le modèle et l’évaluer.
2.3 comparer les résultats.
3. Undersampling

3.1 Reprendre le modèle SVM.


1.3 Evaluer les modèle.
4. Comparer les résultats.

Pr. N. Daoudi

Vous aimerez peut-être aussi