• Aucun résultat trouvé

Un des challenges des techniques d’apprentissage artificiel est le d´ecalage pouvant exister entre la situation d’apprentissage d’un classificateur et la situation de fonctionnement r´eel. L’hypoth`ese habituelle implicite dans des d´eveloppements de m´ethodes d’apprentissage artificiel est que les exemples utilis´es pour l’apprentissage et ceux utilis´es pour les tests ont ´et´e g´en´er´es `a partir d’une mˆeme distribution de probabilit´e, inconnue mais constante, (voir, par exemple, Sch¨olkopf et Smola [225, p. 8] ou Vapnik [256, p. x]), c.`a.d. , ils r´esultent tous d’un ´echantillonnage al´eatoire ind´ependant et identiquement distribu´e d’une mˆeme population. Cela suppose, accessoirement, que l’efficacit´e de classement est optimale lorsque cette hypoth`ese est v´erifi´ee, ce qui n’est pas toujours le cas. Par exemple, le d´eveloppement d’une application de classement de documents textuels d´evelopp´ee et valid´ee dans un pays anglophone (e.g. les ´Etats Unis) peut ne pas pr´esenter pas la mˆeme efficacit´e dans un pays francophone (e.g. la France) puisque la diversit´e linguistique est diff´erente dans chacun de ces deux pays. Dans cet exemple, ce n’est mˆeme pas l’ad´equation

8.2. D´ecalage et d´erive

des donn´ees d’apprentissage qui est en cause, mais l’ad´equation de l’algorithme de classement ou d’apprentissage.

Nous allons nous int´eresser plutˆot aux d´ecalages sp´ecifiques `a l’application de filtrage de spam et en particulier ceux qui concernent l’utilisation partag´ee d’un filtre par plusieurs utilisateurs.

L’expression - D´erive spatiotemporelle dans un flot de messages - comprend deux formes de d´ecalage entre l’ensemble d’apprentissage et le flot de messages `a classer :

