• Aucun résultat trouvé

Avant de voir comment se comporte notre outil empiriquement, il est important de décrire le mode opératoire que nous avons suivi pour l'ensemble de nos tests.

An de permettre une visualisation synthétique de nos résultats, nous nous sommes appuyé sur les matrices de confusion car elles sont facilement interprétables. Elles per-mettent de juger de la qualité de la reconnaissance de chacune des deux classes, que l'on quantie par les taux de rappel. Les taux de précision estiment quant à eux la qualité des prédictions eectuées (mesure de la conance que l'on peut accorder à ces prédictions). Par la suite, nous donnerons les résultats de chacun de nos tests sous la forme d'une matrice de confusion telle que celle du tableau2.1.

Tab. 2.1  Matrice de confusion

````

````

````

``

classe réelle

classe prédite non-crise crise

non-crise A B

crise C D

Dans ce tableau, les marginales en lignes correspondent aux nombres d'exemples de la base de test n0 = A + B et n1 = C + D des deux classes non-crise et crise. Le taux de bonnes classications ainsi que les taux de rappel et précision de chacune des deux classes

2.3. PREMIÈRES EXPÉRIMENTATIONS 39 se déduisent facilement d'une telle matrice :

Reco = A + D A + B + C + D Rappel (non-crise) = A A + B Précision (non-crise) = A A + C Rappel (crise) = D C + D Précision (crise) = D B + D

Savoir comment évaluer un classieur est un problème en soi et nous y reviendrons plus en détail à la section10.3.1. Signalons simplement, à ce stade de l'exposé, que le seul taux de reconnaissance est souvent insusant pour juger de la qualité d'un classieur. Cela est particulièrement vrai dans les tâches d'apprentissage pour lesquelles les classes sont déséquilibrées. En eet, dans ces cas-là, la règle de décision simpliste consistant à prédire systématiquement la classe majoritaire s'avère très performante, ce qui n'est pas vraiment satisfaisant. Prenons notre problème : la classe non-crise est largement majoritaire (73% des exemples). Un classieur qui prédirait toujours cette classe aurait donc des performances acceptables...

N'oublions pas le contexte dans lequel se place ce travail : il faut arriver à identier les crises potentielles pour permettre la mise en place d'une politique de prévention. Il est donc très important d'omettre un minimum de crises. Nous sommes dans une situation où les erreurs sur chacune des deux classes n'ont pas le même poids, le coût des faux négatifs étant plus important que le coût des faux positifs. Outre de bonnes performances globales, nous attendons donc de notre classieur qu'il se trompe le moins possible sur les exemples de la classe crise.

Ainsi, lorsque nous comparerons diérents classieurs, nous les considérerons dans un premier temps comme des solutions d'un problème multicritère dans lequel il convient de maximiser simultanément le taux de bonnes classications et le rappel de la classe crise. Nous privilégierons les solutions non dominées. Pour chaque expérience nous avons construit une matrice de confusion par validation croisée avec 10 sous-ensembles.

An de justier empiriquement notre choix de modèle, à savoir que Salammbô, outre sa capacité à produire des résultats clairs, est susamment performant pour constituer la base de notre système d'évaluation des risques, nous l'avons comparé à d'autres algo-rithmes standards de classication supervisée. Le tableau 2.2 synthétise les résultats de cette comparaison. Les algorithmes que nous avons testés sont les suivants :

 kppv (k plus proches voisins) : pour chaque nouvel exemple à classer, on cherche les kplus proches pays de la base d'apprentissage et on lui attribue la classe majoritaire parmi celles des k pays trouvés. La notion de plus proche nécessite la dénition d'une distance ou d'une similarité. Seule la distance euclidienne et la similarité basée sur le cosinus de l'angle formé par deux vecteurs (corrélation) ont été envisagées. L'objectif n'était pas d'approfondir cette méthode, mais d'obtenir des résultats de référence pour la comparaison avec Salammbô. Des expériences préliminaires, non reportées ici, nous ont conduit à prendre k = 2.

