G Gasso
Data Mining
TD Régression logistique
4eme année
Mise en œuvre de la régression logistique
Test sur des données jouet et données réelles
1 Sans détours
1. La fonction reglogclass.m permettant de calculer les paramètres d’un modèle de régression
logistique est fournie sur Moodle. Télécharger et comprenez les différentes étapes de ce pro-
gramme.
2. Ecrire une fonction ypred = reglogval(X, theta) qui prend en entrée une matrice de données
Xet le vecteur θet qui retourne le vecteur des labels prédits.
2 Premiers tests
1. Utiliser le script fourni lors de la séance précédente pour générer n1= 100 données pour C1et
n2= 150 pour C2. Dans la suite on ne travaillera qu’avec les données X,Y générées.
Tester la fonction reglogclass sur ces données. Tracer la frontière de décision donnée par
la méthode de la régression logistique. Calculer l’erreur de classification.
Comparez les résultats obtenus avec ceux de la LDA.
3 Classification de chiffres manuscripts
3.1 Tour de chauffe
Sur Moodle se trouvent les données MNIST apprentissage et test contenant des chiffes 0 à 9.
Téléchargez ces données. Le label associé à un chiffre appartient à {0,· · · ,9,10}(les chiffres 0 ont
comme label 10).
1. Choisir deux chiffres et récupérer les données Xet les labels Ycorrespondants à ces chiffres
dans le jeu d’apprentissage pour former un problème de classification binaire. Faire de même
pour le jeu de test.
2. Réaliser une classification par la méthode de régression logistique sur les données ainsi formées
(Pensez aux fondamentaux de la fouille de données : normalisation des données ; on calcule le modèle sur
l’ensemble d’apprentissage ; on sélectionne les éventuels hyper-paramètres sur les données de validation ;
on teste le modèle final sur le jeu de test). Evaluer les erreurs de classification et de test.
3. Si votre machine tient la charge comparer la régression logistique à la LDA.
3.2 Analyse fine des erreurs de classification
Pour simplifier les notations, on va supposer que C1est la classe des "positifs" (y= 1) et C2la
classe des "négatifs" (y= 0). Pour analyser finement les erreurs on établit la matrice de confusion
suivante
DataMining TD Régression logistique ASI4
XXXXXXXXXX
X
Prédite ˆy
Réelle yC1=P os C2=Neg
C1=P os T P F P
C2=Neg F N T N
Total N1N2
avec
TP : nombre de positifs classés positifs (bonnes prédictions)
FP : nombre de négatifs classés positifs (erreurs)
FN : nombre de positifs classés négatifs (erreurs)
TN : nombre de négatifs classés négatifs (bonnes prédictions)
A partir de cette matrice on peut calculer différents critères de performances utiles pour analyser
les résultats de classification dont :
Taux de faux positifs : fpr =F P
F P +T N =F P
N2
Taux de vrais positifs : tpr =T P
T P +F N =T P
N1
Un bon classifieur est celui qui donnera un faible fpr et un fort tpr
1. Etablir la matrice de confusion sur les données test pour la régression logistique. En déduire
alors les performances de fpr et tpr. Selon vous comment peut-on calculer le taux d’erreur à
partir de la matrice de confusion ?
2. Répondre à la même question pour la méthode LDA et comparer les deux méthodes
4 Quelques noeuds aux cheveux
1. Appliquer la régression logistique sur les données clowns.mat. Séparer les données en deux
parties : apprentissage et test. Estimer l’erreur de classification pour les données d’apprentissage
et de test. On tracera la frontière de décision obtenue ainsi que les données des deux classes.
2. Comment améliorer les performances en classification ?
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !