Académique Documents
Professionnel Documents
Culture Documents
RTEMENT
T D'INFOR
RMATIQU
UE
MEMOIRE
Préssenté par
Pour obtenir
LE
E DIPLOME
E DE MAG
GISTER
Spécialité
é Informatiq
que
Optio
on : Autom
matique Info
ormatique
Intitulé :
DÉTEC
CTION DE
E COURR
RIELS IND
DÉSIRABL
LES PAR APPREN
NTISSAGE
E
AUTOM
MATIQUE
E
Soutenu le : /../2012
De membres du jury :
evant les m
Présideent : B Beldjilalii
B. Proffesseur D
Départementt d’Informattique, Univ
versité d’Oraan
Encadrreur : B Atmani
B. MC
CA D
Départementt d’Informattique, Univ
versité d’Oraan
Co-enccadreur : F.
F Barigou MA
AA D
Départementt d’Informattique, Univ
versité d’Oraan
natrice :
Examin S Nait Bah
S. hloul MC
CA D
Départementt d’Informattique, Univ
versité d’Oraan
nateur :
Examin M Abdi
M. MC
CA D
Départementt d’Informattique, Univ
versité d’Oraan
i
Remerciements
Tout d’abord, je remercie Monsieur Bouziane Beldjilali, Professeur au département
d’informatique de l’université d’Oran, et chef du laboratoire d’informatique d’Oran «LIO»,
qui m’a fait le grand honneur de présider ce jury. Merci pour vos conseils avisés, vos
remarques constructives, pendant la première année de post-graduation. Qu’il trouve ici
l’expression de ma reconnaissance. J’éprouve un grand respect pour son personnage, ainsi
que pour ses grandes qualités humaines.
Je tiens à exprimer mes sincères remerciements à mon beau frère Belalem Ghalem pour son
soutien dans des moments difficiles et ses encouragements tout au long mes études
universitaires.
J’aimerai aussi remercier du fond du cœur mes parents pour leur soutien moral et matériel,
et bien sûr mes frères qui ont toujours porté un intérêt à ce que je faisais.
Enfin, merci à toutes les personnes qui ont contribué de près ou de loin à l’aboutissement
de ce travail.
i
Résumé
Le courrier électronique rend vraiment service aux usagers, c’est un moyen rapide et
économique pour échanger des informations. Cependant, les utilisateurs se retrouvent assez
vite submergés de quantités de messages indésirables appelé aussi spam. Le spam est
rapidement devenu un problème majeur sur Internet. Pour faire face à cette charge
croissante de ce type de courriels, plusieurs techniques de détection ont vu le jour. Dans ce
mémoire, nous nous intéressons aux techniques à base d’apprentissage automatique. Dans
un premier temps, nous proposons une nouvelle approche d’induction symbolique à base de
graphe d’induction et machine cellulaire pour le filtrage de spam nommée SPAMAUT.
Point de vu méthodologique, nous explorons toutes les phases du processus à savoir, le
prétraitement linguistique et la sélection des attributs pour la représentation numérique des
données textuelles, l’apprentissage automatique et supervisé pour la construction d’un
classifieur de détection de spam. Nous examinons, par des expériences sur le corpus
LingSpam, l’impact de la racinisation, la pondération des termes et la sélection des termes
sur la performance de SPAMAUT. Dans un deuxième temps, et pour améliorer les
performances du système SPAMAUT, nous proposons une combinaison parallèle de
plusieurs versions de ce système avec le classifieur Bayésien naïf (NB) que nous nommons
3CA&1NB. La diversité entre ces différents classifieurs est assurée par l’utilisation (a) des
sous-ensembles différents de termes d’apprentissage et (b) des algorithmes d’apprentissage
différents. La combinaison proposée utilise trois SPAMAUT différents, chacun d’eux est
entraîné avec un sous-ensemble de termes différents. Par un vote, Les décisions de ces trois
systèmes sont combinées avec celle du classifieur NB pour classifier un nouveau courriel.
Les expériences indiquent une amélioration de la qualité de prédiction par rapport à
SPAMAUT. Et enfin, dans un troisième temps nous comparons nos meilleurs résultats
obtenus avec SPAMAUT et 3CA&1NB avec ceux publiés dans la littérature.
Abstract
Today, email has become a fast and economical way to exchange information. However,
the problem of undesired electronic messages is nowadays a serious issue. To address this
growing burden of such emails, several detection techniques have emerged. In this paper,
we focus on techniques based on machine learning. Firstly, we propose a new symbolic
induction approach based on induction graph and cellular machine for spam filtering that
we called SPAMAUT. Methodological point of view, we explore all the phases of the
process namely, the linguistic preprocessing and attributes selection for textual data
representation, supervised learning to build a classifier for spam detection. We examine by
experiments on the corpus LingSpam, the impact of stemming, term weighting and
attributes selection on the performance of SPAMAUT. In a second step, and to improve
SPAMAUT performance, we propose a parallel combination of several versions of that
system with the Naïve Bayes classifier (NB); we named this combination 3CA&1NB. The
diversity between these classifiers is ensured by the use of (a) different learning terms sub-
sets and (b) different learning algorithms. The proposed combination uses three different
SPAMAUT; each one is trained with a subset of different terms. By voting, the decisions of
these three systems are combined with that of the NB classifier to classify a new email.
Experiments indicate an improvement in the quality prediction versus SPAMAUT. And
finally in a third time we compare our best results obtained with SPAMAUT and
3CA&1NB with those published in the literature.
Tableau 5.1- Règles générées à partir du graphe d'induction de la Figure 5.6. ................... 70
Tableau 5.2-Configuration initiale de l'automate : contenu de CelFact et CelRule ............. 70
Tableau 5.3- Configuration initiale : état des matrices d'incidence entrée/sortie ................ 70
Tableau 5.4-Modèle cellulaire correspondant au graphe d’induction de la Figure 5.6........ 71
Figure 4.1-Répartition des spam par contenu. (Gastellier-Prevost, 2009). .......................... 47
GLOSSAIRE
AA Apprentissage Automatique
TC Text Categorization, en français catégorisation de
textes (CT).
SMTP Le protocole SMTP (Simple Mail Transfer Protocol)
est le protocole standard permettant de transférer le
courrier entre deux serveurs de messagerie - celui de
l'expéditeur et celui du destinataire.
DNS le système de noms de domaine (Domain Name
System) est un service permettant d'établir une
correspondance entre une adresse IP et un nom de
domaine et, plus généralement, de trouver une
information à partir d'un nom de domaine
ISP Internet Service Provider est un fournisseur d’accès
à Internet (FAI). C’est un organisme (généralement
une entreprise mais parfois aussi une association)
offrant une connexion au réseau informatique Internet.
IP Internet Protocol (abrégé en IP) est une famille de
protocoles de communication de réseau informatique
conçus pour et utilisés par Interne.
URL les adresses web sont appelées Uniform Resource
Locator (URL). Elles indiquent « comment » (par
quel chemin sur le réseau) accéder à une ressource.
CASI Cellular Automata for System Induction : il s’agit
d’un automate cellulaire à base d’induction
Introduction Générale
Contexte de l’étude
Le courrier électronique (ou courriel) est aujourd'hui l'une des applications les plus
utilisées sur internet et sur les réseaux d’entreprises. Utilisé pour des applications très
variées (personnelles, professionnelles, associatives, etc.) celui-ci tend à prendre une place
de plus en plus importante par rapport aux moyens de communication traditionnels. Outre
son faible coût, la messagerie électronique a l'avantage d'optimiser la communication et la
diffusion d'informations. Il est impossible de donner une liste exhaustive de ces avantages,
mais il est évident que le courrier électronique:
- et échanger des messages à n'importe quelle heure, en dépit des différences des
fuseaux horaires,
1
http://www.enisa.europa.eu/act/res/other-areas/anti-spam-measures/studies/spam-slides: consulté le 16/01/2012
Introduction Générale 2
95,6% des messages électroniques seraient identifiés comme étant des spam par les chaines
de filtrages des fournisseurs d’adresses email. Les conséquences du spam aussi bien sur le
plan individuel que dans les entreprises sont significatives; elles peuvent être
catastrophiques pour les entreprises qui ne sont pas préparées pour faire face à ces menaces.
Le spam n'est plus simplement ennuyeux ; il est coûteux pour les entreprises non seulement
financièrement, mais également en termes de temps de traitement, d'utilisation de bande
passante, de gestion et de consommation de ressources.
Pour faire face à cette charge croissante de spam, de nombreuses solutions ont été
proposées (Sanz, et al., 2008). Certaines solutions sont basées sur l’en-tête du courriel et
utilisent les listes noires, les listes blanches, la vérification de DNS pour détecter le spam.
D’autres solutions comme le filtrage à base d’apprentissage automatique, se basent sur le
contenu textuel du courriel (Cormack, et al., 2007b) (Guzella, et al., 2009). Dans cette
étude, nous nous intéressons à l’application de l’apprentissage supervisé (AS) pour la
détection de spam. Les solutions existantes à base d’AS permettent déjà d'atteindre une très
grande exactitude. Cependant, les quantités énormes de spam diffusées aujourd'hui nous
encouragent à améliorer encore ces solutions ou proposer de nouvelles solutions pour
atteindre une meilleure qualité de détection.
Objectifs de l’étude
Notre objectif, dans ce mémoire, est de proposer une nouvelle approche à base
d’apprentissage supervisé dans le domaine de filtrage de spam (Barigou, et al., 2011a). Il
s’agit de la machine cellulaire CASI issue des travaux de (Atmani, et al., 2007). Nous
désirons aussi situer cette nouvelle approche par rapport à d’autres travaux ayant contribué
dans le domaine de filtrage de spam (Barigou, et al., 2011b). En effet, nos préoccupations
de départ sont :
- peut-on améliorer encore les systèmes de détection de spam?
- quelles sont les différentes solutions actuellement utilisées et qui donnent les
meilleurs résultats ?
Introduction Générale 3
- l’approche que nous proposons peut-elle être considérée comme une solution au
problème de filtrage de spam ?
Pour répondre à toutes ces questions nous étudions, dans un premier temps, le
système que nous avons nommé SPAMAUT « SPAM detection with cellular AUTmata » et
qui intègre la machine cellulaire CASI, pour le filtrage de spam (Barigou, et al., 2011c). Ce
problème de filtrage est abordé dans ce travail comme un problème de catégorisation de
textes ainsi point de vu méthodologique, nous explorons toutes les phases du processus de
catégorisation de textes à savoir, le prétraitement linguistique (segmentation, élimination
des mots vides et analyse flexionnelle) et la sélection des attributs pour la représentation
numérique des données textuelles, l’apprentissage supervisé pour la construction d’un
classifieur de détection de spam. Et enfin l’évaluation où nous examinons, par des
expériences sur le corpus LingSpam, l’impact de la racinisation, la pondération des termes
et la sélection des termes sur la performance de SPAMAUT. Cette étape d’évaluation va
nous permettre d’analyser de plus près les points forts et faibles de ce système et
d’envisager les solutions pour améliorer cette première version du système de détection de
spam à base de machine cellulaire.
Dans un deuxième temps, et pour améliorer les performances du système
SPAMAUT, nous proposons une combinaison parallèle de plusieurs versions de ce système
avec le classifieur Bayésien naïf que nous nommons 3CA&1NB « three Cellular Automata
combined with one Naive Bayes » (Barigou, et al., 2012a), (Barigou, et al., 2012b).
Les recherches théoriques indiquent que la combinaison de classifieurs qui
prennent les mêmes décisions n’est pas intéressante (Dietrich, 2000), (Valentini, et al.,
2002). La combinaison est efficace seulement s’il y a un désaccord entre ces classifieurs.
Par conséquent, les méthodes pour créer des ensembles de classifieurs se concentrent sur la
production de classifieurs de base diversifiés. Cette diversité peut être assurée par plusieurs
manières (ensembles d’apprentissage différents, ensemble d’attributs d’apprentissage
différents ou classifieurs différents).
La diversité dans 3CA&1NB est assurée par l’utilisation
- (a) des sous-ensembles de termes d’apprentissage différents et
Introduction Générale 4
Et enfin, dans un troisième temps, nous comparons nos meilleurs résultats obtenus
avec SPAMAUT et 3CA&1NB avec ceux publiés dans la littérature. Les comparaisons
permettent d’apprécier la qualité de classification de SPAMAUT et 3CA&1NB (Barigou, et
al., 2012-c).
Structure du mémoire
Chapitre 2 : les données que nous manipulons dans cette étude sont des données
textuelles (le contenu des courriels), mais les algorithmes d’apprentissage ne sont pas
capables de traiter directement ces textes. Ainsi une étape de représentation numérique est
nécessaire. Dans ce chapitre nous allons décrire toutes les étapes permettant de construire
une représentation qui soit exploitable par un algorithme d’apprentissage.
Chapitre 6 : Nous trouvons une présentation du corpus que nous avons utilisé,
ainsi que les différentes mesures d’évaluation appliquées pour l’évaluation des
performances de nos systèmes de détection de spam, SPAMAUT et 3AC&1NB.
Conclusion : nous terminons ce mémoire par une synthèse du travail effectué dans
ce mémoire de magister et les différentes perspectives que nous pouvons envisager pour les
travaux futurs.
1
Une introduction à la
Catégorisation de Textes
sont bien connues: elle est très coûteuse en temps et en ressources humaines, elle est aussi
difficilement adaptable à un autre domaine car il faut tout réécrire.
1.1 Notations
Nous définissons les termes suivants :
D = {d , d , d n} ; D = n; n ∈ N ;
1 2
T = {t , t , , tP } ; T = p; p ∈ N
1 2
- Un ensemble C de catégories :
C = {c , c , , cm } ; C = m; m ∈ N
1 2
Dans cette section, nous nous intéressons tout d’abord à la définition de cette tâche,
puis nous décrivons brièvement le processus d’un système de catégorisation de textes.
Une Introduction à la Catégorisation de textes 9
Boîte de
réception
Mail urgent
Nouvel
email
? Mail du
directeur général
Mail à propos de
l’évolution du
marché
Mail personnel
Le système de la Figure 1.1 organise des emails dans des boîtes aux lettres qui
correspondent chacune à une classe du problème de classification (Denoyer, 2004).
1.2.1 Définition
( d j , ci ) si le texte d j appartient à la classe ci tandis que la valeur « faux » (F) lui sera
la vrai fonction Φ : D × C → {V, F } , qui retourne pour chaque vecteur d j une valeur ci .
Dans cette étude et dans le contexte de filtrage de spam nous nous intéressons plus
particulièrement à la catégorisation binaire.
Documents
Représentation Modèle
Étiquetés
Vectorielle
1.3 Conclusion
Dans ce chapitre, nous avons défini le concept de catégorisation de textes et nous
avons introduit les notions nécessaires à la compréhension des deux chapitres qui suivent :
la représentation des textes (chapitre 2) et l’apprentissage supervisé (chapitre 3). La partie
évaluation sera abordée dans l’étude expérimentale de notre système de détection de spam
(chapitre 6).
2
Représentation de Textes
La représentation la plus simple d'un texte est introduite dans le modèle vectoriel,
qui porte le nom de «Sac de mots» ou «bag of words» (Salton, et al., 1975). L'idée est de
transformer le ou les textes en vecteurs où chaque composante représente le poids d’un
terme2.
signaler que la représentation par vecteur peut entraîner une perte d'information,
notamment celle relative à la position des mots dans la phrase.
2
Le terme peut être le mot tel qu’il apparaît dans le texte, ou bien sa forme canonique (lemme), ou bien sa
forme racine, ou autres représentations (n-gram, concept, ..)
Représentation de Textes 14
t1 t2 … tj … tp
d1 Termes d’index
d2
d3
….
wij
di
….
dn Poids du terme tj dans le
document di
Documents ∈ D
Come illustré dans la Figure 2.1, l’ensemble des textes est transformé en un
ensemble de vecteurs, ou un tableau croisé (individus×variables) où les individus sont les
lignes du tableau et ils représentent les documents, et les variables sont les colonnes de ce
tableau et représentent les termes (ou mot d’index) qui sont extraits des documents
d’apprentissage pendant la phase d’indexation. Chaque cellule dans le tableau contient le
poids du terme dans un document donné (§.2.4).
Pour représenter les documents textuels, plusieurs méthodes sont utilisées, ci-après
nous présentons quelques unes :
- Sac de mots
- Groupe de mots
- Racine ou lemme
- Ngramme de caractère
Les composantes des vecteurs peuvent être une fonction de l'occurrence des mots
dans le texte. Cette représentation exclue toute analyse grammaticale et toute notion de
distance entre les mots, et c'est pourquoi elle est appelée « sac de mots » (Harish, et al.,
2010). Avec cette approche, les documents sont représentés par des vecteurs de dimension
égale à la taille du vocabulaire, qui est en général assez grande. En effet, même des
collections de documents de taille moyenne peuvent contenir de nombreux mots différents,
et des vocabulaires de plusieurs dizaines de milliers de mots sont désormais communs. Or
la grande dimension de ces données rend la plupart des algorithmes de classification
difficiles à utiliser. A cette difficulté algorithmique vient s’ajouter le fait que les
représentations des données textuelles sont typiquement creuses (Dhillon, et al., 2001).
Normalement, une telle représentation doit décrocher des résultats plus performants
que la précédente (sac de mot), mais Lewis (Lewis, 1991), (Lewis, 1992) a constaté que
cette représentation n’a pas pu améliorer son système de catégorisation. Il signale que
beaucoup d'expériences ne sont pas convaincantes car, il explique que, si les qualités
sémantiques sont conservées, les qualités statistiques sont largement dégradées et le grand
nombre de combinaisons possibles entraîne des fréquences faibles et trop aléatoires.
Représentation de Textes 16
Les auteurs dans (Fernanda, et al., 2000) proposent d'utiliser les groupes de mots
statistiques3 comme unités de représentation en opposition aux groupes de mots
grammaticaux. Les résultats étaient meilleurs.
Un n-gramme est une séquence de n caractères, c'est donc une chaîne de n caractères
consécutifs. La notion de n-grammes a été introduite par Shannon en 1948; il s'intéressait à
la prédiction d'apparition de certains caractères en fonction des autres caractères (Shannon,
3
Un groupe de mots statistique est un ensemble de mots contigus pas nécessairement ordonnés qui
apparaissent ensemble mais qui ne respectent pas forcément les règles grammaticales.
4
http://www.ims.uni-stuttgart.de/projekte/corplex/TreeTagger/
Représentation de Textes 17
1948). Depuis cette date, les n-grammes sont utilisés dans plusieurs domaines comme
l'identification de la parole, la recherche documentaire, l’identification de la langue etc.
(Jalam, et al., 2001). Dans les recherches récentes, elle est utilisée pour l’acquisition et
l’extraction des connaissances dans les corpus. De nombreux travaux (Rahmoun, et al.,
2007), (Fürnkranz, 1998) utilisent les n-grammes de caractères comme méthode de
représentation de documents d’un corpus pour la catégorisation de textes.
Le profil n-grammes d'après (Miller, et al., 1999) d'un document est la liste des n-
caractères les plus fréquents, par ordre décroissant de leur fréquence d'apparition dans le
document.
di .
De nombreuses solutions ont été proposées dans la littérature pour coder les
composantes des vecteurs, c’est-à-dire pour attribuer un poids wij à chaque terme (Salton,
- Plus le terme t j est fréquent dans un document di , plus il est en rapport avec le
sujet de ce texte.
- Plus le terme t j est fréquent dans la collection, moins il sera utilisé comme
Cette pondération est la plus simple représentation des données textuelles. Dans
cette pondération le poids wij vaut 1 si le terme t j apparaît au moins une fois dans le
– (d1) : Le chat mange la souris qui n’a pas eu le temps de manger son fromage.
– (d3) : Le chien aboie après les chats et les souris mangent le fromage.
5
Cet exemple est pris entièrement de la thèse (Béchet, 2009)
Représentation de Textes 19
Pour chaque document, une représentation vectorielle basée sur les lemmes sera
utilisée avec élimination de mots vides.
Le Tableau 2.1 montre une représentation matricielle croisant en ligne les documents et en
colonnes, les lemmes.
d1 0 1 0 0 1 1 0 1 1
d2 0 1 0 1 0 0 1 0 0
d3 1 1 1 0 1 1 0 1 0
Elle prend en compte le nombre d'occurrences d'un terme dans un texte. Cette mesure
repose sur l'idée que plus un terme apparaît dans un texte, plus il est important. En
reprenant l’exemple précédent, nous obtenons la représentation du Tableau 2.2 ci-dessous :
Une telle présentation est généralement normalisée afin d’éviter de défavoriser les
documents les plus longs, contenant ainsi plus de termes. La fréquence du terme t j dans le
#(t j , di )
TF (t j , di ) =
∑ k =1, p #(tk , di )
Représentation de Textes 20
Elle a été introduite dans le cadre du modèle vectoriel, elle donne beaucoup
d'importance aux mots qui appariassent souvent à l'intérieur du même texte, ce qui
correspond bien à l'idée intuitive que ces mots sont plus représentatifs. Mais sa particularité
est qu'elle donne également moins de poids aux mots qui appartiennent à plusieurs textes;
pour refléter le fait que ces mots ont un faible pouvoir de discrimination entre les classes.
Cette pondération issue du domaine de la recherche d’informations tire son inspiration de la
loi de Zipf introduisant le fait que les termes les plus informatifs d’un corpus ne sont pas
ceux apparaissant le plus dans ce corpus. Ces mots sont la plupart du temps des mots outils.
Par ailleurs, les mots les moins fréquents du corpus ne sont également pas les plus porteurs
d’informations (Béchet, 2009). Le poids d'un terme t j dans un document d i est calculé
comme suit :
N
TFIDF (t j , d i ) = TF (t j , d i ) × log
DF (t j )
t j . Une telle représentation avec l’exemple précédent est donnée dans le Tableau 2.3
6
(Term Frequency-Inverse Document Frequency)
Représentation de Textes 21
Le codage TFIDF ne corrige pas la longueur des documents. Pour ce faire, le TFIDF
est normalisé. On corrige les longueurs des textes par la normalisation en cosinus, pour ne
pas favoriser les documents les plus longs.
TF (t j , di ) − IDF (t j , di )
TFC (t j , di ) =
∑
p
k =1
(TF − IDF (tk , di ))2
catégorie ck possède son propre ensemble de termes et chaque texte d i sera présenté par
Représentation de Textes 22
Parmi les méthodes les plus souvent utilisées figurent le calcul de l’information
mutuelle, le gain informationnel (Lewis, 1992), (Moulinier, et al., 1996), (Dumais, et al.,
1998), la méthode du chi-2 (Weiner, et al., 1995) ou des méthodes plus simples utilisant
uniquement les fréquences d’apparition (Yang, et al., 1997).
Les termes dont la valeur du G.I est inférieure à un seuil prédéterminé sont
supprimés de l'espace vectoriel. Cette métrique est calculée selon la formule suivante :
P ( x, c )
IG ( x , ck ) = ∑ P ( x, c ) log
P ( x ) × P (c )
c∈{c ,c ) x∈{t ,t }
k k
L'information Mutuelle (IM) : c'est une méthode basée sur le nombre de fois qu'un
mot apparait dans une certaine catégorie, plus la catégorie apparaitra sans le mot, moins
l'IM sera élevée. Sa faiblesse est qu'elle est très influencée par la fréquence des mots. Elle
est mesurée avec la formule suivante :
Représentation de Textes 24
P (t , ck )
IM (t , ck ) = log
P (t ) × P ( ck )
t t Total
c A B A+B
c C D C+D
A+C B+D N
Tableau 2.4-Table de contingence pour un terme t et une classe c
N ( AD − BC ) 2
χ 2(t , c ) =
( A + C )( B + D )( A + B )(C + D )
2.4 Conclusion
Les algorithmes d’apprentissage sont naturellement conçus pour être utilisés sur des
données structurées. Par conséquent, les données textuelles doivent subir une phase de
prétraitement pour obtenir une représentation utilisable par ces algorithmes.
Dans ce chapitre, nous avons étudié le modèle vectoriel issu des travaux de Salton
(Salton, et al., 1975) pour représenter les données textuelles. Nous avons décrit un certain
nombre de transformation que les textes bruts subissent pour conformer au modèle
vectoriel.
Maintenant que nos données textuelles sont traitées, nous pouvons procéder à
l’apprentissage automatique supervisé que nous allons aborder dans le chapitre suivant.
3
Apprentissage
automatique supervisé
Plusieurs algorithmes sont proposés dans la littérature et sont mis au point pour des
problèmes quelconques en apprentissage automatique et ont été appliqués et adaptés dans
ce domaine. Sebastiani présente un bon résumé des différentes méthodes utilisées en
catégorisation de textes (Sebastiani, 2002).
Avant de présenter ces méthodes, nous allons tout d’abord définir les notions
d’apprentissage automatique, apprentissage supervisé et classifieur.
remplir par des moyens algorithmiques classiques. Pour plus de détail, une synthèse de ce
domaine est disponible dans l’ouvrage « Machine Learning », de (Herbrich, 2001).
Pour construire un regroupement de ces données, nous avons trois choix à faire :
7
La procédure d’apprentissage peut être effectuée sous forme de règles
Apprentissage Automatique Supervisé 27
Construction Nouveaux
Exemples du modèle exemples
Étiquetés
Modèle
Décision
probabilité des mots par rapport aux catégories. C'est dans cette famille qu'on trouve entre
autre le classifieur Bayésien naïf (Caruana, et al., 2006) (Langley, et al., 1992).
Il y a aussi les classifieurs qui se basent sur un profil, tel que les classifieurs
linéaires (Herbrich, 2001), (Yang, 1999). Dans ce contexte, le profil est un vecteur de
termes pondérés construit pour chaque catégorie, dans le but de les représenter d'une façon
générale. Ce vecteur est construit à l'aide des données d'entraînement, quand un nouveau
texte, doit être classé, il est comparé à ce vecteur «type». L'avantage de cette approche est
qu'elle produit un classifieur compréhensible par l'humain, dans le sens où le profil de la
catégorie peut être interprété facilement. Par contre, l'inconvénient principal de tous les
classifieurs linéaires est que l'espace est divisé en seulement deux portions, ce qui peut être
restrictif, car tous les problèmes ne sont pas nécessairement linéairement séparables. Les
machines à support vectoriel s'apparentent aux classifieurs linéaires, dans le sens où elles
tentent de séparer l'espace en deux mais certaines manipulations mathématiques les rendent
adaptables à des problèmes non linéaires.
Il y a aussi une famille de classifieurs qui se base sur l'exemple; on parle ici,
d'apprentissage à base d'instances. Les nouveaux textes à classer sont comparés
directement aux documents d'ensemble d'entraînements. L'algorithme des k-plus proches
voisins est le plus connu dans cette famille (Mitchell, et al., 1997).
L’algorithme de Rocchio a été proposé dans (Rocchio, 1971), il est un des plus
ancien algorithmes de classification et l’un des plus simples. Un profil prototypique [c] est
α 1−α
calculé pour chaque classe c ∈ {c1 , c2 ...cm } selon : [ c ] =
Nc
∑ di −
d ∈c Nc
∑ dj
d j ∉c
i
Le modèle probabiliste Naïf de Bayes (NB) qui est le représentant le plus populaire
des classifieurs probabilistes, est fondé sur le théorème de (Bayes, 1763).
P (Ck ) × P ( di / Ck )
P ( Ck / d i ) =
P ( di )
Apprentissage Automatique Supervisé 31
même pour toutes les classes. P (Ck ) est la probabilité à priori qui est estimée par le
P ( di / c ) = ∏ P ( wij / c )
k j =1, p k
8
la mesure de similarité la plus couramment utilisée est le calcul du cosinus de l’angle
formé par les deux vecteurs de documents.
Apprentissage Automatique Supervisé 32
Lorsque « k » est petit, la classification est plus sensible à cause des documents
appartenant à une classe mais dont leur vecteur de représentation ressemble beaucoup plus
à une autre. Par contre, lorsque « k » est trop grand, les catégories ayant peu d’exemples
peuvent être désavantagées par rapport à celles qui en ont plus. On peut remédier à cela en
pondérant le vote par la distance qui sépare les plus proches voisins de l'individu à classer.
Si la qualité de catégorisation obtenue par les k plus proches voisins (K-ppv) est
satisfaisante que celle obtenue avec d'autres méthodes qui nécessitent un apprentissage
complexe (Sebastiani, 2002), le temps nécessaire à son déroulement peut être un obstacle
difficilement incontournable; là où la complexité des autres méthodes est fonction du
nombre de catégories.
Les machines à support vectoriels (SVM) ont été développées par Vapnik (Vapnik,
1998), et utilisées dans de très nombreux domaines qui vont de la reconnaissance de
Apprentissage Automatique Supervisé 33
– les données sont projetées dans un espace de grande dimension par une
transformation basée sur un noyau linéaire, polynomial ou gaussien comme le
montre la Figure 3.4 ;
– dans cet espace transformé, les classes sont séparées par des classifieurs linéaires
qui maximisent la marge (distance entre les classes) ;
– les hyperplans peuvent être déterminés au moyen d’un nombre de points limités
qui seront appelés les « vecteurs de support »
Dans le cas où l'espace de représentation est linéairement séparable, la méthode à
base de SVM cherche l'hyperplan séparateur le plus éloigné (au sens d'une distance) des
documents du corpus d'apprentissage. La catégorisation se fait ensuite en positionnant le
nouveau texte dans l'espace et en examinant de quel côté il se trouve par rapport à
l'hyperplan. Notons que ce modèle ne pose pas l'hypothèse d'indépendance entre les mots
contrairement aux méthodes Bayésiennes
À gauche, nous avons un ensemble de données non linéairement séparables dans un espace
bidimensionnel (x, y). À droite, au moyen d’une fonction noyau φ, ces données sont
Apprentissage Automatique Supervisé 34
Les SVM ont déjà été appliquées au domaine de la classification de textes dans
plusieurs travaux (Joachims, 1998), (Vinot, et al., 2003), (John, et al., 2004). Et comme
l'affirme Joachims dans (Joachims, 1998), l'avantage des SVM réside dans le fait que la
réduction de la dimension n'est pas nécessaire, et que les SVM ont tendance à être assez
robustes pour le cas de sur-apprentissage.
Un classifieur de type arbre de décision (AD), repose sur un arbre où chaque nœud
interne est marqué par un terme et est associé à une condition sur ce terme. Les branches
sortant du nœud correspondent aux résultats de test et les feuilles sont étiquetées par les
catégories. La construction de l'arbre s'effectue à partir des documents d'apprentissage.
nœud racine, puis les nœuds internes sont successivement visités jusqu'à ce qu'une feuille
soit atteinte. Au niveau de chaque nœud, le test associé est effectué pour déterminer le
nœud suivant. La catégorie du document est celle qui se trouve à la feuille finale.
Contrairement aux autres méthodes prédictives dont le seul objectif est de prédire
la catégorie d’un document, les arbres de décision produisent également des règles
permettant de comprendre le phénomène modélisé (Quinlan, 1986).
Compte tenue de leurs nombreux avantages, et malgré leurs performances
souvent inférieures, les arbres de décision sont souvent employés dans une première
passe en tant qu’algorithme préliminaire avant l’application d’un autre algorithme
prédictif. Dans cette première passe, les arbres de décision identifient un sous-ensemble
de valeurs pertinentes pour la prédiction qui seront fournis en entrée à un autre
algorithme tel que les réseaux neuronaux, les k-plus proches voisins, ou d’autres
traitements statistiques qui nécessitent un temps d’exécution plus important.
Apprentissage Automatique Supervisé 35
Les outils ID3, C4.5 implémentent tous deux les arbres de décision (Quinlan,
1993). ID3 fait une implémentation de base, C4.5 permet d'élaguer les arbres et de dériver
une liste de règles de décision à partir des données d'apprentissage, ainsi que d'autres
classifieurs disponibles tels que RIPPER (Thompson, 2001) qui s'est montré plus efficace
pour la catégorisation des textes juridiques en 40 classes que C4.5.
Une règle est de type SI <prémisse> alors <catégorie> où la prémisse est en forme
normale disjonctive (F.N.D). Les littéraux dans les prémisses représentent la présence ou
l'absence d'un terme dans le document de test d k , tandis que la clause de la règle, indique
L’étude des réseaux de neurones a débuté au début des années 1940 par les travaux
de McCulloh et Pitts (McCulloch, et al., 1943) et a été étendue aux problèmes de
classification des formes par Rosenblatt en 1962 (Rosenblatt, 1962).
9
Se sont les unités de calcul élémentaire dont le modèle est issu de certains principe de fonctionnement du
neurone biologique. Ces unités combinent des entrées réelles en une sortie réelle où les entrées n’ont pas la
même importance et à chaque entrée est associé un poids.
Apprentisssage Autom
matique Supeervisé 3
36
-laa couche d’’entrée : cettte couche est responssable de traansmettre les valeurs des
attributs reeçus en entrrée vers la couche
c cachhée (qui la succède).
Unn réseau de neurones enn CT est unn réseau d'unnités constrruit à partir des documeents
d'apprentissage, où lees unités d'entrée repréésentent less pondératioons des term
mes, les unnités
de sorties représentennt les catégoories, et less arcs reliannt les unitéss représentennt les relatiions
Apprentissage Automatique Supervisé 37
d'indépendance. Pour classer un document di , les pondérations wij de ses termes tij
( j = 1… p ) sont chargées dans les unités d'entrées. L'activation de ces unités est propagée à
travers le réseau, et la valeur de l'unité de sortie détermine la décision de la catégorisation.
• Les SVM donnent de très bons résultats de classification de textes (Lewis, et al.,
1994) mais sont très coûteux en temps d’apprentissage et possèdent une limitation
théorique, Le modèle sous-jacent à ce classifieur a été conçu pour la classification
binaire : il cherche un plan séparateur qui sépare l’ensemble des objets en deux
classes.
• Les réseaux de neurones ont pour principal défaut le temps de calcul qui est
considérable, compte tenu de leur dépendance d’un corpus d’apprentissage de
taille conséquente. Son deuxième défaut est qu’il fournit en sortie un modèle de
type boîte noire qui est difficile à comprendre même pour les experts.
• Les K-ppv sont très simples à mettre en œuvre, et permettent une implémentation
rapide pour fournir des résultats satisfaisants (Yang, et al., 1999). Cette méthode
reste robuste sur des cas de données incomplètes, mais elle est très couteuse en
temps de classification et stockage mémoire.
• Les arbres de décision connaissent des limites, qui sont essentiellement de deux
ordres. Tout d’abord, c’est le temps nécessaire pour trouver les règles de
subdivision opérationnelles. En catégorisation des textes, il s’agit d’isoler un petit
nombre de termes qui permettent de distinguer les exemples appartenant à
différentes catégories, Or, la recherche de cet ensemble de termes peut s’avérer
complexe et couteuse en temps. Une deuxième difficulté pour les arbres de
décision est la détermination de la profondeur optimale de l’arbre afin d’éviter le
sur-apprentissage. L’arbre est alors trop calqué sur les exemples du corpus
d’apprentissage, mais se généralise mal à de nouveau exemples
Apprentissage Automatique Supervisé 38
Fidelia (2007) place ces algorithmes sur un axe horizontal, par ordre de
compréhensibilité du modèle produit, les méthodes à base de réseaux neuronaux sont à une
extrémité, et les arbres de décision à l’autre extrémité (Fidelia, 2007). Sur des échelles
intermédiaires, en allant du moins compréhensible au plus compréhensible, on peut placer
successivement le naïf bayes, les machines à vecteurs supports, les k-plus proche voisins.
Ce classement est donné dans le schéma de la Figure 3.6.
RN NB SVM K-ppv AD
- incompréhensible + compréhensible
Il existe plusieurs travaux qui ont travaillé sur la comparaison entre les différents
classifieurs d’apprentissage, à titre d’exemple nous pouvons citer les travaux de:
- Yang et al. (1999) : ont comparé les machines à support vectoriel (SVM), les
k-plus proches voisins (K-ppv), les réseaux bayésiens (RB), et les réseaux de
neurones (RN) (Yang, et al., 1999. Ils ont obtenu les résultats suivants :
De cela, on remarque, qu’excepté les RB, les résultats sont sensiblement proches.
- Dumais et al. (1998) : ont comparé une variante de Rocchio, les arbres de
décision, les réseaux bayésiens et les SVM (Dumais, et al., 1998). Ils ont vu
que toutes ces méthodes sont délicates à mettre en œuvre et leurs
performances dépendent fortement des algorithmes utilisés.
- Dans les travaux de (Brun, et al., 2003), on a utilisé plusieurs méthodes d’AS
pour la détection du thème dans les textes. Ils ont appliqués différentes
méthodes de sélection de termes, en variant la taille du vocabulaire pour
étudier les performances dans chaque cas.
La fusion consiste à combiner toutes les sorties des classifieurs pour donner une
décision finale, par contre, la sélection consiste à choisir les meilleurs classifieurs parmi un
ensemble de classifieurs et combiner leur décision.
Apprentissage Automatique Supervisé 41
Combinaison Parallèle
Dans notre étude nous avons fait appel au vote majoritaire qui est un type de fusion
de classifieurs. La section suivante donne plus de détail sur ce type de combinaison.
Les méthodes de fusion de classifieurs peuvent être de deux types selon la nature
des classifieurs combinés : combinaison de classifieurs faibles ou combinaisons de
classifieurs différents.
10
Nous avons considérés dans cette architecture que le cas d’une décision de type classe.
Apprentissage Automatique Supervisé 42
Les deux méthodes populaires dans la combinaison des classifieurs faibles sont :
• Bagging : le diminutif du nom complet de cette méthode est « Bootstrap
Aggregating ». Son principe est de faire la moyenne des prédictions de plusieurs
modèles indépendants qui permettent de réduire la variance et donc de réduire
l’erreur de prédiction. Il est possible de l’utiliser pour n’importe quel type
d’algorithme. A partir d’un ensemble d’exemples de bases de données, un nouvel
ensemble d’apprentissage est créé par échantillonnage uniforme avec remplacement.
Un certain nombre de nouveaux ensembles sont ainsi générés. Ensuite un modèle
est obtenu pour chaque ensemble d’apprentissage.
Dans ces combinaisons, les classifieurs combinés se diffèrent aussi bien par leur
algorithme d’apprentissage que par les données et attributs utilisés. On distingue deux types
de méthodes : les méthodes de combinaison avec apprentissage et les méthodes sans
apprentissage.
- Vote unanime : la classe finale est choisie si tous les classifieurs proposent cette
réponse.
Apprentissage Automatique Supervisé 43
- Vote à la majorité : la classe finale est décidée si plus que la moitié des
classifieurs l’ont proposé.
- Vote notoire : le résultat de la combinaison est la classe la plus proposée.
3.6 Conclusion
Plusieurs approches différentes ont été utilisées dans l’apprentissage automatique.
Dans ce chapitre, nous avons essayé de présenter quelques unes, en donnant le principe,
l’avantage et l’inconvénient de chaque méthode.
La question qui se pose maintenant: laquelle parmi ces méthodes est la meilleur
pour la catégorisation de textes? La réponse n’est pas évidente, comme l’indique Yang dans
(Yang, et al., 1999) la comparaison entre ces méthodes nécessite de les appliquer sur les
mêmes données, en utilisant les mêmes mesures de performance, ou d’adopter une méthode
d’évaluation contrôlée.
Et c’est pour cette raison là, que les travaux récents s’orientent vers la combinaison
de ces méthodes, dont l’objectif est de regrouper un ensemble de classifieurs qui se
complètent entre eux pour améliorer les performances du système.
4
Filtrage de Spam
Le courrier électronique (ou courriel, email) est sans doute la technique qui a
changé nos habitudes à une grande échelle. La croissance de l'Internet est reliée directement
à l'importance du courriel, car plusieurs sites web lui sont maintenant consacrés, et presque
tous les gens qui ont accès à internet ont au moins une adresse de courrier électronique
qu'ils vérifient quotidiennement, ce qui explique les milliards des courriels qui s'envoient et
sont reçus chaque jour.
Aujourd’hui, le courriel rend vraiment service aux usagers, c’est un moyen rapide et
économique pour échanger des informations (voir Tableau 4.1). Si nous comparons le
courrier électronique aux autres moyens de communication, (par écrit, téléphone), nous
nous apercevons que les avantages des courriels surpassent ses inconvénients. Sa force
réside dans le médium du transport des messages, la rapidité avec laquelle circulent les
courriels, et à la possibilité de les envoyer à plusieurs personnes en même temps. La nature
informatique de ces courriels offre des avantages incomparables, dont l'envoi des
documents électroniques par attachement, l'archivage des messages est beaucoup plus facile
à effectuer qu'avec les communications écrites ou par téléphone, ainsi que, le courrier
électronique permet d'effectuer un traitement rapide, efficace et automatique sur les
messages comme la recherche par mots clés, le tri automatique par sujet.
Filtrage de Spam 45
Dans une seconde partie, nous dressons un état de l’art sur les différents travaux
ayant utilisés l’apprentissage automatique pour le filtrage de spam, nous étudions les
techniques adoptées dans ces différents travaux et analysons les points forts et les faiblesses
de chacune d’elles.
11
http://www.enisa.europa.eu/act/res/other-areas/anti-spam-measures/studies/spam-slides: consulté le 16/01/2012
Filtrage de Spam 46
Le terme spam est aussi utilisé pour désigner le même type de message transmis par
d'autres moyens de communication électroniques tels que les messageries instantanées, les
blogs, les forums, et plus récemment, des réseaux de téléphonie mobile, via les SMS ou
MMS. Même si le moyen de communication est différent, les techniques d'envoi et de
détection restent relativement similaires.
• Publicité : l'objectif est de vanter les mérites d'un produit quelconque. Il s'agit par
exemple de produits pharmaceutiques, de produits de luxe, de logiciels divers et
variés, de jeux d'argent.
• Jeu : l'objectif du spammeur est d'inonder le plus de monde possible avec un email
qui n'a aucun sens particulier, aucun lien ou contenu malveillant. Le but est
simplement d'encombrer nos boîtes aux lettres et surcharger le réseau. Ce type de
spam peut parfois servir de préparation pour des spam de plus grande envergure.
• Hameçonnage (ou phishing): ce type de spam est très construit et ciblé. L'objectif
est de réussir à se faire passer pour un organisme connu par l'utilisateur, dans le but
de lui voler des informations à caractère confidentiel. Par exemple, un email de
notre banque nous alerte que, suite à une perte de données, nous devons nous rendre
sur un site web (le lien intégré à l'email redirige sur un site frauduleux ayant l'allure
du site réel et une URL très ressemblante) afin d'y saisir des informations telles que
le numéro de carte bancaire ainsi que le code secret, sa date d'expiration et son code
de contrôle. En mi-2008, parmi les sites Top les plus contrefaits pour les attaques
de phishing, on retrouve eBay, Paypal et Bank of America.
Filtrage de
d Spam 4
47
• Caanular (ou Hoax) : l'oobjectif est de faire cirrculer une iinformationn semblant très
sennsible, souvvent avec unn caractère d'urgence : fausse aleerte de viruss, fausse alerte
de contaminaation potenttielle, chaînne de soliddarité.... Parr exemple : «un nouvveau
virrus très danngereux se propage, ill faut faire circuler l'iinformationn» ; «des soous-
ar une danggereuse bacctérie ».
vêttements sonnt infectés pa
• Scam : il s'aggit d'une atttaque baséee sur la naïvveté des deestinataires dans le butt de
leuur soutirer de
d l'argent. L'objectif eest de faire croire qu'uune personnne étrangèree est
en grande diffficulté finaancière, maais que son problème peut se réssoudre grâcce à
nouus. En effeet, si nous acceptons de l'aider à transférer une impoortante som mme
d'aargent actueellement blooquée, elle nous verserra en contreepartie un pourcentage
p e de
cettte somme ene remerciem ment.
• Loogiciel Malvveillant: auu travers d'unn email, onn redirige l'uutilisateur veers un site web
w
ou un fichierr attaché quui contient un program mme malveeillant afin d'espionnerr le
commportementt de l'utilisaateur, de nuiire à sa macchine (par ddes virus).
F
Figure 4.1-R
Répartition des spam ppar contenu.. (Gastellierr-Prevost, 20
009).
Filtrage de Spam 48
Perte de temps
Selon une étude, le spam aurait coûté environ 712 $ par employé et par an aux
entreprises. À ce chiffre, il faut rajouter 113 à 183 $ par employé et par an pour la gestion
des emails en quarantaine (Nucleus, 2007).
12
Cette section s’appuie principalement sur (Gastellier-Prevost, 2009).
Filtrage de Spam 49
Les techniques de filtrage diffèrent selon que cette détection se fasse en amont ou en
aval. En effet, deux solutions de détection de spam sont envisageables: la détection au
niveau du serveur mail FAI et la détection au niveau de l’utilisateur final.
Filtrage par vérification du domaine : appelé aussi vérification DNS. Elle consiste à soit
s’assurer qu’un domaine qui désire avoir émettre un email est également capable d’en
recevoir, sinon, le domaine utilisé est éventuellement faux. Soit s’assurer que la machine
qui a envoyé le message (adresse IP), est la même autorisée à en émettre. Cette vérification
se base sur le principe que, le serveur qui envoie et reçoit des emails est le même.
13
http://fr.wikipedia.org/wiki/Lutte_anti-spam; visité le 07/02/2012
14
Elle constitue les informations de base de ce dernier : expéditeur, destinataire, date d'envoi, serveur source,
objet.
Filtrage de Spam 50
Filtrage par listes blanches : ces listes consistent à pré-déclarer une liste de « bons
expéditeurs » (adresses emails, noms des domaines, adresse IP) desquels le destinataire
accepte de recevoir des emails. Leur utilisation est utile surtout pour déclarer les robots des
listes de diffusion auxquelles le destinataire s’est abonné.
Filtrage par listes noires: ces listes consistent à pré-déclarer une liste de « mauvais
expéditeurs », (adresses emails, noms des domaines, pays, adresse IP), desquelles le
destinataire refuse de recevoir des emails. Ces listes peuvent être :
Ce type de filtrage se fait au niveau de l’utilisateur où son contenu est analysé pour
détecter les spam qui ont réussi à passer à travers le filtre d'enveloppe. Le filtrage de
contenu réalisé par des méthodes statistiques est un peu plus sensible que le filtre
d'enveloppe : les informations véhiculées à travers le courriel sont subjectives, et ce qui
peut paraître un spam selon le filtre de contenu peut être un courriel tout à fait légitime
(c'est ce que l'on appelle un faux positif), et l'inverse est aussi vrai (faux-négatif). Dans
cette catégorie nous trouvons les techniques suivantes :
Filtrage par mots clés : dans cette méthode, on définit les mots qui reviennent souvent
dans le spam comme interdits, et on analyse le contenu du message lui-même, si la
présence d’un mot fait partie des mots interdits, alors le message est considéré comme
indésirables. Mais ce filtrage est facile à contourner par le remplacement de certains
caractères qui composent le mot interdit, par des caractères à une allure similaire (ex.
remplacer free par f*r*e*e).
Filtrage de Spam 51
Filtrage par caractères : il s’agit de bloquer les emails qui contiennent certains caractères
ou police de caractère, ou certaines langues utilisées dans ces emails.
Filtrage d’image : il s’agit d’analyser les images obtenues dans les messages au niveau des
propriétés du fichier image (format, taille du fichier, taille d’image) que du contenu de
l’image (couleurs, test de pixels,…).
Filtrage d’URL : ceci consiste à vérifier les liens hypertextes inclus dans les messages
auprès d’une base de données de « mauvais URL » préenregistrés, ou via la consultation en
temps réel des listes noires disponibles sur le web. Des tentatives de masquage du lien
hypertexte sont des fois utilisées par des spammeurs pour empêcher l’analyse par le filtrage
d’URL.
Filtrage statistique à base d’apprentissage : par exemple le filtrage bayésien du spam est
un système fondé sur l'apprentissage d'une grande quantité de spam et courriels légitimes
afin de déterminer si un courriel est légitime ou non. Afin de bien fonctionner, le corpus de
spam et le corpus de courriels légitimes doivent contenir idéalement plusieurs milliers de
courriels.
Les travaux cités ci-dessous sont classés tout d’abord selon le type d’algorithme
d’apprentissage utilisé ensuite chronologiquement.
15
Cette étude est basée sur les références (Upasana, et al., 2011) (Subramaniam, et al., 2010) (Guzella, et al.,
2009).
Filtrage de Spam 52
Des variantes de cette technique de base ont été implémentées dans plusieurs
travaux de recherche et produits logiciels. En 2006, Medlock, a réalisé son filtre nommé
ILM (Medlock, 2006). Il utilise toujours le principe de Bayes mais cette fois-ci avec une
représentation fréquentielle TFIDF du corpus GenSpam17. Ce modèle a donné des résultats
meilleurs que le classifieur SVM.
16
une version de k plus proches voisins
17
http://www.benmedlock.co.uk/genspam.html
Filtrage de Spam 53
Classifieur SVM
L’utilisation des SVM pour le filtrage de spam a été proposée initialement par
Druker et al. (Drucker, et al., 1999). Ils ont comparé l’efficacité du classifieur linéaire SVM
avec ceux de RIPPER (Cohen, et al., 1996), Rocchio (Rocchio, 1971) et Boosting
(Schapire, 1999). C’est une publication intéressante, car c’est la première qui a essayé un
large ensemble de configurations d’expérimentations sur la sélection des termes et les
différents modes d’apprentissage. Leurs conclusions étaient : (a) SVM et Boosting sont
comparables, mais les SVM permettent d’atteindre des taux de faux positifs plus bas et plus
facilement. (b) Les méthodes RIPPER et Rocchio ne sont pas performantes pour le filtrage
de spam. (c) L’apprentissage avec Boosting est énormément long.
D’autres résultats, par la suite, ont été publiés, et utilisant les SVM. Les auteurs
dans (Kolcz, et al., 2001) ont étudié la prise en compte des erreurs de classification
spécifique à chaque classe. Sculley et al. ont proposé l’utilisation des ROSVM (Relaxed
Online SVM) pour l’apprentissage et le classement en ligne des spam (Sculley, et al., 2007);
c’est une simplification qui limite le nombre d’itérations de l’algorithme. Son efficacité de
classement reste proche de celle que l’on peut obtenir sans simplification.
18
http://osbf-lua.luaforge.net/TREC2005/
19
Courriels légitimes classifiés incorrectement comme spam
Filtrage de Spam 54
Classifieur K-ppv
Sakkis et al. ont réalisé un filtre anti spam avec les K-ppv en utilisant la méthode GI
pour la sélection des termes sur le corpus LingSpam20, pour obtenir à la fin des résultats
meilleurs que ceux du classifieur Bayésien naïf (Sakkis, et al., 2003).
Delany et al. ont réalisé le filtre « ECUE » avec K-ppv en étudiant deux
représentations : binaire et fréquentielle (Delany, et al., 2004). Ce filtre a obtenu une
performance similaire à celle de Bayes. Ce même filtre a été amélioré dans (Delany, et al.,
2005) en appliquant une mise à jour aux messages mal classés, ce filtre a atteint une
réduction considérable en taux des faux positifs.
Veloso, et al. ont réalisé un filtre qui a atteint une meilleure performance de
classification par rapport aux logiciels libres Bogo-filtre et SpamAssassin (Veloso, et al.,
2006).
Fdez-Riverola, et al. ont réalisé le filtre «Spam Hunting», avec une représentation
fréquentielle et une sélection de termes avec la méthode GI sur le corpus SpamAssassin21.
Ce filtre a réussi de réduire le taux des faux positifs et des faux négatifs22 avec une grande
rapidité de mise à jour (Fdez-Riverola, et al., 2007).
Hsiao, et al. ont réalisé un filtre appelé ICBC, avec une représentation fréquentielle
TFIDF sur le corpus SpamAssassin. Ils ont constaté que ce filtre est plus performant que les
k-ppv en terme de la F1-mesure (Hsiao, et al., 2008).
Clark, et al. ont réalisé le filtre « Linger », en utilisant une représentation sac de
mots, une sélection d’attributs avec GI sur les corpus : LingSpam et PU123. Linger a
obtenu de très bons résultats de classification (Clark, et al., 2003).
20
http://csmining.org/index.php/ling-spam-datasets.html
21
http://csmining.org/index.php/spam-assassin-datasets.html
22
Des spam classifiés incorrectement comme légitimes
23
http://csmining.org/index.php/pu1-and-pu123a-datasets.html
Filtrage de Spam 55
Luo, et al. ont réalisé le filtre «SBSA», avec l’utilisation de la méthode GI, ce filtre
a surpassé celui de Bayes au niveau de la réduction des faux positifs (Luo, et al., 2005).
Tzortzis, et al. ont réalisé un filtre avec une représentation fréquentielle, la méthode
GI et les corpus SpamAssassin et LingSpam. Les résultats ont montré une grande
exactitude avec les deux corpus et surpassent ceux du classifieur K-ppv (Tzortzis, et al.,
2007).
Sakkis et al. ont combiné le Naïve Bayésien avec les K-ppv en utilisant une
combinaison à étage (Stacking) (Sakkis, et al., 2001). Ils ont constaté une amélioration dans
la qualité de détection par rapport aux classifieurs de base utilisés séparément.
He et Thiesson ont combiné les forêts d’arbres aléatoires, et ont réussi à obtenir des
résultats meilleurs que ceux obtenus avec l’algorithme de régression logistique (He, et al.,
2007).
Les auteurs dans (Koprinska, et al., 2007) ont combiné aussi les forêts aléatoires, et
ont obtenu des résultats meilleurs que ceux de Bayes.
Filtrage de Spam 56
Shin et al. ont combiné trois classifieurs différents : Naïve Bayes, arbre de décision
et les réseaux de neurones (Shih, et al., 2008). Les résultats étaient meilleurs que ceux des
trois classifieurs utilisés séparément. Ils ont constaté une réduction intéressante en taux des
faux positifs.
Les auteurs dans (Wei, et al., 2008) ont réalisé le filtre E2, en combinant deux
approches : PNB (Positive Naive Bayes) basé sur le principe de Bayes et FEBL (Positive
Examen Based Learning). E2 a atteint des résultats meilleurs que ceux de PNB et FEBL. Il
est plus robuste, et plus précis dans la détection des spam (99% de précision).
4.5 Conclusion
Plusieurs techniques de détection de spam sont présentées dans ce chapitre, avec un
état de l’art sur les travaux réalisés pour la même raison qui est la lutte contre les spam.
Dans le chapitre suivant, nous allons présenter à notre tour, une nouvelle approche
de filtrage de spam, qui se base sur l’induction symbolique.
Nous allons décrire toutes les étapes importantes dans l’élaboration d’un tel modèle
et nous poursuivons par une analyse de ce dernier et discuter les motivations qui nous ont
poussé vers une combinaison de classifieurs en faisant participer plusieurs versions du
modèle booléen dans la prise de décision. Mais tout d’abord, nous allons introduire
brièvement les automates cellulaires et la machine cellulaire CASI.
Détection de Spam avec CASI 58
5.1.1 Définition24
Un automate cellulaire est une grille composée de cellules qui changent d’état dans des
étapes discrètes. Après chaque étape, l’état de chaque cellule est modifié selon les états de
ses voisins dans l’étape précédente. Les cellules sont mises à jours d’une manière
synchrone, et les transitions sont effectuées dans la théorie simultanément.
En appliquant les règles simples et des transitions spécifiques, un automate cellulaire peut
effectuer d’une manière globale, des opérations complexes.
Certains des concepts principaux pour les automates cellulaires sont :
• Configuration : L’état globale de l’automate cellulaire, appelé configuration est
défini par l’état de toutes ces cellules.
• Voisinage : le prochain état de chaque cellule dépend de l’état actuel de ses voisins.
La transition de l’automate cellulaire d’une configuration à une autre, est la
séquence des transitions locales de toutes les cellules. Le voisinage d’une cellule est
défini par l’ensemble de ses voisins dont les états sont pris en compte pour chaque
transition.
• Parallélisme : toutes les cellules constituant l’automate cellulaire sont mises à jour
d’une manière simultanée et synchrone.
• Déterminisme : Le nouvel état de chaque cellule est déterminé par son état, et l’état
seulement se son voisinage.
• Homogénéité : toutes les cellules utilisent la même règle de transition pour
déterminer leur prochain état.
• Discrétisation : Un automate cellulaire évolue discrètement dans le temps. Il peut
être décrit par les quatre composants suivants :
Dimension : il n’y a aucune limite à la dimension d’un automate cellulaire,
mais dans le pratique, on utilise des automates avec 1,2 ou 3 dimensions.
24
http://fr.wikipedia.org/wiki/Automate_cellulaire consulté le 20/12/2011
Détection de Spam avec CASI 59
CASI (Cellular Automata for System Induction) issue des travaux de (Atmani, et al.,
2007) est une méthode cellulaire de génération, de représentation et d’optimisation des
graphes d’induction (Zighed, 2000) générés à partir d’un ensemble d’exemples
d’apprentissage. Ce système cellulo-symbolique est organisé en cellules où chacune d’elles,
est reliée seulement avec son voisinage. Toutes les cellules obéissent en parallèle à la même
règle appelée fonction de transition locale, qui a comme conséquence une transformation
globale du système.
COG CIE CV
(Cellular Concept (Cellular Inference (Cellular Validation)
Generation) Engine)
Base de Connaissances
CelFact - CelRule
Base de connaissances
Les deux composants COG et CIE utilisent une base de connaissances sous forme
de deux couches finies d’automates finis :
La première couche, CelFact, pour la base de faits et, la deuxième couche, CelRule,
pour la base de règles.
Chaque cellule de CelFact se présente sous trois états : état d’entrée (EF), état
interne (IF) et état de sortie (SF). La cellule est considérée comme fait établi si la valeur de
son EF est égale à 1, sinon, elle est considérée comme fait à établir.
Chaque cellule de CelRule se présente sous trois états : état d’entrée (ER), état
interne (IR) et état de sortie (SR). Toute cellule de CelRule est considérée comme une règle
candidate si la valeur de son état ER est égale à 1, sinon, elle est considérée comme une
règle qui ne doit pas participer à l’inférence.
S’il ya l cellules dans la couche CelFact, EF, IF et SF seront considérés en tant que
vecteurs de dimension l (EF, IF, SF ∈ {0,1}l).
Voisinage
Le voisinage des cellules est défini par deux matrices d’incidence d’entrée RE et de
sortie RS.
∀i ∈{1, l}, ∀j ∈{1, r}; si (le fait i ∈ à la conclusion de la règle j ) alors RE (i, j ) = 1
Inférence
La dynamique de l’automate cellulaire, utilise deux fonctions de transitions δfact
qui simule les phases de sélection et de filtrage dans un système expert et δrule qui simule
la phase d’exécution :
1- , , , , , , , , , ,
2- , , , , , , , , , ,
25
Simulation, Intégration et Fouille de données
26
au département d’Informatique
Détection de Spam avec CASI 62
d’association, ensuite et dans un deuxième temps produire des règles booléennes inductives
qui vont alimenter la base de connaissances de la machine cellulaire CASI.
Il a fait aussi l’objet d’une étude dans (Benfriha, et al., 2011) pour la catégorisation
des comptes rendus hospitaliers avec l’algorithme des treillis de Galois. Les auteurs ont
réussi une modélisation booléenne des treillis de Galois par l’automate cellulaire CASI
nommée LATTICE-CELL. Le but de cette modélisation étant de réduire le temps de
catégorisation engendrés par le treillis de Galois. Des expériences sont effectuées sur un
corpus de comptes rendus médicaux pour évaluer cette approche et la comparer avec
d’autres algorithmes comme le bayésien naïf et les k plus proches voisins. Les résultats
obtenus montrent que LATTICE-CELL améliore la performance du système tout en
réduisant le temps de catégorisation.
Dans le domaine de la production industrielle, nous trouvons le travail de
(Deddouche, et al., 2011). L’objectif des auteurs est de modéliser par la machine
cellulaire le processus d’ordonnancement réactif pour l’allocation des ressources aux
tâches en temps réel.
participation des ingénieurs PFE (Lasbihi, et al., 2010) a fait l’objet de plusieurs
communications (Barigou, et al., 2011a), (Barigou, et al., 2011b) (Barigou, et al., 2011c).
VECTORISATION
Courriels Prétraitement Nouveau
linguistique Courriel
d’apprentissage
Sélection des
APPRENTISSAGE termes
CIE COG SIPINA
CV
Pondération des
termes
CelFact ; CelRule, RE , RS
Représentation
vectorielle
CLASSIFICATION
Spam ou légitime
5.3.1 Vectorisation
Étant donné que les textes des courriels sont des données non structurées, il faut au
préalable déterminer les unités textuelles qui constitueront les entrées aux algorithmes
Détection de Spam avec CASI 64
d’apprentissage. Ils sont censés indiquer de quoi parlent les textes. Donc, pour pouvoir
appliquer les algorithmes d’apprentissage aux textes, la première étape consiste à obtenir
une représentation numérique de ces textes à la fois économique et significative. Le modèle
vectoriel (chapitre 2) est probablement l'approche la plus courante: on représente un texte
par un vecteur numérique obtenu par exemple, en comptant les éléments lexicaux les plus
pertinents (Salton, et al., 1975).
L’ensemble des courriels (d’apprentissage) doit être prétraité pour extraire les termes qui
le représentent. A l’aide du module d’indexation, nous pouvons extraire une première liste
de termes en procédant au découpage du texte en mots, à l'élimination des mots vides,
comme nous pouvons aussi utiliser une variante de l’algorithme de Porter27 pour la
racinisation des différents mots retenus dans cette première phase.
Cet ensemble de termes est par la suite réduit, par le choix de l'une des trois mesures
implémentées dans SPAMAUT : le gain d’information (GI), l’information mutuelle (MI),
et la statistique de Chi-2( χ2). La sélection des termes est effectuée dans le but de choisir les
éléments les plus pertinents de tous les courriels. Le système calcule la mesure élue pour
27
http://tartarus.org/~martin/PorterStemmer/
Détection de Spam avec CASI 65
tous les termes, puis prend les K (seuil) premiers termes correspondant aux plus grandes
valeurs calculées. Ce processus de sélection est bien illustré dans la Figure 5.4 suivante :
A la fin de ces différents traitements, chaque courriel i est représenté par un vecteur
d i = ( wi1 , wi 2 , w ip ) de ℜp où chaque coordonnée wij représente la pondération du terme
t j dans le document di . On aura ainsi une matrice à deux dimensions dans laquelle les
lignes et les colonnes représentent respectivement les courriels et les termes de l'index.
Nous avons prévu trois types de pondération :
- une pondération binaire qui indique la présence (=1) ou l’absence (=0) du terme
dans le texte,
La Figure 5.5 ci-dessous illustre bien l’ensemble des différents traitements que nous
avons prévus pour obtenir la représentation vectorielle à partir d’un ensemble de courriels :
Algorithme
Algorithme 1 : Apprentissage
Exemple illustratif
Un graphe d’induction
S0
1810 Non Spam
Partition P0
361 Spam
Partition P1 S2 : «free» =1
S1 : «free» =0
1693 Non Spam 117 Non Spam
Partition P2
S3 : « linguistic»= 0 S4 : « linguistic» =1
Non Spam
22 Non Spam 95
Spam
216 Spam 0
Partition P3 S5
1789 Non Spam
146 Spam
Les deux composants COG et CIE interviennent dans cette phase d’apprentissage
pour construire le modèle booléen qui va être utilisé dans le filtrage de spam. Cette
construction passe par les étapes suivantes :
Détection de Spam avec CASI 70
RE R1 R2 R3 R4 R5 RS R1 R2 R3 R4 R5
S0 1 1 0 0 0 S0 0 0 0 0 0
Free=0 0 0 0 0 0 Free=0 1 0 0 0 0
S1 0 0 0 0 1 S1 1 0 0 0 0
Free=1 0 0 0 0 0 Free=1 0 1 0 0 0
S2 0 0 1 1 0 S2 0 1 0 0 0
Linguistic=0 0 0 0 0 0 Linguistic=0 0 0 1 0 0
S3 0 0 0 0 0 S3 0 0 1 0 0
Linguistic=1 0 0 0 0 0 Linguistic=1 0 0 0 1 0
S4 0 0 0 0 1 S4 0 0 0 1 0
S5 0 0 0 0 0 S5 0 0 0 0 1
3. Inférence : Une fois la configuration initiale créée, le chainage avant est lancé avec
les deux fonctions de transitions citées auparavant (§section 5.2.2). Le modèle ainsi
va passer de cette configuration vers d’autres nouvelles configurations G(1),
G(2),…,G(i). L’inférence s’achève après une stabilisation avec une configuration
finale. A ce niveau, la construction du modèle cellulaire est complète et nous
obtenons le modèle donné en Tableau 5.4.
- Une matrice de sortie, RS, mémorisant les conclusions des différentes règles.
Détection de Spam avec CASI 72
Dans cette exemple, nous avons 03 règles qui sont induites, par exemple, la règle R1
a comme prémisse « free=0» (voir première colonne de RE) et comme conclusion
« légitime » (voir première colonne de RS).
1. une mémoire de stockage réduite ; une fois ce modèle élaboré, nous n’avons plus
besoin de sauvegarder le graphe d’induction, celui-ci est représenté par les deux
couches CelFact, CelRule et les deux matrices d’incidence d’entrée/sortie qui sont
toutes booléennes et peuvent être représentées par des vecteurs de bits.
5.3.3 Classification
Pour classifier les courriels, la machine cellulaire fait appel au module CIE qui
simule le fonctionnement du cycle de base d’un moteur d’inférence en utilisant come base
de connaissances le modèle élaboré depuis la phase d'apprentissage ; c’est la configuration
finale de CelFact, CelRule, RE et RS.
Nous résumons les principales étapes dans l’algorithme 2 et dans la Figure 5.7
suivants :
Algorithme 2 : classification
28
Le EF de chaque cellule est initialisé à 0: aucun fait n’est établit
Détection de Spam avec CASI 73
Dans nos premières expériences (§chapitre 6), nous avons tout d’abord, essayé
d’examiner l’impact de diverses méthodes de sélection de termes, ainsi que le traitement
linguistique des mots comme la racinisation, l’élimination des mots vides et la pondération
des termes sur la performance de cette méthode. Nous avons donc entrepris une
comparaison expérimentale en testant plusieurs configurations. Nos premières évaluations
indiquent que l’approche proposée est intéressante et encourageante. Les résultats
expérimentaux ont permis d’observer que la qualité de prédiction est meilleure avec la
configuration suivante :
L’analyse de SPAMAUT a permis aussi de constater que les termes retenus par le
système dépendent de la méthode de sélection utilisée. Nous avons créé plusieurs versions
de SPAMAUT, où chacune d’elles utilise un ensemble de termes différent. Ces versions ont
donné des résultats de classification différents.
Détection de Spam avec CASI 75
Nous avons constaté, que les trois méthodes de sélection utilisées, ne peuvent pas
satisfaire entièrement les exigences de cette tâche de détection de spam:
• D’après les résultats obtenus nous remarquons que la qualité de détection est
meilleure lorsque la sélection d’attributs est effectuée par les méthodes MI et Chi-2.
• Par contre la couverture du système est nettement meilleure dans le cas d’utilisation
de la méthode GI. Elle est moyenne dans le cas de MI, et médiocre dans le cas de
Chi-2.
Or, nous voulons un système qui détecte les spam avec les plus petits taux de faux
positifs29 et faux négatifs30. Le problème que nous posons maintenant, est comment
améliorer les performances de ce système cellulaire SPAMAUT?
En se basant sur les remarques que nous avons évoquées ci-dessus, nous avons
envisagé, de combiner les décisions des trois différentes versions de SPAMAUT avec le
classifieur bayésien pour bénéficier de leur avantage en précision et en couverture.
29
Un courriel légitime classé comme spam
30
Un spam classifié comme légitime
Détection de Spam avec CASI 76
Courriels
d’apprentissage
Extraire Ensemble
Attributs d’attributs
Classifier nouveau
courriel avec chaque
Vote classifieur individuel
L'approche proposée appelé 3CA&1NB (Voir Figure 5.8) utilise trois classifieurs
SPAMAUT, où chacun d’eux est entraîné avec un sous-ensemble de termes. Ces sous-
ensembles sont sélectionnés avec trois fonctions de sélection de caractéristiques (Yang, et
al., 1997): le gain informationnel (GI), l'information mutuelle, et le Chi-2. Ces classifieurs
sont combinés avec le classifieur NB entrainé avec un sous-ensemble de termes sélectionné
avec la mesure GI.
Dans notre travail, nous avons expérimenté une approche pour combiner les
décisions de ces quatre classifieurs :
Détection de Spam avec CASI 77
5.6 Conclusion
Dans ce chapitre, nous avons présenté dans un premier temps, une nouvelle
approche pour la détection de spam (SPAMAUT). La méthode proposée s’appuie sur
l’induction symbolique par automate cellulaire CASI. Elle procède par la construction d’un
modèle booléen composé de deux couches finies d’automates finis (CelFact et CelRule) où
le voisinage est représenté par deux matrices d’incidence d’entrée (RE) et de sortie (RS).
L’inférence, pour le filtrage de spam, est assurée par deux fonctions de transitions (δfact et
δrule).
Et dans un deuxième temps, nous avons discuté les motivations qui nous ont
orientées vers la combinaison de classifieurs. Nous avons décidé de construire trois
versions de SPAMAUT et les combiner avec NB (3CA&1NB). Pour assurer la diversité,
nous avons :
- Varier l’ensemble des attributs pour chaque version : chaque version fait son
apprentissage sur un sous ensemble de termes sélectionnés par l’une des
fonctions de sélection MI, GI et chi-2.
- Varier les types de classifieurs : nous avons combiné ces trois modèles avec le
Bayésien naïf en utilisant le vote majoritaire.
Le chapitre qui suit sera consacré à l’étude expérimentale et l’analyse des résultats
obtenus avec SPAMAUT et 3CA&1NB.
6
Étude expérimentale
Ce chapitre reprend et complète une partie des travaux déjà publié dans le cadre de
ce mémoire de magister (Barigou, et al., 2011b) (Barigou, et al., 2011c), (Barigou, et al.,
2012a), (Barigou, et al., 2012b), (Barigou, et al., 2012-c).
Sont présentés les principaux résultats des expériences des deux systèmes
SPAMAUT et 3CA&1NB sur le corpus LingSpam. Dans un premier temps, une brève
introduction sur le corpus et les principales mesures utilisées dans la validation des
systèmes sera présentée (§ 6.1), tandis que la section 6.2 s’intéresse à étudier et analyser
l’effet de la racinisation, la sélection des termes et la pondération des termes sur la
performance du système SPAMAUT. Dans la section 6.3, nous présentons les résultats des
expériences obtenus avec 3CA&1NB et nous les comparons avec ceux de SPAMAUT. La
dernière section fera la synthèse de l’étude présentée.
31
http://csmining.org/index.php/ling-spam-datasets.html
Étude Expérimentale 79
l’être malgré son ancienneté (Santos, et al., 2012). Nous avons choisi d’utiliser ce corpus
pour cette étude expérimentale.
LingSpam contient 2893 courriels dont 2412 sont des messages légitimes et le reste
sont des spam. Nous avons entamé plusieurs expériences sur ce corpus. Et en nous
appuyant sur la validation croisée, et en suivant les travaux effectués dans ce domaine nous
mesurons alors plusieurs indicateurs d’évaluation de la classification (voir équations 1 à 7):
le rappel de la classe spam (R), la précision de la classe spam (P), la F-mesure de la classe
spam (F1), l’exactitude (E), le taux des vrais positifs (TVP), le taux des faux positifs (TFP)
et enfin le taux d’erreur global (Er).
Pour mesurer toutes ces métriques, nous devons tout d’abord calculer les valeurs
suivantes en utilisant le corpus de test comme illustré dans la figure ci-dessous (Figure 6.1):
N ( SS ) N ( SS )
P= [1], R= [2]
N ( SS ) + N ( LS ) N ( SS ) + N ( SL )
2× p× r N ( SS ) + N ( LL )
F1 = [3], E = [4]
p +r N ( SS ) + N ( LS ) + N ( LL ) + N ( SL )
N ( SS ) N ( LS )
TVP = [5], TFP = [6]
N ( SS ) + N ( SL ) N ( LS ) + N ( LL )
Er = 1 − E [7]
Étude Expérimentale 80
- La représentation des courriels du corpus, l’unité linguistique peut être le mot tel
qu’il apparaît dans les textes des courriels ou bien sa racine, avec utilisation ou
non d’une stop liste.
Paramètre Valeur
Mots vides Liste de mots vides anglais
Analyse flexionnelle Racinisation avec l’algorithme de Porter
Sélection des termes GI ou MI, ou Chi-2
Espace de représentation 10..50 par pas de 10
et100…1000 par pas de 100
termes
Pondération Binaire, TF, TF-IDF
Algorithme Sipina/CASI
Tableau 6.1-Paramètres du système SPAMAUT
A travers ces expériences, nous avons constaté que la qualité de prédiction devient
de plus en plus meilleure en termes de précision, rappel et exactitude à partir de 300 termes
lorsqu'il y a racinisation des mots et élimination des mots vides et ceci quelque soit le type
de pondération et la mesure de sélection utilisés. La performance du système atteint son
maximum lorsque le nombre de termes équivaut 500 (voir Figure 6.2, Figure 6.3)
Précision
0,99
0,98
0,97
0,96
0,95
0,94
0,93
0,92
600,..
10 20 30 40 50 100 200 300 400 500
1000
mot 0,948 0,965 0,977 0,977 0,977 0,977 0,974 0,974 0,974 0,974 0,974
mot+vide 0,941 0,965 0,965 0,965 0,965 0,965 0,971 0,971 0,971 0,971 0,971
racine 0,97 0,968 0,971 0,971 0,971 0,971 0,971 0,971 0,971 0,971 0,977
racine+vide 0,976 0,971 0,971 0,971 0,971 0,971 0,966 0,971 0,977 0,981 0,981
Rappel
0,9
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0
600..1
10 20 30 40 50 100 200 300 400 500
000
mot 0,801 0,801 0,801 0,801 0,801 0,801 0,801 0,801 0,801 0,801 0,801
mot+vide 0,845 0,839 0,839 0,839 0,839 0,839 0,839 0,839 0,839 0,839 0,839
racine 0,803 0,848 0,842 0,842 0,842 0,842 0,842 0,842 0,842 0,842 0,842
racine+vide 0,338 0,842 0,842 0,842 0,842 0,842 0,856 0,842 0,842 0,842 0,842
Notes :
mot : sans racinisation et sans élimination de mots vides ;
Nous avons constaté que la mesure de sélection gain d’information (voir Figure 6.4)
amène à une qualité de prédiction meilleure que les deux autres en terme de rappel,
exactitude et F-mesure, alors que les deux autres sont meilleurs en précision (=100%).
Notez, aussi que le rappel est très faible avec CHI-2 car le nombre de faux négatifs est très
élevé ce qui a donné une F-mesure aussi faible. Nos résultats confirment ce qui a été déjà
prouvé en catégorisation de textes et que GI est parmi les meilleures fonctions de sélection.
1,2
GI MI Chi‐2
1
0,8
0,6
0,4
0,2
0
Précision Rappel Exactiude F‐mesure
Note : les résultats de la Figure 6.4 sont obtenus avec la configuration : Racinisation,
élimination de mots vides et pondération binaire.
Étude Expérimentale 84
Les expériences ont permis aussi de vérifier que l’approche proposée se stabilise à
partir de 500 termes et amène à une qualité de prédiction intéressante et encourageante.
Comme illustré dans la Figure 6.5, la précision atteint son maximum (98,1%) dans le cas
d’une pondération binaire. Par contre le rappel, l’exactitude et la F-mesure sont meilleurs
avec la pondération TFIDF rappel = 99,6%, exactitude :=97,2%, F-mesure :=98,3%.
0,996
1
0,981 0,971 0,971 0,983
0,972
0,975 0,972
0,95
0,906
0,9 0,910 Binaire
0,853 TF
0,85
TFIDF
0,842
0,8
0,75
Précision Rappel Exactitude F‐Mesure
Présentation de WEKA
d’apprentissage automatique, entre autres, les arbres de décision et les réseaux de neurones.
Il est écrit en java, disponible sur le web32 , et s’appuie sur le livre de (Witten, et al., 2011).
Les algorithmes que nous avons utilisés dans cette expérience sont :
Sur les Figure 6.76, Figure 6.87, Figure 6.98 et Figure 6.9 nous avons les résultats des
expériences effectués sur le corpus LingSpam selon la configuration suivante :
Nous observons que dans l’ensemble, SPAMAUT est le plus performant par rapport
à la majorité des autres algorithmes. Les résultats de SPAMAUT en précision, rappel, F1-
mesure et exactitude sont les meilleurs bien que légèrement en dessous de ceux de SMO
dans le cas du rappel, F1-mesure et exactitude.
Notons que SPAMAUT est un système qui se base sur un modèle booléen
caractérisé par un temps d’exécution et un stockage mémoire réduit et une
compréhensibilité du modèle très élevée (génération des règles). Alors que SMO qui est
une version de SVM est couteux en temps d’apprentissage et sa compréhensibilité est faible
(§3.4).
32
www.cs.waikato.ac.nz/ml/weka
Étude Expérimentale 86
Précision
1,02
1 0,981
0,98
0,98
0,96
0,94
0,92
0,9
0,88
0,86
Rappel
1 0,947
0,9 0,842
0,8
0,7
0,6
0,5
0,4
0,3
0,2
0,1
0
NB BayesNet J48 SMO 1‐ppv 3‐ppv SPAMAUT
F1‐mesure
1,20
0,96
1,00 0,91
0,80
0,60
0,40
0,20
0,00
NB BayesNet J48 SMO 1‐ppv 3‐ppv SPAMAUT
Exactitude
1,00 0,99
0,98 0,97
0,96
0,94
0,92
0,90
0,88
NB BayesNet J48 SMO 1‐ppv 3‐ppv SPAMAUT
Dans cette section nous incluons les résultats des expériences réalisées sur le corpus
LingSpam en utilisant deux représentations : binaire (SPAMAUT_1) et TFIDF
(SPAMAUT_2) et les meilleurs résultats publiés dans la littérature et utilisant le corpus
LingSpam (voir Tableau 6.2).
- Sakkis et al. (Sakkis, et al., 2001) ont proposé une amélioration de l’approche
précédente de (Androutsopoulos, et al., 2000a) par l’utilisation d’une
combinaison à étage. Ils ont combiné un Bayésien naïf avec les k-plus proches
voisins étudiés dans (Androutsopoulos, et al., 2000b). Le paramètre k est la
taille du voisinage, le paramètre lambda (λ) détermine la rigueur du critère pour
classer un message comme un spam, et m est le nombre de termes utilisés pour
représenter les messages.
Le tableau ci-dessus présente les résultats obtenus par le système SPAMAUT, ainsi
que ceux obtenus par (Androutsopoulos, et al., 2000a), (Sakkis, et al., 2001), (Schneider,
2003) et (Cormack, et al., 2007b).
L’exactitude et le taux des vrais positifs obtenus avec SPAMAUT sont intéressants,
ils sont meilleurs que ceux de référence, bien que légèrement en dessous de ceux de
(Schneider, 2003) et (Sakkis, et al., 2003) pour seulement certaines configurations. En
revanche, le taux des faux positifs est nettement meilleurs que ceux de référence.
Étude Expérimentale 90
La Figure 6.10 suivante illustre les résultats obtenus avec le classifieur 3CA&1NB à
côté de ceux cités ci-dessus (Tableau 6.3). Les résultats indiquent une amélioration des
performances en classifiant avec 3CA&1NB. Il est clair que ce système est plus performant
que les autres classifieurs individuels en exactitude et en F1-mesure.
Nous concluons que la combinaison proposée donne de meilleurs résultats que les
quatre classifieurs de base utilisés séparément. L'approche exploite les différences entre les
erreurs commises par les classifieurs individuels et améliore la performance globale.
Étude Expérimentale 91
120
96,9 97,1 97,96
100 89,8 90,62 90,7 93,54
83,8
80 61,4
60
40
20 4,9
0
NB SPAMUT-1 SPAMAUT- SPAMAUT- 3CA&1NB
2 3
La Figure 6.11 qui suit présente le taux d’erreur pour chaque classifieur de base et le
système 3CA&1NB utilisant le vote majoritaire. Les résultats obtenus confirment l'intérêt
d'utiliser et de faire participer plusieurs classifieurs dans la décision. En effet, l'approche du
vote majoritaire utilisée dans 3CA&1NB donne de meilleurs résultats que SPAMAUT-1
qui est considéré comme le meilleure classifieur dans cette étude. Nous voyons clairement
la réduction du taux d'erreur global de 0,29 pour SPAMAUT-1 à 0,20 par le vote
majoritaire.
Taux d'erreur
1,8 1,59
1,6
1,4
1,2 0,99
1
0,8
0,6 0,37
0,4 0,29
0,204
0,2
0
SPAMAUT‐1 SPAMAUT‐2 SPAMAUT‐3 NB 3CA&1NB
- RandomForest
- Bagging (J48)
- Adaboost(J48)
Sur les Figure 6.12 et Figure 6.13, nous avons les résultats des expériences effectués sur
le corpus LingSpam selon la configuration suivante :
1,2
0,988 0,945 0,976 0,986 0,982
1 0,895 0,917
0,812 0,892
0,789
0,8
0,6 P
0,4 R
0,2
0
Random Forest Bagging J48 Adaboost J48 VoteM(NB, 1‐ 3CA&1NB
ppv, J48)
Le Tableau 6.4 souligne davantage la performance de 3CA&1NB par rapport aux travaux
suscités. Les résultats indiquent une amélioration des performances avec 3CA&1NB. Bien
que le rappel soit légèrement en dessous de celui de Sakkis et al. (Sakkis, et al., 2001), il est
clair que l’exactitude, la précision et la F1-mesure sont supérieurs à ceux de référence.
Nous avons illustré à la fois, les résultats des expériences menées avec le système de
détection SPAMAUT, ainsi que celui de 3AC&1NB, sur le même corpus LingSpam. Pour
cela, différents indicateurs d’évaluation de classification ont été mesurés : le rappel de la
classe spam (R), la précision de la classe spam (P), la F-mesure (F1), l’exactitude E, le taux
de vrais positifs (TVP), et le taux des faux positifs (TFP).
Dans nos premières expériences, nous avons tout d’abord, essayé d’examiner
l’impact des diverses méthodes de sélection de termes, ainsi que le traitement linguistique
des mots comme la racinisation, et la pondération des termes sur la performance de la
classification avec SPAMAUT. Nous avons donc entrepris une comparaison expérimentale
en testant plusieurs configurations. Nos premières évaluations indiquent que l’approche
proposée est intéressante et encourageante. Les résultats expérimentaux ont permis
d’observer que la qualité de prédiction est meilleure avec la configuration suivante :
Nous avons constaté aussi que la fonction de sélection GI amène à une meilleure qualité
de classification, en termes de rappel, exactitude, et F-mesure. Par contre, La précision
est meilleure avec les fonctions de sélection MI et Chi-2 mais le rappel est très faible
avec Chi-2.
Étude Expérimentale 96
La méthode proposée est comparée à d’autres travaux cités dans la littérature. Les
expériences permettent d’apprécier la qualité de classification de SPAMAUT.
D’après tous ce qui a été discuté, concernant les deux approches proposées :
SPAMAUT et 3CA&1NB, on peut conclure que :
Mots-clés :
Catégorisation de textes; Représentation vectorielle des données textuelles; Sélection des
attributs; Apprentissage automatique; Apprentissage supervisé; Automate cellulaire;
Combinaison de classifieurs; Filtrage des spam; Combinaison des classifieurs par vote;
Machine cellulaire pour le filtrage.