– Le d´ecalage spatial qui nous int´eresse est sp´ecifique au filtrage partag´e par plusieurs destinataires : le mod`ele appris par un classificateur correspond au flot global, addition des flots de tous les destinataires et non pas au flot de chaque destinataire.

– La d´erive temporelle contient deux composantes : une d´erive due au fait que le flot de messages n’est pas un processus stationnaire et un d´ecalage dˆu `a l’interaction avec les destinataires des messages, en particulier les retards dan la boucle de retour d’information. Dans ce chapitre nous examinons seulement la premi`ere composante. L’effet des retards de la boucle sera examin´e empiriquement dans le Chapitre 11.

Dans la bibliographie, l’utilisation des termes d´ecalage et d´erive (shift et drift, en anglais) peut, parfois, prˆeter confusion. Un d´ecalage a une connotation plutˆot statique : la diff´erence entre les distributions associ´ees `a deux processus diff´erents, tandis qu’une d´erive concerne plutˆot la diff´erence, `a deux moments diff´erents, entre les distributions d’un mˆeme processus. Si bien que dans les deux cas, il s’agit de la diff´erence entre les ensembles d’apprentissage et de test, les cons´equences et le traitement ne sont pas les mˆemes. Dans le cas statique (d´ecalage), on peut imaginer que ”l’´ecart” puisse ˆetre ´evalu´e une fois pour toutes et utilis´e pour corriger le classement, ce qui n’est pas possible dans le cas de la d´erive temporelle puisque cet ”l’´ecart” doit ˆetre ´evalu´e et corrig´e en permanence.

Aussi, les expressions Concept Drift [262] [253] [158] ou Population Drift [143] sont parfois utilis´ees pour d´esigner un d´ecalage dans la distribution des objets. Parfois on utilise Concept Drift et Concept Shift pour d´esigner des changements graduels ou brusques [177].

Plusieurs peuvent ˆetre les causes d’un d´ecalage entre les exemples d’apprentissage et de teste, mais on peut les regrouper selon leur impact. Storkey [246] ´enum`ere quelques regroupements possibles (non sp´ecifiques `a la probl´ematique du filtrage de spam) :

1. D´ecalage de la probabilit´e `a priori - (Prior Probability Shift) Ce changement est assez courant. Les algorithmes g´en´eratifs (e.g. , Bay´esien Na¨ıf) consid`erent que les messages sont g´en´er´es selon un mod`ele du type P (x|y) . P (y), o`u y est la classe et x est un message. Le classement se fait `a partir d’une estimation de P (y|x) effectu´ee `a l’aide de la r`egle de Bayes. Si P (y) change, la r`egle de d´ecision doit changer, elle aussi.

2. ´Echantillonnage avec tendance - (Sample Selection Bias) Ce type de d´ecalage apparaˆıt lorsque la constitution de l’ensemble d’exemples ne r´esulte pas d’un ´echantillonnage i.i.d. de la population et que certaines r´egions de l’espace de repr´esentation des objets ne sont pas repr´esent´ees dans l’ensemble d’apprentissage. Dans le cas de classement des spams, par exemple, cela peut ˆetre l’utilisation uniquement des messages class´es en erreur, la non utilisation de messages sensibles ou encore l’inclusion plutˆot des spams que des hams. 3. D´ecalage simple des attributs - (Simple Covariate Shift) il s’agit d’un changement

dans la probabilit´e `a priori des attributs P (x), alors que la probabilit´e `a posteriori des classes P (y| x) reste constante. Storkey [246, p. 8] d´efend que ce cas n’affecte pas le mod`ele P (y| x), alors que, par exemple, Shimodaira [241] Sugiyama et al [248] ou Bickel et al [20]

consid`erent qu’il s’agit d’une variante de l’´echantillonage avec tendance.

4. Classes non ´equilibr´ees - (Unbalanced Data) Il s’agit de probl`emes avec des exemples rares qui n’apparaissent pas dans l’ensemble d’exemples d’apprentissage. On peut le com- prendre (mais pas le traiter) comme une variante d’´echantillonage avec tendance.

5. D´ecalage de domaine - (Domain Shift ) Il s’agit d’une ´evolution dans la d´efinition des classes.

6. D´ecalage dans une composante source - (Source Component Shift ) lorsque les ´echan- tillons proviennent d’un m´elange de diff´erentes sources ind´ependantes (voir Chapitre 14),

Chapitre 8. Caract´eristiques spatiotemporelles d’un flot de messages chacune avec sa propre distribution de probabilit´es et son coefficient de m´elange associ´e, il est courant que chaque source puisse ´evoluer ind´ependamment des autres. La difficult´e de ce cas, en ce qui concerne le filtrage de spams, est que ni le nombre de sources n’est pas facilement identifiable, ni ses param`etres.

Ces cas de d´ecalage impactent diff´eremment les algorithmes de classement, selon qu’ils ont une interpr´etation plutˆot g´eom´etrique (e.g. les SVM et le Perceptron) ou probabiliste (e.g. le Bay´esien Na¨ıf ou R´egression Logistique).

Cette typologie n’est ni unique ni exhaustive. Vu d’un point de vue probabiliste, les cons´e- quences des d´ecalages se pr´esentent sur : la probabilit´e `a priori des classes P (y), la probabilit´e des exemples conditionn´ee `a la classe P (x|y), i = 1, . . . , N, ou la probabilit´e `a posteriori des classes P (y|x) [158].

8.2.1

La d´erive temporelle

Il est g´en´eralement admis que la g´en´eration de messages ´electroniques, en particulier le spam, est un processus non-stationnaire [100] [60] [69] puisque les caract´eristiques des messages ´evo- luent dans le temps. On consid`ere que l’efficacit´e de filtrage est optimal lorsque les exemples et les messages `a classer sont g´en´er´es `a partir d’une mˆeme distribution de probabilit´e. Cette contrainte n’est jamais satisfaite dans un processus non-stationnaire puisque l’apprentissage se fait avec des messages du pass´e alors que les messages `a classer n’existeront que dans le futur. La solution intuitive, et na¨ıve, pour minimiser l’´ecart entre ces deux ensembles est de renouveler l’apprentissage p´eriodiquement ou en continu. N´eanmoins, la difficult´e de constitution et d’entre- tien d’un corpus d’exemples ´etiquet´es pousse `a l’utilisation d’exemples qui ne sont pas forc´ement r´ecents et de ne les renouveler qu’occasionnellement lorsqu’une baisse d’efficacit´e de filtrage est constat´ee. En tout ´etat de cause, le classificateur ne doit pas d´ependre d’un retour d’information concernant chaque message class´e.

Il est vraisemblable que la classe des messages l´egitimes ´evolue naturellement alors que dans la classe des spams les changements sont intentionnels. On peut aussi admettre intuitivement que les deux classes ´evoluent de fa¸con ind´ependante, que les spams ´evoluent plus rapidement que les hams et que le renouvellement des exemples peut se faire ind´ependamment dans les deux classes. Cette hypoth`ese, justifi´ee intuitivement ci-apr`es, sera examin´ee exp´erimentalement dans le Chapitre 10.

La Figure 2.4 du chapitre 2 montre que la r´epartition des messages dans les classes (probabilit´e `a priori des classes) ´evolue dans le temps, `a court et `a long terme. Ce changement quantitatif est directement observable mais il est accompagn´e de modifications plus profondes. Regardons ce qui se passe dans les deux classes.

