Expériences sur les données du répertoire de données de UCI

publicité
Expériences sur les données du
répertoire de données de UCI
avec TANAGRA
Réalisé par : MOHAMED BEN SAAD
Soutenu par :
M. Antoine Cornuéjols
M. Yves Lechevallier
M. Edwin Diday
Expériences sur les données du répertoire de données de UCI avec TANAGRA
PLAN
1.
Introduction
2.
Cadre théorique
a. Méthode d’apprentissage.
i. Arbre de Décision
ii. Séparateurs à vaste marge
iii. Réseaux de Neurones
iv. Boosting
b. Méthode de validation.
i. Estimation par validation croisée
ii. Utilisation d’un échantillon de test
3.
Jeux de données et Outils
4.
Expérimentation et Analyse
a. La base de données Haberman's Survival
b. La base de données Vehicule
c. La base de données letter-recognition
5.
Tableau récapitulatif
6.
Conclusion
2
Expériences sur les données du répertoire de données de UCI avec TANAGRA
1.
Introduction
La classification est une procédure permettant d’affecter un objet à
la famille à laquelle il appartient. Le but de ce travail est de tester la
performance des méthodes d’apprentissage supervisé (taux d’erreur,
matrice de confusion) telles que les réseaux de neurones, les arbres de
décision et les séparateurs à vaste marge ainsi que l’effet du Boosting
sur ses algorithmes. J’ai ici choisi de tester des données du répertoire
UCI à travers l’outil Tanagra. Les jeux de données sélectionnés sont
différents en nombre et type d’attributs descriptifs, taille et classe à
prédire.
2.
Cadre théorique
a. Méthode d’apprentissage
i. Arbre de Décision
« Un outil d'aide à la décision et à l'exploration de
données.
Il
permet
de
modéliser
simplement,
graphiquement et rapidement un phénomène mesuré
plus ou moins complexe. Sa lisibilité, sa rapidité
d'exécution et le peu d'hypothèses nécessaires a priori
expliquent sa popularité actuelle. »
ii.
Séparateurs
à
vaste
marge
(SVM) : « Technique
d’apprentissage avec professeur destinées à résoudre
des problèmes de discrimination et de régression »
3
Expériences sur les données du répertoire de données de UCI avec TANAGRA
iii.
Réseaux de Neurones
(RN) : Une méthode d’apprentissage
supervisé, souvent utilisé pour des problèmes de
classification et de généralisation (reconnaissance de
formes, des codes postaux, approximation d’une
fonction inconnue).
iv.
Boosting
: « domaine de l’apprentissage automatique. Il
permet d’optimiser les performances des méthodes
d’apprentissage ».
b. Méthodes d’évaluation :
i.
Estimation par validation croisée
: (K-fold cross-validation)
C’est une méthode qui permet de prédire la
performance de la classification. Son mécanisme est
donné par les étapes suivantes :
 Partitionner l’ensemble d’apprentissage en k
partitions égales
 Appliquer l’apprentissage sur les k-1 partitions et
utiliser la kème
partition pour tester.
 Répéter ce processus k fois selon la permutation
circulaire
Ainsi, l’erreur obtenue sera égale à la somme des
erreurs trouvées dans les partitions
ii.
Utilisation d’un échantillon de test
: c’est la méthode la plus
simple. Elle consiste à subdiviser l’ensemble des
4
Expériences sur les données du répertoire de données de UCI avec TANAGRA
exemples en deux ensembles indépendants : T (Test
Set) et A (Training Set). Le nombre d’erreurs.
3.
Jeux de données et Outils
J’ai choisi d’utiliser le logiciel Tanagra (Ver 1.4.42) pour
son
aspect ergonomique afin de tester les algorithmes. Il faut aussi noter la
préparation des données récupérées par la création d’un fichier .arff et
la structuration par :
Les commandes (@relation,@attribute,@Data..).D’où les jeux de
données utilisées, sont décrits comme suit :
La première Haberman's Survival qui concerne une étude sur la
survie des patients ayant subi une chirurgie du cancer du sein entre
1958 et 1970 aux USA. Elle est composée de 4 attributs et 306
exemples.
La deuxième letter-recognition décrite par 17 attributs et 20000
exemples dont l’objectif est d’identifier les 26 lettres majuscules de
l’alphabet.
La troisième Vehicule lié à une étude des voitures. Elle est
composée de 19 attributs et 846 exemples.
5
Expériences sur les données du répertoire de données de UCI avec TANAGRA
4.
Expérimentation et Analyse
Dans tous les tests effectués, j’ai utilisé las paramètres par défaut
RN
C 4.5
a. La base de données Haberman's Survival :
i. Réseau de neurones :
Le taux d’erreur est de 24,5% (très élevé)
6
C-SVC
Expériences sur les données du répertoire de données de UCI avec TANAGRA
 Il y a 19 patients prédits comme morts 5 ans après