40 CHAPITRE 2. UN PREMIER MODÈLE D'ÉVALUATION DES RISQUES  Rocchio : à partir de la base d'apprentissage, deux prototypes sont construits, un par classe. En pratique il s'agit des barycentres de chacune des deux classes. On aecte à chaque pays de la base de test la classe correspondant au prototype le plus proche. Là aussi nous avons utilisé la distance euclidienne et le cosinus pour dénir la notion de proximité.

 naïve Bayes : algorithme de classication probabiliste, basé sur le principe de l'in-férence bayésienne. Les probabilités conditionnelles a posteriori de chaque classe sont estimées en faisant l'hypothèse, délibérément simpliste, que les variables d'entrée sont indépendantes, an de limiter le nombre de paramètres à estimer. Nous avons utilisé la version de cet algorithme implémentée dans Weka 3.4.7 (Witten et Frank,2005).  C4.5 : algorithme de construction d'arbres de décision (non ous) développé par

Quinlan. Nous avons testé la version de cet algorithme implémentée dans Weka 3.4.7.  Salammbô

Certains de ces algorithmes étant particulièrement sensibles aux questions d'échelle (plage de valeurs prises par une variable donnée), surtout ceux qui reposent sur une mesure de distance ou de similarité, nous avons eu recours à la normalisation min-max. Ceci nous a permis de ramener l'ensemble des variables dans l'intervalle [0; 1]. À chaque valeur vij

prise par une variable vj, on applique la transformation suivante :

vij = vij − mink=1..n(vkj) maxk=1..n(vkj) − mink=1..n(vkj)

An d'homogénéiser la procédure de comparaison entre les divers algorithmes, nous avons appliqué ce pré-traitement à chacun d'eux.

Tab. 2.2  Performances de cinq classieurs sur la base de données pays, estimées par validation croisée à 10 sous-ensembles. P : Précision, R : rappel, c : classe crise, nc : classe non-crise. Le paramètre L concerne les arbres de décision. Il correspond au nombre minimum d'exemples que doit contenir un n÷ud pour pouvoir être partitionné.

Classieur kppv Rocchio naïveBayes C4.5 Salammbô Matrice de

confusion 88 1825 13 81 2518 20 60 4613 25 91 1528 10 89 1721 17 Paramètres Distance eucli-dienne, k=2 Distance eucli-dienne Défaut L=12 Opérateurs deZadeh, L=15

Reco 70.1% 70.1% 59.1% 70.1% 73.6%

P (nc) 77.9% 81.8% 82.2% 76.5% 80.9%

R (nc) 83% 76.4% 56.6% 85.8% 84%

P (c) 41.9% 44.4% 35.2% 40% 50%

2.3. PREMIÈRES EXPÉRIMENTATIONS 41 Au vu des résultats du tableau 2.2, on constate que Salammbô a le meilleur taux de bonnes classications, mais rappelons que nous sommes également intéressé par une bonne reconnaissance de la classe crise. De ce point de vue naïve Bayes est le plus performant (meilleur taux de rappel), mais son taux de bonnes classications est bien trop faible. Le comportement de Salammbô sur cette classe est tout de même assez satisfaisant : il la reconnaît bien mieux que C4.5 ou 2ppv. Globalement il ore le meilleur compromis entre une bonne reconnaissance de la classe non-crise et de la classe crise. 2ppv et C4.5 ont une matrice de confusion beaucoup trop asymétrique pour être vraiment intéressants.

L'apport du ou semble bien réel. La classication réalisée par Salammbô, qui peut être considéré comme une version oue de C4.5, est nettement plus proche de nos attentes que celle qui est eectuée sans ou (C4.5 ). Pour l'instant, à l'instar de ce que fait Weka pour les données numériques, nous avons opéré nous-même la substitution des valeurs manquantes d'une variable donnée par sa moyenne, pour kppv et Rocchio, Salammbô. Nous n'avons pas justié ce choix de méthode de substitution. Aussi aborderons-nous un peu plus en détail ce sujet qui est loin d'être anodin, au chapitre 6. Rappelons en eet que près d'un quart des données ne sont pas renseignées.

En l'état les performances sont loin d'être acceptables. Le taux de bonnes classications n'est que de 73.6%. En prédisant la classe non-crise majoritaire, nous obtenons exactement le même score. De plus, nous ne reconnaissons même pas une crise sur deux. Dans le chapitre suivant nous verrons comment la sélection d'attributs peut améliorer les performances de Salammbô.

Chapitre 3

Améliorations du modèle

