0% ont trouvé ce document utile (0 vote)
8 vues3 pages

Projet SVM : Classification et Régression

Ce projet de deux semaines pour des étudiants en informatique se concentre sur l'implémentation des Machines à Vecteurs de Support (SVM) pour la classification et la régression. Les étudiants doivent préparer des données, créer et évaluer un modèle SVM, puis le comparer à un autre algorithme tout en documentant leur méthodologie et résultats. Des extensions et ressources supplémentaires sont également proposées pour enrichir l'apprentissage.

Transféré par

monja.sesame
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)
8 vues3 pages

Projet SVM : Classification et Régression

Ce projet de deux semaines pour des étudiants en informatique se concentre sur l'implémentation des Machines à Vecteurs de Support (SVM) pour la classification et la régression. Les étudiants doivent préparer des données, créer et évaluer un modèle SVM, puis le comparer à un autre algorithme tout en documentant leur méthodologie et résultats. Des extensions et ressources supplémentaires sont également proposées pour enrichir l'apprentissage.

Transféré par

monja.sesame
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

Projet Guidé : Classification et Régression par

SVM
(Support Vector Machines en Python)

Licence 3 - Parcours Informatique - ESTI

Durée : 2 semaines | Modalité : binôme

1 Objectif général
Ce projet vise à mettre en œuvre la théorie des Machines à Vecteurs de Support
(SVM) à travers deux tâches :
1) La classification supervisée (catégorisation de classes) ;
2) La régression (prédiction de valeurs continues).
Les étudiants doivent concevoir un modèle complet, de la préparation des données
jusqu’à la comparaison de performances avec un autre algorithme (KNN, Régression Lo-
gistique ou Réseau de Neurones).

2 Jeux de données proposés


Domaine Jeu de données Source / Chargement
Santé Prédiction du diabète [Link].load_diabetes()
Biologie Identification d’espèces d’Iris [Link].load_iris()
Commerce Satisfaction client Kaggle / OpenData
Environnement Qualité de l’eau ou de l’air Fichier CSV local ou open
data
Synthétique Données générées avec Faker make_classification()

3 Déroulement du projet
Étape 1 : Préparation des données
— Chargement et exploration du dataset (pandas, matplotlib) ;
— Nettoyage et normalisation des données (StandardScaler) ;
— Découpage en ensembles train/test.

Listing 1 – Découpage du jeu de données


1 from sklearn . model_selection import train_test_split
2 X_train , X_test , y_train , y_test = train_test_split (
3 X , y , test_size =0.3 , random_state =42)

1
ESTI - L3 IDEV& RSI Année Universitaire 2025

Étape 2 : Implémentation du modèle SVM


— Créer un modèle SVC ou SVR ;
— Tester plusieurs noyaux : linear, poly, rbf, sigmoid ;
— Comparer les performances.

Listing 2 – Création et entraînement d’un modèle SVM


1 from sklearn import svm
2 model = svm . SVC ( kernel = ’ rbf ’ , C =1.0 , gamma =0.1)
3 model . fit ( X_train , y_train )

Étape 3 : Évaluation et Visualisation


— Calculer accuracy, precision, recall, F1-score ;
— Visualiser la matrice de confusion et les frontières de décision.

Listing 3 – Évaluation du modèle SVM


1 from sklearn . metrics import confusion_matrix ,
ConfusionMatrixDisplay
2 ConfusionMatrixDisplay ( confusion_matrix ( y_test , model . predict (
X_test ) ) ) . plot ()

Étape 4 : Optimisation des hyperparamètres


Utiliser la recherche en grille (GridSearchCV) pour trouver les meilleurs paramètres.
Listing 4 – Recherche des meilleurs paramètres
1 from sklearn . model_selection import GridSearchCV
2

3 params = { ’C ’ :[0.1 ,1 ,10] , ’ gamma ’ :[0.01 ,0.1 ,1] , ’ kernel ’ :[ ’ rbf ’ , ’


poly ’ ]}
4 grid = GridSearchCV ( svm . SVC () , params , cv =5)
5 grid . fit ( X_train , y_train )
6 print ( " Meilleurs ␣ paramètres ␣ : " , grid . best_params_ )

Étape 5 : Comparaison avec un autre modèle


Comparer le SVM à un autre algorithme :
— KNN, Régression Logistique ou MLPClassifier ;
— Comparer les performances et le temps d’entraînement.

Étape 6 : Rapport et Présentation


Le rapport doit comprendre :
i) Introduction et objectif du projet ;
ii) Description du jeu de données ;

2
ESTI - L3 IDEV& RSI Année Universitaire 2025

iii) Méthodologie (prétraitement, tuning, évaluation) ;


iv) Résultats et interprétation graphique ;
v) Comparaison des modèles ;
vi) Conclusion et recommandations.

4 Schéma du pipeline SVM

Prétraitement Évaluation
Jeu de données (Nettoyage, Normalisation) Modèle SVM
(Métriques, Courbes)
Figure : Pipeline d’un projet SVM typique.

5 Extensions possibles (bonus)


— Implémenter un SVR pour la prédiction d’une variable continue.
— Étudier l’influence de la normalisation sur les performances.
— Créer un pipeline complet avec Pipeline de scikit-learn.
— Tester un SVM multi-classes (One-vs-One / One-vs-Rest).
— Produire une visualisation 3D des frontières de décision.

6 Résultats attendus (exemple)


Modèle Noyau Exactitude F1-score
SVM RBF 0.82 0.80
KNN - 0.78 0.76
MLP (2 couches) ReLU 0.85 0.84

7 Ressources recommandées
— Documentation : Scikit-learn SVM - https ://[Link]/stable/modules/[Link]
— Tutoriel : StatQuest - SVM Explained Simply
— Dataset : UCI Machine Learning Repository - https ://[Link]/ml/[Link]

8 Exemple de titre de rapport


« Analyse et classification de la qualité du vin par SVM - Comparaison avec le Réseau
de Neurones MLP »

Bon courage à tous !

Vous aimerez peut-être aussi