l’opération alors qu’ils sont toujours en vie, et 56 classés
vivants alors qu’ils sont morts 5 ans après.
La partie ATTRIBUTE CONTRUBTION calcule le taux d’erreur du
modèle dans lequel on aurait désactivé un des descripteurs. Cette
procédure permet ainsi d’évaluer, la contribution individuelle de
chaque descripteur dans les performances du réseau.
La contribution de l’attribut « Nombre de ganglions axillaires » est
très grande.
Evaluation :
Le taux d’erreur en apprentissage est très souvent biaisé.J’ai utiliser la
méthode de la validation croisée pour obtenir une évaluation plus
fiable de l’erreur.
J’ai fixé le nombre de portions (Folds) à 10 pour une seule itération
7
Expériences sur les données du répertoire de données de UCI avec TANAGRA
Après l’exécution du composant on obtient les résultats suivant :
Le taux d’erreur estimé en validation croisée est de 25,3% de ,il a
augmenté de 1% .
BOOSTING
L’application du Boosting sur le réseau de neurones a amélioré
légèrement le taux d’erreur qui est descendu à 23.19
ii. Arbre de décision (C4.5) :
8
Expériences sur les données du répertoire de données de UCI avec TANAGRA
Le taux d’erreur est de 18.63%(très élevé)
l’arbre de décision est constitué de 21 noeuds dont 11 sont des feuilles.
Evaluation en validation croisée
9
Expériences sur les données du répertoire de données de UCI avec TANAGRA
La lecture des résultats affichés après l’application de la validation
croisée montre que le taux d’erreur s’est presque doublé,il est passé de
18.31% à 31.33% ,il faut dire que le deuxième taux est plus proche de
la valeur réelle vu que le premier donnée sur l’ensemble
d’apprentissage est toujours sous-estimé.
BOOSTING
Le Boosting a très bien amélioré les résultats puisque le taux d’erreur
s’est détérioré,pour atteindre 9.8%.
10
Expériences sur les données du répertoire de données de UCI avec TANAGRA
iii. C-SVC :
*Le paramétrage par défaut correspond à un SVM linéair
Le taux d’erreur est de 26.47%(très élevé)
La lecture de la matrice de confusion montre que l’algorithme n’a pas
réussi à bien classer aucun patient de la deuxième classe.
Il est à noter que l’évaluation en validation croisée ne change presque
pas le résultat. L’application du Boosting ne change pas le taux d’erreur
mais on remarque un grand changement au niveau de la matrice de
confusion.
11
Expériences sur les données du répertoire de données de UCI avec TANAGRA
b. La base de données Vehicule:
i. Réseau de neurones :
Le taux d’erreur est de 12.29%
Evaluation en validation croisée
Le taux d’erreur augmente pour atteindre les 19% et La matrice de
confusion qui confronte les vraies valeurs et les valeurs prédites de Class
sur les 840 observations ayant participées à l’apprentissage explique ce
résultat ainsi pour l’idée que le premier taux est souvent optimiste.
12
Expériences sur les données du répertoire de données de UCI avec TANAGRA
BOOSTING
Le Boosting n’a pas beaucoup amélioré la performance et le taux
d’erreur reste très élevé à 11.47%.
ii. Arbre de décision (C4.5) :
Le taux d’erreur est très bon il est de 1%
13
Expériences sur les données du répertoire de données de UCI avec TANAGRA
Evaluation en validation croisée
Après l’application de ma validation croisée, le taux d’erreur est très
élevé 28.93% confirmant toutes les analyses précédentes.
BOOSTING
Tous est bien classés !!!!!, le Taux d’erreur est réduit à Nul !!c’est le
résultat parfait.
14
Expériences sur les données du répertoire de données de UCI avec TANAGRA
iii .C-SVC :
Le taux d’erreur=21.04% (très élévé)
Evaluation en validation croisée
Le taux d’erreur a augmenté pour atteindre 23.57%
15
Expériences sur les données du répertoire de données de UCI avec TANAGRA
BOOSTING
L’application du Boosting n’a pas généré le taux d’erreur souhaité vu
qu’il est toujoues très grand 19%.
c. La base de données letter-recognition :
Il est impossible d’effectuer des prises d’ecran des diagrammes et des
tableaux de résultats vu que la matrice de confusion est très grande.Je
vais me limiter à donner et commenter les chiffres obtenus :
i. Réseau de neurones
La validation croisée ainsi que le Boosting n’ont pas changé d’une façon
remarquable les résultats obtenus qui indiquent un taux d’erreur très
élevé.
ii. Arbre de décision (C4.5) :
16
Expériences sur les données du répertoire de données de UCI avec TANAGRA
Le taux d’erreur parait bien, il est de 8.22%
Ce chiffre augmente à 14.17 lors de l’évaluation en validation croisée
Alors qu’il devient nul (0%) par l’application du Boosting, la
classification devient parfaite.
iii. C-SVC :
Le résultat est loin de celui réalisé par l’arbre de décision même
l’application du Boosting n’aura pas un effet sur ce taux très élevé.
Tableau récapitulatif
17
Expériences sur les données du répertoire de données de UCI avec TANAGRA
Conclusion
Après lecture et analyse du tableau récapitulatif, on peut conclure ceci :
 Les performances des systèmes d’apprentissage dépendent des
caractéristiques des jeux de données (taille, nombre
d’attributs,,,etc)
 L’effet du Boosting n’est pas toujours évident mais il est clair qu’il
est plus bénéfique si on l’applique sur les arbres de décision.
 L’arbre de décision est plus efficace sur les bases de données de
grande taille.
18
Téléchargement