Tout d’abord, la classe des messages l´egitimes. On peut raisonnablement ´enum´erer les types de changements que l’on retrouve dans cette classe. Ces messages sont ´ecrits par des personnes qui n’ont pas des raisons, `a priori, pour modifier leurs habitudes r´edactionnelles (style, vocabu- laire) mais qui peuvent, de temps en temps, changer la pr´esentation (mise en forme, couleurs de police, ...) suite `a un changement ou mise `a jour du logiciel de messagerie ou tout simplement pour ´echapper `a la monotonie. Aussi, `a l’exception de certaines cat´egories professionnelles telles la communication ou la vente, chaque personne a son r´eseau de correspondants que l’on peut consid´erer comme raisonnablement stable. On peut ´evidement rejoindre ou quitter des groupes de discussion. Mais, globalement, on peut consid´erer que, mis `a part des ´ev´enements exceptionnels tel un changement de domaine d’activit´e, les caract´eristiques des messages re¸cus par quelqu’un ´evoluent dans le temps, mais ne subissent pas des modifications cons´equentes et fr´equentes. Ce sont des ´evolutions que l’on peut classer comme naturelles. Si on se place `a un niveau plus ´elev´e, celui d’un groupe d’individus, on peut ´emettre l’hypoth`ese que les changements individuels se diluent dans le flot de messages regroup´es et peuvent deviennent imperceptibles, ou alors ne se manifester que comme une augmentation du bruit de fond, mesurable par la variance d’un certain param`etre tel un score de classement.

8.2. D´ecalage et d´erive

Les changements dans la classe spam ne sont pas de la mˆeme nature. La g´en´eration de ces messages peut ˆetre vue comme la confrontation entre deux opposants [100] [179] [180] : le spammeur et le service de filtrage de spams, chacun adaptant son strat´egie en fonction des actions de l’autre, une ”course aux armements”. Il s’agit de changements intentionnels, avec une fr´equence suffisamment ´elev´ee pour pouvoir s’adapter aux changements de l’adversaire.

Les messages de cette classe concernent un nombre limit´e et pas tr`es important de sujets (pornographie, m´edicaments, ...). Selon Spamhaus1, 80 % des spams en circulation sont g´en´er´es

par seulement 100 spammeurs. Ce faible nombre d’exp´editeurs fait que les oscillations dans leur activit´es impactent directement le nombre de spams en circulation [100] et la probabilit´e `a priori de chaque classe. Ce sont des changements directement observables dans le trafic.

Les changements dans les caract´eristiques cach´ees (tels le vocabulaire, les sujets de discussion, ou le style r´edactionnel) sont plus difficiles `a d´etecter et peuvent ˆetre confondues avec du bruit [262] : ces changements ne peuvent pas ˆetre d´eduits directement des param`etres mesurables.

L’´evolution de la quantit´e de spam en circulation, avec une r´epartition par genre, a ´et´e constat´e par Fawcett [100] ou Hulten et al [11]. Plusieurs ´editeurs de logiciels de filtrage (Sophos, McAfee, Symantec, Brightmail, ...) pr´esentent p´eriodiquement des rapports ou des livres blancs avec ce type d’information, parfois mˆeme en temps r´eel sur leurs sites web.

Pu et Webb [204] ont ´etudi´e l’´evolution des strat´egies de cr´eation de spam sur une p´eriode de 3 ans (de janvier 2003 `a d´ecembre 2005) `a partir des messages du corpus public SpamArchive

2. Pour cela, ils ont utilis´e les attributs d´efinis par le logiciel SpamAssassin3 et observ´e les dates

d’apparition et disparition de ces attributs dans les messages. Cet ´etude est int´eressante puisque l’observation porte non pas sur la quantit´e de messages en circulation, un indicateur du niveau d’activit´e des exp´editeurs, mais sur la fa¸con de construire les messages, ce qui rel`eve plutˆot de la strat´egie des exp´editeurs pour pouvoir traverser les filtres.

