• Aucun résultat trouvé

Contribution à l’optimisation de la machine d’apprentissage SVDD application à la détection de spams et de virus informatiques

N/A
N/A
Protected

Academic year: 2021

Partager "Contribution à l’optimisation de la machine d’apprentissage SVDD application à la détection de spams et de virus informatiques"

Copied!
147
0
0

Texte intégral

(1)

Contribution à l’optimisation de la machine

application à la détection de spams et de virus informatiques

Président : Mr. Aziz ETTOUHAMI Examinateurs : Mr. Jamal OUENNICHE Mr. Abdelaziz BOUROUMI Mr. Noureddine ZAHID Mr. Mohamed JEDRA Mr. Mohammed Majid HIMMI

Faculté des Sciences, 4 Avenue Ibn Battouta B.P. 1014 RP,

Tel +212 (0) 37 77 18 34/35/38, Fax : +212 (0) 37 77 42 61, http://www.fsr.ac.ma

UNIVERSITÉ MOHAMMED V

FACULTÉ DES SCIENCES

Rabat

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 :

Professeur à la Faculté des Sciences de Rabat

Professeur au Business School, Université d’Edinburgh Professeur à la Faculté des Sciences Ben M’

Professeur à la Faculté des Sciences de Rabat Professeur à la Faculté des Sciences de Rabat HIMMI Professeur à la Faculté des Sciences de Rabat

Faculté des Sciences, 4 Avenue Ibn Battouta B.P. 1014 RP, Rabat

Tel +212 (0) 37 77 18 34/35/38, Fax : +212 (0) 37 77 42 61, http://www.fsr.ac.ma

1 N° d’ordre : 2785

d’apprentissage SVDD

application à la détection de spams et de virus informatiques

à la Faculté des Sciences de Rabat.

niversité d’Edinburgh (UK) Ben M’sik Casablanca. à la Faculté des Sciences de Rabat.

à la Faculté des Sciences de Rabat. à la Faculté des Sciences de Rabat.

Rabat – Maroc Tel +212 (0) 37 77 18 34/35/38, Fax : +212 (0) 37 77 42 61, http://www.fsr.ac.ma

(2)

2

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.

(3)

3 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.

(4)

4

Dédicace

(5)

5 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

(6)

6

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

(7)

7

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

(8)

8

5.4. Conclusion ... 127

Conclusion générale ... 128

Bibliographie ... 131

(9)

9

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.

(10)

Introduction Générale

10 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é, semi-supervisé 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 mon-class et bi-mon-classes, leurs variantes, et leurs mode d’utilisation dans le cas multi-mon-classes , le troisième décrit le principe de transformation de données dans un espace augmenté à l’aide des fonctions noyaux.

(11)

Introduction Générale

11 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.

(12)

12

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.)…

(13)

État de l'art de l’apprentissage automatique

13 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.

(14)

État de l'art de l’apprentissage automatique

14

- 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 est associé à un label , ce label identifie une classe parmi , … , (Figure 1.1).

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 label y ∈ ℝ (Figure 1.2).

(15)

Figure

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 le classifieurs Bayesiens.

1.3.1. Les réseaux de neurones

Les réseaux de neurones élémentaires (les neurones formels (partiellement connectés, à connexions leurs fonctions de transition [15]

Chez les êtres vivants, les neurones ramifications nommés les dendrites par les de l’extérieur vers le corps de la cellule

le résultat au travers l’axone, le signal émis par le neurone peut ensuite être transmis au travers les synapses (les points de connexion)

Figure 1.

É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 : les réseaux de neurones, les séparateurs à vastes marges, les arbres de décision et le

Les réseaux de neurones à apprentissage supervisé

de neurones sont l’association en un graphe plus ou moins es neurones formels). Ils se distinguent essentiellement

à connexions complètes, à couches), leur nombre de neurones [15].

Chez les êtres vivants, les neurones (Figure 1.3) sont les cellules nerveuses, ils sont dotés de ns nommés les dendrites par lesquelles 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 axone, le signal émis par le neurone peut ensuite être transmis au travers (les points de connexion) aux autres neurones, aux fibres nerveuses ou musculaires;

Figure 1.3 - Schéma d’un neurone biologique

État de l'art de l’apprentissage automatique

15 Les modèles qui utilisent l’apprentissage supervisé sont nombreux. On peut citer parmi : les réseaux de neurones, les séparateurs à vastes marges, les arbres de décision et les

en un graphe plus ou moins complexe d’objets essentiellement par leur configuration nombre de neurones, et par

sont les cellules nerveuses, ils sont dotés de l’information (signal électrique) venue Le neurone traite cette information et renvoie axone, le signal émis par le neurone peut ensuite être transmis au travers fibres nerveuses ou musculaires;

(16)

État de l'art de l’apprentissage automatique

16 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 ℎ = !1 "# ≥ 00 "#&'&( Signe ")& = !+1 "# ≥ 0−1 "#&'&(

Linéaire =

