THESE_EL BOUJNOUNI

publicité
UNIVERSITÉ MOHAMMED V
FACULTÉ DES SCIENCES
Rabat
N° d’ordre : 2785
THÈSE DE DOCTORAT
Présentée par :
EL BOUJNOUNI Mohamed
Discipline: Sciences de l’Ingénieur
Spécialité : Informatique
Contribution à l’optimisation de la machine d’apprentissage SVDD
application à la détection de spams et de virus informatiques
Soutenue le 21-07-2015
Devant le jury composé de :
Président :
Mr. Aziz ETTOUHAMI
Professeur à la Faculté des Sciences de Rabat.
Rabat
Examinateurs :
Mr. Jamal OUENNICHE
Professeur au Business School, Université
niversité d’Edinburgh (UK)
Mr. Abdelaziz BOUROUMI
Professeur à la Faculté des Sciences Ben M’sik
M’ Casablanca.
Mr. Noureddine ZAHID
Professeur à la Faculté des Sciences de Rabat.
Rabat
Mr. Mohamed JEDRA
Professeur à la Faculté des Sciences de Rabat.
Rabat
Mr. Mohammed Majid HIMMI
Professeur à la Faculté des Sciences de Rabat.
Rabat
Faculté des Sciences, 4 Avenue Ibn Battouta B.P. 1014 RP, Rabat – Maroc
Tel +212 (0) 37 77 18 34/35/38, Fax : +212 (0) 37 77 42 61, http://www.fsr.ac.ma
1
Avant propos
Les travaux présentés dans cette thèse ont été effectués au Laboratoire Conception et
Systèmes (Microélectronique et Informatique) LCS à la Faculté des Sciences de Rabat sous la
direction du Professeur M. Jedra.
Mes premiers remerciements s’adressent à mon directeur de thèse Monsieur M. Jedra,
Professeur à la Faculté des Sciences de Rabat, pour sa disponibilité et ses conseils judicieux qu’il
m’a prodigués. Je lui suis tout particulièrement reconnaissant d’avoir su m’orienter et de m’avoir
encouragé tout au long de cette recherche. J’ai particulièrement apprécié ses commentaires, son
sens de critique aiguisé et son grand respect pour les idées. Il a été une source d’inspiration, et de
rigueur scientifique.
Je tiens à exprimer ma haute considération à Monsieur A. Ettouhami, Professeur à la
Faculté des Sciences de Rabat, directeur du laboratoire LCS, d’avoir accepté de présider le jury
de cette thèse et d'être rapporteur de mon travail. Je le remercie vivement pour ses remarques
pertinentes et ses nombreux conseils.
Ma profonde gratitude va également à Monsieur N. Zahid coencadrant, Professeur à la
Faculté des Sciences de Rabat, pour ses recommandations et sa collaboration qui m’ont été de
grande pertinence et de réelle utilité pour mener à bien ce projet de recherche et aussi pour sa
participation à ce jury de thèse.
Je présente à Monsieur M. Himmi, Professeur à la Faculté des sciences de Rabat,
l’expression de ma profonde reconnaissance, pour le grand honneur qu’il me fait en acceptant de
participer à ce jury de thèse.
2
Je présente également à Monsieur A. Bouroumi, Professeur à la faculté des sciences Ben
M’sik de Casablanca, l’expression de ma profonde reconnaissance, pour le grand honneur qu’il
me fait en acceptant de participer à ce jury de thèse.
Je tiens également à témoigner ma profonde gratitude à Monsieur J.Ouenniche, Professeur
au Business School à l’université d’Edinburgh, d’avoir porté un jugement sur ce travail en qualité
de rapporteur. Je lui suis très reconnaissant d’avoir accepté de faire partie de ce jury de thèse.
Enfin, je tiens à remercier et à exprimer ma sincère sympathie à tous les Professeurs et les
Doctorants du Laboratoire Conception et Systèmes (Micro-électronique et Informatique) de la
faculté des sciences de Rabat.
3
Dédicace
T Åt ytÅ|ÄÄx xà õ Åxá tÅ|á
4
Table des matières
Introduction Générale ...................................................................................... 9
Chapitre I ......................................................................................................... 12
État de l'art de l’apprentissage automatique.................................................. 12
1.1. Introduction ................................................................................................................................... 12
1.2. Les types d'algorithmes d'apprentissage ........................................................................................ 13
1.3. L’apprentissage supervisé .............................................................................................................. 14
1.3.1.
Les réseaux de neurones à apprentissage supervisé ............................................................... 15
1.3.2.
Les séparateurs à vaste marge ................................................................................................ 19
1.3.3.
Les arbres de décision ............................................................................................................ 20
1.3.4.
Le classifieur Bayesien naïf ..................................................................................................... 23
1.4. L’apprentissage non-supervisé ....................................................................................................... 24
1.4.1.
Les réseaux de neurones à apprentissage non supervisé......................................................... 25
1.4.2.
L’analyse en composantes principales .................................................................................... 27
1.4.3.
Les k-moyennes ...................................................................................................................... 31
1.4.4.
Les méthodes hiérarchiques ................................................................................................... 33
1.5. L’apprentissage semi-supervisé ...................................................................................................... 34
1.6. L’apprentissage par renforcement.................................................................................................. 35
1.7. Conclusion ..................................................................................................................................... 36
Chapitre II ........................................................................................................ 37
Machines d’apprentissage à noyaux ............................................................... 37
2.1. Introduction ................................................................................................................................... 37
2.2. Principe de la minimisation du risque ............................................................................................. 38
2.2.1.
La minimisation du risque théorique....................................................................................... 38
2.2.2.
La minimisation du risque empirique ...................................................................................... 39
2.2.3.
La minimisation du risque structurel ....................................................................................... 39
2.3. Les Séparateurs à Vaste Marge (SVMs) ........................................................................................... 41
2.3.1.
SVMs mono-classe.................................................................................................................. 41
5
2.3.2.
SVMs bi-classes ...................................................................................................................... 43
2.3.3.
Variantes des séparateurs à vaste marge ................................................................................ 47
2.3.3.1. Moindres carrés SVM.............................................................................................................. 47
2.3.3.2. SVM Proximale ....................................................................................................................... 48
2.4. Support Vector Domain Description (SVDD) ................................................................................... 50
2.4.1.
SVDD mono-classe.................................................................................................................. 50
2.4.2.
SVDD bi-classes ...................................................................................................................... 51
2.4.3.
Variantes du Support Vector Domain Description ................................................................... 53
2.4.3.1. SVDD avec sphère unique ....................................................................................................... 53
2.4.3.2. SVDD basé sur le maximum de distance entre les centres de deux sphères. ............................ 54
2.5. Méthodes de décomposition multi-classes ..................................................................................... 55
2.6. Méthodes à noyaux ....................................................................................................................... 58
2.6.1.
Principe .................................................................................................................................. 58
2.6.2.
Propriétés des noyaux ............................................................................................................ 59
2.6.3.
Exemples de noyaux ............................................................................................................... 60
2.7. Conclusion ..................................................................................................................................... 61
Chapitre III ...................................................................................................... 62
Optimisation de la séparabilité interclasses de la machine SVDD ................ 62
3.1. Introduction ................................................................................................................................... 62
3.2. Maximisation de la séparabilité inter-sphères ................................................................................ 63
3.2.1.
Formulation mathématique .................................................................................................... 63
3.2.2.
Résultats obtenus sur des bases standards ............................................................................. 67
3.3. Contrôle des volumes des sphères minimales................................................................................. 73
3.3.1.
Introduction d’un paramètre de contrôle des volumes des sphères minimales ....................... 74
3.3.2.
Résultats obtenus sur des bases de référence......................................................................... 76
3.4. SVDD avec une fonction de décision floue ...................................................................................... 79
3.4.1.
Les fonctions de décision floues.............................................................................................. 79
3.4.2.
Les séparateurs à vaste marges floues .................................................................................... 79
3.4.3.
Exploitation de l’appartenance floue dans le SVDD ................................................................. 81
3.4.4.
Résultats obtenus sur des bases standards ............................................................................. 82
6
3.5. Conclusion ..................................................................................................................................... 85
Chapitre IV....................................................................................................... 86
Paramétrage optimal de l’espace des caractéristiques. .................................. 86
4.1. Introduction ................................................................................................................................... 86
4.2. Largeur optimale du noyau Gaussien et séparabilité interclasses ................................................... 87
4.2.1.
Problème du choix des paramètres de la fonction noyau ........................................................ 87
4.2.2.
Formulation mathématique .................................................................................................... 88
4.2.3.
Résultats obtenus sur des bases standards ............................................................................. 89
4.3. Largeur optimale du noyau Gaussien et distance intercentres ........................................................ 92
4.3.1.
Capacité de généralisation d’un modèle ................................................................................. 92
4.3.2.
Utilisation d’un nouveau indice de séparation ........................................................................ 93
4.3.3.
Résultats obtenus sur des bases standards ............................................................................. 95
4.4. SVDD avec coefficients de confiance .............................................................................................. 97
4.4.1.
Génération des coefficients de confiance ............................................................................... 99
4.4.2.
Utilisation des nouveaux coefficients de confiance ............................................................... 101
4.4.3.
Résultats obtenus sur des bases standards ........................................................................... 103
4.5. Conclusion ................................................................................................................................... 107
Chapitre V ...................................................................................................... 109
Classification et détection des spams et des virus informatiques par SVDD
......................................................................................................................... 109
5.1. Introduction ................................................................................................................................. 109
5.2. Filtrage anti-spam par SVDD ......................................................................................................... 110
5.2.1.
Méthodes de classification automatique des spams ............................................................. 112
5.2.2.
Approche proposée pour la classification des spams ............................................................ 112
5.2.3.
Résultats obtenus sur une base standard de spams .............................................................. 113
5.3. Détection des logiciels malveillants par N-grammes et SVDD........................................................ 118
5.3.1.
Méthodes de classification automatique des logiciels malveillants utilisant les N-grammes .. 120
5.3.2.
Méthode proposée pour la détection des virus informatiques .............................................. 121
5.3.3.
Résultats obtenus pour une base standard de virus informatiques ....................................... 122
7
5.4. Conclusion ................................................................................................................................... 127
Conclusion générale ....................................................................................... 128
Bibliographie .................................................................................................. 131
ANNEXE ........................................................................................................ 144
8
Introduction Générale
Le domaine de l’intelligence artificielle a pour objectif le développement de systèmes
informatiques capables de simuler des comportements associés à l’intelligence humaine. Il
couvre un large champ d’applications notamment les sciences cognitives, la robotique, la vision
par ordinateur, la reconnaissance de formes, la fouille de données, la représentation et
l'acquisition des connaissances, le raisonnement, etc.
L'apprentissage automatique est un des sous-domaines de l'intelligence artificielle, qui
consiste à concevoir des systèmes capables d'extraire et d'exploiter à partir des informations
disponibles, les connaissances utiles servant à la prise de décision. Ces systèmes d’apprentissage
ont la faculté d’apprendre d’une façon autonome de nouvelles connaissances non connues à
priori. Divers modèles d’apprentissage ont ainsi été développés pour la mise au point de systèmes
d’aide à la décision très utilisés dans de nombreuses applications: supervision des processus,
reconnaissance de forme, prédiction …etc.
9
Introduction Générale
Parmi les techniques les plus populaires et prometteuses utilisées dans le domaine
d’apprentissage automatique supervisé, on trouve les machines à apprentissage comme les
Support Vector Machines et les Support Vector Domain Description. Elles constituent une classe
d’algorithmes issus de la théorie d’apprentissage statistique et possèdent plusieurs propriétés
attractives notamment : Elles sont basées sur un fondement mathématique solide, elles conduisent
à la résolution d’un problème quadratique convexe dont la solution est globale, elles exploitent
les fonctions noyaux permettant un passage implicite de l’espace de représentation des données à
un espace augmenté afin de classifier les données non linéairement séparables et elles nécessitent
le réglage d’un nombre réduit de paramètres. Elles ont montré leur efficacité dans de nombreux
domaines d’application tels que la supervision des procédés industriels, la prédiction boursière, le
diagnostic médical, etc. Parmi ces domaines on trouve la sécurité des systèmes informatiques où
elles ont été utilisées particulièrement pour la détection d’intrusions dans les réseaux
informatiques, le filtrage des courriers électroniques indésirables connus sous le nom de spam et
la détection des attaques dûes aux virus informatiques.
Par ailleurs, les systèmes informatiques accompagnent aujourd’hui tous les processus
métiers des entreprises, des administrations publiques, et du mode de vie des citoyens, il s’agit
d’une composante essentielle de leur performance. Vu l’importance des informations gérées par
lesdits systèmes, ces derniers peuvent être exposés à des attaques qui exploitent leurs éléments
vulnérables. La sécurité des systèmes informatiques a pour objectif de lutter contre les menaces
pouvant peser sur la confidentialité de l’information, son intégrité, sa disponibilité, etc. Les
attaques les plus répandues sont dûes aux virus, aux spams, aux vers, aux spyware, etc.
Cette thèse s’inscrit dans le cadre de l’apprentissage automatique et s’intéresse
essentiellement à l’amélioration de la machine à apprentissage SVDD et aux problèmes de la
sécurité des systèmes informatiques, en particulier le filtrage anti-spam et la détection des virus
informatiques. Ce mémoire de thèse est organisé de la manière suivante :
Dans le premier chapitre nous allons dresser un état d’art de l’apprentissage automatique,
dans lequel nous allons étudier les différents types d’apprentissage : hors ligne, incrémental, et en
ligne. Nous allons exposer les différents modes d’apprentissage supervisé, non supervisé, semisupervisé et par renforcement. Ensuite, nous allons nous focaliser sur les deux premiers modes
car ils sont les plus populaires. Nous allons mettre en exergue les algorithmes les plus utilisés
dans ces deux modes, en citant leurs avantages, leurs inconvénients, leurs variantes, et leurs
domaines d’application.
Le second chapitre fait l’objet d’une présentation approfondie des méthodes à noyaux, en
particulier les deux méthodes : Support Vector Machines et Support Vector Domain Description.
Ce chapitre est organisé autour de trois axes principaux, le premier introduit les fondements de la
théorie d’apprentissage statistique, plus particulièrement le principe de minimisation du risque
structurel et la VC-dimension, le second présente la théorie desdites méthodes dans le cas monclass et bi-classes, leurs variantes, et leurs mode d’utilisation dans le cas multi-classes , le
troisième décrit le principe de transformation de données dans un espace augmenté à l’aide des
fonctions noyaux.
10
Introduction Générale
Le troisième et le quatrième chapitre sont consacrés aux contributions apportées au
classifieur Support Vector Domain Description, qui visent à améliorer ce dernier de point de vue
performances d'apprentissage et capacité de généralisation, ces contributions sont basées sur une
modélisation mathématique rigoureuse et ont été validées sur plusieurs bases de données de
référence.
Le cinquième chapitre présente deux applications de la machine SVDD améliorée, dans
le domaine de la sécurité informatique. La première application concerne le filtrage anti-spam
dans laquelle nous avons combiné deux versions améliorées du classifieur SVDD. Cette
combinaison a permis d’augmenter considérablement le taux de reconnaissance des spams. La
deuxième application s’intéresse à la détection des virus informatiques, dans laquelle nous avons
associé la méthode N-gramme et une version améliorée du classifieur SVDD. Les résultats
expérimentaux sur une base réelle des virus informatiques ont montré de bonnes performances de
classification et de détection des virus informatiques.
11
Chapitre I
État de l'art de l’apprentissage automatique
1.1. Introduction
L'apprentissage automatique est un des sous-domaines de l'intelligence artificielle, il a
pour objectif le développement d’algorithmes permettant à une machine d'extraire et d'exploiter
automatiquement l'information en se basant sur des échantillons, c’est-à-dire sur un ensemble
limité de données disponibles.
L’apprentissage automatique est un domaine pluridisciplinaire, que ce soit par ses
fondements théoriques ou ses applications, car ses fondements font appel à l’informatique, aux
probabilités, aux statistiques, aux neurosciences, aux sciences cognitives, au traitement du signal,
à la biologie, etc. Ces champs d’applications recouvrent potentiellement l’ensemble de problèmes
nécessitant des méthodes automatiques de traitement de données, par exemple l’identification
biométrique (la reconnaissance de visage, de voix, d’empreinte digitale, etc.), la robotique (la
vision artificielle, la reconnaissance d’objets, etc.), l’analyse financière (la prévision d’évolution
de marchés, la prédiction des cours boursiers, etc.), le traitement du langage naturel (la fouille de
textes, etc.), le diagnostic médical (la classification et la reconnaissance des maladies, etc.), la
sécurité informatique (la reconnaissance de virus, la détection de pourriel, la détection
d’intrusion, etc.)…
12
État de l'art de l’apprentissage automatique
Dans ce chapitre, nous allons introduire la notion d’apprentissage automatique en
spécifiant ses différents types, ensuite nous allons exposer les différents modes d’apprentissage
supervisé, non supervisé, semi-supervisé, et par renforcement. Nous allons nous focaliser sur les
deux premiers modes car ils sont les plus répandus, nous décrivons les algorithmes les plus
utilisés dans ces deux modes. Aussi, nous citons les avantages de ces algorithmes, leurs
inconvénients, leurs variantes, et leurs domaines d’applications.
1.2. Les types d'algorithmes d'apprentissage
En matière d’apprentissage automatique, il existe différentes hypothèses ou contraintes qui
portent à la fois sur les données (disponibilité, quantité, vitesse d’arrivée, ..), et sur le modèle
d’apprentissage que l’on veut réaliser. Selon ces circonstances, un système d’apprentissage peut
être utilisé de plusieurs manières. Nous pouvons distinguer trois modes d’utilisation:
-
L’apprentissage hors ligne
Dans ce mode, l’apprentissage est exécuté sur un ensemble de données spécifique de taille
faible à moyenne et disponible au moment de l’apprentissage [18]. Pour des ensembles de grande
taille le temps d’accès et de lecture des données est excessif et il devient difficile de réaliser un
apprentissage rapide. Ce mode d’apprentissage montre ses limites dans le cas où les données ne
peuvent être entièrement chargées en mémoire.
-
L’apprentissage incrémental
Dans l’apprentissage incrémental [10], le jeu de données n’est pas forcément disponible dès
le début de l’entrainement. Les données sont introduites au fur et à mesure et le système doit être
capable d’apprendre à partir de chacune de ces données d’une façon séparée. Il doit donc être en
mesure de se modifier et d’ajuster ses paramètres après l’observation de chaque exemple pour
apprendre à partir de celui-ci ; mais sans oublier la connaissance acquise à partir des exemples
précédents. Ce mode d’apprentissage est employé soit lorsque le jeu de données est trop grand
pour être utilisé en une seule fois ; soit lorsque l’ensemble d’apprentissage n’est pas complet et
que les données d’entrainement arrivent de manière séquentielle. La propriété désirée d’un
algorithme incrémental est un temps d’apprentissage beaucoup plus rapide par comparaison à
l’apprentissage hors ligne. Pour être considéré comme tel, un système d’apprentissage [17]:
− Doit être capable d’apprendre des connaissances supplémentaires à partir des
nouvelles données ;
− Ne doit pas nécessiter l’accès aux données d’origine (c’est-à-dire les données
qui ont été utilisées pour l’apprentissage du classifieur actuel) ;
− Doit préserver les connaissances déjà acquises ;
− Doit être en mesure d’apprendre de nouvelles classes susceptibles d’être
introduites avec de nouvelles données.
13
État de l'art de l’apprentissage automatique
-
L’apprentissage en ligne
Dans ce mode d’apprentissage, l’arrivée des exemples se fait de manière continue. Un tel
mode est capable de fournir un modèle intégrant de nouveaux exemples. Les exigences en termes
de complexité calculatoire sont plus fortes que pour l’apprentissage incrémental, car il s’agit
d’apprendre et de prédire à la vitesse du flux. Bien souvent s’ajoutent à cette différence
essentielle des contraintes de mémoire et des problèmes de dérive de concept, lorsque la
distribution qui génère les exemples d’apprentissage évolue au cours du temps.
1.3. L’apprentissage supervisé
L’apprentissage supervisé consiste à inférer un modèle de prédiction à partir d’un ensemble
d’apprentissage, c'est-à-dire plusieurs couples de la forme {observation, étiquette}, où chaque
étiquette dépend de l'observation à laquelle elle est associée. Un algorithme d'apprentissage
supervisé a pour but de déterminer une fonction s'approchant au mieux de la relation liant les
observations et les étiquettes à partir de l'ensemble d'apprentissage uniquement. Cette fonction
doit par ailleurs posséder de bonnes propriétés de généralisation et ainsi être capable d'associer
une étiquette adéquate à une observation qui n'est pas dans l'ensemble d'apprentissage [53].
On distingue en général deux types de problèmes auxquels l’apprentissage supervisé est appliqué.
− Problème de classification : Si un point
classe parmi , … ,
(Figure 1.1).
est associé à un label , ce label identifie une
Figure 1.1 - Exemple d'un problème de classification
− Problème de régression : L’entrée n’est pas associée à une classe, mais dans le cas
général, à une valeur (ou un vecteur) dans un ensemble continu de réels [81], c-à-d le
labely ∈ ℝ (Figure 1.2).
14
État de l'art de l’apprentissage automatique
Figure 1.2 - Exemple d’un problème de régression.
Les modèles qui utilisent l’apprentissage supervisé sont nombreux. On peut citer parmi
d’autres : les réseaux de neurones, les séparateurs à vastes marges, les arbres de décision et les
le
classifieurs Bayesiens.
1.3.1. Les réseaux de neurones à apprentissage supervisé
Les réseaux de neurones sont l’association en un graphe plus ou moins complexe d’objets
élémentaires (les
es neurones formels).
formels Ils se distinguent essentiellement par leur configuration
(partiellement connectés, à connexions complètes, à couches), leur nombre de neurones
neurones, et par
leurs fonctions de transition [15].
[15]
Chez les êtres vivants, les neurones (Figure 1.3) sont les cellules nerveuses, ils sont dotés de
ramifications
ns nommés les dendrites par lesquelles
les
transite l’information (signal électrique) venue
de l’extérieur vers le corps de la cellule (le noyau). Le neurone traite cette information et renvoie
le résultat au travers l’axone,
axone, le signal émis par le neurone peut ensuite être transmis au travers
les synapses (les points de connexion) aux autres neurones, aux fibres nerveuses ou musculaires;
Figure 1.3
1. - Schéma d’un neurone biologique
15
État de l'art de l’apprentissage automatique
Par analogie, le neurone formel (Figure 1.4) est un modèle qui se caractérise par un état interne,
des signaux d’entrée , … , et une fonction de transition d’état f. L’état de la sortie est identifié
par la formule suivante :
=
−
1.1
Où p est un vecteur qui représente les signaux d’entrée du neurone, est un vecteur composé des
poids de connexion, correspond au biais du neurone, est une fonction d’activation, est la
sortie du neurone.
Figure 1.4 - Schéma d’un neurone formel.
La fonction de transition opère une transformation d’une combinaison affine déterminée
par un vecteur de poids[ , … , ] dont b étant appelé le biais du neurone. Cette combinaison
affine est associée à chaque neurone et dont les valeurs sont estimées dans la phase
d’apprentissage. Ils constituent "la mémoire" ou "la connaissance répartie" du réseau.
Les différents types de neurones se distinguent par la nature de leur fonction d’activation
(Table 1.1).
Table 1.1 - Exemples de fonctions d’activation
Fonction
Equation associée
ℎ
Heaviside
Signe
")&
Linéaire
Linéaire à seuil ou multi-seuils
Sigmoïde
+
+
1"# ≥ 0(
=!
0"#&'&
=!
+1"# ≥ 0(
−1"#&'&
=
∈ [-, .]
= , ."# ≥ . (
-"# ≤ =
1
1 + 0 12
16
État de l'art de l’apprentissage automatique
Les réseaux de neurones peuvent être divisés en deux catégories principales : les réseaux à
apprentissage supervisé et les réseaux à apprentissage non supervisé. Dans la première catégorie
(par exemple le perceptron multi-couches [27], le réseau RBF [4], etc.), on présente au réseau
l’entrée et la sortie désirée et le réseau adapte les poids de connexions entre les neurones afin que
la sortie du réseau correspond à celle désirée. Dans la deuxième catégorie (par exemple le réseau
de Hopfield [5], la carte auto organisatrice de Kohonen [137], etc.), on présente une entrée au
réseau et on le laisse évoluer jusqu'à ce qu'il se stabilise.
Perceptron multi-couches (PMC)
Un perceptron multicouches [24, 26, 27] (Figure 1.5) est un classifieur pour lequel les
neurones sont organisés en couches successives, les connexions sont toujours dirigées à partir des
couches inférieures vers les couches supérieures et les neurones d'une même couche ne sont pas
interconnectés. Un neurone ne peut donc transmettre son état qu'à un neurone situé dans une
couche postérieure à la sienne. Choisir l'architecture d'un PMC consiste à fixer le nombre de
couches, le nombre de cellules par couche, la nature des différentes connexions entre les
neurones et la nature des neurones sur chaque couche [138, 139].
L’algorithme du perceptron multi-couches consiste en une inférence sur les meilleures
pondérations afin de construire le prédicteur le plus efficace sur des données d'apprentissage.
Figure 1.5 - Exemple d’un Perceptron multi-couches
Les réseaux de RBF (Radial Basis Function)
Le réseau RBF (Figure 1.6) est un cas particulier d’un PMC, il est constitué uniquement
de 3 couches : La couche d’entrée qui permet de retransmettre les entrées sans distorsion, la
couche RBF représente la couche cachée qui contient les neurones RBF et la couche de sortie qui
comporte une fonction linéaire.
Chaque neurone RBF est équivalent à une gaussienne qui est centrée sur un point de
l’espace d’entrée. Pour une entrée donnée, la sortie du neurone RBF est la hauteur de la
gaussienne en ce point. La fonction gaussienne permet aux neurones de ne répondre qu’à une
petite région de l’espace d’entrée, région sur laquelle la gaussienne est centrée. Donc il y a quatre
paramètres principaux à régler dans un réseau RBF :
17
État de l'art de l’apprentissage automatique
-
Le nombre de neurones RBF existant dans la couche cachée.
-
La position du centre de la gaussienne de chacun des neurones.
-
La largeur de ces gaussiennes.
-
Le poids des connexions entre les neurones RBF et le(s) neurone(s) de sortie.
Figure 1.6 - Représentation d’un réseau RBF
L'étude des réseaux de neurones est une voie prometteuse de l'intelligence artificielle, qui
a des applications dans de nombreux domaines, par exemple le contrôle de machines [134], la
reconnaissance automatique de caractères manuscrits [135], la reconnaissance de signatures
[129], La bioinformatique [130], la reconnaissance et la détection de visage [131], etc.
Les réseaux de neurones possèdent plusieurs avantages :
− Ils sont capables de traiter des problèmes non structurés, c-à-d des problèmes dont on ne
dispose d’aucune information à priori. En particulier, la distribution de probabilité des
variables ;
− Le temps de réponse d’un réseau de neurones pour la classification d’un nouvel exemple
est minimal, car les opérations calculatoires requises, sont simples du point de vue
informatique, et peu gourmandes en CPU ;
− Les données d’entrée d’un réseau de neurones peuvent être incomplètes ou bruitées.
L’incomplétude des données peut être prise en compte par l’ajout de neurones
supplémentaires ce qui peut améliorer la classification [136] ;
− Les réseaux de neurones ont une bonne capacité de généralisation, et ils sont capables s’il
sont dotés d’une bonne structure d’apprendre plusieurs types de fonctions, ce qui présente
un intérêt dans les domaines où les fonctions cibles sont un peu compliquées ;
18
État de l'art de l’apprentissage automatique
− Les réseaux de type Perceptron multicouches sont des approximateurs universels
(Théorème de Kolmogorov, 1957). Ils ont la capacité d’apprendre tous les types de
problèmes de classification.
Néanmoins les réseaux de neurones possèdent certains inconvénients d’ordre pratiques :
− La difficulté de choisir la structure du réseau (le type de réseau, le nombre de neurones
d’entrée, le nombre de neurones de sortie, le nombre de neurones cachés, l’organisation
de neurones, la connexion, etc.) la mieux adaptée à un problème donné;
− La difficulté du paramétrage du réseau. Un mouvais paramétrage peut provoquer un surapprentissage (Over-fitting). C’est un apprentissage par cœur qui réduit considérablement
la capacité de généralisation de certains réseaux de neurones ;
− Le temps d’apprentissage risque d’être démesuré, spécialement quand il s’agit des bases
de données de taille énorme ;
− La structure statique d’un réseau de neurones impose de recommencer l’apprentissage à
partir du début si on veut faire apprendre de nouvelles données, contrairement aux
algorithmes de type paresseux (k plus proche voisins, classificateur naïf de Bayes,…).
1.3.2. Les séparateurs à vaste marge
Les bases des Séparateurs à Vaste Marge (SVMs) ont été proposées par Vapnik. Cependant
les premières vraies publications basées sur ce procédé de classification sont apparues après des
années [83] [84]. L’idée de base est de trouver l’hyperplan qui maximise la distance (la marge)
entre les éléments de classes différentes.
Se basant sur ce concept, une autre approche (appelée en anglais Support Vector Domain
Description ou SVDD) a été proposée par Tax et Duin [51] [52] [58] et consiste à rechercher
l’enveloppe sphérique de rayon minimal englobant les points d’une classe et excluant ceux des
autres classes.
Les SVMs ont montré leur efficacité dans plusieurs problèmes tels que l’estimation de
densité, la classification, la régression et le classement. Les SVMs ont été appliquées dans de
nombreux domaines tel que la reconnaissance et l’authentification de visage [149,150], la
reconnaissance de caractères manuscrites [193], la vérification et l’identification du locuteur
[173], la récupération d'images [210], la catégorisation de texte [146], la classification de textes
[147], la classification des phénomènes météorologiques [197][205], la prédiction [185],etc.
A son tour le SVDD a été appliqué dans plusieurs travaux tels que la détection du visage
[164], la reconnaissance du visage [170], la vérification du locuteur [148], la biométrie [144], la
bioinformatique [143], la prédiction de panne [145], etc.
19
État de l'art de l’apprentissage automatique
Les séparateurs à vaste marge offrent de nombreux avantages par rapport aux autres classifieurs :
− Ils possèdent des fondements mathématiques solides, car ils exploitent les concepts
relatifs à la théorie de l’apprentissage statistique et à la théorie des bornes de Vapnik et
Chervonenkis [114].
− La classification par les séparateurs à vaste marge implique la résolution d’un problème
quadratique convexe dont la solution est unique (Absence d’optimum local) et est donnée
par des méthodes mathématiques classiques de programmation quadratique.
− La classification d’un nouveau exemple consiste à vérifier le signe d’une fonction de
décision, ce qui revient à faire un calcul en se basant juste sur les vecteurs de support et
non pas sur la totalité des exemples d’apprentissage, ce qui réduit le temps de
classification d’un nouvel échantillon.
− Les séparateurs à vaste marge possèdent un petit nombre de paramètres à régler ou à
estimer.
− La possibilité d’introduire des fonctions noyaux, qui servent à transformer implicitement
l’espace d’origine dans lequel les données ne sont pas linéairement séparables en un autre
dans lequel elles deviennent séparables.
Néanmoins les séparateurs à vaste marge possèdent quelques inconvénients :
− L’inconvénient majeur des séparateurs à vaste marge est qu’ils sont désignés ou conçus
pour la classification binaire (la séparation entre deux classes +1 et -1), d’où la nécessité
de décomposer les problèmes de classification à caractère multi-classes, en utilisant
l’approche un-contre-un ou un-contre-tous, ce qui peut réduire la qualité de la
classification.
− Les séparateurs à vaste marge nécessitent un calcul coûteux, à cause de la résolution d’un
problème de programmation quadratique, surtout pour les bases de grande taille.
1.3.3. Les arbres de décision
La classification par arbres de décision consiste à classer un objet selon un ensemble de
classes prédéfinies (Figure 1.7), en effectuant une suite de tests sur les attributs décrivant cet
objet [24]. Les tests sont organisés de façon à ce que la réponse à l’un d’eux indique à quel
prochain test on doit soumettre l’objet. Ils sont donc structurés sous forme d’un arbre dont chaque
nœud correspond à un test portant sur un ou plusieurs attributs de l’objet, et chaque feuille de cet
arbre correspond à une des classes prédéfinies.
20
État de l'art de l’apprentissage automatique
Figure 1.7 - Exemple d’un arbre de décision
L’utilisation des arbres de décision dans les problèmes de classification se fait en deux étapes
principales :
− La construction d’un arbre de décision à partir d’une base d’apprentissage : elle consiste à
sélectionner pour un nœud de décision le test d’attribut approprié et puis de définir la
classe relative à chaque feuille de l’arbre induit [26]. Plusieurs algorithmes ont été
développés afin d’assurer la phase de construction, parmi les algorithmes nonincrémentaux, nous citons ID3 et C4.5 développés par Quinlan [39] [40] qui sont les plus
populaires, ainsi que l’algorithme CART de Breiman et al. [41].
− La classification ou l’inférence : Elle consiste à classer un nouvel objet, en utilisant
l’arbre de décision construit précédemment, elle est effectuée en suivant le chemin qui
parte de la racine jusqu’aux feuilles en effectuant les différents tests à chaque nœud, selon
les valeurs des attributs de l’objet à classer [26].
La classification par arbre de décision a connu une évolution importante, qui s’explique
par l’élaboration de plusieurs algorithmes référentiels, de construction d’arbres notamment ID3,
CHAID, CART et C4.5 [3] [119]. Des versions incrémentales de ces algorithmes sont rapidement
apparues, J.C. Schlimmer et D. Fisher [45] ont proposé l’algorithme ID4, P.E. Utgoff [42] a
développé le ID5R qui est une extension basée sur ID3. Plus récemment P.E. Utgoff et al. [22]
ont élaboré l’algorithme ITI qui consiste à sauvegarder les statistiques dans les feuilles, ce qui
permet une restructuration de l’arbre lors de l’arrivée des nouveaux exemples.
D’autres variantes ont été proposées, et peuvent être classées en trois catégories [179]:
-
La première catégorie de variantes vise à améliorer l’algorithme de recherche dans
l’espace des solutions, pour ce faire trois méthodes ont été établies, la première vise à
améliorer la méthode d’élagage, la deuxième procède à une optimisation globale plus
21
État de l'art de l’apprentissage automatique
puissante, la troisième effectue des recherches en avant lors de la segmentation [182]. Ces
techniques permettent d’obtenir généralement un arbre plus concis au prix d’un temps de
calcul plus élevé.
-
La seconde catégorie de variantes cherche à modifier itérativement l’espace de recherche
en produisant au fur et à mesure de nouveaux descripteurs. Connu sous le terme
d’induction constructive, l’objectif est de trouver un espace de représentation plus
approprié en élaborant des combinaisons de variables [181].
-
La troisième catégorie de variantes, modifie la forme du concept lui-même en sortant du
cadre de l’arbre de décision classique. Deux types de représentation sont généralement
rencontrés : Les arbres obliques, qui utilisent une combinaison linéaire des variables lors
de la segmentation des sommets de l’arbre [9] [19] [20]. Et les graphes d’induction, qui
introduisent un nouvel opérateur "fusion" dans l’algorithme d’apprentissage. Le modèle
de prédiction n’est donc plus un arbre mais un graphe latticiel. L’objectif est de permettre
le regroupement d’individus ayant les mêmes caractéristiques et d’assurer ainsi une
meilleure résistance à la fragmentation des données [119] [183] [184].
La classification par arbres de décision a été appliquée dans plusieurs domaines tel que la
reconnaissance de caractères [191], la reconnaissance de la parole [172], la recherche associative
[192], la modélisation du langage naturel [199], le diagnostic médical [41], la robotique [190],
etc.
Parmi les avantages des arbres de décision, on peut citer :
-
La méthode d’apprentissage est non paramétrique ; elle ne postule aucune hypothèse a
priori sur la distribution des données. Elle est résistante aux données atypiques, le modèle
de prédiction est non linéaire. Elle peut traiter des ensembles d’apprentissage avec des
données manquantes.
-
Les arbres de décision ont la capacité de produire une connaissance simple et directement
utilisable. Un arbre de décision peut être lu et interprété directement. Il est possible de le
traduire en base de règles sans perte d’information.
-
Les arbres de décision offrent une rapidité intéressante sur des bases de taille moyenne. Ils
permettent au praticien d’intervenir dans la construction. Ils possèdent un mécanisme de
sélection automatique des variables pertinentes.
-
L’induction par arbre de décision est capable de traiter de manière indifférenciée les
variables continues et discrètes.
Les arbres de décision ne sont cependant pas exempts d’inconvénients. Les inconvénients
majeurs sont les suivants :
-
La méthode d’apprentissage par arbres de décision est instable. Car le choix d’un attribut
plutôt qu’un autre, surtout s’il est près de la racine, influence grandement le reste de la
22
État de l'art de l’apprentissage automatique
construction. La conséquence de cette instabilité est que les algorithmes d’apprentissage
par arbres de décision ont une variance importante, qui nuit à la qualité de l’apprentissage.
-
Les arbres de décision ont une faiblesse au niveau de la performance et le coût
d’apprentissage. Ils deviennent peu performants et très complexes lorsque le nombre
d’attributs et de classes augmente. En effet, ils risquent de devenir trop détaillés, ce qui
leur fait perdre un peu de leur lisibilité ou encore d’aboutir à de mauvais classements et
d’augmenter le coût d’apprentissage.
-
Un arbre de décision est incapable de détecter les combinaisons de variables, avec les
algorithmes classiques (C4.5, CART, CHAID, etc.), ceci est dû au principe de
construction pas à pas de l’arbre.
1.3.4. Le classifieur Bayesien naïf
Le classifieur Bayesien naïf [120] suppose que les variables explicatives sont indépendantes
sachant la classe cible. Cette hypothèse réduit les calculs nécessaires. Le principe de
fonctionnement de ce classifieur repose exclusivement sur la formule d'inversion de Bayes [47].
3 4/" = 3 "/4
6 7
6 8
1.2
Pour toute hypothèse 4 et toute observation".
On connaît l'ensemble d'apprentissage : et on cherche à classer un nouvel élément0;<= . Le
classifieur bayésien va choisir la classe >:3 qui a la plus grande probabilité, on parle de la règle
du maximum a posteriori (MAP):
?@6
= A)B
CD ∈C
3
3 0;<= / 3
3 0;<=
/0;<= = A)B
CD ∈C
Il faut alors estimer les probabilités 3
probabilités a priori des classes 3
,3
3
F
=
et 3 0;<= /
…, 3
;G
= A)B
CD ∈C
3 0;<= /
3
1.3
à partir des données d'apprentissage. Les
, peuvent être estimées facilement par :
&H
1.4
&@
où &CD est le nombre d’éléments d'apprentissage dans la classe
et &@ est le nombre total
d’éléments dans l'ensemble d'apprentissage. Pour estimer 0;<= / , l'approche naïve de Bayes
suppose que les descripteurs de 0;<= ∶ , … , ;K sont indépendants. On a donc :
3 0;<= /
=3
/
3
F/
…3
;K ⁄
On peut alors estimer les probabilités 3 / 3 F / … 3 ;K /
un modèle connu, par exemple, des distributions normales3 < /
1.5
~O P, Q
en supposant qu'elles suivent
.
23
État de l'art de l’apprentissage automatique
Une variante du classifieur Bayesien naïf est les réseaux Bayésiens. Dans lesquels on ne
suppose plus que les variables sont toutes indépendantes, et on autorise certaines à être liées. Cela
alourdit considérablement les calculs et les résultats ne s’améliorent pas de façon significative.
Le classifieur bayésien a été appliqué avec succès sur de nombreux jeux de données réels,
par exemple Hani et al. [221] l'ont appliqué dans un cadre médical, Androuts-poulos et al. [43]
l’ont utilisé pour faire de la détection de courriers électroniques indésirables. Sebe et al. [44] ont
employé ce classifieur pour faire de la détection d'émotion à partir de l'image du visage d'une
personne, Zhou et al. [46] l'ont utilisé pour automatiser la détection d'erreur par un système de
reconnaissance de la parole, McCallum et al. ont employé cet algorithme pour la catégorisation
des textes [220], Ben Amor et al. ont utilisé ce classifieur pour la détection d’intrusion [224], etc.
Le classifieur Bayesien naïf possède deux avantages majeurs :
-
La construction du classifieur est très simple. L’inférence est assurée de façon linéaire
alors que l’inférence dans les réseaux bayésiens qui ont une structure générale est connue
comme un problème NP complet [223]. En plus, la construction des réseaux bayésiens
naïfs est incrémentale, dans le sens qu’elle peut facilement être mise à jour (il est toujours
possible de prendre en considération de nouvelles classes).
-
La vitesse d'apprentissage du classifieur et ses bonnes performances prédictives. Avec très
peu de données, sa précision est bien souvent meilleure que celles d'autres algorithmes
[222].
Par contre, les réseaux bayésiens naïfs travaillent sous une hypothèse d’indépendance très
forte entre les variables (données d’apprentissage), une telle hypothèse n’est pas toujours vraie
dans des applications réelles.
1.4. L’apprentissage non-supervisé
L’apprentissage non supervisé consiste à inférer des connaissances sur des classes, en se
basant seulement sur les échantillons d’apprentissage, et sans savoir a priori à quelles classes ils
appartiennent. Contrairement à l’apprentissage supervisé, on ne dispose que d’une base d’entrées
et c'est le système qui doit déterminer ses sorties en fonction des similarités détectées entres les
différentes entrées (règle d'auto organisation) [53] [63].
On peut distinguer en fait deux types d'apprentissage non-supervisé. Le premier est le
partitionnement, le second est la réduction de dimension.
− Partitionnement : Un algorithme de partitionnement tente de partitionner l’espace d’entrée
en un certain nombre de classes en se basant sur un ensemble d’apprentissage fini, ne
contenant aucune information de classe explicite. Les critères utilisés pour décider si deux
points devraient appartenir à la même classe ou à des classes différentes sont spécifiques à
chaque algorithme, mais sont très souvent liés à une mesure de distance entre points [81].
24
État de l'art de l’apprentissage automatique
− Réduction de dimensionnalité : Le but d’un algorithme de réduction de dimensionnalité
est de parvenir à résumer l’information présente dans les coordonnées d’un point en haute
dimension par un nombre plus réduit de caractéristiques. Le but espéré est de préserver
l’information importante, de la mettre en évidence en la dissociant du bruit, et
possiblement de révéler une structure sous-jacente qui ne serait pas immédiatement
apparente dans les données d’origine en haute dimension [81].
Il existe une panoplie de méthodes d’apprentissage non supervisé, On peut citer à titre
d’exemples : les réseaux de neurones à apprentissage non supervisé, l’analyse en composante
principale, l’algorithme des k moyennes et les méthodes hiérarchiques.
1.4.1. Les réseaux de neurones à apprentissage non supervisé
L’apprentissage non supervisé par les réseaux de neurones consiste, comme dans le cas de
l’apprentissage supervisé, à modifier les poids de connexions des neurones, mais en tenant
compte seulement des observations (absence des étiquettes), dans ce cas il n’est pas possible de
calculer les poids du réseau en fonction d’une erreur sur les réponses souhaitées. En fait
l’information utile se trouve uniquement dans les observations. Parmi les différents types de
réseaux de neurones à apprentissage non supervisé figurent les réseaux de Hopfield [5] et les
Cartes auto-organisatrices de Kohonen [137] qui représentent une classe de réseaux très utilisée
dans divers domaines d’application. A titre illustratif, nous détaillons ci-après ces derniers.
Réseaux de Hopfield
Le réseau de Hopfield [5] est une mémoire associative constituée de neurones à deux états
-1 et 1 (Figure 1.8), il s’agit d’un réseau récursif et totalement interconnecté (Il n'y a plus de
notions de couche) dont la loi d'apprentissage est la règle de Hebb [2], cette dernière stipule
qu'une synapse améliore son activité si et seulement si l'activité de ses deux neurones est corrélée
(C'est à dire que le poids d'une connexion entre deux neurones augmente quand ces deux sont
activés au même temps).
Figure 1.8 - Exemple d’un réseau de Hopfield
25
État de l'art de l’apprentissage automatique
La règle d’apprentissage proposée par Hopfield est basée sur la loi de Hebb [2]. Elle consiste à
évaluer les poids de connexion entre les neurones de la façon suivante :
1
R S = T " "S , R = 0, R S = RS 1.6
3
6
U
Où R S est le poids de la connexion entre les neurones # etW, est le nombre d’exemples à
apprendre, et " est la X èY< entrée pour le neurone # (de même pour le neuroneW). On remarque
que la phase d’apprentissage est immédiate en calculant directement les poids à l’aide de cette
fonction.
L’intérêt pratique de ce réseau réside dans sa capacité à reconstruire un nouveau exemple
bruité ou incomplet, on présente alors un vecteur d’entrée au réseau. Ce dernier calcule la sortie
correspondante et la réinjecte à l’entrée, ce processus est répété jusqu'à stabilisation du réseau. La
règle de changement d’état est la suivante :
_
_
] ^# T R S . "S < 0 b'A"" = −1
S∈`
[
[
^# T R S . "S_ > 0 b'A"" _ = 1 1.7 (
\
S∈`
[
[^# T R S . "S_ = 0 b'A"" _ = " _1
Z
S∈`
Hopfield a démontré que son réseau tend vers un état stable et son énergie diminue au
cours de son évolution. Néanmoins, Le modèle de Hopfield possède une limite très claire :
pour O neurones dans le réseau, il ne peut mémoriser que 0.14O exemples [5]. Au delà, on
observe un phénomène appelé "L’oubli catastrophique". Il s’agit d’un phénomène ou le réseau
oublie les exemples déjà appris.
Cartes auto-organisatrices de Kohonen
Ces réseaux sont inspirés des observations biologiques du fonctionnement des systèmes
nerveux. En effet, il existe des zones dans le cerveau (le cortex visuel) qui présentent la même
topologie que les capteurs sensoriels, c.-à-d. deux zones proches dans le cortex visuel
correspondent à deux zones proches dans la rétine. C’est à base de cette observation que la carte
auto-organisatrice de Kohonen a été élaborée [137].
Dans une carte de Kohonen (Figure 1.9) les neurones sont disposés sur une grille
rectangulaire aux mailles déformables dans laquelle les voisins de chaque neurone sont
naturellement définis [137]; en d’autres termes, on construit une représentation bidimensionnelle
d’une distribution multidimensionnelle et on dispose d’une représentation graphique unique des
données dans l’espace de sortie, ce qui présente un intérêt indiscutable lorsqu’il s’agit d’observer
un nombre important de données.
26
État de l'art de l’apprentissage automatique
Figure 1.9 - Représentation d’une carte de Kohonen
La figure 1.9 montre que chaque neurone W est associé à un vecteur poids RS de telle sorte
que la composante S connecte le neurone W à la # éY< composante du vecteur d’entrée
e=
, F, … , ; . L’algorithme d’apprentissage proposé par Kohonen est défini de la manière
suivante:
Après avoir présenté un vecteur d’apprentissage _ à la carte de kohonen, on détermine le
neurone gagnant ) _ dont le vecteur poids est le plus proche de _ . Ce calcul est effectué
comme suit :
)
_
= argmin‖
8
_
−
8‖
F
1.8
Ensuite, le poids RS du neurone gagnant, ainsi que ceux de ces voisins seront modifiés de
manière à ce que les poids des connexions se rapprochent du vecteur d’entrée _ , la modification
du poids est réalisée par la règle itérative suivante :
RS n + 1 = RS n + o_ ℎSp
2q
n r
_
− RS n s 1.9
Où o_ représente le coefficient d’apprentissage qui doit décroître au cours de temps. La
fonction de voisinage définit par ℎSp 2q permet de propager l’apprentissage aux neurones voisins
du gagnant. Elle doit être maximale pour ) _ et diminuer lorsque l’on s’éloigne de ce neurone.
Elle détermine aussi la décroissance du voisinage de ) _ dans l'espace et dans le temps. La
fonction de voisinage la plus utilisée est la gaussienne avec un l’écart type décroissant. Le
processus d’apprentissage est répété jusqu’à la stabilisation complète du poids des neurones de la
carte de Kohonen.
1.4.2. L’analyse en composantes principales
L’analyse en composantes principales (ACP) a été introduite par Pearson [28] et a été
développée par la suite par Hotelling [29]. Elle est considérée comme une méthode
d’apprentissage non supervisée puisque elle permet de chercher une structure sous-jacente de
27
État de l'art de l’apprentissage automatique
nuage de points sous forme d’axes principaux sur lesquels seront projetées les données.
L’objectif de l’ACP est de réduire le nombre de variables qui représentent chaque objet de
l’ensemble d’apprentissage en exploitant la corrélation éventuelle existante entre les variables
initiales. On construit alors une nouvelle description des données à l’aide d’un nombre restreint
de variables décorrélées et ordonnées par ordre de valeur informative. Ainsi, la première
dimension du nouvel espace contient le plus de variations entre chacun des objets tandis que la
dernière contient le moins de variations. L’ACP est une technique descriptive qui calcule les axes
d’inertie d’un nuage de points. Les axes d’inertie représentent des directions orthogonales suivant
lesquelles la variance des données est maximale (Figure 1.10). L’ACP revient à procéder à une
rotation de l’ensemble des données suivie d’une translation [27].
Figure 1.10 - Classification par ACP.
Principe de L’ACP
Soit , . . , ; l’ensemble de données d’apprentissage. Le principe de l’ACP repose sur le
calcul de la variance des données. La variance des données initiales est définie de la manière
suivante :
;
;
1
Q =
TT
2& & − 1
F
1
=
T
&−1
;
U
U SU
−)
−
S
−
S
− ) 1.10
Où g est le centre de gravité.
L’opérateur de projection orthogonale π, sur une droite de vecteur directeur unitaire . est défini
comme suit:
Avec
u = .. 1.11
. . = 1 1.12
La variance des observations projetées s’écrit alors :
28
État de l'art de l’apprentissage automatique
QvF
;
1
=
T u
&−1
=
U
;
1
T
&−1
U
− ) ..
1
= . w
T
&−1
;
U
−)
−)
u
−)
−)
− ) x.
= . Σ. 1.13 Le problème à résoudre est de trouver . tel que . Σ. soit maximum avec la contrainte
. . = 1 . Il s’agit d’un problème de recherche d’optimum d’une fonction de plusieurs variables
liées par une contrainte (les inconnues sont les composantes de . ). La méthode des
multiplicateurs de Lagrange peut alors être utilisée.
La fonction de Lagrange est définie ainsi par :
y = . Σ. + { 1 − . . 1.14
En dérivant la fonction de Lagrange par rapport à ν et en imposant la condition nécessaire
d’optimalité, on obtient l’équation aux valeurs propres :
Σ. = {. 1.15
Comme la matrice variance-covariance est symétrique définie positive, les valeurs propres
sont réelles et positives. Les vecteurs propres peuvent être choisis orthonormés, la solution est de
projeter les données sur le vecteur propre ayant la valeur propre λ la plus élevée.
Afin de trouver le second axe de variance maximal en cherche à résoudre :
B
. }.
|Souslescontraintes 1.16 (
. . = 1. . = 0
v
Où . est le vecteur directeur du premier axe principal.
Comme les vecteurs propres de Σ sont naturellement orthonormés, la solution est de
choisir le deuxième vecteur propre de Σ correspondant à la deuxième valeur propre maximale, la
même chose est appliquée pour trouver les axes principaux restants.
Les principales variantes de l'ACP viennent des différentes transformations du tableau de
données. Ainsi, le nuage de points peut être centré ou non, réduit ou non. Le cas le plus étudié est
lorsque le nuage de point est centré et réduit ; dans ce cas nous parlons d'ACP normée. D'autres
variantes existent telle que l'analyse en composante curviligne (ACC) [233] pour remédier au fait
que les projections sont linéaires, ou encore l'analyse en composantes indépendantes (ACI) pour
la séparation de sources [232].
29
État de l'art de l’apprentissage automatique
L’ACC [233] réalise une projection non-linéaire des données au moyen d’un réseau de
neurones à deux couches. Au contraire des cartes auto-organisatrices de Kohonen [137], la
topologie de l’espace de sortie n’est pas fixée a priori (Figure 1.11).
Figure 1.11 - (a) Deux cercles imbriquées en trois dimensions (b) projection
bidimensionnelle par ACC
L’ACI est une extension de L’ACP fournissant une base de représentation statistiquement
indépendante (et non pas simplement décorrélée) pouvant être assimilée aux détecteurs corticaux.
L’ACI a été introduite par Jutten et Hérault en 1985 [231] afin de détecter des " grandeurs
primitives dans un message composite ". L’ACI se propose de résoudre le problème de séparation
de sources en cherchant des sources statistiquement indépendantes. L’ACI a été employée pour
l’analyse d’images astronomiques à 4 bandes [230]. Elle a été aussi largement utilisée pour la
séparation de sources [195], etc.
L’analyse en composante principale a été employée dans plusieurs domaines tel que : La
reconnaissance et la classification d’émotions humaines [225], la classification des expressions
faciales [227], la détection d’intrusions [229], la classification et la reconnaissance de gestes
[226], etc.
L’ACP a été largement utilisée pour les avantages suivants :
-
C’est une méthode simple à mettre en œuvre de point de vue mathématique car les seuls
véritables outils mathématiques utilisés dans l'ACP sont le calcul des valeurs et des
vecteurs propres d'une matrice, et le changement de bases.
-
Elle permet de représenter graphiquement les résultats en 2 ou 3 dimensions, ce qui
permet d’analyser le problème de classification en un simple coup d'œil.
-
Elle offre, en quelques opérations seulement, un résumé et une vue complète des relations
existant entre les variables quantitatives d'une population d'étude, résultats qui n'auraient
pas pu être obtenus autrement, ou bien aussi facilement.
30
État de l'art de l’apprentissage automatique
Parmi les inconvénients de l’ACP on peut citer :
-
L'opération de projection par l’ACP, prend en compte uniquement les dépendances
linéaires et à ce titre c’est une opération de projection linéaire. Elle n'est donc pas capable
de projeter correctement une distribution non linéaire.
-
L'ACP, étant une méthode de réduction de dimension, il est important de savoir qu'elle ne
peut pas retenir la totalité de l'information contenue dans le nuage de points initial.
1.4.3. Les k-moyennes
L'algorithme des k-moyennes (k-means) [85] est la méthode de classification la plus connue
et la plus utilisée dans divers domaines d'application. Ce succès est dû au fait que cet algorithme
présente un rapport coût / efficacité avantageux.
L'algorithme se décompose en trois étapes : La première consiste à choisir aléatoirement les
centres initiaux des classes. La deuxième permet d’affecter chaque objet de la base de données à
la classe de centre le plus proche, et enfin la troisième qui peut être effectuée de deux façons :
− Soit chaque fois qu'un changement d'assignation d'un objet est rencontré, les deux
centroïdes des classes concernées par le changement sont mis à jour,
− Soit tous les centroïdes sont mis à jour simultanément après toutes les assignations des
objets aux classes.
L'algorithme des k-moyennes
Soit † = , . . , ; l’ensemble de données d’apprentissage, on cherche à partitionner D en k classes † , … , † ,
l’algorithme de k-means est le suivant:
1.
2.
3.
Choisir aléatoirement k objets P , … , P de la base qui forment l’ensemble des centroïdes initiaux
représentant les k classes recherchées † , … , † ;
Assigner chaque objet à la classe dont le centroïde est le plus proche ;
Puis tant qu’au moins un objet change de classe d’une itération à l’autre :
−
−
Mettre à jour les centroïdes des classes en fonction des objets qui leurs sont associés selon
l’équation :
1
P =
T
‡ Aˆ †
Mettre à jour les assignations des objets
nouveaux centroïdes de la façon suivante:
Siˆ#"n &‡0
,P
2‰ Š‹D
Œ† aux classes en fonction de leur proximité aux
< ˆ#"n &‡0• , PS Ž∀WŒ 1, . . , X 0nW ≠ X alors
Π
31
État de l'art de l’apprentissage automatique
La méthode des k-moyennes a été introduite par J. McQueen [212] en 1971 et mise en
œuvre sous sa forme actuelle par E. Forgy [128]. De nombreuses variantes se sont succédées tel
que kernel k-means [228], cette approche vise à étendre la capacité de classification aux cas non
linéairement séparables, en utilisant des fonctions noyaux jouant le rôle d’intermédiaire entre
l’espace d’origine et l’espace des caractéristiques, ainsi que d’autre améliorations tel que fuzzy kmeans [94], Gaussian-means [213], X-means [214], global-k-means [218], etc.
La classification par k-moyennes a été appliquée dans plusieurs domaines tels que, la
gestion du trafic dans les réseaux informatiques [142], la reconnaissance de locuteur [140], la
reconnaissance vocale [132], etc.
L’algorithme des k-moyennes possède les avantages suivants :
-
Il est très populaire du fait qu’il est très facile à comprendre et à mettre en œuvre
(simplicité conceptuelle).
-
L’avantage majeur de cette méthode est le temps de calcul. La complexité de l’algorithme
est seulement Ob') O où O est le nombre de données. Ceci permet d’appliquer cette
méthode à des bases de données de grande taille comme des bases d’images ou des corpus
de parole [112].
-
L’algorithme de k-means améliore à chaque itération la qualité des classes (la variance
intra-classe diminue).
Parmi les inconvénients de l’algorithme des k-means on peut citer :
− Le nombre des classes est défini par l’utilisateur au début de la classification.
− Le résultat final dépend de la sélection des centres de départ, et il est lié au choix de
la fonction distance. En effet, le choix des centres initiaux peut conduire à des
solutions totalement différentes. Ceci provient du fait que l’on recherche un
minimum local.
− Le problème des classes de tailles inégales peut aussi influencer les résultats de la
classification; souvent, les centres des classes très petites sont attirés par les centres
des classes adjacentes plus larges.
− La forme de classes est implicitement convexe ; cet algorithme n’est pas adapté à des
classes de forme non convexe.
32
État de l'art de l’apprentissage automatique
1.4.4. Les méthodes hiérarchiques
Les méthodes hiérarchiques non supervisées [86] [87] [88] [89] [90] consistent à trouver
une organisation arborescente des classes ou un dendrogramme [112] [203] (Figure 1.12). La
plupart de ces méthodes dérivent des algorithmes de lien minimal single-link [30], de
l’algorithme de lien maximal complete-link [31] et de la méthode de variance minimale ou
méthode de Ward [32] [33].
Figure 1.12 - Classification par méthodes hiérarchiques
Méthodes hiérarchiques : Approche vers le haut (bottom-up)
1.
Départ
: chaque objet est attribué à une seule classe ;
2.
Itération : on calcule les similarités entre toutes les paires de classes i et j et les deux classes les plus
similaires sont regroupées ;
3.
Arrêt ; l’algorithme s’arrête quand tous les objets sont regroupés dans une seule classe englobante.
Le dendrogramme ainsi obtenu peut être coupé à n’importe quel niveau pour obtenir le
nombre de classes désiré. Pourtant, déterminer le nombre exact de classes est très difficile. La
visualisation du dendrogramme représente un moyen mais ceci est utile seulement pour un
nombre réduit de données.
Les méthodes hiérarchiques présentent de nombreux avantages. Parmi lesquels on peut citer :
− On n’a pas besoin de fixer le nombre de classes à priori. On pourra le fixer de
manière optimale plus tard, au moyen d’indicateurs sous forme de tableau ou de
dendrogramme, ce dernier permet de visualiser le regroupement progressif des
données.
33
État de l'art de l’apprentissage automatique
− On travaille à partir des similarités entre les objets que l'on veut regrouper. On peut
donc choisir un type de similarité adapté au sujet étudié et à la nature des données.
− La classification par des méthodes hiérarchiques, peut trouver des classes de forme
variable.
L’inconvénient majeur de ces méthodes est qu’elles sont coûteuses au niveau calculatoire.
En effet, il est de l’ordre de O ‘ (où O est le nombre d’individus de départ), ce qui dépasse
rapidement les capacités des machines puissantes quand on travaille sur de grosses bases de
données [6].
1.5. L’apprentissage semi-supervisé
L’apprentissage semi-supervisé [180] consiste à utiliser un ensemble comportant un petit
nombre de données étiquetées DL et un grand nombre de données non-étiquetées DU, ce type de
situation peut se produire quand l’étiquetage des données est coûteux ou difficile. Il a été
démontré que l'utilisation de données non-étiquetées, en combinaison avec d’autres étiquetées,
permet d'améliorer significativement la qualité de l'apprentissage [14].
Les modèles génératifs
Les modèles génératifs visent à caractériser la source ayant génère les données étiquetées
DL et non étiquetées DU en modélisant la distribution de probabilité ( ,
où représente
l’étiquette de ) qui régit cette source. On part alors d’un modèle paramétré de cette source, et
on tente d’estimer les paramètres qui ont le plus vraisemblablement donné naissance aux données
observées (principe du maximum de vraisemblance). Cette technique est souvent utilisée avec des
algorithmes de type EM (Expectation-Maximization), qui sont conçus pour trouver le maximum
de vraisemblance des paramètres de modèle probabiliste [34] [35] [36] [180].
L’auto-apprentissage
L’auto-apprentissage (self-training) est une technique qui se met à jour elle-même d’une façon
incrémentale en utilisant sa propre connaissance [36, 48, 49, 50], son principe est le suivant :
-
Entrainer un classifieur avec les données étiquetées (DL).
-
Le classifieur est, ensuite, utilisé pour étiqueter les données incomplètes (DU).
-
Les données étiquetées avec un haut degré de confiance sont ajoutées aux données
d’apprentissage (DL).
-
Le classifieur est ré-entrainé sur les données de DL et la procédure est répétée jusqu’`a
satisfaire un critère d’arrêt.
34
État de l'art de l’apprentissage automatique
Parmi les variantes de l’auto-apprentissage, on peut citer la méthode qui consiste à
éliminer de DL des données ayant été mal classées. En effet, le fait d’utiliser des étiquettes
erronées dans la phase d’apprentissage risque d’entrainer un renforcement d’erreur. Toutefois, le
problème est de détecter ces données étiquetées étant donné que l’étiquette a été attribuée avec un
degré de confiance jugé suffisamment élevé. Ce problème est souvent résolu par l’utilisation
d’heuristiques se basant sur le degré de confiance du classifieur. Ainsi, si la précision du
classifieur chute en dessous d’un seuil, certaines données issues de DU sont retirées de DL pour
être replacées dans DU. Une autre heuristique, utilisée dans le cas de classifieur binaire, consiste
à permuter les étiquettes des paires de données nouvellement étiquetées ayant de très faibles
scores [180]. Cette permutation a pour objectif d’augmenter le degré de confiance du classifieur.
Le co-apprentissage
Le co-apprentissage (co-training) [37] peut être perçu comme une extension de la méthode
de l’auto-apprentissage. Le co-apprentissage part du principe que s’il existe " deux vues " d’un
même objet, indépendantes entre elles, alors deux classifieurs entrainés avec des vues différentes
devront attribuer la même étiquette à l’objet. Ainsi, la méthode repose, pour des objets définis par
un ensemble d’attributs tel que cet ensemble peut être divisé en deux sous-ensembles
indépendants, sur l’utilisation de deux classifieurs. Chaque classifieur est entrainé dans un sousespace avec les données d’apprentissage DL. Les classifieurs sont ensuite utilisés pour étiqueter
les données de DU. Les données étiquetées avec un important degré de confiance sont ajoutées à
DL. La sélection et l’ajout des données dans DL peuvent s’effectuer en tenant compte des
proportions de chaque étiquette afin de rester proche de la distribution originale des données.
Ensuite, la phase d’apprentissage des classifieurs est réitérée sur le nouvel ensemble
d’apprentissage [180].
1.6. L’apprentissage par renforcement
L’apprentissage par renforcement a comme objectif d’entraîner un agent à se comporter de
façon intelligente dans un environnement donné. Un agent interagit avec l’environnement en
choisissant, à chaque temps donné, d’exécuter une action parmi un ensemble d’actions permises.
Le comportement intelligent que doit apprendre cet agent est donné implicitement via un signal
de renforcement qui, après chaque décision de l’agent, indique s’il a bien ou mal agi [63].
L’agent doit donc se baser sur ce signal afin d’améliorer son comportement, qui est imposé par sa
politique d’action. À chaque temps donné, l’agent a normalement à sa disposition un ensemble de
caractéristiques ou d’indicateurs d’entrée, décrivant l’environnement. Par exemple, si l’agent
correspond à un robot, ces indicateurs pourraient être obtenus à partir de capteurs sensoriels. Les
concepts d’action et de signal de renforcement sont probablement ceux qui distinguent le plus
l’apprentissage par renforcement des apprentissages supervisé et non supervisé. Contrairement à
l’apprentissage supervisé, le comportement intelligent à apprendre n’est pas explicitement donné
par une cible à prédire mais doit plutôt être défini par l’utilisateur à l’aide du signal de
renforcement.
35
État de l'art de l’apprentissage automatique
1.7. Conclusion
Dans ce chapitre, nous avons présenté la notion d’apprentissage automatique en spécifiant
ses différents types, ensuite nous nous sommes focalisés sur les deux modes d’apprentissage
automatique les plus répandus (supervisé et non supervisé). Nous avons décrit les classifieurs les
plus utilisés dans ces deux modes. Nous avons mentionné également les avantages, les
inconvénients, les variantes, et les domaines d’applications de chacun de ces classifieurs. Ensuite,
nous avons abordé d’une façon sommaire, d’autres modes d’apprentissage moins populaires que
les deux premiers, il s’agit de l’apprentissage semi-supervisé, et par renforcement.
Parmi les classifieurs présentés nous allons dans le chapitre suivant nous focaliser
particulièrement sur les SVMs et les SVDD qui sont des machines d’apprentissage à noyaux
utilisant le mode d’apprentissage supervisé, elles sont largement utilisées dans les problèmes de
classification, de classement et de régression. Nous allons présenter en détail la théorie de ces
classifieurs ainsi que leurs variantes, nous allons aussi exposer les diverses techniques
développées pour améliorer leurs performances.
36
Chapitre II
Machines d’apprentissage à noyaux
2.1. Introduction
Les méthodes de discrimination visent à construire une fonction qui permet de discriminer
des exemples, en fonction de leur classe connue a priori. Il existe de nombreux algorithmes de
discrimination, parmi eux les Séparateurs à Vaste Marge (SVMs) [114] [115], ils ont montré de
bonnes performances dans la résolution de problèmes variés liés à la détection, la classification et
la régression.
Les bases des SVMs ont été initialement proposées par Vapnik dans les années 70 lors du
développement de la théorie de l'apprentissage statistique. Cependant, les premières vraies
publications basées sur ce procédé de classification sont apparues plus tard en 1992 par Boser et
al. [83], mais leur dénomination par SVMs n’est apparue qu’en 1995 avec Cortes et al. [84]. Le
37
Machines d’apprentissage à noyaux
principe général des SVMs est de trouver l’hyperplan qui maximise la marge entre les exemples
de classes différentes. Les SVMs exploitent les concepts relatifs à la théorie de l’apprentissage
statistique de Vapnik [114], et à la théorie des bornes de Vapnik et Chervonenkis [115] qui
permettent d’exprimer le lien entre le risque empirique (erreur de classification sur les données
d’apprentissage) d’une fonction de discrimination et son risque réel (erreur de classification sur
les données qui n’ont pas servis à construire la fonction). Une extension novatrice des SVMs a
été proposée par Tax et Duin [51] [52] [58] et est appelée Support Vector Domain Description
(SVDD), elle utilise une sphère de rayon minimal englobant les points d’une classe. Dans ce cas
la surface de séparation entre les différentes classes est sphérique au lieu d’être plane comme
dans les SVMs.
Les Séparateurs à Vaste Marge possèdent différentes propriétés attractives, elles sont basées
sur des fondements mathématiques solides (la minimisation du risque structurel). Elles
conduisent à la résolution d’un problème quadratique convexe dont la solution est unique. Elles
nécessitent le réglage d’un nombre réduit de paramètres.
Ce chapitre est organisé en trois grandes parties, la première partie introduit la théorie de
l’apprentissage statistique et le principe de minimisation du risque structurel exprimé par la
dimension VC. La seconde partie décrit la formulation mathématique des deux méthodes SVMs
et SVDD dans les deux cas mono-classe et bi-classes, elle expose aussi quelques variantes de ces
méthodes ainsi que leur extension dans le cas multi-classes. La troisième partie introduit la notion
des fonctions noyaux permettant le passage implicite de l’espace d’origine vers un autre
augmenté afin de classifier les données non linéairement séparables.
2.2. Principe de la minimisation du risque
2.2.1. La minimisation du risque théorique
Etant donné l'ensemble de mesures suivant :
†=
,
'-A# = 1, … , O 2.1
Chaque mesure
, est décrite par un vecteur de caractéristiques
associée = −1,1 .
Soit + une famille de fonctions paramétrées tel que :
+=
Λ est l’ensemble des paramètres.
’
∈ ℝ; et la classe binaire
/o ∈ Λ 2.2
Le paramètre définissant la fonction ’ est choisi de telle sorte que l'estimation
’∗
= ” de soit la meilleure possible et est noté o ∗ . Ainsi la fonction ’∗ correspondra à
celle qui minimise le risque théorique, ou encore le risque fonctionnel donné par la formule
suivante :
38
Machines d’apprentissage à noyaux
• o = –ℒ
,
’
ˆ3
,
2.3
Avec 3 ,
la fonction de répartition (distribution de probabilité) des données
caractérisant la source, ℒ ”, étant la fonction de perte de la prédiction ” sachant que la valeur
correcte est . Cette fonction peut être écrite de deux façons :
Dans le cas d’une prédiction où
l’écart quadratique :
est à valeur réelle, la fonction de perte généralement utilisée est
ℒ ”,
=
− ” F 2.4 ℒ ”,
1"# ≠ ” (
=˜
2.5
0"#&'&
Dans le cas d’un classement, la fonction de perte utilisée est donnée par :
Le problème de l’apprentissage se ramène donc à un problème d’optimisation. En effet, les
paramètres o ∗ optimums correspondent à la résolution du problème suivant :
o ∗ = A)B#& • o 2.6
’
2.2.2. La minimisation du risque empirique
La fonction de répartition 3 , est inconnue, par conséquent il est difficile d’estimer le
risque• o , mais il est possible de considérer une fonction de risque empirique de la forme :
•<Y™ o =
1
Tℒ
O
`
U
’
,
Ainsi le risque empirique tend en probabilité
données tend vers l’infini :
2.7
vers le risque théorique lorsque le nombre de
™
•<Y™ o š››››››œ • o 2.8
O → ∞
Il est à noter que le risque empirique n’est qu’une estimation du risque théorique. Les algorithmes
employant ce principe sont souvent sujets au problème de sur-apprentissage.
2.2.3. La minimisation du risque structurel
Vapnik et Chervonenkis [114] ont montré que le risque empirique seul n’était pas un bon
estimateur du risque théorique. Le risque théorique peut être approché par la borne suivante:
ℎ b') 2O/ℎ + 1 − b') /4
• o ≤ •<Y™ o + Ÿ
2.9
O
¡¢¢¢¢¢¢¢¢¢£¢¢¢¢¢¢¢¢¢¤
¥;_<¦v§¨¨<©<Hª;« §;H<
Pour tout 0 < < 1 avec une probabilité d’au moins 1– , et si le paramètre ℎ est
inférieure au nombre de points d’entraînementO. Le paramètre ℎ est appelé la dimension de
39
Machines d’apprentissage à noyaux
Vapnik-Chervonenkis (VC dimension), il permet de quantifier la capacité de séparation d’une
famille + de fonctions. Pour un problème de classification binaire, ℎ est le nombre maximum de
points séparables selon 2` configurations par l’ensemble de fonctions solutions.
L’inégalité (2.9) représente le dilemme biais-variance (risque empirique, intervalle de
confiance). Elle montre que, quand on augmente la VC-dimension de +, le biais diminue parce
qu’on a plus de chance d’obtenir une solution proche de la solution du problème. En revanche, la
variance augmente parce que le nombre de solutions adaptées à l’ensemble d’apprentissage
augmente et on a donc plus de chance d’obtenir une solution plus adaptée à cet ensemble et
moins adaptée globalement.
Afin de remédier à ce dilemme, Vapnik et Chervonenkis proposent un nouveau principe
d’induction appelé la minimisation du risque structurel (SRM) qui consiste à minimiser le risque
en contrôlant la dimension VC.
Le principe de la SRM consiste à définir une structure sur + comme étant une suite de sous
ensembles emboîtés + = - ’ /o ∈ ® , ® ⊂ ®°
+ ⊂ +F ⊂ ⋯ ⊂ +; 2.10
La structure est ordonnée selon les VC-dimensions croissantes :
ℎ ≤ ℎF ≤ ⋯ ≤ ℎ; 2.11
Pour obtenir une fonction avec le risque de généralisation le plus faible, il faut choisir le sousensemble + de fonctions avec la VC-dimension ℎ minimisant la somme du risque empirique et
de la VC-confiance puis il faut chercher la fonction ’ de + minimisant le risque empirique pour
être la fonction optimale. La figure 2.1 illustre le principe de la SRM.
Figure 2.1 - Comportement du risque empirique, de l'intervalle de confiance et de la borne sur
le risque théorique en fonction de la VC-dimension
40
Machines d’apprentissage à noyaux
On distingue deux approches de minimisation de risque structurel : la première approche
fixe la largeur de l’intervalle de confiance et s’intéresse à la minimisation du risque empirique.
Cette approche est mise en œuvre par les réseaux de neurones. La deuxième approche fixe le
risque empirique et s’intéresse à la minimisation de l’intervalle de confiance, l’algorithme des
séparateurs à vaste marge suit cette démarche en annulant le risque empirique par la recherche de
l’hyperplan à marge maximale. Ce choix du marge maximal est inspiré par le théorème de
Vapnik qui démontre que la VC dimension de l’hyperplan séparateur ayant la marge ∆"margin
separating hyperplane" est donnée par :
•F
ℎ ≤ B#& ³´ F µ , &¶ + 1 2.12 ∆
Avec • le rayon de la sphère minimale englobant les données d’apprentissage qui appartiennent
àℝ; .
La maximisation de la marge ∆ minimise la VC-dimension, et puisque l’erreur empirique
relative à hyperplan séparateur est nulle (il sépare correctement l’ensemble d’apprentissage), la
maximisation de la marge permettra également de minimiser la borne supérieure sur le risque
prévu. En conclusion, l’hyperplan séparateur avec une marge maximale permettra également de
minimiser le risque structurel.
2.3. Les Séparateurs à Vaste Marge (SVMs)
Les Séparateurs à Vaste Marge ou les Machines à Vecteurs de Support, plus connues sous
l’acronyme anglais SVMs (Support Vector Machines) sont des méthodes de classification par
apprentissage supervisé, elles sont une classe d’algorithmes basés sur le principe de minimisation
du risque structurel, décrit par la théorie de l’apprentissage statistique de Vapnik et Chervonenkis
[84]. Leur objectif principal est de trouver un séparateur optimal qui maximise la marge entre
deux classes différentes. Les classifieurs SVMs utilisent des fonctions appelées noyaux qui
permettent une séparation non linéaire des données d’apprentissage.
2.3.1. SVMs mono-classe
La classification par les SVMs mono-classe est utilisée dans le cas où la base
d’apprentissage ^ = # , # = 1, … , O ne contient que les exemples positifs. L’absence des
éléments négatifs (des contre-exemples) peut être justifiée soit par leur indisponibilité, soit par le
coût élevé associé à leur obtention. Contrairement aux SVMs bi-classes, la classification par les
SVMs mono-classe, vise à rechercher une fonction de décision positive dans une région de
volume minimal qui capture la plupart des observations de ^, et négative ailleurs [122] [123].
La technique SVMs mono-classe utilise le même modèle que les SVMs binaires en
considérant l’origine de l’espace comme étant la seule instance de la classe négative (Figure 2.2).
Le problème revient, donc, à trouver un hyperplan qui sépare les exemples de la classe cible de
l’origine de l’espace, et qui maximise la marge entre les deux [121].
41
Machines d’apprentissage à noyaux
Figure 2.2 - Classification par SVMs mono-classe
Le problème primal peut être écrit sous forme de l’équation (2.13), dont l’objectif est de
maximiser la marge et minimiser les erreurs de classification. La contrainte conduit à la bonne
classification des exemples d’entrainement # , # = 1, … , O .
1
1
]
F
[ >#&#B#"0A 2 ‖ ‖ + .O T · − ¸
( 2.13
U
\
^'-"b0"‡'&nA
#&n0"
[(
Z⟨ , ⟩( ≥ ¸ − · · ≥ 0# = 1,2, … O
`
Où N est le nombre d’exemples de la classe cible, (w, ρ) sont des paramètres permettant de
localiser l’hyperplan, les · représentent les erreurs permises sur les exemples, pénalisées par le
paramètre v.
Après avoir introduit les multiplicateurs de Lagrange, on obtient la forme duale suivante :
]
[
[
>
1
#B#"0A T T o oS
2
`
`
U SU
S
( 2.14
^'-"b0"‡'&nA #&n0"
\`
[T o = 10n0 ≤ o ≤ 1 # = 1,2, … O
[
.O
ZU
Les valeurs possibles des αi sont :
− o = 0 correspondent aux exemples bien classés (au dessus de l’hyperplan)
− 0<o <
correspondent aux exemples qui se situent à l’intérieur de la marge (au
v`
dessous de l’hyperplan),
42
Machines d’apprentissage à noyaux
− o = correspondent aux exemples appelés des vecteurs de support, ils se situent sur
v`
l’hyperplan.
Afin de classer un nouvel élément », il suffit d’appliquer la fonction de décision donnée par :
`
» = ")& ¼T o . ».
U
− ¸½ 2.15 Où ρ peut être déterminé par l’équation (2.16) à partir d’un exemple d’apprentissage
multiplicateur de Lagrange associé o8 est non nul :
`
¸ = To . .
U
8 2.16
8
dont le
2.3.2. SVMs bi-classes
Dans ce problème de classification la machine à vecteurs support va être utilisée en
considérant deux ensembles d’apprentissage (positif et négatif) étiquetés respectivement = 1 et
= −1 c-à-d # ∈ −1,1 .
Nous allons donc construire une fonction qui à chaque valeur d’entrée
va faire correspondre une valeur de sortie ∈ −1,1 .
: ℝ© → −1,1 ,
=
2.17
dans un ensemble ℝ©
Dans le cas linéaire, une fonction discriminante ℎ est obtenue par combinaison linéaire de chaque
vecteur d’entrée et s’écrit :
ℎ
=
.
+ 2.18
+
= 0 2.19
La classe d’un élément , est donnée par le signe de la fonction ℎ
tel que
= "#)&•ℎ
Ž. Si ℎ
≥ 0 alors appartient à la classe +1, sinon appartient à la classe
-1. Le séparateur est alors un hyperplan d’équation :
.
Si la base d’apprentissage ^ =
classifieur ℎ tel que :
.
+
,
,..,
?, ?
contient > éléments, donc on veut trouver le
≥ 0# = 1,2, … > 2.20 Dans le cas simple linéairement séparable il existe de nombreux hyperplans séparateurs.
Selon la théorie de Vapnick [84] l’hyperplan optimal (optimum de la distance interclasses) est
celui qui maximise la marge. Cette dernière étant définie comme la distance entre un hyperplan et
les points échantillons les plus proches (Figure 2.3). Ces points particuliers sont appelés des
vecteurs de support. Cette distance est donnée par l’équation (2.21) :
43
Machines d’apprentissage à noyaux
ˆ
=
| . + |
2.21
‖ ‖
Figure 2.3 - L’hyperplan optimal de séparation entre deux classes différentes
Les paramètres et étant définis à un coefficient multiplicatif près, ils vont être normalisés
pour que les échantillons les plus proches 8 vérifient l’égalité suivante :
.
8
8
Par conséquent pour les éléments
.
+
+
= 1 2.22
appartenant à l’ensemble d’apprentissage on obtient :
≥ 1# = 1,2, … > 2.23
La distance entre l’hyperplan et un point support est donc définie par
entre deux classes est
F
∥Á∥
:
La forme primale (qui dépend seulement de
contraintes qui s’écrit :
|
>#&#B#"0A F ∥
∥Á∥
. La marge géométrique
et ) est donc un problème de minimisation sous
∥F (
2.24 ^'-"b0"‡'&nA #&n0"
. + ≥ 1# = 1,2, … >
La formulation primale peut être transformée en duale en utilisant les multiplicateurs de Lagrange
o = [o , … , o? ] . Le problème s’écrit alors sous la forme suivante :
44
Machines d’apprentissage à noyaux
Minimiser :
1
, , o = ‖ ‖F − T o
2
?
y
.
U
+
− 1 2.25
La formulation de Lagrange permet de trouver les extremums en annulant les dérivées partielles
de la fonction (2.25). Le Lagrangien y doit être minimisé par rapport à et et maximisé par
rapport à o. On résout ce nouveau problème en calculant les dérivées partielles par rapport aux
et :
Ây
=
Â
?
−To
Ây
= To
Â
?
U
U
= 0 2.26 = 0 2.27 Après substitution des équations (2.26) et (2.27) dans l’équation (2.25), on en extrait la
formulation duale suivante :
]>
[
[
\
[
[
Z
1
#B#"0Ay o = T o −
T o oS
2
?
?
To
U
U
?
U ,SU
^'-"b0"‡'&nA #&n0"
= 0 0no ≥ 0# = 1,2, … >
S
.
S
( 2.28 D’autre part, on dispose des conditions de Karush Kuhn Tucker (KKT) qui sont les suivantes:
o[
.
+
− 1] = 0, ∀# = 1,2, … > 2.29
Les deux solutions possibles de l’équation (2.29) sont o = 0 ou . + − 1 = 0.
Ces deux solutions impliquent que seuls les o associés à des exemples situés sur la marge
peuvent être non nuls. Ces exemples sont appelés des vecteurs de support, qui seuls contribuent à
définir l’hyperplan optimal.
Le problème d’optimisation quadratique énoncé précédemment a une solution dans le cas
de données séparables uniquement. Dans le cas contraire, les conditions de Tucker (KKT) ne sont
jamais satisfaites.
Cortes et al. [84] ont proposé une technique qui consiste à accepter des erreurs
d’apprentissage tout en les pénalisant, d’où l’introduction de C-SVMs pour le cas non-séparable
(hyperplans à marge molle), où un paramètre de pénalisation et des variables ressort · sont
utilisés, pour régler le compromis désiré entre la séparabilité des classes et l’étanchéité du modèle
aux erreurs d’apprentissage.
Pour se faire, des variables ressorts · (slack variables) ont été introduites comme suit :
.
+
≥ 1 − · ,· ≥ 0, # = 1,2 … > 2.30 45
Machines d’apprentissage à noyaux
où > est le nombre total d’éléments # .
La solution des C-SVMs est obtenue en minimisant une borne supérieure ∑?U · sur le risque
empirique. Ce problème peut être décrit par l’équation (2.31) :
Ä
Ç
1
∥ w ∥F + C T ε 2
U
2.31 (
^'-"b0"‡'&nA #&n0"
. + ≥ 1 − · ,· ≥ 0, # = 1,2 … >
>#&#B#"0Ay
, ,· =
est une constante positive et non nulle. Plus est grande, plus on pénalise les mauvaises
classifications. Après avoir effectué les calculs nécessaires, on aboutit au problème dual cidessous:
]>
[
[
\
[
[
Z
?
#B#"0Ay o = T o −
U
1
T o oS
2
?
,SU
^'-"b0"‡'&nA #&n0"
?
0 ≤ o ≤ 0n T o
U
S
= 0# = 1,2, … >
S
( 2.32 Ce problème d’optimisation quadratique est le même que celui du cas strictement séparable avec
une contrainte supplémentaire sur les coefficients o (la borne supérieure).
Les conditions KKT (Karush-Kuhn-Tucker) associées à ce problème sont :
o = 0 ⇒ ≥ 10n· = 0 2.33
o = ⇒ ≤ 10n· ≥ 0 2.35
= 10n· = 0 2.34
0 < o < ⇒ Ainsi, les seuls coefficients αi non-nuls sont ceux associés aux éléments qui sont sur la marge
( 0 < o < ⇒ = 1 ou à l’intérieur de l’espace délimité par la marge o = ⇒
< 1 .
Afin de classer un nouvel élément, il suffit d’appliquer la fonction de décision donnée par :
?
» = ")& ¼T
U
o . ».
+ ½ 2.36 Où peut être déterminé à partir d’un vecteur de support
la formule suivante:
=
8
?
−T
U
o
8 dont0
8 < o8 < , en se basant sur
2.37 46
Machines d’apprentissage à noyaux
2.3.3. Variantes des séparateurs à vaste marge
Ces fameuses machines ont été élaborées en 1992 par Boser et al. [83], mais leur
dénomination par SVMs n’est apparue qu’en 1995 avec Cortes et al. [84]. Depuis lors, de
nombreuses variantes visant à améliorer les SVMs ont été proposées tel que : Moindres carrés
SVM (LS-SVM) [125], Lagrangian SVM (LSVM) [189], SVM Proximale (PSVM) [188], SVM
réduite (RSVM) [187], Newton SVM (NSVM) [186], SVM-1 [219], ν-SVM [209], SVM semi
supervisée (S3VM ) [216], SVM Transductive (T-SVM) [217], SVM à noyau [176], ainsi que
d’autre variantes . Parmi les variantes des SVMs citées ci-dessus, nous détaillons à titre indicatif
deux méthodes : Moindres carrés SVM et SVM Proximale.
2.3.3.1. Moindres carrés SVM
Moindres carrés Support Vector Machines (LS-SVM) est une reformulation des principes de
SVMs [124] [125] [126] [127]. Ce sont des machines qui sont aussi basées sur la maximisation
de la marge, un principe qui minimise le risque structurel. LS-SVM applique des contraintes
d’égalité au lieu des contraintes d’inégalité, et remplace la fonction de perte ε-insensible par une
fonction de perte à moindre carrée. Ces modifications apportées au classifieur SVM, permettent
de résoudre un système linéaire au lieu d'un problème de forme quadratique (QP) [124]. La
nouvelle formulation proposée par Suykens [124] et qui a donné naissance au LS-SVM est la
suivante :
1
]
[B#&#B#"0A 2 ∥
\
[
Z
1
∥F + É T 0 F
2
2.38 (
U
^'-"b0"‡'&nA #&n0"
. + = 1 − 0 # = 1,2, . . , O
`
où les 0 représentent des variables d’erreur et γ est un paramètre de régularisation
Le Lagrangien de ce système peut être écrit sous la forme suivante :
y
1
1
, , 0, o = ‖ ‖F + É T 0 F − T o
2
2
`
`
U
U
.
+
− 1 + 0 ∀# = 1, … , O 2.39
où les o sont les multiplicateurs de Lagrange pouvant être positifs ou négatifs à cause des
contraintes d'égalité.
Les conditions d’optimalité sont :
Ây
=0⇒
Â
`
= To
U
Ây
= 0 ⇒ To .
Â
`
U
2.40 = 0 2.41 47
Machines d’apprentissage à noyaux
Ây
= 0 ⇒ oS = É0S ∀W = 1, . . , O 2.42 Â0S
Ây
=0⇒
ÂoS
S•
.
S
+ Ž − 1 + 0S = 0∀W = 1, . . , O 2.43 L’élimination de 0 et donnera un système linéaire à la place d'un problème quadratique (QP),
ce système à résoudre est le suivant:
Ê
0
Ë
0
Ë
Î Ê Î = ÊÏÐÎ 2.44 Ω + É1 Í o
1
Ë=
,…,
`
o = o , … , o` Ï1Ð = 1, … , 1 Ωest une matrice carrée dont les éléments sont : Ñ ,S = . S X , S avec X , S fonction
noyau.
La résolution numérique de ce système linéaire peut être effectuée en se basant sur la technique
du gradient conjugué comme proposé par Suykens et al. [124] [125].
2.3.3.2. SVM Proximale
En se basant sur les SVMs conventionnelles, Fung et Mangasarian [178] ont proposé la
SVM Proximale (PSVM), Elle considère un problème de classification de > points dans un
espace réel à O dimensions [178]. Les > points sont représentés par une matrice : de
dimension> × O. Chaque point : appartient à la classe positive ou négative, tel que spécifié
par une matrice † diagonale de dimension> × > , ayant les valeurs +1 ou -1 le long de sa
diagonale.
Pour ce problème, la formulation des SVMs conventionnelles avec un noyau linéaire est donnée
par :
1
+ Ó0
2
Ä
2.45 (
^'-"b0"‡'&nA #&n0"
† : − 0É + ≥ 00n ≥ 0
>#&#B#"0A
Où :
ν est un paramètre de valeur strictement positive, 0 est un vecteur composé des uns,
variable d’erreur.
est une
Les différences constatées entre SVM et PSVM (Figure 2.4) sont :
− La minimisation de la norme carrée du vecteur d’erreur au lieu de la norme ;
− Le remplacement de la contrainte d’inégalité par une contrainte d’égalité ;
− L’ajout de É F à F .
48
Machines d’apprentissage à noyaux
Le problème d’optimisation associé à PSVM peut être formulé comme suit :
1
1
>#&#B#"0A
+ É F + Ó ‖ ‖F
2
2
Ä
2.46 (
^'-"b0"‡'&nA #&n0"
† : − 0É + = 0
Géométriquement, dans cette formulation alternative, les hyperplans − É = ±1
peuvent être considérés comme des hyperplans proximaux, poussés aussi loin que possible l’un
de l’autre par le terme
+ É F , et autour desquels les points de chaque classe sont rassemblés.
Cette formulation nous permet d’écrire une solution explicite exacte en termes de données
d’entrée ce qui est impossible dans le cas de SVMs conventionnelles.
La SVM proximale (PSVM) a des performances comparables aux classifieurs SVMs, mais avec
une vitesse de calcul souvent plus rapide.
Figure 2.4 - Comparaison entre la SVM conventionnelle (gauche) et PSVM (droite)
Le Lagrangien de ce problème peut être écrit sous la forme :
y
F
1
1
, É, , o = . ‖ ‖F + ÕÖ É ×Õ − o † : − 0É +
2
2
− 0 2.47 o est le multiplicateur de Lagrange associé à la contrainte d’égalité † : − 0É +
l’annulation du gradient de y, donne les conditions d’optimalité (KKT) suivantes :
− : †o = 0
É + 0 †o = 0
. − o = 0
† : − 0É + − 0 = 0
2.48
2.49
2.50
2.51
= 0,
49
Machines d’apprentissage à noyaux
Les trois premières équations (2.48) (2.49) (2.50), donnent les expressions suivantes aux
variables d’origine , É, en termes de multiplicateurs de Lagrange o :
= : †o , É = −0 †o,
=
o
.
(2.52)
La substitution des expressions ci-dessus dans la dernière égalité, nous permet d’obtenir une
expression explicite de o en termes de : et † :
1
1
o = Ê + †(:: + 00 )†Î 0
.
(2.53)
Ayant calculé o à partir de la formule (2.53), la solution explicite ( , É, ) de notre problème
(2.47) est donnée par (2.52). Par ailleurs, une version non-linéaire du PSVM a été développée par
M. F. Glenn et O. L. Mangasarian [178].
2.4. Support Vector Domain Description (SVDD)
Support Vector Domain Description est une technique récente de classification inspirée par
les séparateurs à vaste marge. SVDD a été inventé par Tax et Duin [51] [52] [58]. L’approche
utilisée consiste à rechercher l’enveloppe sphérique de rayon minimal englobant les points d’une
classe.
2.4.1. SVDD mono-classe
Normal data description est un modèle [54] [55] [57] [58] qui englobe les données
d’apprentissage dans une hyper-sphère de rayon minimal.
Soit
∈ Ø un ensemble d’apprentissage de O points, avec ∈ ℝ© . Normal Data
Description cherche l’hypersphère minimale décrite par les contraintes suivantes:
,
‖
>#&#B#"0A • F
"'-" b0" ‡'&nA #&n0"
− ‖F ≤ • F
# = 1,2, . . , O
(2.54)(
‖. ‖ représente la norme euclidienne. Pour accepter des erreurs d’apprentissage tout en les
pénalisant, des variables ressorts · (slack variables) ont été introduites comme suit :
‖
− ‖F ≤ • F + · ,
· ≥ 0,
# = 1,2, . . , O
(2.55)
Il s’agit d’un problème d’optimisation sous contraintes, dont le Lagrangien peut être écrit sous la
forme suivante :
`
y(•, , ·) = •F − T(•F + · − ‖
U
`
− ‖F )o − T · P +
U
`
T·
U
(2.56)
50
Machines d’apprentissage à noyaux
Les coefficients o ≥ 0 et P ≥ 0 sont des multiplicateurs de Lagrange, avec un paramètre qui
permet de régler le taux d’erreur admissible dans la solution, et ∑ · est le terme de pénalité.
Pour minimisery, on annule ses dérivées partielles par rapport à •, , · :
Ây
= 0 ⇒ T o = 1 2.57 •
`
U
Ây
= 0 ⇒ = T o . 2.58 Â
U
Ây
= 0 ⇒ o = − P 2.59 ·
`
Après réarrangement et utilisation des conditions de Karush-Kuhn-Tucker (KKT), nous arrivons
à la formulation duale suivante :
`
]>
[
[
#B#"0A ∶ y o = T
\
[
[
Z
`
T
U
U
F
`
`
o − T T o oS
U SU
^'-"b0"‡'&nA #&n0"
= 10n 0 ≤ o ≤ # = 1,2, . . O
S
2.60 (
Pour qu’un nouvel objet » appartient à une classe X, représentée par une hypersphére de
centre et de rayon•, il suffit d’appliquer la fonction de décision donnée par l’équation (2.61),
si l’évaluation de cette fonction est positive on conclut que » appartient à ladite classe, sinon il
n’appartient pas à la classe [51] [52] [58] [59], la fonction de décision est donnée par :
» = ")& • F − ‖» − ‖F 2.61
avec
`
‖» − ‖F = ». » − 2 T o
et
• =
F
Pour tout
8
8. 8
`
− 2To
U
U
8
`
`
» + T T o oS
`
`
U SU
+ T T o oS
U SU
S 2.62
S 2.63
∈ ^Ù , ^Ù est l’ensemble des vecteurs de support ayant 0 < o <
.
2.4.2. SVDD bi-classes
Quand les éléments négatifs existent (c.-à-d. les objets qui doivent se situer à l’extérieur de
l’hypersphère) il est possible de les faire intervenir dans l’ensemble d’apprentissage pour
améliorer la description.
51
Machines d’apprentissage à noyaux
Dans ce qui suit l’ensemble d’apprentissage va être construit par O éléments cibles (positifs)
numérotés par les indices #, W et > éléments négatifs numérotés par les indices b, B. Pour tolérer
les erreurs d’apprentissage des variables ressort · et ·¨ on été introduites [58]:
Le problème primal peut être écrit sous la forme :
`
?
] >#&#B#"0Ay •, · = •F + 1 T · + 2 T ·
¨
[
U
¨U
^'-"b0"‡'&nA #n0"
\
F
F
‖
‖
−
≤
•
+ · 0n‖ ¨ − ‖F > •F − ·¨ [
Z· ≥ 0,·¨ ≥ 0# = 1,2, . . , O0nb = 1,2, . . , >
2.64 (
Avec 1 , 2 sont des constantes positives et non nulles, 1 ∑ÚU · et 2 ∑Ç
ÛU ·¨ les termes de
pénalité. Ces contraintes sont introduites dans l’équation (2.64) et le lagrangien y est écrit comme
suit :
Ú
Ç
Ú
Ç
Ú
y •, , · = • + 1 T · + 2 T ·¨ − T É · − T ɨ ·¨ − T o [•F + · − ‖
F
Ç
− T o¨ [‖
ÛU
¨
U
ÛU
U
ÛU
U
− ‖F ]
− ‖F − • F + ·¨ ] 2.65 Avec o ≥ 0, o¨ ≥ 0, É ≥ 0, ɨ ≥ 0 sont des multiplicateurs de Lagrange.
L’annulation des dérivées partielles de y par rapport aux • , et · ·¨ donne les contraintes
suivantes:
Ây
= 0 ⇒ T o − T o¨ = 1 2.66
•
Ú
Ç
U
ÛU
Ây
= 0 ⇒ = T o − T o¨ ¨ 2.67
Â
U
ÛU
Ây
Ây
= 00n
= 0 ⇒ o = 1 − É o¨ = 2 − ɨ ∀#, b 2.68
·
·¨
Ú
Ç
Après la substitution des équations (2.66) (2.67) (2.68) dans l’équation (2.65) on obtient :
Ú
]
>#&#B#"0Ay o = T o
[
[
U
\
[
[
Z
Ú
Ç
Ç
− T o¨
ÛU
¨
Ú
Ú
¨ − T T o oS
U
ÜU
S
Ç
Ú
+ 2 T T o¨ oS
^'-"b0"‡'&nA #&n0"
ÛU
ÜU
¨ S
Ç
Ç
− T T o¨ oY
ÛU ÝU
T o − T o¨ = 1,0 ≤ o ≤ 10n0 ≤ o¨ ≤ 2avec# = 1,2, . . Ob = 1,2, . . >
U
¨ Y
2.69 (
ÛU
Pour qu’un nouvel objet »appartient à une classe X, représentée par une hypersphère de
centre et de rayon •, il suffit d’évaluer le signe de la fonction de décision donnée par l’équation
52
Machines d’apprentissage à noyaux
(2.70), si l’évaluation de cette fonction est positive on conclut que » appartient à ladite classe,
sinon il n’appartient pas à cette classe [51] [52] [58] [59].
avec
∥»−
et
• =
F
» = ")& RF − ‖» − a‖F 2.70
`
∥ = ». » − 2 ¼T o
F
8. 8
`
− 2 ¼T o
U
U
8
?
`
`
» − T o¨ ¨ »½ + T T o oS
?
¨U
− T o¨
¨U
¨ 8½
`
S
U SU
`
+ T T o oS
U SU
S
?
?
+ T T o¨ oY
?
¨U YU
?
+ T T o¨ oY
¨U YU
¨ Y
¨ Y
`
?
− 2 T T o o¨
`
U
?
¨U
− 2 T T o o¨
U
¨U
¨ ¨ Pour tout 8 ∈ ^Ù, ^Ù est l’ensemble des vecteurs de support ayant 0 < o < 1 (quand
objet cible (positif)) ou 0 < o¨ < 2 (quand 8 est un objet négatif).
2.71
2.72
8
est un
2.4.3. Variantes du Support Vector Domain Description
Plusieurs variantes du SVDD ont été développées [21] [62], on peut citer parmi elles :
SVDD avec sphère unique [60], l'approche de petite sphère et large marge pour la détection des
nouveautés en utilisant les données d'entrainement avec les données aberrantes [57], seconde
ordre NSVDD [64], µ-NSVDD [64], SVDD basé sur le maximum de distance entre les centres de
deux sphères [64].
Parmi les variantes de SVDD citées ci-dessus, nous détaillons à titre indicatif deux
méthodes : SVDD avec sphère unique et SVDD basé sur le maximum de distance entre les
centres de deux sphères.
2.4.3.1. SVDD avec sphère unique
Cette méthode [60] vise à séparer les données en maximisant le rapport entre le rayon de la
sphère minimale qui les englobe et la marge de séparation entre les données (Figure 2.5).
Figure 2.5 - Maximisation du rapport de séparation • + ˆ / • − ˆ
53
Machines d’apprentissage à noyaux
Cette méthode peut être formulée mathématiquement comme suit [60] :
Ä
Où
•F − ‖
•+ˆ
•−ˆ
2.73 (
^'-"b0"‡'&nA #&n0"
− ‖F ≥ ˆF − · # = 1,2, . . O
>
#B#0A
∈ −1,1 représente la classe de l’élément
à©
, et · est une variable ressort correspondant
á
à cet élément. La maximisation du rapport 1© est équivalente à la minimisation de©á . C’est une
forme non-linéaire en fonction de • F et ˆF , difficile à traiter directement. Cependant, à tout
point •â, ˆâ , le quotient
á
©á
≈
á
©á
á
ä
©äá
peut être approché comme suit:
+
©äá
r• F −
á
ä
©äá
ˆF s 2.74 En se basant sur la formule ci-dessus, le problème d’optimisation devient:
]
[
Où å =
á
ä
©äá
\
[
Z
>#&#B#"0A• − åˆ +
F
F
`
T · U
^'-"b0"‡'&nA #&n0"
•F − ‖ − ‖F ≥ ˆF − · # = 1,2, . . O
( 2.75 ≥ 1 est une constante qui contrôle le compromis entre le rayon de la sphère et la
marge de séparation. La résolution du problème primal nous amène à sa forme duale, qui peut
être écrite sous la forme :
1
] >#&#B#"0Ay o = 1 T T o o
S
S
S − To
[
2
2
[
U SU
U
( 2.76 ^'-"b0"‡'&nA #&n0"
\`
`
[
[T o = å0n T o = 1,
0 ≤ o ≤ # = 1,2, . . O
ZU
U
`
`
`
2.4.3.2. SVDD basé sur le maximum de distance entre les centres de deux sphères.
Cette méthode a été proposée par Tingting Mu et K. Nandi Asoke [64], elle a comme
objectif d’englober simultanément deux types de données (positives et négatives) via deux
, R et F , R F , tout en maximisant la distance entre les deux centres
sphères minimales
0n F des deux sphères.
Ce problème d’optimisation peut être écrit mathématiquement comme suit :
54
Machines d’apprentissage à noyaux
F
F
F
]>#&#B#"0Ay = • + •F − åˆ + T · [
( 2.77
^'-"b0"‡'&nA #&n0"
\‖ − ‖F − • F ≤ 0 + · , = +1, · ≥ 0
[
Z ‖ − F ‖F − •FF ≤ 0 + · , = −1, · ≥ 0
Où ˆ F = ‖ − F ‖F ,et å > 0 est une constante utilisée pour contrôler la proportion de la
séparation par la marge et par le rayon de la sphère.
La forme duale simplifiée de ce problème peut être écrite sous la forme :
]
>
[
[
\
[
[
Z
#B#"0Ay o = T o
−
U
å−1
æ T T o oS
2å − 1
ç‰ U çè U
S
+ T
T o oS
ç‰ U1 çè U1
^'-"b0"‡'&nA #&n0"
T o = 10n T o = 1; 0 ≤ o ≤
ç‰ U
Sé
−
2å
T T o oS
2å − 1
ç‰ U çè U1
ç‰ U1
La fonction de décision dans ce cas s’écrit sous la forme:
» =
‖» −
•F
‖F
−
‖» −
•FF
F‖
F
S 2.78 2.79 Si » ≥ 0 on en déduit que » est un élément qui appartient à la classe négative, et vice versa,
dans la formule (2.79) les rayons • et •F sont calculés par les vecteurs de support
correspondants, c-à-d les vecteurs de support o de la classe positive ayant 0 < o < servent à
calculer • et ceux de la classe négative ayant 0 < o < sont utilisés pour calculer•F .
2.5. Méthodes de décomposition multi-classes
Les SVMs sont des machines de discrimination binaire. La généralisation de leur utilisation
dans le cas multi-classes (å classes) peut se faire de quatre façons différentes :
− L’approche un contre tous ;
− L’approche un contre un ;
− La méthode appelée graphe acyclique direct;
− L’approche globale.
Le choix d’une approche de décomposition dépend essentiellement de la taille du problème.
55
(
Machines d’apprentissage à noyaux
L’approche un contre tous consiste à entrainer les SVMs bi-classes en utilisant les
éléments d’une classe contre tous les autres (Figure 2.6). Il s’agit de résoudre å problèmes SVMs
chacun ayant la même taille. Le résultat est å frontières de décision
avec 1 ≤ X ≤ å ,
∗
séparants chaque classe des autres. L’objet est affecté à la classe X si :
X ∗ = A)B
1≤X≤å
2.80
Figure 2.6 - Décomposition par la méthode un contre tous
La méthode "un contre un" attribuée à Knerr et al. [116], consiste à utiliser un classifieur
par couple de catégories. Le classifieur indicé par le couple #, W avec 1 ≤ # < W ≤ å , est destiné
à distinguer la catégorie d'indice # de celles d'indice W (Figure 2.7), par conséquent cette méthode
nécessite la construction de å å − 1 /2 frontières de décision. Pour affecter un exemple, on le
présente donc à ∁F classifieurs, et la décision s'obtient généralement en effectuant un vote
majoritaire.
Figure 2.7 - Décomposition d’un problème de classification multi-classes
par la méthode un contre un
56
Machines d’apprentissage à noyaux
Les SVMs avec graphe acyclique direct, proposées par Platt et al. [175], visent à résoudre
le problème de classification multi-classes. Cette méthode est basée sur l’utilisation d’un graphe
de décision orienté acyclique, son principe est le suivant : Dans la phase d’apprentissage, la
technique utilise le même principe que celui de la méthode un-contre-un. Donc, elle construit
å å − 1 /2 modèles de classification binaire. Mais, dans la phase de test, chaque modèle vote
contre la classe non choisie (Figure 2.8). Le résultat de cette action est le rejet d’une classe à la
fin de chaque vote. Ainsi, on obtient la classe désirée après å − 1 étapes, le taux de classification
donné par cette approche est identique à celui de la méthode un-contre-un, mais elle dépasse cette
dernière en terme de rapidité.
Figure 2.8 - Le principe des SVMs avec graphe acyclique direct,
dans le cas de trois classes
L’approche globale consiste à formaliser le problème d’optimisation en prenant en
compte simultanément toutes les classes constituant une base d’apprentissage [117] [118] [207]
[208]. La plupart des modèles multi-classes partagent la même architecture de base. Ils se
distinguent simplement par leur algorithme d'apprentissage.
Dans le cas des SVMs [151] le problème d’optimisation global peut être écrit sous la forme :
]
[
\
[
Z
î
ç‰ ð(
)+
ç‰
≥
1
>#&#B#"0A y = T
=,ì,í
2
S
ð( ) +
SU
S
S
S
+
`
î
T T
U SU ,Sïç‰
· ,S
^'-" b0" ‡'&nA #&n0"
+ 2 − · ,S , · ,S ≥ 0 , # = 1, … , O 0n W = 1, … , å; W ≠
(2.81)(
Où O est le nombre de données de la base d’apprentissage, å est le nombre total des classes,
est une constante de régularisation, S ∈ ℋ et S ∈ ℝ sont respectivement le vecteur de poids et
le biais de l’hyperplan séparateur correspondant à la W éme classe, ℋ est l’espace des
caractéristiques engendré par la fonction noyau ð , · ,S ∈ ℝ est la variable ressort associée à la
# éme donnée de la Wéme classe.
Dans le cas de SVDD [82] le problème d’optimisation global peut être écrit comme suit:
57
Machines d’apprentissage à noyaux
]
[
\
[
Z
>#&#B#"0A y
,S
ròð
−
Sò
,§,í
F
î
= T •SF
SU
+
`
î
T T · ,S
U SU
^'-"b0"‡'&nA #n0"
− •SF s ≤ · ,S ,· ,S ≥ 0,W = 1,2, . . , å, # = 1,2, . . , O,
,S
=ó
+1,
−1,
∈ W éY< ‡b ""0 (
∉ W éY< ‡b ""0
( 2.82
O est le nombre de données de la base d’apprentissage, å est le nombre total des classes, est
une constante de régularisation, •S ∈ ℝ et S ∈ ℋ sont respectivement le rayon et le centre de
l’hypersphère minimale englobant les données de la W éme classe,· ∈ ℝ est la variable ressort
associée à la # éme donnée.
Le dual de ces problèmes est quadratique de même nature que celui des SVMs binaires et
de taille O × å (Nombre de données d’apprentissage×Nombre de classes).
2.6. Méthodes à noyaux
2.6.1. Principe
Le principe des méthodes à noyaux [38] [180] [203] consiste à projeter les données de
l'espace ℝ© dans un autre espace de dimension plus élevée (Figure 2.9) où les données qui étaient
non linéairement séparables peuvent le devenir. Désignons par F le nouvel espace, la fonction de
projection ð ∶ ℝ© ⟶ +est une transformation non linéaire, qui est évaluée implicitement via le
produit scalaire.
Figure 2.9 - Projection d’un ensemble de données dans un nouvel espace
permettant une séparation plane
58
Machines d’apprentissage à noyaux
A l’aide de la fonction ð on définit une fonction X . , . ∶ ℝ© × ℝ© ⟶ ℝ avec
X , = ð .ð
pour réaliser la projection. La fonction X , ainsi définie est appelée
noyau et elle représente le produit scalaire dans l'espace +. Par exemple le noyau polynomial de
degré deux est défini comme suit :
Soit
=
,
F
et Φ
=
F
,
F
F , √2
.
X• ,
F
SŽ
on peut définir :
= ⟨ , S ⟩F = •
=
= ⟨ù
.
F
.
S
S
+
F
+
F . SF Ž
F
F
.
F
SF
F
+ 2.
, ù• S Ž⟩ 2.83 .
S
.
F . SF Pour démontrer l'existence d'une fonction noyau, on se sert souvent du théorème de Mercer [38]
qui s'énonce comme suit:
Soit une fonction symétrique X ∶ e × e ⟶ ℝ avece ⊂ ℝˆ , il existe une fonction ð telle que
X , = ð .ð
si et seulement si pour toute fonction élément de l'ensemble des fonctions
F
définies sure, telle que: ú
ˆ
existe :
On a
–X
,
ˆ ˆ ≥ 0 2.84
La positivité de l'intégrale permet de définir l'existence du noyau, qui est un produit scalaire dans
un espace de Hilbert.
La condition de Mercer peut être formulée différemment, en considérant la matrice de Gram
[11], définie comme la matrice contenant les valeurs calculées par la fonction noyau sur tous les
couples de données • , S Ž#, W = 1, … , O . Elle constitue l’entrée de l’algorithme d’apprentissage,
qui n’utilise pas la fonction X . , . elle-même mais la matrice K de dimension O × O, telle que
å S = X , S ).
La condition de Mercer appliquée à la matrice de Gram s’énonce sous la forme suivante :
Une fonction X . , . peut être considérée comme un produit scalaire dans un espace implicite si et
seulement si pour tout entier strictement positif O, et pour tout ensemble arbitraire de données
, … , ` de taille O, la matrice de Gram å = X• , S Ž ,SU …` est symétrique définie positive,
soit si toutes ses valeurs propres sont positives ou nulles.
2.6.2. Propriétés des noyaux
Les noyaux possèdent un ensemble de propriétés :
−
Commutativité
59
Machines d’apprentissage à noyaux
Soient x et y deux éléments de l’espaceX ⊂ ℝ , la fonction noyau étant symétrique, nous avons
la commutativité :
−
X
,
=X
Inégalité de Cauchy-Schwartz
,
2.85
Considérons toujours x et y deux éléments de X ⊂ ℝ , nous avons :
[X
,
]F = [ð
− Combinaison de noyaux
]F ≤ ‖ð
.ð
‖F . ‖ð
‖F 2.86
Soient X et XF deux noyaux définis de e × e dans ℝ tel que e ⊂ ℝ© . Les fonctions suivantes
sont aussi des noyaux :
X , = X , + XF , 2.87 X , = X , .0‡ ∈ ℝà 2.88 X , = X , . XF , 2.89 X , =0 X ,
2.90 X , = •X , Ž 2.91 Avec ∶ ℝ ⟶ ℝunefonctionpolynomialeàcoefficientspositifs.
2.6.3. Exemples de noyaux
Plusieurs noyaux ont été développés, parmi lesquels on peut citer [12] :
− Noyaux polynômiaux
Afin d'élaborer une règle de décision basée sur une statistique polynômiale de degré , on
utilise le noyau suivant :
X• , S Ž = 1 +
.
S
™
2.92
Les composantes de l'application ù
associée sont alors les monômes de degrés inférieurs à
constitués des composantes de . Parce qu'ils sont fonction du produit scalaire des
observations, de tels noyaux sont dits projectifs.
− Noyaux exponentiels radiaux
F
Les noyaux de type radial dépendent de la distance ò − S ò entre les observations. Ils ont
fait l'objet d'une attention particulière dans la littérature en raison du rôle central qu'ils jouent
dans les méthodes d'estimation et de classification [63]. On compte parmi eux le noyau gaussien,
défini par :
60
Machines d’apprentissage à noyaux
X• ,
SŽ = 0
æ−
−
ò
Sò
F
â
é 2.93
Où â est appelée largeur de bande. Ce noyau est caractérisé par un continuum de valeurs
ne sont pas en nombre fini.
propres, ce qui signifie que les composantes de ù
− Noyaux exponentiels
Les noyaux exponentiels offrent souvent des solutions intéressantes en fournissant une
surface de décision linéaire par morceaux dans l'espace des observations.
X• ,
SŽ
= exp æ−
ò
−
Sò
â
é 2.94
− Noyaux sigmoïdaux
Les noyaux sigmoïdaux peuvent être écrits sous la forme suivante :
X• , S Ž = tanh•oâ . .
S
+
â Ž
2.95
La qualité du noyau dépend des paramètres oâ 0n â , contrairement aux noyaux
polynômiaux et exponentiels. S'ils ne sont pas convenablement choisis, il en résulte la perte du
cadre rigoureux offert par les espaces de Hilbert.
2.7. Conclusion
La théorie de l’apprentissage statistique basée sur le principe de minimisation des risques
théorique, empirique et structurel a donné naissance à des algorithmes d’apprentissage capables
de contrôler d’une façon nouvelle le dilemme biais-variance. Parmi ces algorithmes figurent les
SVMs et SVDD, ces méthodes de classification ont montré de bonnes performances dans la
résolution de problèmes variés tel que la classification, la régression et la détection.
Dans ce chapitre nous avons exposé la théorie d’apprentissage statistique développée par
Vapnik qui a apporté des vues éclairantes sur la généralisation qui n’est autre que la faculté d’un
modèle à prédire correctement de nouvelles valeurs et pas seulement à rendre compte du passé.
Ces apports font appel à une mesure spécifique de la complexité d’un modèle nommée la VCdimension. Ensuite, nous avons abordé la formulation mathématique des deux méthodes SVMs
et SVDD dans les deux cas mono-class et bi-classes. Nous avons décrit quelques variantes de ces
méthodes ainsi que leurs extensions dans le cas multi-classes. Nous avons clôturé ce chapitre en
introduisant la notion des fonctions noyaux permettant le passage implicite de l’espace d’origine
vers un autre augmenté afin de classifier les données non linéairement séparables.
61
Chapitre III
Optimisation de la séparabilité interclasses
de la machine SVDD
3.1. Introduction
Ce chapitre introduit trois améliorations du classifieur Support Vector Domain
Description (SVDD), qui ont pour objectif l’optimisation de la séparabilité interclasses. La
première amélioration vise à réduire le chevauchement qui peut se produire entre les sphères
minimales relatives aux différentes classes, car ce chevauchement crée des zones communes, et
62
Optimisation de la séparabilité interclasses de la machine SVDD
par conséquent empêche la classification des nouveaux éléments se trouvant à l’intérieur de ces
zones. La deuxième amélioration introduit un nouveau paramètre dans le SVDD, son rôle est
d’ajuster les frontières de séparation entre les différentes classes en contrôlant le volume des
sphères minimales, l’objectif attendu est l’augmentation du pouvoir séparateur dudit classifieur.
La troisième amélioration concerne la fonction de décision utilisée par SVDD qui a pour objectif
la discrimination entre les données, ladite fonction est incapable de classer les éléments existant à
l’intérieur des zones de chevauchement, ce qui diminue le pouvoir séparateur du SVDD.
3.2. Maximisation de la séparabilité inter-sphères
Le classifieur SVDD proposé par Tax et Duin [51] [52] [58] cherche l’hypersphère de
volume minimum qui englobe presque toutes les données positives. La contrainte de volume
minimum est nécessaire pour réduire la possibilité d’inclusion des données négatives à l’intérieur
de l’hypersphère. Cette inclusion peut être évitée en imposant une autre contrainte à SVDD qui
vise à rejeter les données négatives à l’extérieur de l’hypersphère minimale.
Dans le cas d’un problème multi-classes, la construction des hypersphères minimales
relatives aux différentes classes, peut provoquer un éventuel chevauchement entre elles; ce qui
produit des zones communes, par conséquent si un nouvel élément se place à l’intérieur de ces
zones il serait impossible de l’affecter à une classe unique. On propose de minimiser le
chevauchement entre les hypersphères en maximisant un critère de séparabilité entre elles, défini
comme la distance entre les centres des hypersphères obtenues par le classifieur SVDD [103].
Pour cela une nouvelle contrainte est ajoutée à SVDD qui veille à ce que chaque nouvelle
hypersphère soit éloignée le plus possible de toutes les précédentes. La méthode présentée peut
être formulée en tant que problème d'optimisation quadratique convexe qui peut être résolu de
manière efficace via les techniques existantes.
3.2.1. Formulation mathématique
Notre objectif est d’ajouter une nouvelle contrainte à SVDD conventionnel. Cette contrainte
permet de maximiser la distance entre le centre de chaque nouvelle hypersphère et ceux des
hypersphères précédentes, sachant que la première hypersphère est construite par le SVDD
conventionnel.
… ` , ` , avec
Etant donné un ensemble de couples de taille O défini comme ,
= 1 pour les données de la classe cible ou positive et
= −1 pour celles de la classe
négative. On cherche la kème hypersphère minimale de rayon• , et de centre
qui englobe les
données de la classe positive et qui est éloignée le plus possible des hypersphères construites
préalablement. Ce problème est décrit par les contraintes suivantes :
∈ ℝ© ,
‖
‖
−
−
‖F ≤ •F + · # ∈ 1, . . , O .0‡
‖F ≥ •F − · # ∈ 1, . . , O .0‡
= +1 3.1
= −1 3.2
63
Optimisation de la séparabilité interclasses de la machine SVDD
ò
−
F
Sò
≥ ¸F −
S W
∈ 1, . . , X − 1 3.3
Tel que, · et S sont des variables ressorts, réelles et positives, ¸ > 0 est la marge entre le
centre de la nouvelle hypersphère et ceux des hypersphères précédentes.
Pour résoudre ce problème en introduit le Lagrangien :
y • , ¸, ·,
`
= • − .¸ +
−To
U
F
`
F
• −‖
F
−
T· +
U
F
1
T
SU
S
1
‖F + · − T
SU
1
`
− T· P − T
S
U
rò
S
−
SU
S ÉS
ò − ¸F +
F
S s 3.4
Avec
et F des constantes réelles et positives, ∑`U · et F ∑SU1 S sont des termes
de pénalité, o ≥ 0, S ≥ 0, P ≥ 00nÉS ≥ 0 sont des multiplicateurs de Lagrange. On peut
rendra le rayon • F aussi petit que
constater que la minimisation de la fonction y • , ¸, ·,
possible, tandis que la marge ¸Fdevient de plus en plus large, ce qui favorise la séparation entre
les différentes hypersphères.
Le paramètre v dans l’équation (3.4), est une constante réelle strictement positive. Une
autre condition sur v est donnée par l’équation (3.7) qui impose que sa valeur soit différente de 1.
Ce paramètre joue le rôle d’un compromis entre la minimisation du rayon de l’hypersphère et la
maximisation de la séparabilité entre les centres des hypersphères.
Pour montrer le rôle du paramètre v on exécute les calculs sur un jeu de données
artificielles contenant deux classes. La figure 3.1 montre que l’augmentation de la valeur du
paramètre v produit une répulsion entre les sphères, et par conséquent la disparition progressive
du chevauchement.
64
Optimisation de la séparabilité interclasses de la machine SVDD
Figure 3.1 - Visualisation en 2D du rôle du paramètre . dans la classification
d’un jeu de données artificielles par la méthode SVDD
Après l’annulation des dérivées partielles de L par rapport aux • , ¸,
contraintes suivantes :
Ây
= 0 ⇒ To .
•
`
U
Ây
=0⇒T
¸
1
SU
Ây
=0⇒
Â
Ây
= 0 ⇒
·
Ây
= 0 ⇒
Â
S
, on obtient les
= 1 3.5
= . 3.6
1
=
æT
.−1
1
SU
F
,· ,
S S
`
− To
é .0‡. > 00n. ≠ 1 3.7
U
− P − o = 0 3.8
−É −
= 0 3.9
La substitution des équations (3.5), (3.6), (3.7), (3.8) et (3.9) dans (3.4) conduit à la recherche du
maximum de la forme duale suivante:
y o,
1
=
T T o oS
.−1
`
`
U SU
S
2
TTo
S −
.−1
`
1
U SU
S
.
S
65
Optimisation de la séparabilité interclasses de la machine SVDD
1
+
TT
.−1
1
1
U
S
SU
S
1
`
+ To
−T
U
S S S SU
3.10
Les coefficients o avec # ∈ 1, . . , O et S avecW ∈ 1, … , X − 1 sont obtenus par la résolution d’un
problème d’optimisation quadratique convexe défini par :
Min:
1
e 4e + : e 3.11
2
Tel que :
4=
F
‘
F
−
−
−
v1
⋮
⋮
F
F
F
F F F F
‘
‘ F ‘ F
F
‘
−
−
−
⋮
F F
F F F
F F ‘
⋮
e=
‘
‘
F ‘ F ‘
‘ ‘ ‘ ‘
⋮
−
−
−
‘ ‘
‘ ‘ F
‘ ‘ ‘
o
oF
o‘
⋮
⋮
et
F
‘
⋮
…
…
…
⋱
…
…
…
…
−
−
−
F F
‘ ‘
⋮
F
‘
⋮
:=
−
−
−
F
F F F
‘ ‘ F
⋮
F
‘
⋮
F
F
F
−
…
‘
− F F ‘ …
− ‘ ‘ ‘ …
⋮ …
‘ …
F ‘ …
‘ ‘ …
⋮ ⋱
F F F
‘ ‘ ‘
−
−
−
⋮
F F
‘ ‘
⋮
Dans un problème multi-classes (X classes), pour classer un nouvel échantillon», il suffit
d’évaluer le signe de la nouvelle fonction de décision donnée par l’équation (3.12). Si
l’évaluation de cette fonction est positive pour la X <Y< classe et négative pour les autres on
conclut que » appartient à la classe X.
avec
» = ")& • F − ‖» −
‖» −
−
‖F
‖F 3.12
2
= ». » +
To
.−1
2
.−1
`
1
TTo
F
U SU
U
S
2
»−
T
.−1
1
`
S
+
1
.−1
1
SU
1
TT
F
U SU
S
1
S» +
.−1
S
F
`
`
T T o oS
U SU
S S
3.13
S
66
Optimisation de la séparabilité interclasses de la machine SVDD
2
• = 8. 8 +
To
.−1
−
Pour tout
2
.−1
8
U
` 1
TTo
F
S
U SU
∈ ^Ù,^Ù est
2
T
8 −
.−1
1
`
F
S
+
SU
1
.−1
S S
1
1
8 +
.−1
1
TT
F
S
U SU
F
`
`
T T o oS
U SU
S
S S 3.14 l’ensemble des vecteurs de support.
Ainsi, la méthode proposée construit une nouvelle hypersphère, en minimisant son rayon
et en maximisant la distance entre le centre de l’hypersphère en question et les hypersphères
précédentes. Il s’agit d’une méthode séquentielle, où un mauvais choix de la kéme classe lors de la
construction des hypersphères influence négativement toutes les prochaines et vise versa.
Pour réduire cette influence on procède dans l’ordre croissant de la variance des classes
car la classe ayant une variance élevée est plus susceptible de contenir des données aberrantes
[98]. L’expression de la variance dans l’espace de caractéristiques est donnée par :
1
Ù A = T‖ð
O
`
Ù A=
U
1
T æX
O
`
U
1
− P‖ .0‡P = T ð
O
`
F
,
−
SU
S
3.15
2
T X• , S Ž + T T X• S ,
O
`
SU
`
SU
`
U
Žé 3.16
3.2.2. Résultats obtenus sur des bases standards
Afin de tester la performance de notre approche en terme du taux de bonne classification,
nous avons procédé à un ensemble d’expériences sur des jeux de données de référence [75]. Dix
sept jeux de données ont été choisis, les résultats de la classification sont présentés dans la figure
3.2 et la figure 3.3. Dans toutes les expériences on fixe
et F à 100, et on utilise un noyau
RBF. On calcule le taux de reconnaissance pour les données d’entrainement et de test. Pour
évaluer la moyenne et l’écart type on répète l’expérience 20 fois avec les mêmes valeurs des
paramètres v et σ.
67
Optimisation de la séparabilité interclasses de la machine SVDD
Les étapes de l’évaluation de la méthode SVDD basée sur la maximisation de la séparabilité inter-sphères.
1.
Sélection d'une base de données parmi : SPECTF Heart, Ionosphere, Monks-1, Monks-2, Monks3, Iris, Teaching Assistant Evaluation, Wine, Connectionist Bench (Sonar, Mines vs. Rocks), Seeds,
Glass, Haberman, Vertebral Column, Ecoli, Liver Disorders, Breast Cancer Wisconsin et Balance
Scale.
2.
Génération de deux ensembles finis de valeurs réelles représentant respectivement le domaine de
variation de v et celui de σ.
3.
Choix d’un couple de valeurs ., Q à partir de ces deux ensembles.
4.
Décomposition aléatoire de la base sélectionnée en deux sous ensembles d'entrainement (80%) et
de test (20%) (voir annexe).
5.
Apprentissage par SVDD (les deux versions : SVDD conventionnel et SVDD proposé).
6.
Calcul du taux de reconnaissance pour les deux sous ensembles. Pour évaluer la moyenne et
l’écart type l’expérience sera répétée 20 fois depuis la quatrième étape.
7.
Répétition depuis la troisième étape pour d’autres couples ., Q .
(a)
(b)
68
Optimisation de la séparabilité interclasses de la machine SVDD
(c)
(d)
(e)
Figure 3.2 - Représentation du taux de reconnaissance relatif aux bases Spectif heart, Monks-1,
Monks-2, Monks-3, Ionosphere en fonction des valeurs de Q et .
(a)
69
Optimisation de la séparabilité interclasses de la machine SVDD
(b)
(c)
(d)
(e)
70
Optimisation de la séparabilité interclasses de la machine SVDD
(f)
(g)
(h)
(i)
71
Optimisation de la séparabilité interclasses de la machine SVDD
(j)
(k)
(l)
Figure 3.3 - Représentation du taux de reconnaissance et de l’écart type relatifs aux bases
standards en fonction des valeurs de Q et .
L’analyse du taux de reconnaissance moyen pour les jeux de données d'entraînement et de
test nous mène à organiser les résultats en trois groupes :
Le premier groupe contient 12 jeux de données (SPECTF Heart, Monks-1, Monks-2,
Monks-3, Ionosphere, Iris, Glass, Liver Disorders, Connectionist Bench, Wine, Haberman et
Breast Cancer Wisconsin), les résultats obtenus montrent que :
72
Optimisation de la séparabilité interclasses de la machine SVDD
− Pour l'ensemble de données d’entrainement, on observe généralement que le taux de
reconnaissance commence par une valeur maximale de 100% (le sur-apprentissage) et
diminue au fur et à mesure que la valeur de Q augmente, sauf pour les deux bases
d’apprentissage Iris et SPECTF Heart où le taux de reconnaissance reste égal à 100 %
quelque soit la valeur de Q. On constate aussi que le taux de reconnaissance relatif à la
nouvelle approche est le même ou meilleur que celui du SVDD conventionnel.
− Pour l'ensemble de données de test, on remarque que : En général, le taux de
reconnaissance s’améliore au fur et à mesure que la valeur de σ augmente jusqu'à un taux
maximal pour chacune des bases : SPECTF Heart (58%), Monks-1(64%), Monks-2
(60%), Monks-3(75%), Ionosphere(65%), Iris(68%), Glass(40%), Liver Disorders (25%),
Connectionist Bench (52%), Wine (60%), Haberman (33%) et Breast Cancer Wisconsin
(20%). On remarque aussi que le taux de reconnaissance de la nouvelle méthode, pour les
différentes valeurs du paramètre . est meilleur que celui du SVDD conventionnel quelque
soit la valeur deQ. Par exemple dans le cas de la base de test Monk-2 avec Q = 1.6 le
taux de reconnaissance est de l’ordre de 58% pour . = 0.2, 59% pour . = 0.6 et 60% pour
. = 0.9 et qui reste supérieur à 57% donné par SVDD conventionnel.
Le second groupe contient trois jeux de données (Ecoli, Balance Scale et Vertebral
Column), les résultats obtenus montrent que :
− Pour l'ensemble de données d’entrainement, on constate que la méthode proposée
commence avec les mêmes performances que SVDD conventionnel. Au delà de certaines
valeurs deQ qui sont égales à 0.23, 0.8 et 8 et qui correspondent respectivement aux bases
Ecoli, Balance Scale et Vertebral Column le taux de reconnaissance relatif à notre
approche se dégrade plus que celui donné par SVDD conventionnel,
− Pour l'ensemble de données de test, on remarque que l'approche proposée dépasse SVDD
conventionnel et donne des taux de reconnaissance qui sont égaux à 39%, 33% et 60%
contre 38%, 30%, et 58%. Ce qui indique la bonne capacité de généralisation de notre
méthode.
Le troisième groupe contient Teaching Assistant Evaluation et Seeds. Nous remarquons
que le taux de reconnaissance obtenu par notre approche est relativement inférieur à celui produit
par le SVDD conventionnel.
En observant les résultats obtenus, il apparaît que dans la majorité des cas la méthode
proposée dépasse le SVDD conventionnel en termes d’amélioration du taux de reconnaissance et
de la capacité de généralisation.
3.3. Contrôle des volumes des sphères minimales
Le principe du classifieur SVDD est d’englober le plus possible de données positives dans
une hypersphère minimale de centre et de rayon • tout en rejetant le maximum de données
73
Optimisation de la séparabilité interclasses de la machine SVDD
négatives à l’extérieur de cette hypersphère. Cette méthode automatique ne permet pas d’ajuster
le volume de l’hypersphère construite par ledit classifieur et par conséquent de contrôler la
frontière de décision entre les classes. On vise à offrir cette possibilité d’ajustement, en
introduisant dans le SVDD conventionnel un paramètre appelé positif et non nul, son rôle est
de contrôler le volume de l’hypersphère minimale, en cherchant un compromis entre
l’acceptation des données positives, et le rejet de celles négatives [177].
3.3.1. Introduction d’un paramètre de contrôle des volumes des sphères
minimales
Pour formaliser mathématiquement la méthode proposée, nous devons réécrire le problème
d’optimisation quadratique en introduisant le paramètre dans les contraintes. Pour simplifier les
calculs on adopte la même méthode mathématique utilisée pour les SVMs [114] [115].
Etant donné un ensemble de couples ^ (donnée, étiquette) de taille O défini comme
,
… ` , ` , avec ∈ ℝ© et
= 1 pour les données positives, et
= −1 pour
les données négatives. On cherche l’hypersphère minimale de centre et de rayon•, respectant
les contraintes suivantes :
^=
‖
‖
− ‖F ≤ • F − .
+ · # ∈ 1, . . , O .0‡
− ‖F ≥ • F − .
− · # ∈ 1, . . , O .0‡
= +1 3.17 = −1 3.18
Pour résoudre ce problème d’optimisation on introduit le Lagrangien:
y •, ·,
= •F +
`
`
T· −To
U
U
•F − ‖
− ‖F − .
`
− T · P 3.19 U
Les coefficientso# ≥ 0 et P ≥ 0 sont des multiplicateurs de Lagrange, un paramètre qui
permet de régler le taux d’erreur admissible dans la solution, et ∑`U · est le terme de pénalité.
Pour minimisery, on annule ses dérivées partielles par rapport à•, , · :
Ây
= 0 ⇒ To
•
`
U
= 1 3.20
Ây
= 0 ⇒ = To
3.21 Â
U
Ây
= 0 ⇒ o = − P 3.22 ·
`
La forme duale du problème d’optimisation est :
74
Optimisation de la séparabilité interclasses de la machine SVDD
O
O
]> #B#"0A ∶ y o = − T T o o
# W
[
[
#=1 W=1
# W # W
"'-"b0"‡'&nA #&n0"
\
[
[
Z
O
0 ≤ o# ≤ 0n T o#
#=1
#
O
+ T o# •
#=1
= 1
# # #
+ Ž
3.23 (
Dans le cas d’un problème multi-classes, afin de classifier un objet », on vérifie s’il est à
l’intérieur de l’hypersphère
, • associée à la classe k [51] [52] [58] [59] et construite durant
la phase d’apprentissage. La fonction de décision est donnée par :
» = ")& •F − ‖» −
‖F 3.24
Avec • est le rayon de la classe X, tel que :
•F = ‖
• =
F
8
8
−
8. 8
‖F +
`
− 2T
SU
8.
3.25 S 8 S oS
`
`
+ TT
U SU
S
So
oS +
8.
3.26 ∈ ^Ù, 8 ∈ −1,1 ,^Ù est l’ensemble des vecteurs de support ayant 0 < α <
sont respectivement le rayon et le centre de la X éY< classe.
, • et
Si l’évaluation de cette fonction est positive pour la kéme classe et négative pour toutes les autres
on conclut que » appartient à la classe X.
Afin de visualiser l’effet du paramètre , on applique la méthode proposée sur un jeu de
données artificielles contenant deux classes (Figure 3.4), en utilisant deux noyaux (polynomial et
Gaussien) paramétrés respectivement par ˆ et Q. La constante prend la valeur 1000.
Dans chaque test on fixe la valeur de ˆ ou Q, et on augmente progressivement la valeur de
en commençant par la valeur 0 qui coïncide avec le cas du SVDD conventionnel. Dans la figure
3.4 les couches colorées en niveau de gris du blanc au noir correspondent à l’augmentation de .
Les valeurs de relatives à chaque couche sont indiquées sur le tableau (3.1). On observe que les
couches générées suivent la forme de la distribution des données de chaque classe. Pour le noyau
RBF une petite modification de produit l’apparition de nouvelles couches, contrairement au
noyau polynomial. On remarque aussi que, quand prend de grandes valeurs les couches
relatives aux classes peuvent chevaucher se qui provoque des conflits de frontières entre les
classes.
75
Optimisation de la séparabilité interclasses de la machine SVDD
Figure 3.4 - Résultats de la classification d’un jeu de données par
SVDD en contrôlant les volumes des hypersphères
Table 3.1 - Les valeurs prises par le paramètre p en fonction du noyau utilisé
Type du noyau
Les valeurs de p
σ=1
0.00
0.02
0.04
0.06
0.08
1.00
Gaussian
σ=1.5
0.00
0.02
0.04
0.06
0.08
1.00
σ=2
0.00
0.02
0.04
0.06
0.08
1.00
d=1
0.00
0.10
0.20
0.30
0.40
0.50
Polynomial
d=2
d=3
0.00
0.00
150
1.103
300
5.103
450
1.104
600
5.104
750
1.105
3.3.2. Résultats obtenus sur des bases de référence
Pour montrer la pertinence de notre approche, on considère sept bases de données standards
[75] : Monks-1, Monks-2, Monks-3, Iris flowers, Wine, Glass et Ecoli. Les résultats de la
classification sont présentés dans les figures (3.5) et (3.6). Dans toutes les expériences on fixe C
à 1000, on utilise un noyau RBF et on calcule le taux de reconnaissance pour les données
d’entrainement et de test. Pour évaluer la moyenne et l’écart type on répète l’expérience 20 fois
avec les mêmes valeurs des paramètres p et σ.
76
Optimisation de la séparabilité interclasses de la machine SVDD
Les étapes de l’évaluation de la méthode SVDD basée sur le contrôle des volumes des sphères minimales.
1.
2.
Sélection d'une base de données parmi : Monks-1, Monks-2, Monks-3, Iris, Wine, Glass, Ecoli.
Génération de deux ensembles finis de valeurs réelles représentant respectivement le domaine de
variation de et celui de Q.
, Q à partir de ces deux ensembles.
3.
Choix d’un couple de valeurs
4.
Décomposition aléatoire de la base de données en deux sous ensembles d'entrainement (80%) et
de test (20%) (voir annexe).
5.
Apprentissage par SVDD (les deux versions : SVDD conventionnel et SVDD proposé).
6.
Calcul du taux de reconnaissance pour les deux sous ensembles. Pour évaluer la moyenne et
l’écart type l’expérience sera répétée 20 fois depuis la quatrième étape.
7.
Répétition depuis la troisième étape pour d’autres couples
,Q .
Figure 3.5 - Représentation du taux de reconnaissance relatif aux bases Monks1, Monks-2,
Monks-3 en fonction des valeurs de Q et
77
Optimisation de la séparabilité interclasses de la machine SVDD
Figure 3.6 - Représentation du taux de reconnaissance et de l’écart type relatifs aux bases
Iris, Wine, Glass, et Ecoli en fonction des valeurs de Q et
Les résultats de la classification des bases d’entrainement de Monks-1, Monks-2, Monks-3,
Iris, Wine, Glass, et Ecoli ne sont pas représentés graphiquement car ils donnent tous le même
résultat (100%).
Les résultats des sept expériences montrent que :
-
-
Pour une valeur fixe de : lorsque la valeur de Q augmente, le taux de reconnaissance
augmente aussi jusqu’à une valeur maximale pour chacune des bases : Monks-1(92%),
Monks-2(81%), Monks-3(91%), Iris(92%), Wine(85%), Ecoli (59%) et Glass (56%).
Pour une valeur fixe de Q : le taux de reconnaissance augmente avec . Par exemple dans
le cas de la base Monk-3 avec Q =1.5 le taux de reconnaissance atteint 82%, 89% et 90%
pour des valeurs de égales à 0.03, 0.06 et 0.10.
Les expériences effectuées ont montré que l’approche proposée améliore considérablement la
capacité de généralisation du classifieur SVDD.
78
Optimisation de la séparabilité interclasses de la machine SVDD
3.4. SVDD avec une fonction de décision floue
3.4.1. Les fonctions de décision floues
Le principe de SVDD est d’englober le plus possible des données positives dans une
hypersphère minimale de centre et de rayon • tout en rejetant le maximum des données
négatives à l’extérieur de cette hypersphère.
Dans un problème multi-classes les hypersphères peuvent chevaucher, et par conséquent
conduire à un problème d’appartenance simultanée à plusieurs classes, lors de la classification
d’un nouvel élément se trouvant dans le volume d’intersection. Pour remédier à ce problème,
nous proposons une fonction de décision permettant d’affecter cet élément à une classe
convenable, en quantifiant son degré d’appartenance [61] [92] [234]. Cette fonction n'est utilisée
que dans les régions d’intersection entre les hypersphères, et peut être évaluée implicitement dans
un espace de caractéristiques via des fonctions noyaux.
Afin d’élaborer la nouvelle fonction de décision, on s’est inspiré de la notion de
l’appartenance floue [92], qui vise à améliorer l’efficacité de la classification. Dans ce contexte
Lin et Wang [93] ont proposé un prototype de SVM floue, où l'on affecte à chaque donnée un
degré d'appartenance à une classe. Abe et al. ont étudié les régions d’intersection [95] [96]
existantes dans les SVMs multi-classes et ont introduit des fonctions d'appartenance floue.
3.4.2. Les séparateurs à vaste marges floues
On se basant sur la théorie classique des séparateurs à vaste marge (SVMs), C.F Lin et S.D
Wang [93] ont proposé le modèle flou des SVMs (FSVMs). Dans sa version classique, chaque
échantillon est traité équitablement, c.-à-d. : chaque donnée est affectée entièrement à une des
deux classes. Cependant, dans plusieurs applications quelques éléments ne sont pas affectés
totalement à une des deux classes, et chaque point ne contribue pas de la même façon à la
construction des frontières de décision. Pour résoudre ce problème, une appartenance floue de
chaque exemple de la SVMs a été introduite [93]:
On suppose que l’ensemble des données d’apprentissage est :
^=
,
, " , # = 1, … , O Tel que
∈ ℝ© ,
∈ −1, +1 est l’étiquette de
et si est son degré d’appartenance
satisfaisant la condition Q ≤ " ≤ 1 , avec Q est une constante positive non nul et suffisamment
petite.
L’ensemble ^ peut se décomposer en deux classes
à
et
1
[91] :
à =
/ ∈ ^0n = +1
0n
1 =
/ ∈ ^0n = −1
79
Optimisation de la séparabilité interclasses de la machine SVDD
Dans le cas linéaire, Chun-Fu et al. [93] ont proposé un degré d’appartenance flou qui peut être
écrit sous la forme:
1−
‖
" =Ä
‖
1−
‖
à−
Aà +
‖
1−
A1 +
"#
"#
∈
∈
à
1
( 3.27 est une constante, suffisamment petite, et strictement positive pour éviter le cas si = 0, à et
à
et 1 , A à et A 1 sont respectivement les
1 sont respectivement les centres des deux classes
à
1
rayons des deux classes
et
. Les rayons sont donnés par les équations suivantes :
Où
A à = B ‖ à − ‖ .0‡ ∈ à
0n 3.28
A 1 = B ‖ − ‖ .0‡ ∈ 1
1
Dans le cas non linéaire, Xiufeng et al. [91] ont suggéré une extension des " dans un espace de
caractéristiques défini comme suit:
Soit ù
la fonction de projection de l’espace d’origine vers l’espace de caractéristiques, ùà et
ù1 sont respectivement les centres des classes à et 1 dans l’espace des caractéristiques [91]:
ùà =
1
T ù
&à
‰ ∈C
0n 3.29 1
ù1 =
T ù
&1
‰ ∈C
Où n+ et n- représentent respectivement le nombre des éléments existants dans les classes
1
.
Le rayon de
Aà = B
à
AàF = B
Le rayon de
A1 = B
A1F = B
1
à
et
peut être écrit sous la forme :
‖ùà − ù
|X
,
‖ .0‡
−
∈
à
2
1
T X• , S Ž + F T
&à
&à
2è ∈C
2è ∈C
T X• S ,
2D ∈C
Ž .0‡
∈
à
3.30 est d’une façon similaire défini par :
‖Φ1 − Φ x ‖ .0‡
|X
,
−
∈
2
T X• ,
&1
2è ∈C
1
SŽ
+
1
T
&F1
2è ∈C
T X
2D ∈C
S,
.0‡
∈
Le carré de la distance entre un élément
∈ à et le centre de la classe
caractéristiques est donné par la formule suivante :
1
3.31 à
dans l’espace des
80
Optimisation de la séparabilité interclasses de la machine SVDD
ˆ Fà = ‖ù
ˆFà = X
,
− ùà ‖F −
2
T X
&à
2è ∈C
,
S
+
1
T
&Fà
2è ∈C
T X
2D ∈C
S,
Par analogie, le carrée de la distance entre un élément
l’espace des caractéristiques se calcule comme suit:
ˆ F1 = ‖Φ
ˆ F1 = X
,
− Φ 1 ‖F −
2
T X
&1
2è ∈C
,
S
+
1
T
&F1
2è ∈C
T X
2D ∈C
3.32 ∈
S,
1
et le centre de la classe
3.33
1
dans
Finalement, le degré d’appartenance " dans l’espace de caractéristiques peut être écrit sous la
forme [91]:
" =
]1 − òˆ Fà ò⁄ AàF +
\
1 − òˆ F1 ò⁄ A1F +
Z
"#
"#
= +1
= −1
( 3.34 3.4.3. Exploitation de l’appartenance floue dans le SVDD
On propose de bénéficier de la fonction d’appartenance floue décrite précédemment, qui
améliore la performance des SVMs [91] [93] [97], en l’utilisant comme une nouvelle fonction de
décision pour SVDD. Le centre et le rayon dont il dépend cette fonction sont déterminés en
résolvant le Lagrangien (2.65), contrairement au FSVM qui les calcule en utilisant respectivement
le centre de gravité de la classe et la distance maximale entre les données d’apprentissage et ledit
centre.
Dans le cas linéaire la fonction proposée peut être écrite sous la forme:
" =1−
‖» − ‖
3.35 A +
Dans le cas non linéaire la fonction de décision est la suivante:
" =1−Ÿ
Où
‖» −
‖» − ‖F
3.36
A F+
est une constante, suffisamment petite, et strictement positive pour éviter le cas " = 0 .
‖ et A sont définis respectivement par les équations (2.71) et (2.72).
81
Optimisation de la séparabilité interclasses de la machine SVDD
Après avoir évalué les fonctions d’appartenance pour toutes les hypersphères dont » existe
simultanément, » est affecté à la classe qui vérifie :
A)B
" 3.37
Afin de visualiser le résultat de la classification par la méthode proposée, on exécute SVDD
sur deux classes, dont les données sont distribuées aléatoirement. Les fonctions noyaux
employées sont : le produit scalaire, le noyau gaussian avec Q = 2 , et le noyau polynomial avec
= 2. Les deux paramètres
et F sont fixés à 100.
On remarque dans la figure 3.7 que la fonction de décision standard, ne permet pas
d’identifier les éléments se trouvant dans l’intersection des deux classes (couleur bleu).
L’utilisation de la fonction de décision floue permet de classer les données se trouvant dans cet
espace, en les affectant à des classes convenables.
Figure 3.7 - Résultat de la classification d’un jeu de données artificielles par
les deux fonctions de décision standard et floue
3.4.4. Résultats obtenus sur des bases standards
Afin de tester la performance de notre approche en terme du taux de bonne classification,
nous avons procédé à un ensemble d’expériences sur des jeux de données standard [75]. Six
bases de données de référence ont été choisies, qui sont : Monks-1, Monks-2, Monks-3, Iris
flowers, Wine, et Glass. Les résultats de la classification sont représentés dans les figures (3.8)
et (3.9).
82
Optimisation de la séparabilité interclasses de la machine SVDD
Dans toutes les expériences on fixe = 100 , on utilise un noyau RBF et on adopte
l’approche un contre tous pour la décomposition multi-classes. On calcule le taux de
reconnaissance pour les données d’entrainement et de test. Pour évaluer la moyenne et l’écart
type on répète l’expérience 20 fois avec la même valeur du paramètre Q.
Les étapes de l’évaluation de la méthode SVDD avec une fonction de décision floue
1.
Sélection d'une base de données parmi : Monks-1, Monks-2, Monks-3, Iris, Wine, Glass.
2.
Génération d’un ensemble fini de valeurs réelles représentant le domaine de variation deQ.
3.
4.
Affectation d’une valeur au paramètre Q à partir de cet ensemble.
Décomposition aléatoire de la base de données en deux sous ensembles d'entrainement (80%) et
de test (20%) (voir annexe).
5.
Apprentissage par SVDD.
6.
Calcul du taux de reconnaissance pour les deux sous ensembles en utilisant les deux fonctions de
décision (standard et floue). Pour évaluer la moyenne et l’écart type l’expérience sera répétée 20
fois depuis la quatrième étape.
7.
Répétition depuis la troisième étape pour d’autres valeurs de Q.
83
Optimisation de la séparabilité interclasses de la machine SVDD
Figure 3.8 - Représentation du taux de reconnaissance relatif aux bases Monks-1, Monks-2,
Monks-3 en fonction des valeurs de σ pour les deux fonctions de décision standard et floue
Figure 3.9 - Représentation du taux de reconnaissance et de l’écart type pour les bases Iris,
Glass, Wine en fonction des valeurs de Q pour les deux fonctions de décision standard et floue
84
Optimisation de la séparabilité interclasses de la machine SVDD
Les deux figures (3.8) et (3.9) montrent que :
− Pour les bases d’entrainement : les deux fonctions de décision commencent avec des taux
de reconnaissance élevés qui arrivent approximativement à 100%, ce taux diminue avec
l’augmentation de Q.
− Pour les bases de test : l’utilisation de la fonction de décision floue avec le classifieur
SVDD a permet d’améliorer nettement le taux de reconnaissance relatif aux bases Iris,
Monks-1, Monks-2, Monks-3, Wine, et Glass qui atteint respectivement 88%, 72%, 59%
76%, 73%, et 45%. Par contre l’emploi de la fonction de décision standard a donné pour
les mêmes bases et dans le même ordre les taux maximums suivants : 71%, 63%, 55%,
74%, 43%, et 38%.
Généralement, on observe que l'écart-type relatif à la nouvelle fonction de décision est
inférieur à celui de la fonction de décision standard. A partir de ces expériences on peut conclure
que l’utilisation de la fonction de décision floue améliore considérablement la capacité de
généralisation du SVDD quelque soit la valeur de la largeur du noyau gaussien.
3.5. Conclusion
Nous avons présenté dans ce chapitre nos approches qui ont pour objectif l’amélioration
du classifieur SVDD, par l’optimisation de la séparabilité interclasses. Cet objectif a été atteint de
trois façons différentes à savoir la maximisation de la séparabilité entre les sphères minimales,
l’ajustement des volumes des sphères minimales, et l’introduction d’une nouvelle fonction de
décision floue.
Au cours de ce chapitre nous avons introduit une revue de littérature approfondie relative
à chaque méthode, nous avons étudié et modélisé mathématiquement chaque approche proposée,
et nous avons dressé un protocole expérimental réalisé sur des jeux de données artificielles.
Par ailleurs, pour évaluer la performance de classification des méthodes proposées nous
avons procédé à des tests sur des bases de référence. Les résultats expérimentaux ont prouvé que
les solutions proposées sont efficaces et performantes en termes de taux de bonne classification.
85
Chapitre IV
Paramétrage optimal
caractéristiques.
de
l’espace
des
4.1. Introduction
Ce chapitre présente trois nouvelles méthodes destinées à l’amélioration du classifieur
Support Vector Domain Description (SVDD), les deux premières ont pour objectif le
paramétrage optimal de l’espace de caractéristiques engendré par un noyau gaussien, leur
fondement mathématique est basé sur le principe de la discrimination (la maximisation de la
dispersion interclasses et la minimisation simultanée de la dispersion intraclasses) dans l’espace
de caractéristiques, ce qui permet de bien séparer des classes différentes, et par conséquent offrir
86
Paramétrage optimal de l’espace des caractéristiques.
à SVDD une représentation adéquate des données. La troisième approche vise à remédier au
problème des données incertaines (bruitées, aberrantes, etc.) qui faussent la surface de séparation
entre les classes et qui produisent des erreurs de classification. La résolution de ce problème est
effectuée en introduisant des coefficients de confiance permettant de mesurer le degré
d’appartenance de chaque donnée à une des classes.
4.2. Largeur optimale du noyau Gaussien et séparabilité
interclasses
4.2.1. Problème du choix des paramètres de la fonction noyau
La description de la classe cible dans le SVDD est donnée par une hypersphère dont le
volume est minimum contenant la plupart des données positives, et rejetant le maximum des
données négatives. Ceci ne peut se faire sans la possibilité de transformer implicitement l'espace
de représentation des données en un espace des caractéristiques dont la dimension est plus grande
en utilisant les fonctions noyaux [65, 66]. Cependant, il n'existe pas de méthodes théoriques
exactes pour déterminer une fonction noyau appropriée. En plus, il n'y a pas de moyen pour la
sélection d’une valeur adéquate du (des) paramètre (s) du noyau. Par conséquent, le choix d'un
noyau et/ou ces paramètres, qui est un problème de sélection de modèle [67], est essentiel pour
assurer une bonne performance puisque la structure géométrique des échantillons dans l’espace
des caractéristiques est déterminée par le noyau sélectionné.
L'approche la plus commune et fiable pour la sélection des paramètres d’un noyau est de
décider sur une série de paramètres, puis de faire une grille de recherche exhaustive [68] [69] sur
cette série pour trouver le meilleur réglage. Toutefois, ce type de recherche est local et sujette à
un optimum local. En outre, le réglage de l'intervalle de recherche est un problème. Un intervalle
de recherche trop large gaspille le temps de calcul, alors qu’un intervalle de recherche trop petit
pourrait rendre le résultat insatisfaisant. A côté de cette technique de la grille de recherche
communément adoptée, d'autres techniques sont utilisées dans les SVMs pour la recherche des
paramètres du noyau, ces techniques peuvent être classées en deux modèles "Filter" et
"Wrapper".
Les modèles dits "Filter" [70] utilisent des techniques statistiques, comme l'analyse en
composantes principales (ACP), l'analyse factorielle (FA), l'analyse en composantes
indépendantes (ICA), et l'analyse discriminante (DA). D’autres méthodes ont été développées en
se basant principalement sur les distances et les mesures de l'information. Chen et Hsieh [71] ont
présenté l’analyse sémantique latente (LSA), Gold et al. [72] ont développé une approche
bayésienne pour régler les valeurs des hyper-paramètres des SVMs. Chapelle et al. [73] ont
proposé un réglage automatique des paramètres multiples en appliquant l’ACP, Glasmachers et
al. [76] ont utilisé le rapport rayon-marge comme critère pour régler les paramètres du noyau des
SVMs. Xiong et al. [ 77 ] ont proposé d'optimiser une fonction noyau en maximisant une mesure
de séparabilité des classes définie comme le rapport entre la trace de la matrice de dispersion
interclasses et la trace de la matrice de dispersion intraclasses, qui correspond au critère de
séparabilité J4 [78] . Jie Wang et al. [79] ont proposé un algorithme d'optimisation du noyau en
87
Paramétrage optimal de l’espace des caractéristiques.
maximisant le critère de séparabilité des classes J1 [ 78 ] , défini comme étant la trace du rapport
entre la matrice de dispersion interclasses et la matrice de dispersion intraclasse, ce qui est
équivalent au critère utilisé dans l'analyse discriminante de Fisher [13] [78][80].
Les modèles dits ‘Wrapper’ [74] explorent l'espace des caractéristiques afin de trouver un
sous-ensemble optimal de paramètres. Ces modèles appliquent souvent des approches métaheuristiques pour aider à la recherche de l’espace de caractéristiques adéquat. Bien que les
approches méta-heuristiques soient lentes, elles produisent des résultats acceptables.
4.2.2. Formulation mathématique
L’objectif de SVDD est de trouver une hypersphère dont le rayon est minimal contenant la
plupart des éléments de la classe positive et excluant la majorité des éléments de la classe
négative. On peut remarquer aisément que l’utilisation de cette technique deviendra plus efficace
si les éléments de la classe positive sont proches entre eux, et en même temps les éléments de la
classe négative sont loin de ceux de la classe positive. Notre approche consiste à trouver un
espace de caractéristiques engendré par un noyau RBF dans lequel ces conditions soient vérifiées
[101].
Pour que les éléments de la classe positive soient proches entre eux, on minimise la variance
intraclasses définie comme :
. A1 =
1
T Tòù
2O O − 1
`
`
− ù• S Žò 4.1
F
S
Pour que les éléments de la classe négative soient éloignés de ceux de la classe positive, on
maximise simultanément la variance interclasses définie comme :
1
. Aà =
T T‖ù
O>
`
?
−ù
¨
¨
‖F 4.2 Dans les deux équations (4.1) et (4.2) les éléments de la classe positive sont numérotés
par les indices # et W et les éléments de la classe négative sont numérotés par l’indiceb. O et >
correspondent respectivement au nombre total des éléments de la classe positive et le nombre
total des éléments de la classe négative.
Pour satisfaire les deux contraintes associées aux deux termes (4.1) et (4.2) simultanément, on
maximise la formule suivante:
Q = o. . Aà − . . A1
o
=
T T‖Φ
O>
`
?
¨
−Φ
¨
‖F
−
2O O − 1
`
`
T TòΦ
S
− Φ• S Žò 4.3
F
88
Paramétrage optimal de l’espace des caractéristiques.
Le rôle des deux paramètres α et β est de régler le compromis entre la maximisation du premier
terme et la minimisation du second, de l’équation (4.3).
En introduisant le noyau RBF, l’équation (4.3) devient:
Q =2
) Q =
`
?
o
T T ´1 − 0
O>
`
¨
?
‖
o
Q
= −2
TT´
O>
ÂQ
La maximisation de
¨
³
−‖
− ¨ ‖F
0
Q‘
`
`
− ¨ ‖F
¶µ −
T T w1 − 0
2Q F
O O−1
³
−‖
S
`
`
ò
− ¨ ‖F
¶µ +
TTw
2Q F
O O−1
S
¼
−ò
− Sò
½x 4.4 2Q F
F
− Sò
0
Q‘
F
¼
−ò
− Sò
½x 4.5 2Q F
F
Q est effectuée par l’algorithme classique de la descente du gradient.
4.2.3. Résultats obtenus sur des bases standards
Afin de tester l’efficacité de l'algorithme proposé, on analyse le taux de reconnaissance
obtenu sur 6 bases standards [75], qui sont : Monks-1, Monks-2, Monks-3, Iris flowers, Wine et
Glass.
Dans toutes les expériences on fixe = 1000, on utilise un noyau RBF, on adopte l’approche
un contre tous. On calcule le taux de reconnaissance pour les données d’entrainement et de test.
Pour évaluer la moyenne et l’écart type on répète l’expérience 20 fois avec les même valeurs des
paramètres o et .
Les étapes de l’évaluation de la méthode SVDD avec noyau gaussien de largeur optimale(1)
1.
Sélection d’une base de données parmi : Monks-1, Monks-2, Monks-3, Iris, Wine et Glass.
2.
Décomposition aléatoire de la base de données en deux sous ensembles d'entrainement (80%) et de test
(20%) (voir annexe).
3.
Recherche des valeurs de Q : Après avoir fixé les valeurs de o et , on lance l’algorithme de descente de
gradient pour trouver la valeur optimale de Q pour chaque classe ;
4.
Apprentissage par SVDD : L’exécution de l’algorithme SVDD avec un noyau RBF dont le paramètre Q est
celui calculé dans l’étape précédente ;
5.
Evaluation du taux de reconnaissance.
Pour prouver l’efficacité de notre méthode on exécute l’algorithme SVDD sur les bases de
données Monks-1, Monks-2 et Monks-3 en utilisant un ensemble de valeurs discrètes de Q etQF ,
après on trace la variation du taux de reconnaissance en fonction de Q et QF , chaque Q est
associée à la iéme classe de la base de données.
89
Paramétrage optimal de l’espace des caractéristiques.
Table 4.1 - Taux de reconnaissance (%) pour les différentes bases de données,
en utilisant les valeurs optimales de σ
Jeux de
données
α
β
Monks-1
0.48
Monks-2
σ3
σ4
σ2
1.00
2.07
5.45
100
83.10
0.53
1.00
0.53
1.01
100
66.07
Monks-3
0.46
1.00
2.54
2.11
100
80.33
Iris
0.49
1.00
1.47
1.32
1.81
100
90.00
Wine
0.70
1.00
214.98
153.23
123.90
100
82.35
Glass
0.80
1.00
0.42
0.55
0.48
100
55.00
0.01
σ6
Taux de
reconnaissance
en %
Pour l’ensemble
de test
σ1
1.56
σ5
Taux de
reconnaissance
en %
pour l’ensemble
d’entrainement
1.48
90
Paramétrage optimal de l’espace des caractéristiques.
Figure 4.1 - Taux de reconnaissance de l’ensemble d’entrainement et l’ensemble de test,
relatifs aux bases de données Monks-1, Monks-2, Monks-3,
en fonction des valeurs de σ1 et σ2
Le tableau 4.1 montre les valeurs choisies pour les deux paramètres o et , les Q
optimales des noyaux RBF calculées par la méthode proposée, et les taux de reconnaissance des
ensembles d’entrainement et de test obtenus par le classifieur SVDD. D’après ce tableau on
remarque que :
-
Le taux de reconnaissance pour les six ensembles d’entrainement est égal à 100%, ce qui
signifie que lesdits ensembles ont été projetés dans un espace de caractéristiques
convenable, par conséquent la méthode proposée génère de bonnes valeurs deQ.
-
Le taux de reconnaissance pour les six ensembles de test, diffère d’un ensemble à l’autre,
il dépasse 80% pour les jeux de données Monks-1, Monks-3, Iris et Wine, il est égal à
66.07% pour Monks-2 et 55% pour Glass. Généralement, ces résultats montrent que
l’exécution du classifieur SVDD avec les Q optimales produit une bonne capacité de
généralisation.
La figure 4.1 représente la variation du taux de reconnaissance des jeux de données :
Monks-1, Monks-2, et Monks-3, selon les couples Q , QF qui varie dans
l’ensemble 0.4,0.8, . . ,4 e 0.4,0.8, . . ,4 . L’objectif derrière cette expérience est la recherche
exhaustive des valeurs optimales des paramètres Q , QF qui donnent les meilleurs taux de
reconnaissance obtenus par le classifieur SVDD. D’après la figure on observe que :
-
Les taux de reconnaissance des bases d’entrainement Monks-1, Monks-2, et Monks-3
varient respectivement dans les intervalles [93%, 100%], [78%, 100%] et [99.2%, 100%].
Les différences constatées entre les bornes de chaque intervalle montrent que les taux de
reconnaissance sont instables et dépendent des valeurs prises par Q et QF . Par contre, le
taux de reconnaissance obtenu par notre approche est de 100% pour les trois bases.
-
Le taux de reconnaissance des bases de test : Monks-1, Monks-2, et Monks-3 varient
respectivement dans les intervalles [30%, 90%], [40%, 76.5%] et [30%, 88%]. Malgré
que la borne supérieure des intervalles dépasse les résultats obtenus par la méthode
91
Paramétrage optimal de l’espace des caractéristiques.
proposée et qui sont : 83,10% 66,07% et 80,33% cette méthode souffre d’une grande
variance, traduite par la grande différence entre les bornes minimum et maximum de
chaque intervalle.
La réalisation d’expérience de la grille de recherche a demandé beaucoup de ressource
CPU à cause de l’exécution répétitive du classifieur SVDD, qui demande la résolution d’un
problème d’optimisation quadratique convexe sous contraintes, en outre l’intervalle {0.4, 0.8,…,
4} a été choisi à titre indicatif après avoir faire plusieurs tests sur d’autres intervalles.
D’après les expériences et les constatations ci-dessus on conclut que la recherche du
paramètre du noyau Gaussien par la méthode proposée offre des résultats satisfaisants en un
temps de calcul raisonnable.
4.3. Largeur
optimale
intercentres
du
noyau
Gaussien
et
distance
Une fonction noyau correspond à un produit scalaire dans un espace de caractéristiques,
souvent de grande dimension. Dans cet espace, manipulé implicitement, les méthodes linéaires
peuvent être mises en œuvre pour y trouver des régularités linéaires, correspondant à des
régularités non linéaires dans l’espace d’origine.
Les méthodes à noyaux en particulier le SVDD, permettent de trouver des fonctions de
décision non linéaires, en s’appuyant fondamentalement sur des méthodes linéaires. La
performance des méthodes à noyau dépend essentiellement du réglage des paramètres utilisés
[113], en particulier ceux du noyau. On propose une nouvelle approche pour la recherche
automatique des valeurs optimales de ces paramètres [102]. Elle est utilisée dans le cas d’une
classification binaire et est basée sur la maximisation de la distance entre les deux centres des
classes opposées et la minimisation simultanée de la somme des deux variances intra-classes.
4.3.1. Capacité de généralisation d’un modèle
La capacité de généralisation d'un modèle est son aptitude à prédire la classe d'un
échantillon qui n’appartient pas à l’ensemble d’entrainement. De nombreux indices peuvent être
utilisés pour évaluer la capacité de généralisation d’un modèle [7]. Par exemple, le processus
d’entrainement par la grille de recherche utilise le taux de validation pour mesurer la capacité de
généralisation d’un classifieur. Lorsque les données de validation ne sont pas disponibles, la
validation croisée k-fold peut être utilisée pour estimer la fiabilité d’un modèle [68].
D'autres indices qui permettent d'estimer la capacité de généralisation peuvent être utilisés,
par exemple Takahashi [99] a proposé le rapport entre le nombre de vecteurs de supports et les
données d'apprentissage comme indice. Phetkaew [100] a suggéré d'utiliser la marge des SVMs
pour identifier un mauvais classifieur, Wu et Wang [110] ont introduit un indice qui quantifie la
séparation de deux classes dans l'espace de caractéristiques, cet indice est calculé à base de la
distance inter-clusters
qui a été utilisé par Bezdek et Pal [111]. Pour un problème de
92
Paramétrage optimal de l’espace des caractéristiques.
classification non supervisée, Bezdek et Pal [111] ont introduit plusieurs mesures de distance
inter-clusters , qui sont :
eà , e1 = B#& ˆ
eà , e1 = B
F
eà , e1 =
‘
ˆ
à, 1 2 ∈
2 ∈
à, 1 2 ∈
2 ∈
1
T ˆ
bà b1
2 ∈
2 ∈
à, 1
eà , e1 = ˆ ̅à , ̅1 = ˆ ³
eà , e1 =
1
æ T ˆ
bà + b1
∑2
2 ∈
4.6 4.7 4.8
∈
bà
à , ̅1
à
,
∑2
∈
b1
+ T ˆ
2 ∈
à
¶ 4.9 1 , ̅à
é 4.10 Où eà et e1 sont respectivement la classe positive et celle négative, bà et b1 représentent
les tailles respectives de eà et e1, ̅ à et ̅ 1 sont respectivement les centres de eà et e1. , F
et ‘ sont la plus courte distance, la plus longue distance et la distance moyenne entre deux
échantillons provenant de différentes classes. est la distance entre deux centres de classes, et
est une combinaison de ‘ et .
4.3.2. Utilisation d’un nouveau indice de séparation
Notre objectif est de trouver un espace de caractéristiques induit par un noyau gaussien,
dans lequel les données de chaque classe sont bien séparées. Pour se faire, un nouvel indice de
séparation basé sur et sur la variance intra-classes est introduit.
Contrairement à l'approche mentionnée par K.P.Wu et S.D.Wang [7], qui utilise cet indice
pour évaluer la capacité de généralisation, nous allons l’utiliser pour rechercher une valeur
optimale du paramètre du noyau gaussien, en maximisant une fonction-objectif définie par
l’équation suivante :
1
+ Q =
Tù
O
1
− Tù
>
`
?
U
U
F
−
1
æ F T Tòù
O
`
`
S
1
− ù• S Žò + F T T‖ù
>
F
?
?
¨
−ù
¨
‖F é
4.11 β est un paramètre réel positif, utilisé pour contrôler les variances des deux classes. Après
remplacement du produit scalaire par le noyau gaussien, et le développement de l'équation (4.11),
on obtient le résultat suivant:
1ò 1
1+2
F á
+ Q =
T
T
e
OF
`
`
S
ò
á
1‖ 1
2
−
TTe F á
O>
`
?
‖á
1‖ 1
1+2
+
TTe F á
F
>
?
?
¨
‖á
−4 93
Paramétrage optimal de l’espace des caractéristiques.
1ò 1
1+2
F á
=
+
2.
T
T
e
æO
OF
`1
`
ò
S
á
é−
1‖ 1
2
TTe F á
O>
`
?
‖á
+
1‖ 1
1+2
¼> + 2. T T e F á
F
>
?1
?
¨
‖á
½ − 4 4.12 La dérivée de + Q par rapport à Q est définie par :
2 1+2
ˆ+ Q
=
ˆQ
OF
+
2 1+2
>F
`1
`
æT T
?1
?
¼T T
¨
S
‖
ò
‖
− S ò 1ò2‰ 12á èò
2
0 F!
TT
é−
‘
Q
O>
F
á
`
?
á
− ‖F 1‖2‰ 12á D ‖
F!
0
Q‘
á
"‖
− ¨ ‖F 1‖2D 12
F!á
0
½ 4.13 Q‘
La valeur optimale du paramètre du noyau peut être obtenue par l’équation (4.14) :
Q ∗ = A)B
Q
+ Q
Q
+ Ê
4.14
Le calcul de Q ∗ est effectué par la méthode du gradient, l'actualisation de Q pour minimiser la
fonction-objectif + Q est donnée par :
Où
=Q
;à
;
ˆ+
Î 4.15
ˆQ
est le taux d'apprentissage, et & est le pas d'itération.
La méthode proposée pour le calcul de Q ∗ se résume comme suit [102]:
Algorithme proposé pour le calcul de Q optimale
1.
2.
3.
4.
Choisir la valeur de . Régler le taux d’apprentissage , le nombre maximum d’itérationsO. Affecter à · une
valeur positive suffisamment petite non nulle
Initialiser le paramètre du noyau Q = Q
Actualiser la valeur de Q
si #Q
;à
−Q
;
;
â
et l’indice de l’itération n = 0.
en utilisant (4.15)
# < · ou & ≥ O arrêter sinon, incrémenter n ← n+1, et aller à l’étape 3
Avant de procéder aux expériences sur des bases de données réelles, nous commençons
par tester notre méthode sur deux ensembles artificiels; qui sont l’échiquier et la double spirale.
On fixe la valeur de à 0.03, puis on calcule pour les deux bases la valeur optimale de la largeur
du noyau Gaussien Q ∗ à l'aide de l’algorithme proposé, ensuite ces deux bases de données vont
être classées par l’algorithme SVDD avec = 200 etQ = Q ∗ .
On peut voir sur la figure 4.2 que les deux classes sont bien séparées. Plus précisément les
éléments correspondant à la première classe apparaissent en blanc, tandis que ceux correspondant
94
Paramétrage optimal de l’espace des caractéristiques.
à la deuxième classe apparaissent en gris. Nous remarquons également qu'il n'y a pas de
chevauchement entre les deux classes, et la coloration suit la répartition des données. Cela montre
que les données appartenant aux différentes classes sont projetéess avec succès dans un espac
espace de
caractéristiques approprié, ce qui indique implicitement le bon choix de la valeur de σ.
Figure 4.2- Résultat de la classification par SVDD des deux jeux de données
l’échiquier et le double-spirale,
double
avec σ optimalee
4.3.3. Résultats obtenus sur des bases standards
Afin de tester l’efficacité de l'algorithme proposé, on analyse le taux de reconnaissance obtenu
sur 6 jeux de données réelles
réel
[75], qui sont : Monks-1, Monks-2,
2, Monks-3,
Monk
Iris, Wine et
Ionosphere.
Dans toutes les expériences on fixe
fixe = 1000 , on utilise un noyau RBF, et on adopte
l’approche un contre tous. Onn calcule le taux de reconnaissance pour les données d’entrainement
et de test. Pour évaluer la moyenne et l’écart type on répètee l’expérience 20 fois avec la même
valeur du paramètre .
Les étapes de l’évaluation de la méthode SVDD avec noyau gaussien de largeur optimale (2):
(2)
1.
Sélection d'une base de données parmi : Monks-1, Monks-2, Monks-3, Iris, Wine,
Wine Ionosphere.
2.
Décomposition aléatoire de la base de données en deux sous ensembles d'entrainement (80%) et de test
(20%) (voir annexe).
3.
4.
5.
Recherche de la valeur de Q : Après avoir fixé la valeur de , on lance l’algorithme proposé pour trouver
la valeur optimale de Q pour chaque classe ;
Apprentissage par SVDD avec un noyau RBF dont le paramètre Q est
précédente ;
celui calculé dans l’étape
Calcul du taux de reconnaissance pour les deux sous ensembles. Pour évaluer la moyenne et l’écart type
l’expérience sera répétée 20 fois depuis la deuxième étape.
95
Paramétrage optimal de l’espace des caractéristiques.
Figure 4.3 - Représentation du taux de reconnaissance relatif aux bases Monks-1,
Monks-2, Monks-3 et Ionosphere en fonction des valeurs de
96
Paramétrage optimal de l’espace des caractéristiques.
Figure 4.4 - Représentation du taux de reconnaissance et de l’écart type
pour les bases Iris et Wine en fonction des valeurs de
Les figures (4.3) et (4.4) montrent la variation du taux de reconnaissance en fonction du
paramètre pour les six bases d’apprentissage. On constate que :
− Pour les bases d’entrainement le taux de reconnaissance est très satisfaisant (proche de
100%), ce qui prouve que la méthode proposée génère des valeurs optimales du
paramètreQ, est par conséquent projette les données dans un espace de caractéristiques
adéquat.
− Pour les bases de test : Monks-1, Monks-2, Monks-3, et Ionosphere le taux de
reconnaissance s’améliore au fur et à mesure que
augmente jusqu'à des valeurs
maximales correspondent respectivement aux : 90%, 65%, 86% et 74%. L’équation (4.11)
montre que la croissance de favorise la contribution des variances intra-classes, d’où la
nécessité de ce terme dans l’équation. Concernant les jeux de données Iris, et Wine on
remarque que le taux de reconnaissance est élevé et quasiment stable et il dépasse 80%.
En conclusion le bon réglage du paramètre permet de trouver des valeurs optimales de Q et par
conséquent améliorer le taux de reconnaissance.
4.4. SVDD avec coefficients de confiance
Une des hypothèses principales de l’algorithme SVDD est que les données de la base
d’apprentissage sont indépendantes et identiquement distribuées, par conséquent elles sont
97
Paramétrage optimal de l’espace des caractéristiques.
traitées équitablement, mais dans plusieurs applications réelles les données sont incertaines [194,
196, 211], parce qu’elles sont souvent sujettes au bruit, en plus des données aberrantes, qui sont
mal classées. L’incertitude dans la collection des données peut être dûe aux erreurs
d’échantillonnage, aux erreurs de modélisation, à l’imperfection des instruments servant à la
collecte des données, à la confusion dûe à l’incomplétude des données,…etc. L’existence des
données incertaines fausse la surface de séparation entre les classes ce qui produit des erreurs de
classification.
L’influence des données incertaines peut être réduite partiellement en choisissant un bon
compromis entre les erreurs de classification et la minimisation du volume de l’hypersphère
construite par SVDD. Ce compromis est traduit dans le classifieur SVDD par le réglage optimal
d’un paramètre de régularisation appelé . Une grande valeur de ce dernier impose une grande
pénalité sur les erreurs d’entrainement et donc réduit le nombre de données mal classées, et
produit une région de séparation étroite. Par contre, une petite valeur de génère plus de données
mal classées et donc une large marge [105].
Plusieurs approches ont été introduites pour réduire plus efficacement l’effet des données
incertaines. Lin et al. [8] [93] ont proposé les SVMs avec une fonction d’appartenance floue qui
assigne un poids à chaque exemple de la base d’apprentissage, Xiufeng Jiang et al. [91] ont
généralisé cette fonction floue en calculant sa valeur dans l’espace des caractéristiques à l’aide
des fonctions noyaux. Chu et Wu [200] ont présenté deux nouvelles méthodes pour calculer la
fonction d’appartenance on se basant sur la distribution géométrique des données d’entrainement.
Wang et al. [107] ont traité chaque exemple de la base d’apprentissage comme donnée des deux
classes positive et négative et introduit des coefficients de confiance basés sur les erreurs de
pondération bilatérale, ces coefficients expriment l’importance de chaque donnée dans un
problème de classification. Dans des travaux différents de Jayadeva et al. [201] et, Wang et
Chiang, [106] on trouve une fonction d’appartenance basée sur des mesures de similarité dans
des données multi-catégories. Une nouvelle technique a été proposée par Bo Liu et al. [196] pour
évaluer les coefficients de confiance du classifieur SVDD, elle utilise la distance entre les données
et le centre de leurs classes. Myungraee Cha et al. [204] ont assigné des poids aux échantillons
d’apprentissage en considérant la densité de distribution des données calculée par l’algorithme
des k plus proche voisins.
Dans cette optique, nous avons proposé une nouvelle méthode pour générer les coefficients
de confiance [104]. Cette méthode est basée sur l’algorithme des k plus proche voisins k-ppv.
Notre approche opère en deux étapes [204]. Tout d'abord les coefficients de confiance sont
générés, en utilisant l’algorithme k-ppv, ensuite, L’algorithme SVDD est appliqué avec ces
nouveaux coefficients.
98
Paramétrage optimal de l’espace des caractéristiques.
4.4.1. Génération des coefficients de confiance
Les coefficients de confiance ont pour objectif la réduction de l’effet négatif de données
incertaines. Ils mesurent le degré d’appartenance d’un exemple à une classe, donc s’il semble que
cet exemple appartient à ladite classe son coefficient de confiance augmente sinon il diminue.
Plusieurs fonctions ont été proposées pour générer de tels coefficients, par exemple Bo Liu
et al. [196] ont proposé une fonction définie dans l’espace de caractéristiques par la formule
suivante :
"
= 1−
òð
−
A$
$
ò
4.16 Tel que : ð
est la projection de l’exemple
centre des données de la classe:
$
=
1
Tð
O
`
dans l’espace de caractéristiques.
$
est le
4.17
U
A $ est la distance maximale entre le centre de la classe et les exemples d’apprentissage, calculée
à l’aide de la fonction noyau X . , . :
A$ = B
•òð
−
$
òŽ = B
%&X
,
−
1
TX
O
`
SU
,
S
+
1
TTX
OF
`
SU
`
U
S
,
' 4.18 On peut observer dans l’équation (4.16) que si est un exemple se trouvant à une distance
maximale du centre de la classe, alors la valeur de son coefficient de confiance sera nulle. Pour
éviter ce cas Bo Liu et al. [196] affectent à cet exemple le plus petit coefficient de confiance entre
tous les exemples.
Une autre approche pour évaluer les coefficients de confiance dans le SVDD a été proposée
par Myungraee Cha et al. [204] d’une part, et par Breunig M. M et al. [198] d’autre part. Ils ont
utilisé une mesure de densité calculée par l’algorithme de X plus proches voisins (k-ppv). Cette
mesure est donnée par la formule suivante:
ˆ
,
"
=
B
ˆ
∈`
ˆ
,
,
4.19
représente la distance entre un élément
et son kéme plus proche voisin.
Une autre méthode a été proposée par C.F. Lin et S.D. Wang [93], et X.G Zhang [97] pour
améliorer les SVMs conventionnelles. Elle fonctionne dans le cadre d’une classification binaire et
vise à associer une appartenance floue comme coefficient de confiance à chaque donnée. Elle est
définie comme suit:
99
Paramétrage optimal de l’espace des caractéristiques.
‖ à− ‖
# 1− à
A +
=Ä
‖ 1− ‖
1− 1
# A +
"
∈
∈
à
1
4.20 (
Où à et 1 sont deux classes différentes, à contient les exemples
étiquetés
positivement, 1 contient les éléments
étiquetés négativement,
et
à
1 dénotent
à
1
respectivement les centres des classes
et , Aà et A1 représentent respectivement les rayons
des classes à et 1 , δ > 0 est une constante pour éviter le cas "
= 0 . Cette fonction
d’appartenance a été généralisée au cas non linéaire par C.F. Lin et S.D. Wang [93].
Le calcul des coefficients de confiance moyennant notre méthode est effectué, en
décomposant un problème multi-classes en sous problèmes binaires, selon l’approche un contre
tous. Prenant le cas d’un exemple , si ce dernier possède des voisins positifs, c.-à-d. ceux qui
augmente
appartiennent à la même classe que lui, alors son coefficient de confiance "
proportionnellement au nombre desdits voisins, sinon il reste inchangé "
= 1 (Il est considéré
comme voisin de lui-même). Maintenant, si possède des voisins négatifs c.-à-d. ceux qui
appartiennent aux classes restantes (l’approche un contre tous), alors son "
augmente
proportionnellement au nombre de ces voisins négatifs, car cet élément est susceptible d'être un
vecteur de support (donnée importante).
Les voisins de sont déterminés en utilisant la distance maximale entre les données
d’une classe ‡ nommée∆ ‡ , et un paramètre de pondération > 0 .
Algorithme de calcul des coefficients de confiance
Soit ^ =
,…,
;
'ù
∈ ℝ© un ensemble de N données d’apprentissage. ^ est divisé en K classes ‡ , … , ‡
Choisir une distance ˆ#"n , de la table 4.2
Fixer les valeurs des paramètres , o,
Pour chaque classe ‡ :
Calculer∆ ‡ = B ,S rˆ#"n• , S Žs, où
Pour chaque exemple de ‡
& = 0
B = 0
Pour chaque exemple S de ^
Si rˆ#"n• ,
SŽ
Si •
S
appartiennent à la même classe‡ .
< . ∆ ‡ s alors
S
Fin si
Fin si
et
:
∈ ‡ Ž alors
& = & + 1
Sinon
B = B + 1
Fin pour
"
= o. & + . B
Fin pour
Fin pour
100
Paramétrage optimal de l’espace des caractéristiques.
Table 4.2 - Exemples des métriques utilisées dans les k-ppv
Métrique
Formule
™
ˆ#"n• , S Ž = &T•
Euclidienne
ˆ#"n• ,
Minkowski
SŽ
8U
= •∑8U #
™
8
−
S8 Ž
F
8
−
S8 #
Ž
ˆ#"n• , S Ž = * , S } 1
Σ la matrice de covariance.
Mahalanobis
ˆ#"n• , S Ž = ∑8U #
™
Manhattan
8
−
4.4.2. Utilisation des nouveaux coefficients de confiance
Dans le cas de SVDD mono-classe les coefficients de confiance "
comme suit, en tenant compte uniquement des données positives :
]
[
)
O
>#&#B#"0Ay •, · = •2 + É T "
\
^'-"b0"‡'&nA #&n0"
[
2
2
‖
‖
−
≤
•
+ ·# ·# ≥ 0,
Z #
#=1
#
·#
,
/)
S
S8 #
peuvent être introduits
( 4.21
# = 1, … , O
Avec γ un paramètre spécifiant le compromis entre le volume de l’hypersphère et les erreurs
de classification. Dans cette formule chaque élément contribue différemment dans la construction
du classifieur SVDD, on peut constater qu’une petite valeur de "
réduit l’effet de la variable
ressort · , et donc est traité comme moins important.
Pour résoudre ce problème le Lagrangien est introduit comme suit :
`
y = •F + É T "
U
`
· − T o •F + · − ‖
U
`
− ‖F − T P · 4.22
U
Avec o ≥ 0 et P ≥ 0 sont des multiplicateurs de Lagrange. Après annulation des dérivées
partielles du Lagrangien par rapport aux variables R, a et εi et réarrangement, le problème primal
se transforme en problème dual suivant:
101
Paramétrage optimal de l’espace des caractéristiques.
]
[
[
\
[
[0 ≤ o# ≤ "
Z
O
#B#"0Ay = T
>
#
2
# o#
#=1
O
O
− T T o# oW
^'-"b0"‡'&nA #&n0"
É, 0 ≤ oW ≤ "•
Les points ayant 0 < o < "
déterminent l’hypersphère minimale.
W
O
ŽÉ:.0‡#, W = 1, . . , O0n T
#=1
#
4.23 (
= 1
Ésont appelés des vecteurs de support, c’est eux qui
Quand les données négatives existent, le problème
suivante :
O
]>#&#B#"0Ay •, , · , · = •2 + É T "
# b
[
#
#=1
\
[
Z
# W
#=1 W=1
de SVDD peut s’écrire sous la forme
·# +
>
T"
b=1
souslescontraintes
≤ •2 + ·# # = 1, … , O·# ≥ 0
‖ # − ‖2
‖ b − ‖2 ≥ •2 + ·b b = 1, … , >·b ≥ 0
b
·b
4.24 (
Avec γ et δ sont des paramètres spécifiant le compromis entre les erreurs d’apprentissage et
le volume de l’hypersphère minimale. Les deux contraintes sont intégrées dans l’équation (4.24)
et les multiplicateurs de Lagrange o , o¨ , , ¨ sont introduits comme suit:
y •, , · , ·¨ , o , o¨ ,
`
T o [• F + · − ‖
U
Avec o ≥ 0, o¨ ≥ 0,
≥ 0,
,
¨
`
= • + ÉT"
F
U
?
− ‖F ] − T o¨ [‖
¨
¨U
≥ 0.
¨
?
· + T"
¨U
¨
`
·¨ − T
U
?
· −T
¨ ·¨ −
¨U
− ‖F − • F + ·¨ ] 4.25
Après annulation des dérivées partielles du Lagrangien par rapport aux variables R, a, εi et εl et
réarrangement, le problème primal se transforme en problème dual suivant :
] >
[
[
`
#B#"0Ay = T o
\
[
[0 ≤ o ≤ É. "
Z
U
?
− T o¨
¨U
¨ ¨
0n0 ≤ o¨ ≤ . "
`
`
− T T o oS
U SU
S
?
+ 2 T T oS o¨
souslescontraintes
¨
`
SU ¨U
S ¨
?
?
− T T o¨ oY
¨U YU
`
?
¨ Y
.0‡# = 1, … , O0nb = 1, … , >0n T o − T o¨ = 1
Les échantillons d’apprentissage ayant 0 < o < É. "
vecteurs de support.
, 0 < o¨ < . "
U
¨
( 4.26
¨U
sont appelés des
102
Paramétrage optimal de l’espace des caractéristiques.
4.4.3. Résultats obtenus sur des bases standards
Afin de tester l’efficacité de l'algorithme proposé, on analyse le taux de reconnaissance
obtenu sur 3 jeux de données réelles [75], qui sont : Monks-1, Monks-2, Monks-3. Pour
comparer la performance de SVDD conventionnel avec celle de la méthode proposée trois tests
ont été effectués.
L’objectif du premier test est de déterminer l’influence du paramètre δ sur le taux de
reconnaissance. Ce test consiste à affecter à δ des valeurs dans l’ensemble {0.0, 0.4, 0.8},
Lorsque δ = 0 l'influence des coefficients de confiance sera le même pour tous les échantillons ce
qui correspond à SVDD conventionnel. Le deuxième test évalue le taux de reconnaissance de
SVDD avec coefficients de confiance en utilisant la distance euclidienne et la distance de
Manhattan. Le troisième test vise à montrer l’effet des paramètres α et β, qui vont prendre des
valeurs dans l’ensemble {0.0, 0.5, 1.0}. Dans les trois expériences, le paramètre C = 0.1 et
Q ∈ {0.3, 0.4, . . ,3.0 .
L’algorithme du premier test utilisant SVDD avec coefficients de confiance (1) (variation de δ et σ)
1.
2.
Sélection d'une base de données parmi : Monks-1, Monks-2 et Monks-3.
Décomposition de la base de données en deux sous ensembles d'entrainement (80%) et de test (20%) (voir
annexe).
3. Fixation des valeurs des deux paramètres α=1 et β=1.
4. Affectation d’une valeur au paramètre δ dans l’intervalle {0.0, 0.4, 0.8}.
5. Affectation d’une valeur au paramètre σ dans l’intervalle {0.3, 0.4,..,3.0}.
6. Calcul des coefficients de confiance "
par l’algorithme proposé.
7. Apprentissage de la base d’entrainement par le classifieur SVDD pondéré par les"
.
8. Calcul du taux de reconnaissance en utilisant la distance de Manhattan.
9. Calcul du taux de reconnaissance en utilisant la distance Euclidienne.
10. Répétition depuis la cinquième étape pour chaque valeur de σ.
11. Répétition depuis la quatrième étape pour chaque valeur de δ.
L’algorithme du deuxième test utilisant SVDD avec coefficients de confiance (2) (variation de α et σ)
1.
2.
Sélection d'une base de données parmi : Monks-1, Monks-2, Monks-3.
Décomposition de la base de données en deux sous ensembles d'entrainement (80%) et de test (20%) (voir
annexe).
3. Fixation des valeurs des deux paramètres β=1 et δ=0.5.
4. Affectation d’une valeur au paramètre α dans l’intervalle {0.0, 0.5, 1.0}.
5. Affectation d’une valeur au paramètre σ dans l’intervalle {0.3, 0.4,..,3.0}.
6. Calcul des coefficients de confiance "
par l’algorithme proposé.
7. Apprentissage de la base d’entrainement par le classifieur SVDD pondéré par les"
.
8. Calcul du taux de reconnaissance en utilisant la distance Euclidienne.
9. Répétition depuis la cinquième étape pour chaque valeur de σ.
10. Répétition depuis la quatrième étape pour chaque valeur de α.
103
Paramétrage optimal de l’espace des caractéristiques.
L’algorithme du troisième test utilisant SVDD avec coefficients de confiance (3) (variation de β et σ)
1.
2.
Sélection d'une base de données parmi : Monks-1, Monks-2, Monks-3.
Décomposition de la base de données en deux sous ensembles d'entrainement (80%) et de test (20%) (voir
annexe).
3. Fixation des valeurs des deux paramètres α=1 et δ=0.5
4. Affectation d’une valeur au paramètre β dans l’intervalle {0.0, 0.5, 1.0}.
5. Affectation d’une valeur au paramètre σ dans l’intervalle {0.3, 0.4,..,3.0}.
par l’algorithme proposé.
6. Calcul des coefficients de confiance "
7. Apprentissage de la base d’entrainement par le classifieur SVDD pondéré par les"
.
8. Calcul du taux de reconnaissance en utilisant la distance Euclidienne.
9. Répétition depuis la cinquième étape pour chaque valeur de σ.
10. Répétition depuis la quatrième étape pour chaque valeur de β.
Figure 4.5 - Le taux de reconnaissance (%) selon les valeurs des paramètres δ et σ, en
utilisant la distance de Manhattan avec α=1 et β=1
104
Paramétrage optimal de l’espace des caractéristiques.
Figure 4.6 - Le taux de reconnaissance (%) selon les valeurs des paramètres δ et σ,
en utilisant la distance Euclidienne avec α=1 et β=1
105
Paramétrage optimal de l’espace des caractéristiques.
Figure 4.7 - Le taux de reconnaissance (%) selon les valeurs des paramètres α et σ,
en utilisant la distance Euclidienne avec β=1 et δ=0.5
106
Paramétrage optimal de l’espace des caractéristiques.
Figure 4.8 - Le taux de reconnaissance (%) selon les valeurs des paramètres β et σ,
en utilisant la distance Euclidienne avec α=1 et δ=0.5
D’après les deux figures 4.5 et 4.6 on peut constater que le taux de reconnaissance pour
l’ensemble d’entrainement, commence par une valeur maximale 100% et diminue au fur et à
mesure que la valeur de Q augmente. En plus, on observe que l’utilisation de δ avec une valeur
non nulle améliore considérablement le taux de reconnaissance. Pour l’ensemble de test le taux
de reconnaissance augmente avec la croissance σ et atteint les valeurs 66%, 57% et 76% qui
correspondent respectivement aux bases Monks-1, Monks-2 et Monks-3. On remarque aussi que
l’approche proposée ( = 0.4 et 0.8) est plus performante que SVDD conventionnel ( =0)
quelque soit la valeur de Q.
Les figures 4.5 et 4.6 permettent aussi de faire une comparaison entre les distances
Euclidienne et Manhattan. On constate que l’utilisation de SVDD avec des coefficients de
confiance calculés par la distance de Manhattan, produit des taux de reconnaissance maximums
de l’ordre de 66% pour Monks-1, 57% pour Monks-2 et 76% pour Monks-3, ce qui dépasse
légèrement les taux relatifs à la distance Euclidienne qui aboutissent à 66% pour Monks-1, 55%
pour Monks-2 et 74% pour Monks-3.
Les figures 4.7 et 4.8 montrent l'effet des paramètres o et . En comparant les taux de
reconnaissance, on constate que le bon choix des valeurs de o et permet d'améliorer d’une
façon significative le taux de reconnaissance qui arrive à des valeurs de l’ordre de 57%, 57% et
75% relatives aux bases Monks-1, Monks-2 et Monks-3.
4.5. Conclusion
Dans ce chapitre, nous avons présenté trois solutions qui visent à remédier à certaines
limitations relatives au classifieur SVDD. Nous avons abordé le problème des données nonlinéairement séparables où le passage de l’espace d’origine à un espace des caractéristiques de
grande dimension s’avère essentiel, ce passage est effectué implicitement grâce aux fonctions
noyaux. Cependant, ces dernières possèdent des paramètres qui doivent être estimés avant
l’utilisation du SVDD et qui influencent grandement la performance de la classification. Dans ce
cadre nous avons proposé deux méthodes automatiques permettant de déterminer des valeurs
optimales desdits paramètres, ces méthodes sont employées dans le cas du noyau gaussien, elles
sont basées sur la maximisation de deux critères de séparabilité entre les sphères minimales. Nous
107
Paramétrage optimal de l’espace des caractéristiques.
avons abordé aussi la problématique des données bruitées, erronées ou aberrantes existant dans
les bases d’apprentissage. Ces données provoquent des erreurs de classification et réduisent
considérablement la capacité de généralisation d’un classifieur en particulier le SVDD. Dans ce
cadre nous avons proposé de résoudre ce problème en associant à chaque donnée d’apprentissage
un coefficient de confiance permettant d’exprimer son importance dans la construction des
surfaces de séparation entres les classes.
Afin d’évaluer la performance de classification, plusieurs tests sur des jeux de données
artificielles et sur d’autres réelles ont été effectués, les résultats expérimentaux ont prouvé que les
solutions proposées sont efficaces et performantes.
À la lumière des résultats prometteurs présentés dans le troisième et le quatrième chapitre,
nous allons évaluer les versions améliorées de SVDD dans le cas de certains problèmes
spécifiques, liés au domaine de la sécurité informatique, notamment le filtrage de pourriels et la
détection des virus informatiques.
108
Chapitre V
Classification et détection des spams et des
virus informatiques par SVDD
5.1. Introduction
Un système informatique est un élément absolument vital pour toute entreprise, dont la
saisie, le traitement, la transmission et le stockage de données sont des activités indispensables.
Compte tenu de l’ouverture des entreprises sur Internet, le partage des données avec des tiers, le
développement permanant d’outils informatiques, les risques d’atteinte à l’intégrité, à la
confidentialité et à la disponibilité des données constituent une menace croissante sur la
réputation et le fonctionnement de toute entreprise.
109
Classification et détection des spams et des virus informatiques par SVDD
Dans ce contexte, la sécurité des systèmes informatiques est devenue une discipline de
première importance, en particulier, concevoir un système qui permet de se protéger contre les
attaques des spams, des logiciels malveillants, des intrusions réseau, etc., est une tâche prioritaire.
Dans ce chapitre, nous allons présenter des applications de deux versions améliorées du
classifieur SVDD décrites dans les deux chapitres précédents, dont l’objectif est d’évaluer leurs
performances dans des cas pratiques de problèmes de sécurité informatique. La première
application concerne le filtrage anti-spam, elle vise à élaborer un système automatique capable de
distinguer entre les spams et les emails légitimes. La deuxième application s’intéresse à la
détection des logiciels malveillants, elle met en œuvre un système qui combine la méthode Ngramme pour l’extraction des informations pertinentes à partir des fichiers exécutables et une
version améliorée du classifeur SVDD pour la détection des logiciels malveillants.
5.2. Filtrage anti-spam par SVDD
Le courrier électronique est un moyen de transfert de messages rapide et pas cher. Il est
devenu une forme très répandue de communication en raison de la vulgarisation de l'Internet et
l'utilisation croissante des dispositifs mobiles intelligents. Ses applications varient d’une
communication basique à une plate-forme d'affaires indispensable. Cependant, un type de
courrier électronique non sollicité connu sous le nom de spam est apparu et il a causé des
problèmes majeurs, en apportant des dommages financiers aux entreprises et en ennuyant les
utilisateurs individuels.
Spam également appelé, courriel de masse non sollicité (UBE), courrier indésirable, ou
courriel commercial non sollicité (UCE) est l'abus de systèmes de messagerie pour envoyer des
messages électroniques non sollicités en grandes quantités, souvent avec un contenu
commercial, à des personnes avec lesquelles l'expéditeur n'a jamais eu de contact et dont les
adresses emails ont été prises d’une façon illégale. Il peut provenir de n'importe quel endroit dans
le monde où l'accès Internet est disponible (Figure 5.1).
Figure 5.1- Taux de spams (Décembre 2012 à Février 2013)
110
Classification et détection des spams et des virus informatiques par SVDD
Les spams provoquent des dégâts importants comme:
− Le remplissage des boites de réception des utilisateurs, ce qui provoque la saturation de
l'espace de stockage dans les serveurs de messagerie;
− La consommation de la bande passante des réseaux informatiques et de l’infrastructure
Internet;
− Le gaspillage de temps et d’efforts des utilisateurs en distinguant entre les messages
légitimes et les spams ;
− Le piratage des informations sensibles (mots de passe, numéros de carte de crédit, … etc.)
en imitant des demandes officielles envoyées par des autorités de confiance, comme les
administrations, les banques, … etc ;
− La propagation de toute une gamme de menaces comme les logiciels espions, les chevaux
de Troie, les logiciels publicitaires et les virus qui pourraient être involontairement
déclenchés en cliquant simplement sur un lien ou une pièce jointe contenue dans un
message de spam ;
− Les dégâts financiers et la violation des lois en diffusant des matières interdites.
− La mise en panne des serveurs de messagerie électronique;
De nombreuses solutions ont été proposées pour lutter contre les spams, ci-dessous quelquesunes:
− L’adoption d'une législation contre les spams, mais cette approche est limitée par le fait
que beaucoup de ces emails sont envoyés à partir de différents pays, en plus, il est
difficile de suivre les expéditeurs réels de spams;
− La création de listes blanches, elles contiennent les expéditeurs d'emails qui sont
approuvés pour envoyer des emails légitimes. Les emails envoyés par quelqu'un figurant
sur une liste blanche ne seront pas marqués comme spams, quelque soit leur contenu;
− L’utilisation de filtres anti-spam, bien que les spammeurs ont commencé à utiliser
plusieurs méthodes pour surmonter le filtrage comme : l’utilisation des adresses
d'expéditeurs aléatoires, l’ajout des caractères aléatoires au début ou à la fin de l'objet du
message, l’obscurcissement du texte dans le message de spam, l'insertion d'espaces ou de
mots aléatoires dans l'en-tête du message de spam;
− La détection des spams en adoptant des techniques de classification automatique tels que
les séparateurs à vaste marge, les réseaux de neurones, le classificateur bayésien naïf, les
k-plus proches voisins, … etc.
111
Classification et détection des spams et des virus informatiques par SVDD
Dans ce cadre, nous avons développé une nouvelle approche pour le filtrage anti-spam, basée
sur la quatrième solution précitée qui utilise des techniques de classification automatique. Notre
approche consiste à filtrer les spams en utilisant la combinaison de deux versions améliorées du
classifieur Support Vector Domain Description (SVDD), la première vise à ajuster les volumes
des sphères minimales construites par SVDD, [177], la deuxième a pour objectif le remplacement
de la fonction de décision communément utilisée dans le SVDD par une nouvelle fonction floue
[61].
5.2.1. Méthodes de classification automatique des spams
Dans la littérature, de nombreuses approches basées sur le concept de la classification
automatique ont été proposées pour le filtrage anti-spam. H. Drucker et al. [215] ont utilisé les
séparateurs à vaste marge (SVMs) pour classer les emails, ils ont comparé la performance des
SVMs contre trois algorithmes de classification (Ripper, Rocchio et les arbres de décision). B.
Cui et al. [202] ont proposé un modèle de classification des emails basé sur les réseaux de
neurones en réduisant préalablement la dimension des données d’entrée à l’aide de l'analyse en
composantes principales (ACP). Dans deux travaux différents, Pantel et Lin [23] et Sahami et al.
[56] ont employé le classifieur bayésien naïf pour le filtrage anti-spam, Sahami et al. n’ont retenu
pour l’opération de classification, que les 500 mots les plus significatifs de chaque email, ils ont
constaté que la classification binaire (email légitime contre spam) était plus efficace que celle
multi-classes basée sur la catégorie détaillée de l’email. X. Carreras et al. [25] ont utilisé
Boosting Trees pour le filtrage anti-spam, AG López-Herrera et al. [109] ont développé un
algorithme évolutionniste multi-objectifs pour filtrer les spams. A. Hotho et al. [108] et T.
Fawcett [133] ont filtré les spams grâce aux techniques d’extraction de connaissances à partir de
données (data mining). T. Oda et al. [1] et J. Chen et al. [206] ont élaboré des méthodes antispam inspirées du système immunitaire artificiel en faisant l’analogie entre les spams et les
agents pathogènes.
5.2.2. Approche proposée pour la classification des spams
Dans ce travail, nous avons proposé une méthode de filtrage anti-spam basée sur le concept
de l’apprentissage automatique, il s’agit de la combinaison de deux versions du classifieur SVDD
[16], la première est utilisée dans l’étape d’entrainement de la base d’apprentissage, elle génère
les multiplicateurs de Lagrange associés au problème de classification, la seconde est employée
dans l’étape de distinction entre les emails (spam ou légitime), elle exploite lesdits
multiplicateurs pour concevoir une nouvelle fonction de décision floue.
L’étape d’entrainement de la base d’apprentissage est effectuée par la méthode SSPVSVDD [177], il s’agit d’une version du SVDD qui permet d’ajuster les volumes des sphères
minimales associées aux différentes classes d’une base d’apprentissage, et par conséquent de
contrôler les frontières de séparation entre les classes. L’ajustement des volumes des sphères est
réalisé moyennant un paramètre de régularisation introduit dans SVDD. Ce paramètre permet de
faire un compromis entre l’acceptation des données positives, et le rejet des données négatives.
112
Classification et détection des spams et des virus informatiques par SVDD
L’étape d’identification du type d’email est réalisée par une nouvelle fonction de décision
floue [61], cette fonction a pour objectif la résolution du problème de chevauchement entre les
sphères minimales construites par SVDD, ledit problème provoque un conflit (appartenance
simultanée à plusieurs classes) lors de la classification d’un élément se trouvant à l’intérieur du
chevauchement ce qui réduit le pouvoir séparateur du classifieur. Cette nouvelle fonction permet
d’affecter chaque élément à une classe convenable, en quantifiant son degré d’appartenance.
5.2.3. Résultats obtenus sur une base standard de spams
Pour tester la performance de la méthode, nous avons employé un jeu de données de
référence [75], il contient 4601 emails chacun est représenté par 58 attributs dont les 57 premiers
ont des valeurs réelles qui représentent les fréquences en pourcentage des mots et des lettres dans
le contenu du message et le dernier a une valeur binaire indiquant le type d’email. Le jeu de
données est composé de deux types d’emails: 1813 spams et 2788 légitimes.
L’apprentissage d’un jeu de données par le classifieur SVDD nécessite la résolution d’un
problème d’optimisation quadratique QP sous contraintes, dont la complexité temporelle et
spatiale est importante, ce qui le rend difficile à s’exécuter sur de grandes bases de données, telle
que la base de spams (4601 échantillons). Pour surmonter cette limitation, on propose de
bénéficier de l’algorithme appelé optimisation séquentielle minimale (SMO). L’algorithme SMO
développé par J. Platt [174] permet de résoudre rapidement et efficacement un problème de
programmation quadratique sous contraintes. Il s’agit d’un algorithme de décomposition dont
l’idée principale est d’optimiser à chaque étape un sous ensemble réduit de données du
problème. SMO peut être perçu comme le cas extrême des méthodes de décomposition car le
sous ensemble à optimiser est constitué uniquement de deux variables (des multiplicateurs de
Lagrange). La résolution du QP est analytique et ne nécessite pas de stockage de la matrice de
données en mémoire ce qui représente un avantage majeur dans le cas des bases de grande taille.
A chaque étape, l’algorithme SMO effectue les opérations suivantes :
-
Il choisit le bon couple de variables o , oF à optimiser en se basant sur des heuristiques
utilisant les conditions de KKT;
-
Il détermine les valeurs optimales de ces deux variables tout en gardant les autres fixes ;
-
Il met à jour le vecteur solution
d’entrainement).
o = o , oF , … , o` ) ( O est la taille de la base
SMO dans le cas des SVMs
Le problème d’optimisation quadratique QP dans le cas de SVMs s’écrit sous la forme suivante :
113
Classification et détection des spams et des virus informatiques par SVDD
>
1
#B#"0Ay o) = T o − T T o oS
2
`
`
^'-"b0"‡'&nA #&n0" T o
U
U
`
`
U SU
S X•
, SŽ
= 00n0 ≤ o ≤ , # = 1, . . , O
5.1
Et pour toute observation de test », la fonction de décision s’ècrit :
`
= ")& ¼T
U
oX
, » + ½ 5.2
SMO optimise à chaque itération deux multiplicateurs de Lagrange, ces derniers doivent
satisfaire toutes les contraintes du problème qui sont :
-
Les contraintes d'inégalité ou de boîte qui imposent que les deux multiplicateurs de
Lagrange après l’optimisation doivent rester à l’intérieur de l’intervalle [0, C].
-
La contrainte d'égalité qui impose une relation linéaire entre les deux multiplicateurs de
Lagrange optimisés.
Par conséquent, une étape du SMO doit trouver un optimum de la fonction objectif sur un
segment de ligne diagonale (Figure 5.2).
Figure 5.2- Les contraintes que doivent satisfaire les deux multiplicateurs de Lagrange
dans chaque étape d’optimisation
La figure 5.2 montre que oF doit satisfaire les conditions suivantes :
y ≤ oF ≤ 4
Avec
y=B
y=B
0, oFª¨© − o ª¨© 0n4 = B#& , + oFª¨© − o ª¨© "#
0, oFª¨© + o ª¨© − 0n4 = B#& , oFª¨© + o ª¨© "#
≠
=
F
F
5.3
114
Classification et détection des spams et des virus informatiques par SVDD
Les bornes y et 4 ainsi déterminées permettent de réévaluer la valeur de oF après avoir
appliqué la formule ci-dessous, découlant de la maximisation de la fonction y o , oF ):
oF;<= = oFª¨© −
, =
−
ª¨©
F
, − ,F )
5.4)
# = 1, … , O0n = 2X
,
F
−X
,
−X
F, F
5.5
Et la réévaluation de la valeur de oF se fait en se basant sur l’équation suivante :
∗
oF;<=
4"#oF;<= ≥ 4
= | oF;<= "#y < oF;<= < 4 5.6 (
y"#oF;<= ≤ y
Après avoir déterminéoF le calcul de o est effectué en utilisant la contrainte linéaire :
o ;<= +
;<= ∗
F oF
=
o ª¨© +
ª¨©
F oF 5.7
et on en déduit alors que :
o ;<= = o ª¨© + "•oFª¨© − oF;<= Ž
5.8
.0‡" =
F
∗
SMO dans le cas de SSPV-SVDD
La résolution du problème d’optimisation quadratique QP dans le cas du classifieur
SSPV-SVDD se fait de la même manière que SVMs en considérant le problème suivant :
>
`
`
#B#"0Ay o = − T T o oS
U SU
S
`
S
`
+To
+
U
Souslescontraintes0 ≤ o ≤ 0n T o
= 1# = 1, … , O
U
5.9
Et pour toute observation de test », la fonction de décision s’écrit :
`
» = • − æ». » − 2 T o
F
U
`
`
» +TT
U SU
S
So
oS é 5.10
Les bornes y et 4 se calcule de la même façon que pour les SVMs. La valeur optimale de oF est
donnée par l’équation suivante :
oF;<= = oFª¨© −
, =
ª¨©
−
F
, − ,F
"−1
+
5.11
2
2
# = 1, . . , O0n = 2X , F − X ,
− X F , F 5.12
115
Classification et détection des spams et des virus informatiques par SVDD
La réévaluation de la valeur de oF;<= et l’évaluation de o ;<= sont effectuées de la même manière
que pour les SVMs.
∗
Algorithme de classification des spams par SSPV-SVDD :
1.
Générer deux ensembles finis de valeurs réelles représentant respectivement le domaine de variation de
et celui de Q.
∗
, Q ∗ ) à partir de ces deux ensembles.
2.
Choisir un couple de valeurs
3.
Décomposer aléatoirement de la base des emails en deux sous ensembles d'entrainement (80%) et de
test (20%).
a.
b.
Exécuter SSPV-SVDD en utilisant = ∗ et Q = Q ∗ avec la fonction de décision conventionnelle.
Exécuter SSPV-SVDD en utilisant = ∗ et Q = Q ∗ avec la fonction de décision floue.
4.
Calculer et stocker les taux de reconnaissance pour les deux sous-ensembles, et répéter l'expérience 20
fois pour les autres sous-ensembles en partant de la troisième étape.
5.
Calculer la moyenne des taux de reconnaissance et l'écart-type pour le couple
6.
Aller à l’étape 2 pour d’autres valeurs de et Q .
∗
, Q∗)
Dans toutes les expériences, le paramètre de régularisation prend la valeur 1, la largeur
du noyau Gaussien Qvarie dans l’ensemble {1, 2, 3, 4, 5}, et le paramètre est égal à 0.01. Afin
d’évaluer le taux moyen de reconnaissance et l’écart type, on décompose aléatoirement la base
d’emails en 20 sous-ensembles, chacun d’eux contient 80% des emails légitimes et 80% des
spams pour l’entrainement et les emails restants de chaque type sont réservés aux tests.
Figure 5.3 – Taux de reconnaissance d’emails par SVDD et SSPV-SVDD
116
Classification et détection des spams et des virus informatiques par SVDD
Figure 5.4 - Taux de reconnaissance d’emails par SSPV-SVDD en utilisant
les fonctions de décision standard et floue
La première expérience (Figure 5.3) compare les taux de reconnaissance des deux classifieurs
SVDD conventionnel et SSPV-SVDD, selon les valeurs prises parQ. La figure est divisée en
deux parties:
− La partie de gauche concerne l’apprentissage des données d’entrainement, on remarque
que le SVDD conventionnel donne un taux de reconnaissance qui varie entre 62% à 83%.
Lors de l'exécution du SSPV-SVDD ce taux augmente considérablement et tend vers une
moyenne supérieure à 97%. Nous concluons que SSPV-SVDD apprend
approximativement toutes les données d’entrainement. En plus, il est stable car il ne varie
pratiquement pas avecQ.
− La partie de droite correspond aux données de test, elle montre la capacité de
généralisation des deux classifieurs. Nous observons que le taux moyen de bonne
classification augmente avecQ, jusqu'à une valeur maximale (60% pour SSPV-SVDD
contre 32% pour SVDD conventionnel). Ce résultat montre que SSPV-SVDD surpasse
SVDD dans la détection de nouveaux spams.
Dans la deuxième expérience (Figure 5.4), nous visons à améliorer la méthode SSPV-SVDD
en introduisant la fonction de décision floue. La figure peut être divisée en deux parties:
− La première de gauche montre que le taux moyen de reconnaissance s’améliore lorsque
nous utilisons la fonction de décision floue. Il atteint 100% quelque soit la valeur deQ.
− La deuxième de droite montre que le taux moyen de reconnaissance augmente au fûr et à
mesure que la valeur de Q croit, jusqu'à une valeur maximale de 80%.
Ces expériences montrent que SSPV-SVDD avec la fonction de décision floue, produit un
taux de reconnaissance élevé avec une bonne capacité de généralisation.
117
Classification et détection des spams et des virus informatiques par SVDD
5.3. Détection des logiciels malveillants par N-grammes et
SVDD
Un virus informatique est un programme malveillant destiné à désactiver ou à
endommager des systèmes informatiques, il s’agit d’un terme initialement introduit par Cohen
[169] et qui peut être défini selon McGraw et Morisett [168] comme tout code ajouté, modifié ou
supprimé d'un logiciel pour causer volontairement des dégâts ou pour contourner la fonctionnalité
d’un système cible. D'autres définitions ont été proposées par des sociétés productrices de
logiciels antivirus, qui décrivent les logiciels malveillants comme tout programme destiné à
supprimer, bloquer, modifier ou copier des données, perturber les performances des ordinateurs
ou des réseaux informatiques. En se basant sur leurs actions particulières, les logiciels
malveillants peuvent être classés en familles et sous-familles qui peuvent se chevaucher. On cite
ci-dessous quelques familles des programmes malveillants :
− Virus informatique: le virus informatique est la forme la plus classique et la plus courante
des programmes malveillants qui existe depuis le début de l’informatique. Il s’agit d’un
programme capable de dupliquer son propre code en s’attachant à d'autres programmes ou
fichiers de données de façon à ce que le code du virus sera exécuté quand le fichier infecté
est activé. Les virus informatiques exécutent des tâches destructives en partant de
l’affichage de simples messages relativement inoffensifs à la destruction complète des
programmes et des données importantes.
− Ver informatique: Un ver informatique est un programme malveillant auto-réplicatif et
entièrement fonctionnel. Contrairement au virus, le ver exploite souvent le réseau local ou
la connexion Internet pour se diffuser sans avoir le besoin de s’attacher à un fichier
exécutable ou à un document. Quand un ver trouve un nouvel hôte, il se duplique à
l’intérieur de ce dernier et continue à chercher d'autres, le mécanisme de réplication est
exécuté indéfiniment ou jusqu'à l’exécution d’un processus d'arrêt.
− Cheval de Troie: Un cheval de Troie est un programme malveillant qui semble remplir
une fonction légitime, mais discrètement exerce des activités nuisibles. Contrairement aux
virus et aux vers, les chevaux de Troie ne se dupliquent pas. Une fois activé un cheval de
Troie exécute des tâches destructives, comme le vol d'identité, la destruction des données,
l'accès à distance, etc.
− Spyware: Un Spyware est un type de logiciel malveillant qui capture des informations
relatives aux utilisateurs ou autrement prend le contrôle des ressources du système
informatique sans connaissance ou consentement de l'utilisateur. Les spywares peuvent
être introduits dans un ordinateur de plusieurs manières discrètes, par exemple lors de
l’installation d'un nouvel programme ou lors de l’infection par un virus informatique.
− Adware: Un Adware est toute application logicielle dans laquelle des bannières
publicitaires telle que les pop-ups ou des liens Web sont affichés quand un programme est
en cours d'exécution. Comme les logiciels espions, l’Adware est une nuisance pour les
118
Classification et détection des spams et des virus informatiques par SVDD
utilisateurs. Il est généralement utilisé pour diffuser des publicités fournissant un certain
type de bénéfice financier à l'attaquant. L’Adware ne provoque habituellement pas de
dommages intenses aux ordinateurs. Cependant, il peut les rendre inopérables.
− Rootkit: Un Rootkit est un programme malveillant spécial et particulièrement dangereux
permettant à l'attaquant de contrôler un système infecté. Les rootkits sont extrêmement
difficiles à détecter et éradiquer, car ils sont généralement installés dans les ressources du
système de bas niveau. Pour cette raison, les rootkits sont souvent indétectables par les
anti-virus classiques.
De nombreux facteurs favorisent la propagation des logiciels malveillants tels que
l’expansion d’Internet et des réseaux sociaux, l’utilisation croissante des dispositifs intelligents
(Smartphones, tablette,…), l’échange et l’utilisation non protégée des médias de stockage, etc.
Les logiciels malveillants provoquent des dommages intenses aux systèmes informatiques et aux
individus, des statistiques ont montré que plus de 390 000 nouveaux programmes malveillants
apparaissent chaque jour [166]. Dans le même contexte un rapport publié récemment [167]
indique que le nombre de logiciels malveillants et indésirables peut être supérieur à celui des
logiciels légitimes.
La détection des logiciels malveillants est devenue l'une des principales préoccupations de
la recherche dans le domaine de la sécurité informatique. L’approche traditionnelle de la
détection des logiciels malveillants connus est basée sur la signature virale qui est utilisée par la
majorité des produits antivirus commerciaux. Cette méthode souffre de plusieurs limitations
comme, l’obfuscation, le déplacement, la compression et le cryptage du code viral, effectués par
les auteurs de ce type de logiciels pour surmonter l’efficacité de la signature virale. En plus,
obtenir la signature des programmes malveillants connus signifie que des systèmes informatiques
ont été déjà infectés. En outre, l'augmentation du nombre des programmes malveillants connus
implique la croissance de la taille de la base des signatures virales et par conséquent
l’augmentation du temps de recherche et de vérification d’une signature relative à un programme
suspect.
Afin de détecter les nouveaux programmes malveillants dont on ne possède pas de
signatures, et pour surmonter les limitations décrites précédemment, de nouvelles approches
basées sur l’analyse des logiciels suspects ont été proposées. Cette analyse peut être statique,
dynamique, ou hybride. La première étudie les logiciels malveillants sans avoir à les exécuter,
elle opère au niveau du code machine et des instructions désassemblées. Elle permet d’extraire
les informations pertinentes existantes dans un fichier binaire notamment les séquences
hexadécimales, les appels aux bibliothèques, les appels systèmes, les appels aux interfaces de
programmation API, le contrôle du flux, la fréquence de distribution de codes des opérations, etc.
La seconde exécute les logiciels suspects dans un environnement protégé (machine virtuelle,
simulateur, émulateur, sandbox, etc.), et observe le comportement et l’effet desdits logiciels dans
cet environnement.
Récemment de nouvelles méthodes de détection de logiciels malveillants ont été
proposées, elles opèrent en deux étapes : Dans la première elles utilisent les techniques
119
Classification et détection des spams et des virus informatiques par SVDD
d'exploration de données pour extraire les informations pertinentes d’un fichier exécutable, tandis
que dans la seconde étape elles se chargent de trouver les corrélations entre les informations
extraites en appliquant des techniques d'apprentissage automatique. Ces méthodes ont montré de
bonnes performances en termes de classification et de détection de nouveaux programmes
malveillants. Dans ce cadre, nous présentons une nouvelle solution pour la détection des logiciels
malveillants. Elle est basée sur la combinaison de la méthode N-grammes [154] et une version
améliorée du classifieur Support Vector Domain Description [177].
5.3.1. Méthodes de classification automatique des logiciels malveillants
utilisant les N-grammes
Les méthodes statiques destinées à la détection des logiciels malveillants ont connu une
évolution importante, parmi les techniques les plus utilisées on trouve N-grammes associée à des
méthodes d'apprentissage automatique. N-grammes explore la structure d'un fichier binaire
moyennant les séquences d’instructions qu’il contient, elle a été employée pour la première fois
par Kephart et Arnold [165] afin de détecter les variantes des logiciels malveillants connus. Leur
système permet de déterminer les signatures virales automatiquement en se basant sur N-gramme
et en minimisant la probabilité de générer de faux-positifs. Egalement, la technique N-gramme a
été appliquée par Santos et al. [163] pour extraire les signatures d'une grande variété des
programmes binaires après avoir converti ces derniers sous forme de séquences de codes
d’opérations (OpCode). Les N-grammes extraites ont été classées par des techniques
d'apprentissage automatique. Kolter et Maloof [161, 162] ont extrait les N-grammes relatives à
un ensemble de logiciels malveillants, ils ont sélectionné les 500 premières les plus significatives
selon une mesure appelée le gain d'information [161]. Dans leur travail une étude comparative a
été effectuée entre plusieurs classifieurs à savoir la méthode TF-IDF (Term Frequency – Inverse
Document Frequency) [141], naïve Bayes, les séparateurs à vaste marge, les arbres de décision, et
les k-plus proche voisins, ainsi que leurs versions rapides afin de générer des règles de
classification de nouveaux exécutables. Assaleh et al. [160] ont proposé une méthode pour la
détection de nouveaux virus informatiques, elle est basée sur la combinaison de N-grammes et de
l’algorithme k-ppv dont X = 1 . Schultz et al. [159] ont extrait les N-grammes des fichiers
binaires moyennant trois approches à savoir la liste des appels aux bibliothèques de liens
dynamiques, les séquences des chaines de caractères et les séquences d'octets, les N-grammes
extraites ont été classées par Ripper (Un algorithme d’apprentissage à règles), naïve Bayes et
Multi naïve Bayes. Henchiri et Japkowicz [158] ont extrait les N-grammes relatives aux fichiers
exécutables, ensuite ils les ont sélectionné hiérarchiquement, le résultat a été classé en utilisant
les arbres de décision, naïve Bayes et les séparateurs à vaste marge. Zhang et al. [157] ont
bénéficié de la méthode N-grammes pour représenter les programmes exécutables, ils ont
sélectionné les plus pertinentes en se basant sur le calcul de leurs gains d'information, les résultats
obtenus ont été utilisés comme des données d’entrée pour un réseau de neurones probabiliste.
Sornil et Liangboonprakong [156] ont proposé une méthode d’extraction des caractéristiques
120
Classification et détection des spams et des virus informatiques par SVDD
pertinentes à partir des fichiers binaires en quatre étapes en se basant sur la méthode N-grammes,
ils ont appliqué trois algorithmes de classification à savoir C4.5, le perceptron multicouches et les
séparateurs à vaste marge pour la détection de nouveaux programmes malveillants. Elovici et al.
[155] ont représenté les fichiers exécutables par leurs N-grammes, ils ont réduit les tailles de ces
dernières en se basant sur le score de Fisher et ils ont classé les exécutables par les réseaux
bayésiens, les réseaux de neurones artificiels, et les arbres de décision.
5.3.2. Méthode proposée pour la détection des virus informatiques
Notre objectif est l’élaboration d’une nouvelle méthode de détection des programmes
malveillants inconnus. Il s’agit d’une méthode d’analyse statique basée sur la combinaison de Ngramme et du classifieur SSPV-SVDD [177]. La méthode proposée commence par extraire les Ngrammes et leur fréquences d’apparition pour chaque programme, ensuite identifier celles qui
sont les plus pertinentes en fonction d’une mesure appelée le gain de l'information. Après, le
classifieur Support Vector Domain Description avec petite sphère et volume paramétrique SSPVSVDD [177] sera utilisé pour classer les N-grammes extraites et élaborer un modèle de détection
des programmes malveillants inconnus.
La méthode N-grammes a été initialement introduite par Shannon en 1951 [154], elle a
été utilisée dans de nombreux domaines, tels que le traitement automatique du langage naturel, le
traitement du signal, l'analyse de séquences biologiques, la compression de données, etc. Mais
encore largement utilisée pour la détection de logiciels malveillants [152] [153] [156] [160]
[163].
La signature N-grammes d'une chaîne de caractères est l’ensemble de toutes ses sous
chaînes de longueurO. Dans le cas d'un fichier exécutable, la signature N-grammes est calculée
généralement à base des séquences d’octets, ou d’instructions désassemblées. Pour générer le
vecteur N-grammes, une fenêtre de longueur O est déplacée à travers le texte, translatée vers
l'avant d’un caractère à la fois. A chaque position de la fenêtre, la séquence de caractères dans la
fenêtre est enregistrée. Par exemple, la chaîne "malware", peut être segmentée en 4-grammes
comme suit : "malw", "alwa", "lwar", "ware". Dans certains cas, la fenêtre peut être glissée de
plus d'un caractère après chaque enregistrement.
121
Classification et détection des spams et des virus informatiques par SVDD
Table 5.1 - Exemple des neufs premières 4-grammes et leurs fréquences
extraites d’un exécutable malveillant
4-grammes
Fréquences associées
40008BC0
008BC0FF
8BC0FF25
FFFFFFFF
00FFFFFF
9140008B
000000E8
01000000
FFFF8B45
89
82
82
78
69
59
57
56
53
Afin d’appliquer la méthode N-grammes sur des fichiers exécutables, ces derniers doivent
être représentés sous une forme exploitable. Dans notre cas chaque fichier sera converti sous une
forme de séquences hexadécimales, puis chaque séquence sera traitée pour extraire les Ngrammes et leurs fréquences. Comme la taille de l'ensemble des N-grammes est très grande, il est
commode de choisir les plus pertinentes entre elles en fonction du gain d'information IG [152].
Ce dernier est défini à l’aide de la formule suivante:
Í-•Op Ž =
T
./0 ∈{â,
T 3•Ù`p , Žlog
C∈{C‰
3•Ù`p , Ž
3•Ù`p )3
Ž
5.13
Où représente l’une des deux classes d’exécutables (malveillante ou bénigne), Ù`p est
la valeur de la N-gramme, Ù`p = 1 siO) existe dans le programme et 0 sinon. 3•Ù`p , Ž est la
proportion de programmes dans dans laquelle O) prend la valeurÙ`p . 3•Ù`p Ž est la proportion
de programmes dans la base d’entrainement tel que O) prend la valeur Ù`p . 3 est la
proportion des données d'apprentissage appartenant à la classe .
5.3.3. Résultats obtenus pour une base standard de virus informatiques
La méthode proposée a été évaluée en utilisant une base de données expérimentale,
constituée de 1258 fichiers exécutables, dont 600 fichiers bénins provenant de différentes
versions des systèmes d'exploitation (Windows XP et Windows 7), et 658 virus informatiques
[171]. La répartition détaillée des fichiers de la base expérimentale est illustrée dans la figure 5.5.
122
Classification et détection des spams et des virus informatiques par SVDD
Base de données expérimentale
Base des fichiers bénins (Win XP et Win 7 ): 658 exécutables
Base des fichiers viraux
BadBoy
Ash
BW
Burger
42 exécutables
54 exécutables
48 exécutables
95 exécutables
Austratlian
85 exécutables
Vienna
334 exécutables
Figure 5.5 - La distribution des fichiers exécutables dans la base de données
expérimentale
Trois expériences ont été effectuées sur la base susmentionnée : La première vise à
discriminer entre une famille virale nommée Dos.Vienna et un ensemble de fichiers bénins,
tandis que la seconde fait intervenir un ensemble de trois familles virales (Dos.BadBoy, Dos.Ash
et Dos.BW) contre des fichiers bénins. La dernière évalue le pouvoir séparateur entre des virus
appartenant à deux familles virales différentes (Dos.Burger et Dos.Austalian). Chaque expérience
est réalisée en deux étapes :
− L’apprentissage de la base d’entrainement : Dans cette étape, nous commençons par
extraire les N-grammes et leurs fréquences d’apparition dans chaque fichier de la base
d’entrainement, puis nous combinons les N-grammes de tous les fichiers en éliminant les
redondantes. L’objectif est de construire une base commune. Après, nous calculons le
gain d'information IG de chaque N-grammes, ensuite nous les trions dans l'ordre
décroissant de l'IG afin de sélectionner les X premières les plus pertinentes pour former
une nouvelle base réduite. À la fin de cette étape chaque fichier exécutable (malveillant
ou bénin) est représenté par sa signature (vecteur de XN-grammes). Ces dernières vont
servir comme entrées pour les classifieurs SVDD et SSPV-SVDD. Nous évaluons le taux
de reconnaissance relatif à la base d’entrainement selon les valeurs prises parQ.
− L’identification d’un exécutable de test: Dans cette étape, nous visons à évaluer la
capacité de généralisation de notre méthode afin de détecter les nouveaux virus. A partir
d’un programme de la base de test nous extrayons ses N-grammes distinctes ainsi que
leurs fréquences d’apparition, nous constituons sa signature par la projection de
l'ensemble de ces N-grammes dans la base réduite (construite dans l'étape
d’entrainement). Ensuite, nous identifions sa classe adéquate en utilisant la fonction de
décision des classifieurs SVDD et SSPV-SVDD. La même procédure est répétée pour
l’ensemble des fichiers de la base de test afin d’évaluer le taux moyen de reconnaissance
selon les valeurs prises par σ.
Dans toutes les expériences, nous employons le noyau Gaussien. Afin d’évaluer la
moyenne et l’écart-type du taux de reconnaissance chaque expérience est répétée 10 fois. Une
description détaillée de la méthode proposée est représentée dans la figure 5.6.
123
Classification et détection des spams et des virus informatiques par SVDD
Diviser aléatoirement la base expérimentale en deux ensembles
d’entrainement (80% bénins, 80% virus) et de test (20% bénins, 20% virus)
Ensemble
de test
Sélectionner un fichier de test x et sa
classe (virale ou bénigne) y
Extraire la séquence hexadécimale de x
Extraire les N-grammes distinctes ainsi
que leurs fréquences d’apparition
Ensemble
d’entrainement
Convertir chaque fichier exécutable en une séquence hexadécimale
Extraire les N-grammes distinctes de chaque fichier ainsi que leurs
fréquences d’apparition
Concaténer les N-grammes de tous les fichiers et éliminer les redondances.
Construire une base B avec les N-grammes concaténées et leurs fréquences
dans chaque fichier.
Calculer la mesure appelée le gain d’information (IG)
Projeter les N-grammes de x dans la base
réduite
Former une nouvelle base de taille réduite, en sélectionnant les k premieres
N-grammes, selon l’ordre décroissant de (IG)
Construire les deux hypersphères relatives aux fichiers (viraux et bénins)
moyennant SVDD et SSPV-SVDD
Répéter pour
Les autres
fichiers
Evaluer la classe de x par
les deux fonctions de décision
de SVDD et SSPV-SVDD
Calculer la moyenne du taux de
reconnaissance de virus et son écart type
Figure 5.6 - Etapes de la méthode proposée pour la détection
des virus informatiques
Résultats numériques
La première expérience illustrée par la figure 5.7, concerne la classification d’une seule
famille virale contre des fichiers bénins, elle montre la variation du taux moyen de
reconnaissance et l'écart type des classifieurs SVDD et SSPV-SVDD selon la largeur du noyau
Gaussien Q. La figure est divisée en deux parties:
124
Classification et détection des spams et des virus informatiques par SVDD
–
–
La première concerne la base d’entrainement. On observe que la classification par la
méthode SVDD donne un taux moyen de reconnaissance qui atteint un maximum de 74 %
avec un grand écart type, contrairement à SSPV-SVDD qui est stable et qui atteint
environ 100 % quelque soit la valeur de Q.
La seconde concerne la base de test. On remarque que le taux moyen de reconnaissance
relatif à la méthode SSPV-SVDD dépasse celui de SVDD (maximum de 97% contre
58%), également l'écart type de SSPV-SVDD est inférieur à SVDD.
Figure 5.7 - Le taux moyen de reconnaissance de SSPV-SVDD et SVDD
pour Dos.Vienna
La deuxième expérience (Figure 5.8) a le même objectif que la première, la seule différence
est que la famille virale mise en expérience est hétérogène, elle est composée de trois types de
virus : Dos.BadBoy, Dos.Ash et Dos.BW. Egalement la figure est divisée en deux parties:
–
La première concerne la base d’entrainement : On constate qu’en moyen 100% des
fichiers d’entrainement sont correctement classés par SSPV-SVDD, mais lors du passage
à SVDD les résultats diminuent considérablement (maximum de 70%) et l’écart type
devient plus important.
–
La seconde concerne la base de test. On observe qu’environ 94% des nouveaux
exécutables sont correctement classés, avec une faible variance lors de l'utilisation de
SSPV-SVDD, contrairement à SVDD qui donne de faibles résultats (maximum de 44%)
avec une grande variance.
125
Classification et détection des spams et des virus informatiques par SVDD
Figure 5.8 - Le taux moyen de reconnaissance de SSPV-SVDD et SVDD
pour Dos.BadBoy, Dos.Ash et Dos.BW
La troisième expérience (Figure 5.9) a pour but d'évaluer la capacité des classifieurs SVDD et
SSPV-SVDD à distinguer entre deux familles virales différentes Dos.Burger et Dos.Austalian.
La figure peut être divisée en deux parties:
–
La première partie concerne la base d’entrainement : On remarque que le meilleur taux de
reconnaissance avec une faible variance a été atteint en utilisant SSPV-SVDD (maximum
de 95%) par rapport à SVDD (maximum de 85%).
–
La seconde partie concerne la base de test : On voit que le classificateur SSPV-SVDD
donne un meilleur taux de reconnaissance (maximum de 90%) en comparaison avec
SVDD (maximum de 82%).
Figure 5.9 - Le taux moyen de reconnaissance de SSPV-SVDD et SVDD
pour Dos.Burger contre Dos.Austalian
126
Classification et détection des spams et des virus informatiques par SVDD
En conclusion. Toutes les expériences ont montré que les meilleurs résultats de classification
ont été atteints en appliquant la combinaison de N-grammes et la version améliorée de SVDD
appelée SSPV-SVDD.
5.4. Conclusion
Dans ce chapitre nous nous sommes focalisés sur certains problèmes qui menacent la
sécurité des systèmes informatiques, qui sont les courriels indésirables communément connus
sous le nom de spams et les logiciels malveillants. Ces menaces électroniques qui ne cessent
d’augmenter peuvent entraîner des dommages conséquents pour les utilisateurs particuliers
comme pour les entreprises. L’utilisation des méthodes ordinaires pour lutter contre ces attaques
comme la signature virale, le filtrage anti-spam, etc. s’avèrent inefficaces face aux techniques
constamment développées pour masquer leurs contenus et ainsi les rendre indétectables.
Récemment de nouvelles méthodes plus intelligentes, capables d’analyser et de détecter les
spams et les logiciels malveillants ont été introduites, parmi elles figurent les méthodes
d’apprentissage automatique et les techniques de fouille de données.
A l’issue des contributions intéressantes et prometteuses présentées dans les deux
chapitres précédents, et qui ont pour objectif l’amélioration de la performance du classifieur
SVDD, nous avons essayé de bénéficier de certaines d’entre elles en les appliquant aux
problèmes susmentionnés. En effet, nous avons développé une version améliorée du SVDD
nommée SSPV-SVDD avec une fonction de décision floue, pour le filtrage anti-spam. Aussi,
nous avons combiné SSPV-SVDD et N-grammes pour la détection des virus informatiques. Les
résultats expérimentaux obtenus sur des bases réelles des spams et des virus informatiques, ont
été très convaincants et très intéressants en termes de détection et d’identification de spams et de
virus informatiques.
Ces applications nous ont permis de toucher aux vrais problèmes du classifieur SVDD
dont héritent les versions améliorées notamment la classification des grandes bases de données
qui nécessitent un temps d’apprentissage trop élevé. D’autres problèmes sont intrinsèques aux
applications choisies, comme le choix d’une méthode efficace pour l’extraction d’information
pertinente à partir des fichiers exécutables et la prise des précautions nécessaires lors du
traitement de ces derniers qui peuvent endommager l’ordinateur utilisé dans l’expérience ou le
rendre inopérable.
127
Conclusion générale
Au cours de ces travaux de recherche nous nous sommes intéressés principalement à deux
sujets, le premier est l’amélioration de la capacité de généralisation du classifieur Support Vector
Domain Description, le second est l’application de certaines desdites améliorations à deux
problèmes qui concerne la sécurité des systèmes informatiques à savoir la détection des virus
informatiques et le filtrage anti-spam.
Tout d’abord, Nous avons commencé nos travaux de recherche par une étude
bibliographique, elle concerne principalement le dressage d’un panorama des principales
méthodes utilisées dans le domaine de l’apprentissage automatique supervisé et non-supervisé. Il
s’agit d’une étude comparative dans laquelle nous avons présenté le concept, les avantages, les
inconvénients, et les principales variantes de chaque méthode. Parmi ces dernières nous nous
sommes particulièrement attirés par les machines à apprentissage vu les multiples avantages et
variantes qu’elles possèdent. Ce choix nous a conduit à l’étude des machines à apprentissage à
noyaux en particulier les SVMs et SVDD, qui sont basées sur un fondement mathématique solide
issu de la théorie d’apprentissage statistique de Vapnik [114,115]. Ces classifieurs ont connu une
grande évolution et ont montré d’excellentes performances pour un large champ d’applications. A
travers cette étude nous avons expliqué le principe de la minimisation du risque structurel adopté
128
Conclusion générale
par ces classifieurs, aussi nous avons analysé leurs développements mathématiques dans le cas
mono-classe, bi-classes, et multi-classes, également nous avons exposé en détails quelques
variantes de ces classifieurs et enfin nous avons abordé les fonctions noyaux utilisées par SVMs
et SVDD et permettant d’effectuer un passage implicite de l’espace d’origine vers un autre
augmenté afin de classifier les données non linéairement séparables. L’objectif derrière cette
partie de thèse est de détecter les limitations et les points faibles de ces classifieurs afin d’y
remédier par la suite.
Nos travaux se sont ensuite focalisés sur l’amélioration du classifieur SVDD, le choix de
se concentrer sur ce classifieur est motivé par sa performance de classification et sa capacité de
généralisation. Afin d’augmenter sa performance, nous avons tiré profit de deux stratégies. La
première est l’optimisation de la séparabilité entre les classes d’une base d’apprentissage. La
deuxième est le paramétrage optimal de l’espace des caractéristiques.
La première stratégie a donné naissance à trois améliorations du SVDD. En effet, nous
avons maximisé la séparation inter-sphères et par suite la séparabilité entre les classes ; nous
avons aussi introduit un paramètre pour contrôler le volume des sphères minimales pour mieux
cerner les classes ; et enfin, nous avons exploité la notion d’appartenance floue et établit une
nouvelle fonction de décision plus précise.
La deuxième stratégie a également produit trois améliorations du SVDD, les deux
premières ont pour objectif l’optimisation des paramètres du classifieur afin de trouver un
meilleur espace de caractéristiques. Elles ont permet d’optimiser la largeur du noyau Gaussien,
Quant à la dernière amélioration, elle a essayé de remédier au problème des données incertaines
qui existent dans les bases d’apprentissage et qui faussent les frontières de séparation entre les
classes.
Afin de valider leur performance, les améliorations proposées ont été évaluées sur des jeux de
données artificielles comme le problème d’échiquier, la double spirales ou encore des ensembles
de données aléatoires et sur des bases de données réelles, les résultats du taux de reconnaissance
ont montré que ces versions améliorées du SVDD sont performantes.
Enfin, pour tester l’efficacité de ces versions sur des cas pratiques, nous nous sommes
intéressés à deux problèmes dont souffrent les systèmes informatiques qui sont le filtrage antispams et la détection des virus informatiques. Nous avons utilisé deux versions améliorées du
classifieur SVDD ainsi qu’une technique d’extraction des caractéristiques à partir des fichiers
exécutables connue sous le nom de N-gramme pour remédier auxdits problèmes. Les méthodes
proposées ont été testées sur des bases de données réelles de spams et de virus. Les résultats en
termes du taux de reconnaissance ont prouvé que ces méthodes sont capables de détecter la
majorité des virus et des spams inconnus de la base expérimentale.
Les perspectives de ce travail sont nombreuses, elles portent à la fois sur la recherche de
nouvelles améliorations du SVDD et sur l’application de ce classifieur ainsi que ces versions
améliorées sur d’autres problèmes de classification. L’un des problèmes importants qui reste posé
est la minimisation de la complexité temporelle de SVDD. En effet, l’apprentissage par ce dernier
129
Conclusion générale
impose la résolution d’un problème quadratique convexe sous contraintes, ce qui demande un
temps d’apprentissage trop élevé, en particulier pour les grandes bases. Ajouté à cela le problème
de la séparabilité des classes qui n’est jamais résolu complètement malgré les améliorations
apportées de nos jours.
130
Bibliographie
Bibliographie
[1] T. Oda and T. White. "Developing an Immunity to Spam". In Proceedings of the Genetic and
Evolutionary Computation Conference, pages 231-242, Chicago, IL, July 12-16, 2003.
[2] D.O. Hebb, "The organization of behaviour". Wiley, New York, 1949.
[3] T.S. Lim, W.Y. Loh, and Y.S. Shih. "A comparison of prediction accuracy, complexity and training of
thirty-three old and new classification algorithms". Machine Learning, Vol. 40, N°. 3, pages 203-228,
2000.
[4] J. Ghosh and A. Nag. "An overview of radial basis function networks". Radial Basis Function Neural
Network Theory and Applications, Physica-Verlag, Heidelberg, 2000.
[5] J. J. Hopfield. "Neural Networks and Physical System with Emergent Collective Computational
Abilities". In proceedings of the National Academy of Sciences, Vol. 79, N°. 8, pages 2554-2558,
USA, 1982.
[6] M. Cochez and H. Mouy, "Twister Tries: Approximate Hierarchical Agglomerative Clustering for
Average Distance in Linear Time". In proceedings of the ACM SIGMOD International Conference on
Management of Data, pages 505-517, Melbourne, Australia, May 31 - June 4, 2015.
[7] K.P. Wu and S.D. Wang. "Choosing the kernel parameters for support vector machines by the intercluster distance in the feature space". Pattern Recognition, Vol. 42, N°. 5, pages 710-717, 2009.
[8] C.F. Lin and S.D. Wang. "Training algorithms for fuzzy support vector machines with noisy data".
Pattern Recognition Letters, Vol. 25, N°. 14, pages 1647-1656, 2004.
[9] E. Cantu-Paz and C. Kamath. "Inducing Oblique Decision Trees with Evolutionary Algorithms". IEEE
Transactions on Evolutionary Computation, Vol. 7, N°. 1, pages 54-68, 2003.
[10] R. Polikar, L. Upda, S.S. Upda, and V. Honavar. "Learn++ : an incremental learning algorithm for
supervised neural networks" . IEEE Transactions on Systems, Man, and Cybernetics, Part C, Vol. 31,
N°. 4, pages 497- 508, 2001.
[11] T. Hofmann, B. Scholkopf, and A.J. Smola. "Kernel methods in machine learning", The Annals of
Statistics, Vol. 36, N°. 3, pages 1171-1220, 2008.
[12] C. Richard, F. Abdallah, and R. Lengellé. "Algorithmes séquentiels pour l'analyse de données par
méthodes à noyau ". Traitement du signal, Vol. 21, N°. 2, pages 97-108, 2004.
[13] S.W. Lin, Z.J. Lee, S.C. Chen, and T.Y. Tseng. "Parameter determination of support vector machine
and feature selection using simulated annealing approach". Applied Soft Computing, Vol. 8, N°. 4,
pages 1505-1512, 2008.
[14] O. Chapelle, B. Schölkopf, and A. Zien. "Semi-Supervised Learning". Adaptive computation and
machine learning. MIT Press, Cambridge, Mass., USA, 2006.
[15] R. Rojas. "Neural Networks - A Systematic Introduction", Springer-Verlag, Berlin, New-York, 1996.
[16] M. El boujnouni, M. Jedra, and N. Zahid. “Email Spam filtering using the combination of two
improved versions of Support Vector Domain Description”, In Proceedings of the 10th International
Conference on Computational Intelligence in Security for Information Systems (CISIS15),
International Joint Conference Advances in Intelligent Systems and Computing Volume 369, pages 99109, Burgos, Spain, 15-17 June, 2015.
[17] A. Almaksour, H. Mouchère, and E. Anquetil. "Apprentissage incrémental et synthèse de données
pour la reconnaissance de caractères manuscrits en-ligne". 10ème Colloque International Francophone
sur l'Ecrit et le Document, pages 55-60, Rouen, France, 28-30 October, 2008.
[18] S. Ben-david, E. Kushilevitz, and Y. Mansoury. "Online Learning versus Offline Learning", Machine
Learning, Vol. 29, N°. 1,pages 45-63, 1997.
131
Bibliographie
[19] S.K. Murthy, S. Kasif, and S. Salzberg. "A System for Induction of oblique Decision Trees". Journal
of Artificial Intelligence Research, Vol. 2, N°. 1, pages 1-32, 1994.
[20] C.E. Brodley and P.E. Utgoff. "Mutlivariate Decision Trees". Machine Learning, Vol. 19, N°. 1,
pages 45-77, 1995.
[21] F. Jinglong, W. Wanliang, W. Xingqi, L. Zhe, L. Dongsheng, and Z. Qili . "A SVDD Method Based
on Maximum Distance between Two Centers of Spheres". Chinese Journal of Electronics, Vol. 21, N°.
1, 2012.
[22] P.E. Utgoff, N.C. Berkman, and J.A. Clouse. "Decision tree induction based on efficient tree
restructuring". Machine Learning, Vol. 29, N°. 1, pages 5-44, 1997.
[23] P. Pantel and D. Lin. "Spamcop: A spam classification & organization program". In proceedings of
the AAAI Workshop on Learning for Text Categorization, pages 95-98, Madison, Wisconsin, July 27,
1998.
[24] A. Cornuéjols and L. Miclet. "Apprentissage artificiel concepts et algorithmes". Edition Eyrolles,
Paris, 804 pages, 2011.
[25] X. Carreras, L. Marquez, and J.G. Salgado. "Boosting trees for anti-spam email filtering". In
Proceedings of the 4th International Conference on Recent Advances in Natural Language Processing,
pages 58-64,Tzigov Chark, Bulgaria, 5-7 September, 2001.
[26] B.D. Ripley. "Neural networks and related methods for classification". Journal of the Royal
Statistical Society, Series B, Vol. 56, N°. 3, pages 409-456, 1994.
[27] C.M. Bishop. "Neural Networks for Pattern Recognition". Oxford University Press, New York, 1995.
[28] K. Pearson. "On lines and planes of closest fit to systems of points in space" . Philosophical
Magazine, Vol. 2, N°. 6, pages 559-572, 1901.
[29] H. Hotelling. "Analysis of a complex of statistical variables into principal components". Journal of
Educational Psychology, Vol. 24, N°. 6, pages 417-441, 1933.
[30] P.H. Sneath and R.R. Sokal. "Numerical Taxonomy: the principals and practice of numerical
classification ". W. H. Freeman and Company Edition, San Francisco, 1973.
[31] B. King. "Step wise clustering procedures". Journal of the American Statistical Association, Vol. 69,
N°. 317, pages 86-101, 1967.
[32] J. H. Ward. "Hierachical grouping to optimize an objective function". Journal of the American
Statistical Association, Vol. 58, N°. 301, pages 236-244, 1963.
[33] F. Murtagh. "A survey of recent advances in hierarchical clustering algorithms which use cluster
centers". Computer Journal, Vol. 26, N°. 4, pages 354-359, 1984.
[34] G. Haffari. "A Survey on Inductive Semi-Supervised Learning". Technical report, School of
Computing Science, Simon Fraser University, 2005.
[35] M. Seeger. "Learning with Labeled and Unlabeled Data". Technical report, The Institute for Adaptive
and Neural Computation, University of Edinburgh, UK, 2000.
[36] X. Zhu. "Semi-Supervised Learning Literature Survey". Technical Report, Computer Sciences,
University of Wisconsin-Madison, 2005.
[37] A. Blum and T. Mitchell. "Combining Labeled and Unlabeled Data with Cotraining ". In Proceedings
of the 11th Annual Conference on Computational Learning Theory. Morgan Kaufmann Publishers,
pages 92-100, ACM, New York, USA, July 24-26, 1998.
[38] G. Stempfe. "Robustesse des Séparateurs Linéaires au Bruit de Classification ". Thèse de doctorat,
Université de Aix-Marseille ,1999.
[39] J. R. Quinlan. "Induction of decision trees ". Machine Learning, Vol. 1, N°. 1, pages 81-106, 1986.
132
Bibliographie
[40] J. R. Quinlan. "C4.5: Programs for machine learning". Morgan Kaufmann Publishers, San Mateo,
California, 1993.
[41] L. Breiman, J.H. Friedman, R.A. Olshen, and C.J. Stone. "Classification and Regression Trees".
Technical report, Wadsworth International Group, Belmont, CA, 1984.
[42] P.E. Utgoff. "Incremental induction of decision trees". Machine Learning, Vol. 4, N°. 2, pages 161186, 1989.
[43] I. Androutsopoulos, G. Palouras, V. Karkaletsis, G. Sakkis, C. Spyro-poulos , and P. Stamatopoulos.
"Learning to Filter Spam E-Mail: A Comparison of a Naive Bayesian and a Memory-Based Approach
".In proceedings of the workshop Machine Learning and Textual Information Access, 4th European
Conference on Principles and Practice of Knowledge Discovery in Databases, pages 1-13, Lyon,
France, 13-16 September 2000.
[44] N. Sebe, M.S. Lew, I. Cohen, A. Garg , and T.S Huang. "Emotion recognition using a cauchy naive
bayes classifier". In Proceedings of the 16th International Conference on Pattern Recognition, pages 1720, Quebec City, Canada, 11-15 August, 2002.
[45] J.C. Schlimmer and D. Fisher. "A case study of incremental concept induction". In Proceedings of the
5th National Conference on Artificial Intelligence, Morgan Kaufmann, pages 496-501, Philadelphia,
PA, 1986.
[46] L. Zhou, J. Feng, A. Sears, and Y. Shi. "Applying the naive bayes classifier to assist user in detecting
speech recognition errors". In Proceedings of the 38th International Conference on System Science, Big
Island, HI, USA, 03-06 Jan, 2005.
[47] T. Bayes. "An essay toward solving a problem in the doctrine of chances". Philosophical
Transactions of the Royal Society of London, Vol. 53, pages 370-418, 1764.
[48] A.K. Agrawala. "Learning with a probabilistic teacher". IEEE Transactions on Information Theory,
Vol. 16, N°. 4, pages 373–379, 1970.
[49] S. Fralick. "Learning to recognize patterns without a teacher". IEEE Transactions on Information
Theory, Vol. 13, N°.1, pages 57-64, 1967.
[50] H.J. Scudder. "Probability of error of some adaptive pattern-recognition machines". IEEE
Transactions on Information Theory, Vol. 11, N°.3, pages 363-371, 1965.
[51] D.M.J. Tax and R.P.W. Duin. "Data Domain Description Using Support Vectors". In Proceedings of
the European Symposium on Artificial Neural, pages 251-256, Bruges, Belgium, 21-23 April, 1999.
[52] D.M.J. Tax and R.P.W. Duin. "Support vector domain description". Pattern Recognition Letters, Vol
.20, N°. (11-13), pages 1191-1199, 1999.
[53] T. Laloe. "Sur Quelques Problèmes d'Apprentissage Supervisé et Non Supervisé". Thèse de doctorat,
Université de Montpellier II, 2009.
[54] A. Ben-Hur, D. Horn, H. T. Siegelmann, and V. Vapnik. "Support vector clustering". Journal of
Machine Learning Research, Vol. 2, N°.12, pages 125-137, 2001.
[55] J. Lee and D. Lee. "An improved cluster labeling method for support vector clustering". IEEE
Transaction on Pattern Analysis and Machine Intelligence, Vol. 27, N°.3, pages 461-464, 2005.
[56] M. Sahami, S. Dumais, D. Heckerman, and Eric Horvitz. "A Bayesian approach to filtering junk email". In proceeding of the AAAI Workshop on Learning for Text Categorization. pages 98-105,
Madison, Wisconsin, July 26-27, 1998.
[57] M. Wu and J. Ye. "A Small Sphere and Large Margin Approach for Novelty Detection Using
Training Data with Outliers". IEEE transactions on pattern analysis and machine intelligence, Vol.31,
N°. 11, pages 2088-2092, 2009.
133
Bibliographie
[58] D.M.J. Tax and R.P.W. Duin. "Support Vector Data Description". Machine Learning, Vol. 54, pages
45-66, 2004.
[59] A. Tavakkoli, M. Nicolescu, G. Bebis, and M. Nicolescu. "A support vector data description
approach for background modeling in videos with quasi-stationary backgrounds". International journal
on artificial intelligence tools, Vol. 17, N°. 4, pages 635-658, 2008.
[60] J. Wang, P. Neskovic, and L.N. Cooper. "Pattern classification via single spheres". Lecture Notes in
Computer Science, Vol. 3735, pages 241-252, 2005.
[61] M. EL Boujnouni, M. Jedra, and N. Zahid. "New Decision Function for Support Vector Data
Description". Journal of Information & Systems Management, Vol. 2, N°. 3, pages 105-115, 2012.
[62] P.Y Hao, J.H Chiang, and Y.H Lin. "A new maximal margin spherical-structured multi-class support
vector machine ". Applied Intelligence, Vol. 30, N°. 2, pages 98-111, 2009.
[63] H. Larochelle. "Étude de techniques d’apprentissage non-supervisé pour l’amélioration de
l’entraînement supervisé de modèles connexionnistes". Thèse de doctorat, Université de Montréal,
2008.
[64]T. Mu and A.K. Nandi. "Multiclass classification based on extended support vector data description".
IEEE Transactions on Systems, Man, and Cybernetics-Part B, Vol.39, N°.5, pages 1206-1216, 2009.
[65] K. Lee, D.W. Kim, D. Lee, and K.H. Lee. "Improving support vector data description using local
density degree ". Pattern Recognition, Vol.38, N° 10, pages 1768 -1771, 2005.
[66] B. Schölkopf and A.J. Smola. "Learning with Kernels: Support Vector Machines, Regularization,
Optimization, and Beyond ". MIT Press Cambridge, 644 pages, MA, USA, 2002.
[67] K.R. Mäller, S. Mika, G. Rätsch, K. Tsuda, and B. Schölkopf. "An introduction to kernel-based
learning algorithms ". IEEE Transactions on Neural Networks, Vol. 12, N°.2, pages 181-201, 2001.
[68] C.W. Hsu, C.C. Chang, and C.J. Lin. "A practical guide to support vector classification ". Technical
Report, Department of Computer Science and Information Engineering, University of National
Taiwan, pages 1-12. 2003.
[69] J. Wang, X. Wu, and C. Zhang. "Support vector machines based on k-means clustering for real time
business intelligence systems". International Journal of Business Intelligent and Data Mining, Vol.1,
N°.1, pages 54-64, 2005.
[70] H. Liu and H. Motoda. "Feature Selection for Knowledge Discovery and Data Mining". Edition
Kluwer Academic Publishers, 214 pages, Boston ,1998.
[71] R.C. Chen and C.H. Hsieh. "Web page classification based on a support vector machine using a
weighed vote schema ". Expert Systems with Applications. Vol. 31, N°. 2, pages 427-435, 2006.
[72] C. Gold, A. Holub, and P. Sollich. "Bayesian approach to feature selection and parameter tuning for
support vector machine classifiers ". Neural Networks. Vol. 18, N°. 5-6, pages 693-701, 2005.
[73] O. Chapelle, V. Vapnik, O. Bousquet, and S. Mukherjee. "Choosing multiple parameters for support
vector machines ". Machine Learning, Vol. 46, No. (1-3), pages 131-159, 2002.
[74] R. Kohavi and G.H. John. "Wrappers for feature subset selection". Artificial Intelligence, Vol. 97,
N°. (1-2), pages 273-324, 1997.
[75] UCI repository of machine learning databases. http://archive.ics.uci.edu/ml/.
[76] T. Glasmachers and C. Igel. "Gradient-based adaptation of general gaussian kernels". Neural
Computation, Vol. 17, N°. 10, pages 2099-2105, 2005.
[77] H. Xiong, M.N.S. Swamy, and M. Omair Ahmad. "Optimizing the kernel in the empirical feature
space ". IEEE Transactions on Neural Networks, Vol. 16, N°. 2, pages 460-474, 2005.
[78] K. Fukunaga. "Introduction to Statistical Pattern Recognition ". 2nd Edition, Academic Press, Boston,
1990.
134
Bibliographie
[79] J. Wang, H. Lu, K.N Plataniotis, and J. Lu. "Gaussian kernel optimization for pattern classification".
Pattern Recognition, Vol. 42, N°. 7, pages 1237-1247, 2009.
[80] P. N. Belhumeur, J. P. Hespanha, and D. J. Kriegman. "Eigenfaces vs. Fisherfaces: recognition using
class specific linear projection". IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol.
19, N°. 7, pages 711-720, 1997.
[81] P. Vincent. "Modèles à noyaux à structure locale". Thèse de doctorat, Université de Montréal, 2003.
[82] P.Y. Hao and Y.H. Lin , "A new multi-class support vector machine with multi-sphere in the feature
space", In Proceedings of the 20th international conference on Industrial, engineering, and other
applications of applied intelligent systems, pages 756-765, Kyoto (Japan) , 2007
[83] B.E. Boser, I. Guyon, and V. Vapnik. "A training algorithm for optimal margin classifiers". In 5th
Annual Workshop on Computational Learning Theory, pages 144-152. Pittsburgh, ACM, 1992.
[84] C. Cortes and V. Vapnik. "Support vector networks". Machine Learning, Vol. 20, N°.3, pages 273297, 1995.
[85] E. Didaye, J. Lemaire, J. Pouget , and F. Testuf . "Un algorithme de type nuées dynamiques". In
Eléments d’analyse de données, Dunod, pages 117-123, 1982.
[86] D. Fisher. "Knowledge acquisition via incremental conceptual clustering". Machine Learning, Vol. 2,
N°. 2, pages 139-172, 1987.
[87] J. H. Gennari, P. Langley, and D. H. Fisher. "Models of incremental concept formation". Journal of
Artificial Intelligence, Vol. 40, N°. (1-3), pages 11- 61, 1989.
[88] S. Guha, R. Rastogi, and K. Shim . "Cure: an efficient clustering algorithm for large databases" .
Information Systems, Vol. 26, N°. 1, pages 35-58, 2001.
[89] G. Karypis, E.H.S. Han, and V. Kumar. "Chameleon: Hierarchical clustering using dynamic
modeling". IEEE Computer, Vol.32, N° 8, pages 68–75, 1999.
[90] D. Fisher. "Iterative optimization and simplification of hierarchical clustering". Journal of Articial
Intelligence Research,Vol. 4, pages 147-179, 1996.
[91]X. Jiang, Z. Yi, and J.C. Lv. "Fuzzy SVM with a new fuzzy membership function". Neural
Computing and Application, Vol. 15, N°. (3-4), pages 268-276, 2006.
[92] L.A. Zadeh, "Fuzzy sets", Information and Control, Vol. 8, N°. 3, pages 338-353, 1965.
[93] C.F. Lin and S.D. Wang. "Fuzzy support vector machines". IEEE Transactions on neural networks,
Vol.13, N°. 2, pages 464-471, 2002.
[94] J. C. Dunn, "A fuzzy relative of the isodata process and its use in detecting compact, well-separated
clusters", Journal of Cybernetics, Vol.3, N°. 3, pages 32-57, 1973.
[95] S. Abe and T. Inoue. "Fuzzy support vector machines for multiclass problems". In Proceedings of the
10th European symposium on artificial neural networks, pages 113-118, Bruges, Belgium, 2002.
[96] D. Tsujinishi and S. Abe. "Fuzzy least squares support vector machines for multiclass problems".
Neural Networks, Vol.16, N°. (5-6), pages 785-792, 2003.
[97] X.G Zhang. "Using class-center vectors to build support vector machines". In proceedings of the
IEEE workshop on neural networks for signal processing IX, pages 3-11, Madison, Winsconsin, 25
Aug, 1999.
[98] A. Foss and O.R. Zaïane. "Class Separation through Variance: A new Application of Outlier
Detection". Knowledge and Information Systems , Vol. 29, N°. 3, pages 565-596, 2011.
[99] F. Takahashi and S. Abe. "Optimizing directed acyclic graph support vector machines". In
Proceedings of the Artificial Neural Networks in Pattern Recognition (ANNPR 2003), pages 166-170,
Florence, Italy, 12-13 September, 2003.
135
Bibliographie
[100] T. Phetkaew, B. Kijsirikul, and W. Rivepiboon. "Reordering adaptive directed acyclic graphs: an
improved algorithm for multiclass support vector machines". In Proceedings of the International Joint
Conference on Neural Networks, Vol. 2, pages 1605-1610, Portland, Oregon, 20-24 July, 2003.
[101] M. El boujnouni, M. Jedra, and N. Zahid, "Feature selection of support vector domain description
using gaussian kernel", Journal of Theoretical and Applied Information Technology, Vol. 46, N°. 1,
pages 479-485, December 2012.
[102] M. El boujnouni, M. Jedra, and N. Zahid. "Kernel’s Parameter Selection for Support Vector Domain
Description". International Journal of Computer Science and Engineering, Vol. 7, N°. 8, pages 10871092, 2013.
[103] M. El boujnouni, M. Jedra, and N. Zahid. "Support Vector Domain Description with maximum
between spheres separability". Journal of Information Science and Engineering, Vol. 30, N°. 6, pages
1985-2002, 2014.
[104] M. El boujnouni, M. Jedra, and N. Zahid. "Support Vector Domain Description with a new
confidence coefficient". In Proceedings of the 9th International Conference on Intelligent Systems:
Theories and Applications, Vol. 1, pages 9-16, Rabat, Morocco, May 2014.
[105] P.Y. Hao . "Fuzzy one-class support vector machines". Fuzzy Sets and Systems, Vol. 159, N°. 18,
pages 2317- 2336, 2008.
[106] T.Y. Wang and H.M. Chiang. "Fuzzy support vector machine for multi-class text categorization".
Information Processing and Management, Vol. 43, N°. 4, pages 914-929, 2007.
[107] Y. Wang, S. Wang, and K.K. Lai ."A new fuzzy support vector machine to evaluate credit risk".
IEEE Transactions on Fuzzy Systems, Vol. 13, N°. 6, pages 820-831, 2005.
[108] A. Hotho, S. Staab, and G. Stumme . "Ontologies Improve Text Document Clustering". In
Proceedings of the 3rd IEEE International Conference on Data Mining, pages 541-544, Melbourne,
Florida, USA, 19-22 Dec, 2003.
[109] A. G. López-Herrera, E. Herrera-Viedma, and F. Herrera ."A Multiobjective Evolutionary
Algorithm for Spam E- Mail Filtering". In Proceedings of the 3rd International Conference on
Intelligent System and Knowledge Engineering, Vol.1, pages 366-371, Xiamen, China, 17-19 Nov,
2008.
[110] K.P. Wu and S.D. Wang. "Choosing the kernel parameters of support vector machines according to
the inter-cluster distance". In Proceedings of the International Joint Conference on Neural Networks,
pages 1205-1211, Vancouver, BC, Canada, 16-21 July, 2006.
[111] J.C. Bezdek and N.R. Pal. "Some new indexes of cluster validity". IEEE Transactions on Systems,
Man, and Cybernetics, Part B: Cybernetics, Vol. 28, N°. 3, pages 301-315, 1998.
[112] C. Lazar. "Méthodes non supervisées pour l’analyse des données multi-variées". Thèse de doctorat,
Université de Reims Champagne Ardenne, 2008.
[113] D. Zhang, S. Chen, and Z.H. Zhou. "Learning the kernel parameters in kernel minimum distance
classifier ". Pattern Recognition. Vol. 39, N°. 1, pages 133-135, 2006.
[114] V.Vapnik. "The Nature of Statistical Learning Theory ". Springer-Verlag, New York, 1995.
[115] V.Vapnik. "Statistical Learning Theory ". Wiley, New York, 1998.
[116] S. Knerr, L. Personnaz, and G. Dreyfus. "Single-layer learning revisited : A stepwise procedure for
building and training a neural network". Neurocomputing: Algorithms, Architectures and Applications,
pages 41-50. Springer-Verlag, 1990.
[117] J. Weston and C. Watkins. "Multi-class support vector machines ". Technical Report, Royal
Holloway, Department of Computer Science, University of London, 1998.
136
Bibliographie
[118] J. Weston and C. Watkins. "Support vector machines for multi-class pattern recognition". In
Proceedings of the 7th European Symposium on Artificial Neural Networks, pages 219-224, Bruges,
Belgium, 21-23 April 1999.
[119] R. Rakotomalala. "Graphes d’Induction". Thèse de doctorat, Université Claude Bernard Lyon 1,
1997.
[120] P. Langley, W. Iba, and K. Thompson. "An analysis of Bayesian classifiers". In Proceedings of the
10th National Conference on Artificial Intelligence, pages 223-228, Menlo Park, CA, USA, July 12-16,
1992.
[121] L. M. Manevitz, and M.Yousef, "One-Class SVMs for Document Classification", Journal of
Machine Learning Research, Vol. 2, pages 139-154,2001.
[122] L. Hamel. "Knowledge discovery with support vector machines" . Wiley Edition, 2009.
[123] B. Schölkopf, J.C. Platt, J. Shawe-Taylor, A.J. Smola, and R.C. Williamson. "Estimating the
support of a high-dimensional distribution". Neural Computation, Vol.13, N°. 7, pages 1443-1471,
2001.
[124] J.A. K. Suykens, T. Van Gestel, J. De Brabanter, B. De Moor, and J. Vandewalle. "Least Squares
Support Vector Machines" . World Scientific pub, Singapore, 2002.
[125] J.A.K. Suykens and J. Vandewalle. "Least squares support vector machine classifiers". Neural
Processing Letters, Vol. 9, N°. 3, pages 293-300, 1999.
[126] T. Van Gestel, J.A. Suykens, G. Lanckriet, A. Lambrechts, B. De Moor , and J. Vandewalle.
"Bayesian framework for least-squares support vector machine classifiers, gaussian processes, and
kernel Fisher discriminant analysis". Neural Computation, Vol. 14, N°. 5, pages 1115-1147, 2002.
[127] Z. Guo and G. Bai. "Application of Least Squares Support Vector Machine for Regression to
Reliability Analysis". Chinese Journal of Aeronautics, Vol. 22, N°. 2, pages 160-166, 2009.
[128]E. Forgy. "Cluster analysis of multivariate data : Efficiency vs. interpretability of
classifications". Biometrics, Vol. 21, N°. 3, pages 768-769, 1965.
[129] D. Bhattacharyya and T.H. Kim. "Signature Recognition using Artificial Neural Network". In
Proceedings of the 9th WSEAS International Conference on Computational Intelligence, Man-Machine
Systems and Cybernetics, pages 183-187, Merida,Venezuela, 2010.
[130] M. Muditha MBBS Hapudeniya. "Artificial Neural Networks in Bioinformatics". Sri Lanka Journal
of Bio-Medical Informatics.Vol. 1, N°. 2, pages 104-111, 2010.
[131]S. H. Lin, S. Y. Kung, and L. J. Lin. "Face recognition/detection by probabilistic decision based
neural network". IEEE Transactions on Neural Networks, Special Issue on Artificial Neural Networks
and Pattern Recognition, Vol. 8, N°.1, January 1997.
[132] A. B. Sonkamble and D. D. Doye. "Speech Recognition Using Vector Quantization through
Modified K-means LBG Algorithm". Computer Engineering and Intelligent Systems, Vol. 3, N°. 7,
pages 137- 145, 2012.
[133] T. Fawcett. "In vivo spam filtering: A challenge problem for data mining". In Proceedings of the 9th
ACM SIGKDD International Conference on Knowledge Discovery and Data Mining Explorations,
Vol. 5, N°. 2 , Washington, DC, USA, Aug 24-27,2003.
[134] M. T. Wishart, and R. G. Harley, "Identification and control of induction machines using artificial
neural networks". In proceedings of IEEE Industry Applications Society Annual Meeting, pages703709,Toronto, Canada, 2-8 Oct, 1993.
[135] O. Matan , R. K. Kiang , C. E. Stenard , B. Boser , J. S. Denker , D. Henderson , R. E. Howard , W.
Hubbard , L. D. Jackel , and Y. Le Cun, "Handwritten Character Recognition Using Neural Network
137
Bibliographie
Architectures", In Proceedings of the 4th United States Postal Service Advanced Technology
Conference, pages 1003-1011, Washington D.C, Nov 1990.
[136] J.F Casta and B. Prat. "Approche connexionniste de la classification des entreprises : contribution au
traitement d’informations incomplètes". Congrès de l’AFC, Paris, 1994.
[137] T. Kohonen. "Self-Organization and Associative Memory". Springer-Verlag, Berlin. 1988.
[138] R.D. Reed and R.J. Marks. "Neural Smithing. Supervised Learning in Feedforward Neural
Networks". A Bradford Book MIT Press, 1998.
[139] S. Haykin. "Neural networks: a comprehensive foundation". Prentice Hall, New jersey, USA , 1999.
[140] K. Bhangale and S. Krishnan. "Speaker Recognition Using K-Means Algorithm". International
Technology Research Letters, Vol. 1 , N°. 1, pages 66- 69, 2012.
[141] G. Salton and M.J. McGill, "Introduction to Modern Information Retrieval". McGraw-Hill, 1983.
[142] H.G. Rong, M.W. Li, and L. J. Cai. "An early recognition algorithm for BitTorrent traffic based on
improved K-means". Journal of Central South University of Technology , Vol. 18, N°. 6, pages 20612067, 2011.
[143] R. Ji, X. D. Liu, M. Wu, and J. Liu. "The Application of SVDD in Gene Expression Data
Clustering". In Proceedings of the 2nd International Conference on Bioinformatics and Biomedical
Engineering, pages 371- 374 , Shanghai, 2008.
[144] M. Bicego, E. Grosso, M. Tistarelli. "Face Authentication Using One-Class Support Vector
Machines". LNCS, Vol. 3781, pages 15-22, Springer Berlin, 2005.
[145] T. Benkedjouh , K. Medjaher, N. Zerhouni , and S. Rechak. "Fault Prognostic of Bearings by using
Support Vector Data Description". In Proceedings of the IEEE International Conference on Prognostics
and Health Management, Denver United States, 18-21 Jun ,2012.
[146] T. Joachims. "Text categorization with Support Vector Machines : Learning with many relevant
features". Machine Learning: ECML-98, Lecture Notes in Computer Science, Vol. 1398, pages 137142,1998.
[147] S. Tong, D. Koller . "Support Vector Machine Active Learning with Applications to Text
Classification". Journal of Machine Learning Research, Vol. 2, pages 45-66, 2001.
[148] Y. Zhou, Y. Gong, J. Wang, J. Sun, X. Zhang , and T. Zhu. "Speaker verification based on
SVDD". In Proceedings of the 3rd International Congress on Image and Signal Processing , Vol. 7,
pages 3168 - 3172, Yantai, China, 16-18 Oct, 2010.
[149] K. Jonsson, J. Kittler, Y.P. Li, and J. Matas. "Support vector machines for face authentication".
Journal of Image and Vision Computing, Vol. 20, N° (5-6), pages 369-375, 2002.
[150] J. Lu, K.N. Plataniotis, A.N. Venetsanopoulo. "Face recognition using feature optimization and νsupport vector learning". In Proceedings of the IEEE Neural Networks for Signal Processing XI, pages
373-382, North Falmouth, MA (USA), 10-12 Sep 2001.
[151]J. Weston and C. Watkins. "Support vector machines for multi-class pattern recognition". In
Proceedings of the 7th European Symposium on Artificial Neural Networks, Bruges, Belgium, pages
219-224, 1999,
[152] D. Krishna Sandeep Reddy and A. K. Pujari. "N-gram analysis for computer virus detection".
Journal in Computer Virology, Vol. 2, N°. 3, pages 231-239, 2006.
[153] J. Jang, D. Brumley, and S. Venkataraman. "Bitshred: feature hashing malware for scalable triage
and semantic analysis". In Proceedings of the 18th ACM Conference on computer and communication
security, Chicago, IL, USA, 17-21 Oct, 2011.
[154] C. E. Shannon. "Prediction and entropy of printed English". Bell System Technical Journal,Vol. 30,
N. 1, pages 50- 64, 1951.
138
Bibliographie
[155] Y. Elovici, A. Shabtai, R. Moskovitch, G. Tahan, and C. Glezer. "Applying machine learning
techniques for detection of malicious code in network traffic". In Proceedings of the 30th Annual
German Conference on Artificial Intelligence (KI 2007), pages 44-50, Osnabrück, Germany, Sept 1013, 2007.
[156] O. Sornil and C. Liangboonprakong. "Malware Classification Using N-grams Sequential Pattern
Features". International Journal of Information Processing and Management, Vol. 4, N°.5, July 2013.
[157] B. Zhang, J. Yin, J. Hao, D. Zhang, and S. Wang. "Malicious codes detection based on ensemble
learning". In Proceedings of the 4th International Conference on Autonomic and Trusted Computing,
pages 468-477, Hong Kong, China, July 11-13, 2007.
[158] O. Henchiri and N. Japkowicz. "A feature selection and evaluation scheme for computer virus
detection". In Proceedings of the 6th International Conference on Data Mining, pages 891-895, Hong
Kong , 18-22 Dec, 2006.
[159] M.G. Schultz, E. Eskin, E. Zadok and S.J. Stolfo. "Data Mining Methods for Detection of New
Malicious Executables". In Proceedings of the IEEE Symposium on Security and Privacy, pages 38-49,
Oakland, CA, 2001.
[160] T. Abou-Assaleh, N. Cercone, V. Keselj, and R. Sweidan. "N-grams-based detection of new
malicious code". In Proceedings of the 28th International Computer Software and Applications
Conference, Vol. 2, pages 41-42, Hong Kong, China, 28-30 sept, 2004.
[161] J.Z. Kolter and M.A. Maloof. "Learning to detect and classify malicious executables in the wild".
Journal of Machine Learning Research, Vol. 7, pages 2721-2744, 2006.
[162] J. Z. Kolter and M. A. Maloof. "Learning to detect malicious executables in the wild". In
Proceedings of the 10th International Conference on Knowledge Discovery and Data Mining, pages
470-478, New York, USA, 22-25 Aug, 2004.
[163]I. Santos, Y. K. Penya, J. Devesa, and P. G. Garcia, "N-grams-based file signatures for malware
detection". In Proceedings of the 11th International Conference on Enterprise Information Systems, 610, May 2009.
[164] J. Seo , H. Ko. "Face detection using support vector domain description in color images". In
Proceedings of the IEEE International Conference on Acoustics, Speech, and Signal Processing, Vol.
5, pages 729-732, Quebec , Canada, 17-21 May, 2004.
[165] J. O. Kephart and W. C. Arnold, "Automatic extraction of computer virus signatures". In
Proceedings of the 4th International Conference on Virus Bulletin, pages 179-194, Jersey, Islands, 8-9
Sept, 1994.
[166] http://www.av-test.org/en/statistics/malware/
[167] http://www.symantec.com/
[168] G. McGraw and G. Morrisett. "Attacking malicious code: A report to the infosec research council" .
IEEE Software, Vol. 17, N°.5, pages 33-44, 2000.
[169] F. Cohen. "Computer Viruses". Thèse de doctorat, University of Southern California, 1985.
[170] S.W Lee, J. Park, S.W Lee. "Low resolution face recognition based on support vector data
description". Pattern Recognition, Vol. 39, N°. 9, pages 1809-1812, 2006.
[171] VX Heavens, http://www.vxheaven.org
[172] Y. Amit et A. Murua, "Speech Recognition Using Randomized Relational Decision Trees", IEEE
Transactions on Speech and Audio Processing, Vol. 9, N°. 4, 2001.
[173]V. Wan, W.M. Campbell. "Support vector machines for speaker verification and identification". In
Proceedings of IEEE Workshop on Neural Networks for Signal Processing X, Vol. 2, pages 775 784, Sydney, NSW,11-13 Dec, 2000.
139
Bibliographie
[174] J.C. Platt. "Fast training of Support Vector Machines Using Sequential Minimal Optimization",
Advances in Kernels Methods: Support Vector Learning, MIT Press, Cambridge, Mass, 1998.
[175] J.C. Platt, N. Cristianini, and J. Shawe-Taylor. "Large Margin DAG’s for Multiclass Classification".
Advances in Neural Information Processing Systems. MIT Press, Cambridge, MA, Vol. 12, pages 547553, 2000.
[176] N. Cristianini and J. Shawe-Taylor. "An Introduction to Support Vector Machines and Other
Kernel-based Learning Methods". Cambridge University Press, 2000.
[177] M. EL Boujnouni, M. Jedra, N. Zahid. "A Small Sphere and Parametric Volume For Support Vector
Domain Description". Journal of Theoretical and Applied Information Technology, Vol. 46, N°. 1 ,
pages 471- 478, 2012.
[178] M. F. Glenn and O. L. Mangasarian. "Multicategory Proximal Support Vector Machine
Classifiers". Machine Learning, Vol. 59, N°.(1-2), pages 77-97, 2005.
[179] R. Rakotomalala. "Arbres de Décision", Revue modulad, pages 163- 187, N°. 33, 2005.
[180] S. Aseervatham. "Apprentissage à base de Noyaux Sémantiques pour le Traitement de Données
Textuelles ". Thèse de doctorat, Université Paris 13 - Institut Galilée, 2007.
[181] G. Pagallo and D. Haussler. "Boolean feature discovery in empirical learning". Machine Learning,
Vol. 5, N°.1, pages 71-99, 1990.
[182] H. Ragavan and L. Rendell. "Lookahead feature construction for learning hard concepts". In
proceedings of the 10th International Conference on Machine Learning, pages 252-259, Amherst, MA,
USA, 1993.
[183] D. Zighed, J. Auray, and G. Duru. "SIPINA : Méthode et Logiciel". Edition A. Lacassagne Eska,
Lyon, France, Mars 1992.
[184] J. Oliver. "Decision Graphs - An extension of Decision Trees". In proceedings of the 4th
International Workshop on Artificial Intelligence and Statistics, pages 343-350, Fort Lauderdale,
Florida, USA, 3-6 Jan, 1993.
[185] D. Mckay and C. Fyfe. "Probability prediction using support vector machines". In Proceedings of
the 4th International Conference on Knowledge Based Intelligent Engineering Systems and Allied
Technologies, Vol. 1, pages 189-192, Brighton, 30 Aug - 1 Sept, 2000.
[186] O. Mangasarian. "A Finite Newton Method for Classification Problems". Technical Report,
Computer Sciences Department, University of Wisconsin, Madison, USA, 2001.
[187] Y.J. Lee and O.L. Mangasarian. "RSVM: Reduced support vector machines". In Proceedings of the
1st SIAM International Conference on Data Mining , pages 325-361, Chicago, USA, 5-7 April, 2001.
[188] G. Fung and L. Mangasarian. "Proximal support vector machine classifiers". In Proceedings of the
7th ACM conference on knowledge discovery and data mining, ACM, pages 77-86, San Francisco, CA,
USA, 26-29 Aug, 2001.
[189] O.L. Mangasarian and D.R. Musicant. "Lagrangian support vector machines". Journal of Machine
Learning Research, Vol. 1, pages 161-177, 2001.
[190] D. Wilking and T. Rofer. "Realtime Object Recognition Using Decision Tree Learning". In
proceedings of RoboCup 2004 Symposium, Lecture Notes in Artificial Intelligence Springer, Vol.
3276, pages 556-563, 2005.
[191] R. Casey and G. Nagy. "Decision tree design using probabilistic models". IEEE Transactions on
Information Theory, Vol. 30, N°. 1, pages 93 - 99, 1984.
[192] J.L. Bentley. "Multidimensional binary search trees used for associative searching".
communications of the Association for Computing Machinery, Vol. 18, N°. 9, pages 509-517, 1975.
140
Bibliographie
[193] B. Zhao, Y. Liu, and S.W. Xia. "Support vector machines and its application in handwritten
numerical recognition". In Proceedings of the 15th International Conference on Pattern Recognition,
Vol. 2, pages 720-723, Barcelona, 3-7 Sept. 2000.
[194] C.C. Aggarwal and P.S. Yu. "A survey of uncertain data algorithms and applications". IEEE
Transactions on Knowledge and Data Engineering, Vol. 21, N°. 5, pages 609-623, 2009.
[195] J. Kulchandani, K. J. Dangarwala. "Blind Source Separation via Independent Component Analysis :
Algorithms and Applications". International Journal of Computer Science and Information
Technologies, Vol. 5, N°.5, pages 6739-6743 , 2014.
[196] B. Liu, Y. Xiao, L. Cao, Z. Hao, and F. Deng. "SVDD-based outlier detection on uncertain data".
Knowledge and Information Systems, Vol. 34, N°. 3, pages 597-618, 2013.
[197] L. Ramirez, W. Pedrycz, and N. Pizzi. "Severe storm cell classification using support vector
machines and radial basis approaches". In Proceedings of the Canadian Conference on Electrical and
Computer Engineering, Vol. 1, pages 87-91, Toronto, Canada, 13-16 May, 2001.
[198] M. M. Breunig, H. P. Kriegel, R. T. Ng, and J. Sander. "Lof: Identifying density-based local
outliers". In Proceedings of the ACM SIGMOD international conference on Management of data, Vol.
29, N°. 2, pages 93-104, New York, USA, 16-18 May, 2000.
[199] R.L Bahl, P. Brown, P.V de Souza, and R. Mercer. "A tree-based language model for natural
language speech recognition". IEEE Transactions on Acoustics, Speech and Signal Processing, pages
1001 - 1008 , Vol. 37 , N°. 7, 1989.
[200] L. Chu and C.Wu . "A fuzzy support vector machine based on geometric model". In Proceedings of
the 5th World Congress on Intelligent Control and Automation, Vol. 2, pages 1843-1846, Hangzhou,
China, 15-19 June, 2004.
[201] R. Jayadeva. Khemchandani, and S. Chandra. "Fuzzy linear proximal support vector machines for
multi-category data classification". Neurocomputing, Vol. 67, pages 426-435, 2005.
[202] B. Cui, A. Mondal, J. Shen, G. Cong, and K. Tan. "On Effective Email Classification via Neural
Networks". In Proceedings of DEXA, pages 85-94. Copenhagen, Denmark, 22-26 Aug, 2005.
[203] L. Candillier. "Contextualisation, visualisation et évaluation en apprentissage non supervisé ". Thèse
de doctorat, Université Charles de Gaulle - Lille 3, 2006.
[204] M. Cha, J.S. Kim, S.H. Park, and J.G. Baek. "Non parametric Control Chart using Density Weighted
Support Vector Data Description". World Academy of Science, Engineering and Technology, Vol. 6,
pages 945-949, 2012.
[205] M. R. Azimi-Sadjadi and S. A. Zekavat. "Cloud classification using support vector machines". In
Proceedings of IEEE Geoscience and Remote Sensing Symposium, Vol. 2, pages 669-671, Honolulu,
HI, 24-28 July 2000.
[206] J. Chen, G. Xiao, F. Gao, and Y. Zhang. "Spam filtering method based on an artificial immune
system". In proceedings of the IEEE International Conference on Multimedia and Information
Technology, pages 169-171, Three Gorges, china, 30-31 Dec, 2008.
[207] E. J. Bredensteiner and K. P. Bennett. "Multicategory Classification by Support Vector Machines" .
Computational Optimizations, pages 53-79, Springer US, 1999.
[208] Y. Guermeur, A. Elisseeff, and H. Paugam-Moisy. "A New Multi-Class SVM Based on a Uniform
Convergence Result" . In Proceedings of the International Joint Conference on Neural Networks, Vol.
4, pages 83-188, Como, Italy, 24-27 Jul, 2000.
[209] B. Schölkopf, A. J. Smola, R. C. Williamson, and P. L. Bartlett. "New Support Vector Algorithms ".
Neural Computation, Vol. 12, N°. 5, pages 1207-1245, 2000.
141
Bibliographie
[210] L. Zhang, F. Lin, and B. Zhang. "Support vector machine learning for image retrieval". In
Proceedings of the International Conference on Image Processing, Vol. 2, pages 721-724,
Thessaloniki, Greece, 7-10 Oct, 2001.
[211] C. C. Aggarwal. "Managing and mining uncertain data". Advances in Database Systems, Vol. 35,
pages 1-41, Springer US, 2009.
[212] J. McQueen. "Some methods for classification and analysis of multivariate observations". In
Proceedings of the 5th Berkeley Symposium on Mathematical Statistics and Probability, Vol. 1, pages
281-297, University of California, Berkeley, 21 June-18 July, 27 Dec, and 7 Jan, 1965.
[213] G. Hamerly , C. Elkan. "Learning the k in k-means". Advances in Neural Information Processing
Systems, MIT Press, Cambridge, MA, USA, Vol. 17, 2003.
[214] D. Pelleg, A. Moore. "X-means: Extending k-means with efficient estimation of the number of
clusters". In Proceedings of the 17th International Conference on Machine Learning, Morgan
Kaufmann, pages 727-734, San Francisco, CA, 29 June -2 July, 2000.
[215] H. Drucker, S. Wu , V. N. Vapnik. "Support Vector Machines for Spam Categorization". IEEE
Transaction Neural Networks, Vol. 10, N°. 5, pages 1048-1054, 1999.
[216] K. P. Bennett and A. Demiriz. "Semi-supervised support vector machines" . Advances in neural
information processing systems XI, pages 368-374, 1998.
[217] T. Joachims. "Transductive Inference for Text Classification using Support Vector Machines". In
Proceedings of the 16th International Conference on Machine Learning, pages 200-209, Bled, Slovenia,
27-30 June, 1999.
[218] A. Likas, N.Vlassis, J. J. Verbeek. "The global k-means clustering algorithm". Pattern Recognition,
Vol. 36, N°. 2, pages 451- 461, 2003.
[219] G. Fung and O.L. Mangasarian. "A Finite Selection Newton Method for Support Vector Machine
Classification". Journal of Computational Optimization and Applications, Vol. 28, N°. 2, Pages 185202, 2004.
[220] A. McCallum and K. Nigam. "A comparison of event models for naive bayes text classification". In
AAAI/ICML-98 Workshop on learning for Text Categorization, pages 41-48 , Madison, Wisconsin,
July 26-27, 1998.
[221] A.M. Hani, H.A. Nugroho, and H. Nugroho. "Gaussian bayes classifier for medical diagnosis and
grading: Application to diabetic retinopathy". In Proccedings of the Conference on Biomedical
Engineering and Sciences, pages 52 - 56, Kuala Lumpur, Malaysia, 30 Nov-2 Dec, 2010.
[222] P. Domingos, M. Pazzani. "On the optimality of the simple bayesian classifier under zero-one loss" .
Machine Learning, Vol. 29, N°. (2-3), pages 103-130, 1997.
[223] G.F. Cooper. "The computational complexity of probabilistic inference using bayesian belief
networks". Artificial Intelligence, Vol .42, N°. (2-3), pages 393-405, 1990.
[224] N. Ben Amor , S. Benferhat , Z. Elouedi. "Réseaux bayésiens naïfs et arbres de décision dans les
systèmes de détection d’intrusions". Revue des Sciences et Technologies de l'Information - Série TSI :
Technique et Science Informatiques. Vol. 25, N°. 2, pages 167 - 196, 2006.
[225]S. Tayal and S. Vijay. "Human Emotion Recognition and Classification from Digital Colour Images
Using Fuzzy and PCA Approach". Advances in Intelligent Systems and Computing, Vol. 167, pages
1033-1040, 2012.
[226] H. J Lee, Y. J Lee and C. W Lee. "Gesture Classification and Recognition Using Principal
Component Analysis and HMM". Lecture Notes in Computer Science, Vol. 2195, pages 756-763,
2001.
142
Bibliographie
[227] D.T. Lin. "Facial Expression Classification Using PCA and Hierarchical Radial Basis Function
Network". Journal of Information Science and Engineering, Vol. 22, N°. 5, pages 1033-1046, 2006.
[228] R. Zhang and A.I. Rudnicky. "A large scale clustering scheme for kernel k-means ". In
Proceedings of the 16th International Conference on Pattern Recognition, Vol. 4, pages 289-292,
Quebec, Canada, 11-15 Aug, 2002.
[229] L. Mechtri, F. D. Tolba, and N. Ghoualmi. "Intrusion detection using principal component analysis".
In Proceedings of the 2nd International Conference on Engineering Systems Management and Its
Applications , pages 1-6, Sharjah, UAE, 30 March - 01 April, 2010.
[230] D. Nuzillard and A. Bijaoui. "Blind source separation and analysis of multi-spectral astronomical
images". Astronomy & Astrophysics, Supplement. Vol. 147, N°. 1, pages 129-138, 2000.
[231] J. Hérault, C. Jutten, and B. Ans. "Détection de grandeurs primitives dans un message composite par
une architecture de calcul neuromimétique en apprentissage non supervisé". In Actes du 10éme colloque
Groupe d’Etudes du Traitement du Signal et des Images, pages 1017-1020, Nice, France, 20-24 Mai,
1985.
[232]D.T. Pham. "Blind separation of instantaneous mixture of sources via independent component
analysis" . IEEE Transactions on Signal Processing, Vol. 44, N°.11, pages 2768-2779, 1996.
[233] P. Demartines, J. Hérault . "Curvilinear component analysis: A self-organizing neural network for
non linear mapping of data set" . IEEE Transactions on Neural Networks, Vol. 8, N°.1, pages 148-154,
1997.
[234]M. El boujnouni, M. Jedra, N. Zahid, "New Decision Function for Support Vector Data Description",
In Proceedings of IEEE 2nd International Conference on Innovative Computing Technology (INTECH
2012), pages. 305-310, Casablanca , Morocco, 18-20 Sept, 2012.
143
ANNEXE
ANNEXE
Description sommaire des bases de données utilisées dans les expériences.
1. SPECTF Heart : La base de données décrit le diagnostic des images cardiaques obtenues
par la tomographie (émission de protons uniques SPECT). Elle contient 267 exemples
(patients) chaque exemple est classé dans une des deux catégories: normale ou anormale ;
2. Ionosphere : La base de données provient d’un système de radar composé de 16 antennes
de haute fréquence avec une puissance d'émission totale d'ordre de 6,4 kilowatts. Les
cibles étaient des électrons libres dans l'ionosphère. Les bons résultats sont ceux mettant
en évidence un type de structure particulière dans l'ionosphère et vice versa ;
Monk’s : La base de données décrit des expériences en robotique artificielle. Elle est
composée de 432 exemples (robots) à classer en deux catégories chaque exemple est
décrit par six attributs (A1, A2, A3, A4, A5, A6) qui sont :
A1
A2
A3
A4
A5
A6
Forme de la tête
: ronde, carrée ou octogonale.
Forme du corps
: ronde, carrée ou octogonale.
Sourire
: oui ou non.
Objet tenu
: épée, ballon ou drapeau.
Couleur du costume : rouge, jaune, vert ou bleu.
Porte une cravate
: oui ou non.
Suivant les propriétés de ces attributs on distingue trois problèmes différents:
3. Monks-1: La base de données est sous forme normale disjonctive standard et
elle est censée être facilement apprenable par la plupart des classifieurs;
4. Monks-2 : La base de données est similaire à des problèmes de parité, elle
combine des attributs différents ce qui la rend compliquée à être classifier ;
5. Monks-3 : La base de données est utilisée pour évaluer les classifieurs sous la
présence de bruit ;
6. Iris : La base de données contient 150 exemples, répartis en trois classes équilibrées (50
exemples par classe) correspondant à trois espèces florales : Iris setosa, Iris versicolor et
Iris virginica. La classe setosa est linéairement séparable des deux autres, alors que
versicolor et virginica ne le sont pas;
7. Teaching Assistant Evaluation : La base de données est constituée des évaluations de la
performance d'enseignement, en trois semestres régulièrs et deux semestres d'été de 151
enseignants assistants, les notes ont été divisées en trois catégories ayants
approximativement la même taille ("faible", "moyenne", et "élevée") ;
144
ANNEXE
8. Wine : La base de données est le résultat d’une analyse chimique des vins de la même
région mais issus de trois cultivateurs différents. L'analyse détermine les quantités de
constituants présents dans chaque type de vins ;
9. Connectionist Bench (Mines, Roche): La base de données est partagée en deux classes, la
première contient 111 signaux sonar rebondis en retour de la part d'un métal cylindrique,
la seconde comporte 97 signaux rebondis de la part d'un rocher;
10. Seeds : La base de données est une mesure des propriétés géométriques des noyaux de
trois variétés de blé (Kama, Rosa et Canadian).
11. Glass: La base de données est issue de la classification des types de verre pour une
enquête criminologique, les données correspondent au type de verre et les attributs
correspondent à leur contenu d’oxyde;
12. Survival Haberman : La base de données est le résultat d’une étude de la survie des
patientes ayant subis une chirurgie pour le cancer du sein ;
13. Vertebral Column : La base de données contient des informations concernant six
caractéristiques biomécaniques, utilisées pour classer les patients orthopédiques en 3
classes à savoir Normal, Hernie discale ou Spondylolisthésis ou bien 2 classes : normale
et anormale ( Hernie discale et Spondylolisthésis) ;
14. Ecoli : La base de données décrit des sites de localisation de protéines , il contient 336
modèles répartis en 8 classes: classe 1 ( cytoplasme ) , classe 2 ( membrane interne sans
séquences de signal ) , classe 3 ( perisplasm ) , classe 4 ( membrane interne , séquences de
signal non clivables) , classe 5 (membrane externe) , classe 6 (membrane externe :
lipoprotéine) , classe 7 (membrane interne : lipoprotéine) et de la classe 8 (membrane
interne, séquence signal clivable ) ;
15. Liver Disorders : La base de données contient les résultats de tests sanguins qui sont
censés être sensible à des troubles du foie et qui pourraient résulter de la consommation
excessive d'alcool ;
16. Breast Cancer Wisconsin : La base de données comporte des caractéristiques calculées à
partir d'une image numérisée, d'une aspiration à l'aiguille fine (FNA) d'une masse au sein.
elle décrit les propriétés des noyaux de cellules présentes dans l’image ;
17. Balance-scale: La base de données est la modélisation des résultats expérimentaux
psychologiques. Chaque exemple de la base possède quatre attributs (Poids gauche,
Distance gauche, Poids droit, Distance droite).
145
ANNEXE
Bases d’apprentissage
Nombre
d’échantillons
Nombre de
classes
Caractéristiques
SPECTF Heart
267
2
44
Ionosphere
351
2
34
Monks-1
432
2
6
Monks-2
432
2
6
Monks-3
432
2
6
Iris
150
3
4
Teaching Assistant Evaluation
151
3
5
Wine
178
3
13
Connectionist Bench (Sonar, Mines vs.
Rocks)
208
2
60
Seeds
210
3
7
Glass
214
6
9
Haberman
306
2
3
Vertebral Column
310
3
6
Ecoli
336
8
7
Liver Disorders
345
2
6
Breast Cancer Wisconsin
569
2
31
Balance Scale
625
3
4
Tableau des bases de données utilisées pour l’évaluation des performances de SVDD
146
Discipline
Spécialité
Laboratoire
Directeur du Laboratoire
Directeur de thèse
Titre de la thèse
Prénom, Nom
: Sciences de l’ingénieur
: Informatique
: Laboratoire Conception et Systèmes (Microélectronique et
Informatique)
: Aziz ETTOUHAMI
: Mohamed JEDRA
: Contribution à l’optimisation de la machine d’apprentissage
SVDD application à la détection de spams et de virus informatiques
: Mohamed El Boujnouni
Résumé : Cette thèse s’intéresse à la problématique de la classification automatique supervisée,
en particulier l’amélioration des machines d’apprentissage à noyaux. Malgré les excellentes
performances de ces dernières elles possèdent certaines limitations liées soit à leur conception
soit à la manière dont elles exploitent les données d’apprentissage. Ce travail vise à remédier à
ces limitations afin d’appliquer ce type de machine à des problèmes spécifiques à la sécurité des
systèmes informatiques.
L’objectif essentiel de nos travaux de recherche réside dans l’amélioration de la
performance de la machine Support Vector Domain Description en terme de capacité de
généralisation. Des améliorations du SVDD ont été élaborées en se basant essentiellement sur
deux critères : d’une part, l’optimisation de la séparabilité interclasses du SVDD et d’autre part,
le paramétrage optimal de l’espace des caractéristiques engendré par des noyaux Gaussiennes et
l’association de nouveaux coefficients de confiance aux données d’apprentissage. Ces travaux,
qui sont basés sur des fondements mathématiques, ont fait l’objet de tests sur des bases
artificielles et réelles utilisées fréquemment dans la littérature. Les différents tests que nous avons
réalisés ont montré de très bons résultats des approches proposées.
Après les tests d’évaluation, nos travaux de recherche ont été couronné par l’application
de la machine SVDD améliorée ainsi qu’une technique d’extraction des connaissances à partir
des données nommée N-gramme sur deux problèmes importants dont souffrent les systèmes
informatiques qui sont les virus informatiques et les courriers électroniques indésirables
communément connus sous le nom de spams. Cette application vise à développer des systèmes
automatiques de filtrage et de détection de ces menaces électroniques. Les résultats
expérimentaux faisant intervenir deux bases standard de spams et de virus ont montré l’intérêt
pratique de SVDD avec nos améliorations.
Mots clé(7): Classification automatique supervisée, machines d’apprentissage à noyau, Support
Vector Machine (SVM), Support Vector Domain Description(SVDD), N-gramme, détection de
virus informatiques, filtrage de spams.
147
Téléchargement