Bien qu'opérant intrinsèquement une sélection des attributs pertinents, les arbres de décision voient leurs performances se dégrader en présence d'un grand nombre d'attributs non pertinents (Blum et Langley,1997). Les algorithmes de construction d'arbres de déci-sion se basent sur la recherche des facteurs pertinents, mais cette recherche est ralentie et sous-optimale en présence d'un grand nombre d'indicateurs. Les attributs à chaque n÷ud sont choisis suivant un critère entropique. Mais lorsque plusieurs attributs obtiennent des valeurs identiques pour la mesure de discrimination, ce qui arrive fréquemment lorsque le nombre d'attributs est grand, l'un d'eux est choisi arbitrairement. D'une part, ceci n'est guère satisfaisant. D'autre part, ce choix peut s'avérer sous-optimal. Il est en eet vrai-semblable que le choix d'un autre attribut eût conduit à des ramications ultérieures bien plus discriminantes. Pour cette raison il est apparu judicieux de procéder, en amont de l'apprentissage, à une réduction de la dimensionnalité du problème via une sélection expli-cite d'attributs. Cette étape est essentielle. Elle permet d'améliorer la qualité du processus de généralisation, d'accélérer l'algorithme d'induction, et également de simplier les arbres générés, ce qui rend les résultats plus simples à analyser.

3.1 Un algorithme génétique pour la sélection d'attributs

Nous avons développé une première méthode basée sur un algorithme génétique, que nous allons détailler dans cette section. Au travers d'une série d'expériences, nous mettrons en évidence les progrès accomplis, ainsi que les lacunes qui restent à combler. Nous présen-terons les grandes familles d'algorithme de sélection, ainsi que les nouvelles techniques que nous envisageons de mettre en place, dans le chapitre7, entièrement dévolu au problème de la sélection d'attributs.

Notre objectif est de trouver le sous-ensemble d'attributs qui optimise les performances de notre classieur. Formulée ainsi, il apparaît clairement que la tâche de sélection d'at-tributs à laquelle nous nous attaquons est un problème d'optimisation combinatoire. Les algorithmes génétiques sont bien adaptés à ce genre de problèmes et leur application dans des tâches de sélection d'attributs a été beaucoup étudiée (Raymer et al., 2000; Morita et al.,2003;Yang et Hononvar,1998). Nous ne rappellerons pas les fondements de ces algo-rithmes, que le lecteur pourra retrouver par exemple dans (Man et al.,1999;Michalewicz,

1996).

Pour préciser un peu le vocabulaire, disons simplement qu'un algorithme génétique consiste à faire évoluer de génération en génération une population d'individus, chaque individu correspondant à une solution du problème à traiter (phénotype), selon un pro-cessus darwinien de sélection naturelle. Chaque individu est représenté par son génotype