Linéaire à seuil ou multi-seuils + = , ∈ [-, .]. "# ≥ . - "# ≤ - (

Sigmoïde + = 1

(17)

État de l'art de l’apprentissage automatique

17 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 :

(18)

État de l'art de l’apprentissage automatique

18 - 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 ;

(19)

État de l'art de l’apprentissage automatique

19

− 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 sur-apprentissage (Over-fitting). C’est un sur-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.

(20)

État de l'art de l’apprentissage automatique

20 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.

(21)

État de l'art de l’apprentissage automatique

21 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 non-incré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

(22)

État de l'art de l’apprentissage automatique

22 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

(23)

État de l'art de l’apprentissage automatique

23 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 76 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ément 0;<=. 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 /0;<= = A)BCD∈C

3 0;<=/ 3

3 0;<= = A)BCD∈C 3 0;<=/ 3 1.3 Il faut alors estimer les probabilités 3 et 3 0;<=/ à partir des données d'apprentissage. Les probabilités a priori des classes 3 , 3 F … , 3 ;G , peuvent être estimées facilement par :

3 =&&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⁄ 1.5

On peut alors estimer les probabilités 3 / 3 F/ … 3 ;K/ en supposant qu'elles suivent un modèle connu, par exemple, des distributions normales 3 </ ~ O P, Q .

(24)

État de l'art de l’apprentissage automatique

24 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].

(25)

État de l'art de l’apprentissage automatique

25

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).

(26)

État de l'art de l’apprentissage automatique

26 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 :

RS=3 T " "1 S 6 U

, R = 0, RS= RS 1.6

Où RS est le poids de la connexion entre les neurones # et W, est le nombre d’exemples à apprendre, et " est la XèY< entrée pour le neurone # (de même pour le neurone W). 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 :

Z [[ \ [[ ] ^# T RS. "S_ S∈` < 0 b'A" "_= −1 ^# T RS. "S_ S∈` > 0 b'A" "_ = 1 ^# T RS. "S_ S∈` = 0 b'A" "_ = "_1 1.7 (

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.

(27)

État de l'art de l’apprentissage automatique

27 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

(28)

État de l'art de l’apprentissage automatique

28 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 : QF= 1 2& & − 1 T T − S − S ; SU ; U = & − 1 T1 − ) − ) ; U 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:

u = .. 1.11 Avec

. . = 1 1.12 La variance des observations projetées s’écrit alors :

(29)

État de l'art de l’apprentissage automatique 29 QvF= & − 1 T u1 − ) u − ) ; U = & − 1 T1 − ) .. − ) ; U = . w & − 1 T1 − ) − ) ; 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 :

|Sous les contraintes Bv . }.

. . = 1 . . = 0 1.16 ( 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].

(30)

État de l'art de l’apprentissage automatique

30 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.

(31)

État de l'art de l’apprentissage automatique

31 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. 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 † , … , † ;

2. Assigner chaque objet à la classe dont le centroïde est le plus proche ;

3. 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 :

P =‡ Aˆ † T1

2‰Š‹D

Mettre à jour les assignations des objets Œ † aux classes en fonction de leur proximité aux nouveaux centroïdes de la façon suivante:

(32)

État de l'art de l’apprentissage automatique

32 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 k-means [94], Gaussian-k-means [213], X-k-means [214], global-k-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.

(33)

État de l'art de l’apprentissage automatique

33

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.

(34)

État de l'art de l’apprentissage automatique

34

− 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.

Figure

Figure 1.1 - Exemple d'un problème de classification
Figure 1.2 - Exemple d’un problème de régression.
Figure 1.5 - Exemple d’un Perceptron multi-couches  Les réseaux de RBF (Radial Basis Function)
Figure 1.6 - Représentation d’un réseau RBF
+7

Références

Documents relatifs

Variantes de la base d’apprentissage obtenues par tirages aléatoires avec remise depuis la base initiale. (sorte de « bootstrap » duplication/disparition aléatoires de

Pour calculer la matrice de confusion → nous avons besoin d’avoir un ensemble de prédictions afin de les comparer aux labels actuels. On peut faire les prédictions sur le test_set

• biais important: hommes petits et femmes grandes (erreur d'approximation). • variance faible: seuil de taille

• biais important: hommes petits et femmes grandes (erreur d'approximation). • variance faible: seuil de taille

Enfin, nous appliquerons notre vision de l’apprentissage dans une situation concrète de développement d’un nouveau système de dialogue dans le domaine du dialogue Homme-Robot

– les chaînes de mots données en sortie des systèmes de RAP sont généralement produites à l’aide de modèles ayant une portée très faible (modèles bigrammes ou trigrammes),

Section 1 focuses on linguistic aspects of language contact, and contains ten chapters cover- ing contact-induced change from a general point of view (Chapter 2), contact-induced

Nous détectons pour l’instant les objets déplacés dans un même lieu : le point de vue de la caméra a légèrement changé et les arrière-plans de l’image courante et de l’image