Évaluation en classification supervisée

Adrien Guille, Université Lyon 2

Partie théorique

Partie pratique

Matrice de confusion

Soit une tâche de classification supervisée où la variable à prédire a un nombre quelconque de modalités, . L'évaluation d'un classifieur se base sur la matrice de confusion, que l'on construit à partir des prédictions qu'il réalise sur un ensemble d'individus pour lesquels on connaît la classe d'appartenance réelle. Ainsi, la matrice de confusion, , décrit la distribution conjointe des variables et :

 ...
...
...
...............
...

Si le classifieur ne commet aucune erreur, c'est-à-dire qu'il prédit toujours la classe réelle, alors est une matrice diagonale (ce qui signifie que les coefficients en dehors de la diagonale sont tous nuls). Lorsque le classifieur se trompe, les effectifs des couples tels que indiquent comment les erreurs comises se répartissent.

Dans le cas d'une tâche de classification supervisée binaire, , où la modalité de la variable à prédire correpond à la classe «postive» et l'autre à la classe «négative», on nomme les coefficients de la matrice de confusion de la manière suivante :

 
VNFN
FPVP

Mesures d'évaluation

On définit plusieurs mesures basées sur la matrice de confusion, afin de quantifier la performance d'un classifieur selon différents points de vue :

Taux d'erreur global

Le taux d'erreur global, , correspond à la proportion d'observations mal classées, qui dépend du ratio entre la trace de la matrice de confusion (c'est-à-dire la somme des coefficients diagonaux, donc le nombre de bonnes prédictions), et la somme de tous les coefficients (autrement dit le nombre total de prédictions) :

Précision par rapport à une classe

La précision d'un classifieur par rapport à une certaine classe (autrement dit, par rapport à une certaine modalité de la variable à prédire), se mesure comme la proportion d'individus, parmis tous ceux pour lesquels le classifieur a prédit cette classe, qui appartiennent réellement à celle-ci. Pour la classe , on calcule la précision comme suit (le nombre d'individus pour lesquels le classifieur a prédit la classe correpond à l'effectif marginal pour ) :

Rappel par rapport à une classe

Le rappel d'un classifieur par rapport à une certaine classe se mesure, quant à lui, comme la proportion d'individus, parmis tous ceux qui appartiennent réellement à cette classe, pour lesquels le classifieur a prédit cette classe. Pour la classe , on calcule le rappel ainsi (le nombre d'individus qui appartiennent réellement à la classe correpond à l'effectif marginal pour ) :

F-mesure par rapport à une classe

On peut résumer les mesures de précision de rappel par rapport à une classe en un seule indicateur, en calculant la moyenne harmonique :

Précision moyenne, rappel moyen, f-mesure moyenne

On peut synthétiser les mesures de précision en calculant la moyenne pondérée par le nombre d'individus appartenant à chaque classe :

De même pour les mesures de rappel :

Et pour les f-mesures :

Démarche d'évaluation

Le but de l'évaluation est d'estimer au mieux les performances d'un classifieur sur de nouvelles données, c'est-à-dire lorsque le classifieur sera utilisé en pratique.

L'évaluation doit donc reposer sur une démarche permettant de capturer la capacité du classifieur à se généraliser à de nouvelles données. C'est pourquoi, plutôt que d'utiliser un seul et même jeu de données pour la phase d'apprentissage et la phase d'évaluation, on préfère, via des techniques d'échantillonage, construire et évaluer un classifieur sur des données indépendantes tirées d'une même population. On parle alors d'évaluation par validation croisée, dont les deux principales variantes sont :

Validation croisée

Validation croisée simple

Cette démarche convient lorsque l'on travaille avec peu de données. Elle consiste simplement à découper les données en deux échantillons, pour l'apprentissage du modèle et pour l'évaluation, respectant la distribution de la variable de classe. Typiquement, on fait en sorte que comporte 60% des données et les 40% restant. Ainsi, on construit d'abord le classifieur à partir des observations dans , puis on construit la matrice de confusion en prédisant la classe de chaque observation dans .

K-Validation croisée

La K-validation croisée est la démarche la plus recommandée, à condition d'avoir suffisamment de données pour pouvoir l'appliquer. Dans un premier temps, ayant choisi une valeur pour (typiquement, on prend ), on partitionne les données en morceaux de même taille (). Ensuite, on construit classifieurs, chacun à partir des observations issues d'un morceau , . Enfin, on construit pour chaque classifieur une matrice de confusion sur la base des observations issues des autres morceaux (, ). On obtient la matrice ainsi :

Diagnostique biais / variance

Lorsque l'erreur mesurée sur les données d'évaluation est trop élevée, il est important d'essayer de déterminer l'origine du problème, afin de savoir comment la faire diminuer. Un diagnostique possible se base sur la décomposition de l'erreur en biais / variance. Celui-ci repose sur la comparaison de l'erreur mesurée sur les données d'apprentissage et les données d'évaluation.

Biais

Si l'erreur est aussi élevée sur les données d'apprentissage que sur les données d'évaluation, alors on peut supposer un problème de biais trop élevé. Cela signifie que le modèle est victime de sous-apprentissage.

Pour palier un problème de biais élevé, on peut tenter d'incroporer des descripteurs supplémentaires ou bien changer de type de modèle.

Variance

Si l'erreur est significativement moins élevée sur les données d'apprentissage que sur les données d'évaluation, alors on peut supposer un problème de variance trop élevée. Cela signifie que le modèle est victime de sur-apprentissage.

Pour palier un problème de variance élevée, on peut tenter de collecter plus d'individus ou bien tenter de réduire le nombre de variables.

Evaluation avec R et le paquet «caret»

Le code ci-dessous montre comment, à l'aide du paquet «caret», évaluer un classifieur basé sur la méthode des k plus proches voisins. Les données décrivent 150 iris ('Iris-setosa' ou 'Iris-versicolor' ou 'Iris-virginica').

Validation croisée simple

 

K-Validation croisée