Sheng et al [240] ont ´etudi´e l’activit´e des sites de Phishing (Hame¸connage) et ont observ´e qu’une campagne de cette cat´egorie de spam ne dure que quelques heures alors que les sites web vers o`u les victimes sont attir´es restent actifs plus longtemps. Dans ces conditions, les m´ethodes heuristiques et les filtres statistiques sont plus efficaces que les listes noires de URLs, qui ne sont pas mises `a jour suffisamment vite.

Delany et al [86] ont publi´e quelques r´esultats d’´evaluation de d´erive des performances due au manque de mise `a jour du mod`ele appris, mais obtenus avec un ensemble de teste dont la taille ne semble pas significative (quatre ensembles de seulement 1000 messages ayant, chacun le mˆeme nombre de hams et de spams) et avec une m´ethodologie semblant plutˆot destin´ee `a la validation de l’algorithme en de classement propos´e.

La plupart de ces travaux sont sp´ecifiques `a la classe spam et, `a notre avis, ne vont pas assez loin, dans la recherche d’une meilleure compr´ehension des caract´eristiques temporelles des flots de messages ´electroniques.

Avec Gordon V. Cormack [71] [81] nous avons ´etudi´e l’effet de l’ˆage des exemples ainsi que de leur ˆage relatif sur l’efficacit´e d’un filtre utilisant un algorithme de r´egression logistique. Nous avons montr´e que partie de la d´erive constat´e dans l’efficacit´e de filtrage est due `a la pr´esence dominante de r´ef´erences temporelles [71], des r´ef´erences qui ne sont pas li´ees `a la classe de chaque message. mais qui font en sorte que, si les messages de chaque classe utilis´es lors de l’apprentissage n’ont pas le mˆeme ˆage, le filtre fini par apprendre `a classer par ˆage et non pas par cat´egorie de message. Cette remarque est int´eressante puisqu’elle peut remettre en cause les r´esultats de travaux valid´es `a l’aide de corpus de messages synth´etiques et dont les ˆages des messages des deux classes ne sont pas comparables, ou qui ont ´et´e valid´es utilisant des m´ethodes plutˆot destin´ees aux processus de classement hors-ligne.

Avec les exp´erimentations pr´esent´ees dans le Chapitre 10, nous avons pu mieux identifier les caract´eristiques de la d´erive de chaque classe et l’impact sur l’efficacit´e de classement.

1

SpamHaus ROKSO: http://www.spamhaus.org/rokso/index.lasso

2

SpamArchive: ftp://spamarchive.org/pub/archives

3

Chapitre 8. Caract´eristiques spatiotemporelles d’un flot de messages

8.2.2

Le d´ecalage spatial

Le d´ecalage spatial, dans le sens qui nous int´eresse, repr´esente de la diff´erence pouvant exister entre l’ensemble d’apprentissage et l’ensemble de classement r´eel mais aussi entre plusieurs flots de messages : des utilisateurs diff´erents, des groupes diff´erents d’utilisateurs. Ce probl`eme est, en quelque sorte, assez diff´erent de celui de la d´erive temporelle.

Intuitivement, on accepte que les boites aux lettres de deux personnes distinctes soient aussi ”diff´erentes”. Mais on peut se demander si les boˆıtes aux lettres de deux personnes travaillant dans le mˆeme service ou dans des services diff´erents sont aussi ”diff´erentes”. En fait, nous cherchons `a quantifier la diff´erence entre deux boˆıtes aux lettres ou, au moins, ˆetre capables de les ordonner selon un crit`ere `a d´efinir.

Du point de vue classement de messages, une notion pertinente de ”distance” est celle qui exprime la diff´erence entre les flots telle que ressentie par le classificateur. Le Chapitre 13 est un chapitre de perspectives et pr´esente quelques r´eflexions sur des possibles m´ethodes pour ´evaluer la diff´erence entre ensembles de messages.

Dans le contexte qui nous concerne, le d´ecalage spatial joue un rˆole important. Dans une com- munaut´e assez large, on telle une universit´e, on peut intuitivement effectuer quelques hypoth`eses sur les types de message en circulation. On peut ´eventuellement obtenir des ´echantillons signi- ficatifs du flot de messages de quelques utilisateurs mais il est quasiment impossible de le faire pour l’ensemble des utilisateurs. Dans ce cas, il y a surement un d´ecalage entre les ´echantillons obtenus, les flots des autres utilisateurs et le flot global de messages.