DÉPARTEMENT D’INFORMATIQUE Niveau : M1- IA
Année 2025/2026 TP - Machine Learning
TP N° 4 (Perceptron et KNN avec Python)
Objectifs pédagogiques
Comprendre et implémenter l’algorithme du perceptron et K-Nearest Neighbors (KNN).
Visualiser les relations entre variables
Manipuler le dataset réel (Iris). Le dataset Iris contient 150 observations de fleurs
réparties en 3 espèces (Setosa, Versicolor, Virginica). Chaque observation comporte 4
caractéristiques :
o Longueur du sépale
o Largeur du sépale
o Longueur du pétale
o Largeur du pétale
Manipulation 1: Le perceptron appliqué au dataset Iris (cas binaire)
1. Charger le dataset Iris et explorer ses caractéristiques.
2. Réaliser une visualisation exploratoire des trois classes (Setosa, Versicolor, Virginica) en
utilisant deux caractéristiques (longueur et largeur des sépales).
3. Justifier le choix de se limiter à deux classes (Setosa et Versicolor) pour ce TP.
4. Sélectionner uniquement ces deux classes et les deux caractéristiques choisies.
5. Diviser les données en ensembles d’entraînement et de test.
6. Entraîner un perceptron sur ces données. (from sklearn.linear_model import
Perceptron)
7. Visualiser les frontières de décision du perceptron en 2D.
8. Interpréter les résultats obtenus et discuter des limites du perceptron.
Manipulation 2: Classification avec KNN sur le dataset Iris
1. Utiliser KNeighborsClassifier de sklearn.
2. Entraîner le modèle avec K=3.
3. Que signifie le paramètre K dans KNN ?
4. Que se passe-t-il si K est trop petit ou trop grand ?
5. Tester plusieurs valeurs de K (1, 3, 5, 7, 11).
6. Question : Quelle valeur de K semble la plus adaptée ? Pourquoi ?