3.1. UN ALGORITHME GÉNÉTIQUE POUR LA SÉLECTION D'ATTRIBUTS 43 sur lequel sont appliqués les opérateurs génétiques : la mutation et le croisement génétique (crossover). Ces opérateurs ainsi que le processus de sélection naturelle, qui est guidé par une fonction mesurant la qualité d'une solution (fonction d'évaluation ou tness), dé-nissent la façon dont la population évolue, c'est-à-dire la façon dont de nouvelles solutions sont construites et évaluées.

Pour dénir un algorithme génétique, il sut d'en préciser les caractéristiques princi-pales.

 Taille de la population : nombre de solutions qui sont testées à chaque génération. Plus ce nombre est important, plus la complexité algorithmique est grande, mais la couverture de l'espace des solutions sera également plus grande.

 Codage du génome : le génome est représenté par un vecteur de bits. Le codage est ce qui permet de faire le lien entre génotype et phénotype. Il décrit la façon dont une solution du problème sera représentée sous la forme d'un vecteur.

 Opérateur de mutation : modication d'un élément du génome, selon un processus stochastique. La mutation est ce qui permet d'introduire de la nouveauté dans la po-pulation et donc d'assurer sa diversité, ce qui est essentiel pour une bonne exploration de l'espace de recherche.

 Opérateur de croisement : il assure la recomposition de nouvelles solutions à partir des solutions existantes. Par analogie avec les processus d'évolution naturelle, les deux solutions de la génération actuelle qui seront utilisées pour en créer deux nouvelles sont appelées les parents, tandis que les deux nouvelles sont dénommées les enfants.

 Fonction d'évaluation d'un individu (tness) : elle évalue la qualité d'une solution ; c'est cette fonction qui est optimisée par l'algorithme.

 Processus de sélection des individus : il s'appuie sur la fonction d'évaluation pour décider, de manière stochastique, quelles solutions conserver au sein de la nou-velle génération. Pour assurer la convergence de l'algorithme et par analogie avec le principe darwinien de la sélection naturelle, la phase de sélection doit favoriser les individus les plus performants (exploitation des bonnes solutions) sans pour au-tant ne retenir qu'eux sous peine d'appauvrir la diversité de la population et gêner l'exploration.

 Critère d'arrêt : il s'agit de la règle spéciant le moment où l'on peut considérer que l'algorithme est terminé.

3.1.1 Codage

Dans notre contexte, le phénotype correspond à un sous-ensemble d'indicateurs. Le co-dage du génome, vecteur de bits, doit permettre de retrouver le sous-ensemble en question. Une manière simple de procéder consiste à considérer que chaque bit du génome dénote la présence (1) ou l'absence (0) d'un attribut. La taille du génome est alors égale au nombre total d'attributs présents dans la base de données. C'est ce codage que nous avons adopté. Cherchant à améliorer les performances de Salammbô, nous l'avons intégré dans l'algo-rithme de telle sorte qu'un modèle soit construit pour chaque individu, à partir du sous-ensemble d'indicateurs correspondant à cet individu. La fonction d'évaluation est alors une mesure des performances de ce modèle.

44 CHAPITRE 3. AMÉLIORATIONS DU MODÈLE minimum L d'exemples que doit contenir un n÷ud de l'arbre pour pouvoir être partitionné1. Suivant les valeurs de L les résultats peuvent être très diérents. Aussi avons-nous décidé d'inclure ce paramètre dans le génome an qu'il prenne part à l'optimisation. Pour cela nous avons rajouté 4 bits en tête du vecteur pour coder des valeurs de L comprises entre 1 et 16. Le tableau3.1donne un exemple de génome.

Tab. 3.1  Exemple de génome à 5 attributs. L = 7. Seuls les 1er et 4e attributs sont sélectionnés.

0111 1 0 0 1 0

3.1.2 Croisement génétique

Nous avons utilisé le croisement à un point. Le principe est le suivant : on choisit un point de coupure dans le génome, l'un des deux enfants hérite de la partie du génome du premier parent située avant ce point de coupure et de la partie du génome du second parent située après. Le génome du second enfant se construit de manière symétrique. Ne souhaitant pas découper arbitrairement la partie correspondant à L, nous avons imposé que ce point de coupure se situe après le 4e bit.

3.1.3 Mutation

An de mieux parcourir l'espace de recherche, sans s'arrêter au premier optimum local trouvé, on introduit de l'aléa via l'opérateur de mutation. Une probabilité Pm de mutation étant xée, pour chaque bit d'un génome on tire aléatoirement un nombre entre 0 et 1. S'il est inférieur à Pm on inverse la valeur du bit considéré. Fixer dénitivement et dès le début une valeur pour Pm n'est pas aisé et pas forcément souhaitable. En eet introduire trop d'aléatoire ralentit fortement la convergence de l'algorithme, mais il en faut tout de même susamment pour pouvoir sortir des optima locaux. Il faut trouver un compromis entre les deux. On retrouve le traditionnel conit en optimisation combinatoire entre exploration (fortes valeurs de Pm) et exploitation (faibles valeurs de P m).

Pour surmonter ce dilemme, nous avons fait en sorte que Pm ne soit pas constant mais évolutif. L'initialisation de la population étant aléatoire, il n'est pas besoin d'avoir une valeur de Pm forte pour explorer l'espace de recherche. Ce n'est que lorsque la population s'homogénéise, à proximité d'un maximum local par exemple, qu'il faut réintroduire de l'aléatoire. Une fois la population redevenue hétérogène et donc apte à explorer ecace-ment, Pm peut redevenir faible. Nous nous sommes basé sur l'écart-type de la fonction d'évaluation pour juger de l'homogénéité de la population, en considérant qu'au départ elle était hétérogène. Lorsque cet écart-type se réduit trop, de 20% d'une génération sur l'autre ou de 50% par rapport à la valeur initiale2, nous augmentons la valeur de Pm et nous la diminuons lorsque cet écart-type augmente à nouveau.

3.1.4 Fonction d'évaluation

La tness étant la fonction qui sera optimisée par l'algorithme génétique, nous avons naturellement choisi une fonction mesurant pour chaque individu les performances de la

1C'est là un des critères d'arrêt de Salammbô.

3.1. UN ALGORITHME GÉNÉTIQUE POUR LA SÉLECTION D'ATTRIBUTS 45 classication réalisée par Salammbô à partir du sous-ensemble d'attributs correspondant à cet individu.

À la section 2.3 nous avons déjà évoqué la question de l'évaluation des performances d'un classieur. Nous avons précisé que nous nous placions dans un problème d'agréga-tion multicritère, dans lequel nous voulions maximiser simultanément le taux de bonnes classications, ainsi que le rappel de la classe crise. La fonction d'agrégation doit donc être croissante selon ces deux paramètres et nous souhaitons privilégier les solutions non dominées.

Supposons que nous ayons q critères à maximiser simultanément. Une solution x = (x1, x2, ..., xq) sera dite dominée par une autre solution z = (z1, z2, ..., zq) si on a :

(

∀i ∈ {1..q} xi ≤ zi ∃j ∈ {1..q} xj < zj

An de favoriser les solutions non dominées, en nous inspirant de ce qui a été proposé par Man et al. (1999) pour l'optimisation multicritère, et après expérimentations, nous avons déni la fonction d'évaluation suivante

F it1(i) = Rappeli(crise) 1 + N

où Rappeli(crise)est le taux de rappel de la classe crise pour le sous-ensemble d'attributs associé à l'individu i et N et le nombre de solutions qui dominent celle qui correspond à i. Parmi les solutions les moins dominées, nous favorisons ainsi celles qui ont un bon taux de rappel de la classe crise. Nous avons également eectué des tests avec F it2 qui correspond à une variante de la mesure F it1 dans laquelle nous avons remplacé Rappeli(crise) par Recoi. Ceci permet de mettre davantage l'accent sur le taux de bonnes classications. Nous avons également envisagé la somme pondérée, pour diérents poids w1 et w2 : F it3(i) = w1Rappeli(crise) + w2Recoi.

3.1.5 Sélection des individus

Nous avons employé la sélection par roulette biaisée (Man et al., 1999). Soit F it la somme de toutes les évaluations des diérents individus et npop la taille de la population. On a : F it = Pnpop

i=1 F it (i), où F it (i) désigne la tness de l'individu i. Si on désigne par Tl la population à la génération l, l'algorithme de sélection des individus est le suivant :

1. Initialisation : i = 0, Tl+1= ∅

2. Tirer un nombre r aléatoirement entre 0 et F it 3. Tl+1= Tl+1∪ {k}Sélectionner l'individu k tel que

k−1 X i=1 F it (σ (i)) < r ≤ k X i=1 F it (σ (i)) où σ est la permutation sur les individus telle que

F it (σ (1)) ≥ F it (σ (2)) , ..., ≥ F it (σ (npop)) 4. i = i + 1

46 CHAPITRE 3. AMÉLIORATIONS DU MODÈLE Nous avons également eu recours à la sélection par tournoi, à deux joueurs. Deux individus sont tirés au hasard dans la population. Celui dont tness est la plus élevée est sélectionné. Cette approche permet d'avoir moins de pression sélective qu'avec la roulette biaisée et de mieux préserver la diversité génétique. En eet, lorsqu'un individu est bien meilleur que tous les autres il sera très souvent sélectionné par roulette biaisée, ce qui aura tendance à trop pénaliser l'exploration au prot de l'exploitation.

Cependant la sélection par tournoi ne prend pas du tout en compte l'écart relatif entre les performances des individus, ce qui peut être gênant. C'est pourquoi nous nous sommes laissé la possibilité de tester les deux techniques. Des tests préliminaires, que nous ne présenterons pas ici, nous ont permis de choisir la roulette biaisée pour laquelle les résultats sont plus intéressants : matrice de confusion mieux équilibrée, moins d'attributs sélectionnés.

Avec ces deux méthodes, certains individus vont être sélectionnés plusieurs fois tandis que d'autres ne le seront jamais. Il est donc possible de perdre le meilleur individu même s'il a la plus grande probabilité de survie, et ce d'autant plus qu'il peut subir une ou des