Ingnierie des connaissances: - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Ingnierie des connaissances:

Description:

Les algorithmes g n tiques (GAs) sont fond s sur la simulation des m canismes ... D'autres op rateurs de s lection sont alternativement possibles. ... – PowerPoint PPT presentation

Number of Views:64
Avg rating:3.0/5.0
Slides: 31
Provided by: Ada5155
Category:

less

Transcript and Presenter's Notes

Title: Ingnierie des connaissances:


1
Ingénierie des connaissances Algorithmes
Génétiques Jean-Marc Adamo
2
Algorithmes Génétiques Principe
2
Les algorithmes génétiques (GAs) sont fondés sur
la simulation des mécanismes de lévolution
Darwinienne.
Dans le domaine de lapprentissage supervisé les
GAs font usage des éléments suivants
  • Un espace de recherche ensemble (éventuellement
    infini) dobjets
  • appelés individus,
  • Un fichier dapprentissage permettant d'évaluer
    la performance de
  • chaque individu ou ensembles d'individus. Tout
    ensemble d'individus
  • forme une population.
  • Une procédure dévolution qui fonctionne de la
    manière suivante

tirer population initiale au hasard
k 1
Si critère darrêt non satisfait
  • Appliquer des opérateurs d'évolution pour générer
    la population suivante
  • sélection,
  • croisement (crossover),
  • mutation,
  • le croisement de populations ou la contamination
    génétique
  • par migration (sous-populations élevées en
    parallèle),
  • d'autres opérateurs spécifiques (selon
    l'application).

k k 1
3
Algorithmes Génétiques une procédure prototype
pour fixer les idées
3
Ressources et paramètres ? fonction de
performance (fitness) ?i?population ? ?(i)
?? ou ? population ? ?(population)
?? p taille de la population à toutes les
étapes (taille fixe) r taux de croisement (r
des individus de la population courante sont
impliqués dans un croisement à chaque
étape) et taux de sélection pour report ((1 - r )
des individus sont sélectionnés pour être
reportés dans la nouvelle population) m taux de
mutation (m de la nouvelle population font
l'objet d'une mutation à chaque étape)
4
Algorithmes Génétiques construction
4
Travail à faire pour construire un GA
  • codage des individus de la population
    (représentation formelle),
  • définition de la fonction de performance ?,
  • définition des fonctions de sélection aléatoires,
  • définition des opérateurs d'évolution
  • sélection, mutation, croisement, etc
  • définition de la valeur des paramètres.
  • Le détail de ce travail est particulier à chaque
    problème.
  • Perspective de lexposé
  • construction d'un GA pour le problème de
    l'apprentissage supervisé.

5
Algorithmes Génétiques Apprentissage supervisé
5
Position du problème
  • On veut
  • construire un système de règles caractérisant
  • les objets de chaque classe.
  • Exemple, pour le problème du classement des
    clients d'une banque
  • entre bons et mauvais clients, on veut
    construire
  • un système de règles caractérisant les bons
    clients, et
  • un système de règles caractérisant les mauvais
    clients.
  • Bien noter que la manière de poser le
    problème d'apprentissage supervisé.

6
Algorithmes Génétiques Apprentissage supervisé
6
Exemple (fichier dapprentissage)
7
Algorithmes Génétiques Apprentissage supervisé
7
Construction du GA
  • population "élevée" par l'algorithme génétique
    ensemble de systèmes de règles,
  • individu de la population un système de règles,
  • construire le GA consiste à
  • définir la syntaxe des règles, des systèmes de
    règles
  • définir un codage pour les règles et systèmes de
    règles ,
  • définir la fonction de performance ?,
  • définir les fonctions de sélection aléatoire,
  • définir les opérateurs d'évolution sélection,
    mutation, croisement, etc
  • fixer la valeur des paramètres dexécution.

La suite de cet exposé est fondée sur les travaux
de Dejong, Spears et Gordon, "Using
Genetic Algorithms for Concept Learning", Machine
Learning, 13, 1993 (GABIL). Consulter
également J. Hekanaho, Turku Center for
Computer Science, Finland, "A GA-based Approach
to Disjunctive Concept Learning", Technical
Report, 1997. Alex Freitas, "Data Mining and
Knowledge Discovery with evolutionary
Algorithms", Springer Verlag, 2002.
8
Algorithmes Génétiques Apprentissage supervisé
8
  • Règles
  • Règle conjonction de prédicats
  • i.e., prédicat1 et et prédicatn
  • Prédicat nom d'attribut disjonction de
    valeurs de cet attribut
  • i.e., nom d'attribut valeur1 ou ou valeurk
  • on suppose discrets les domaines de valeurs.
  • Example
  • individus caractérisés par 2 attributs taille
    et forme,
  • taille a pour domaine de valeurs petit, moyen,
    grand,

prédicat
prédicat
9
Algorithmes Génétiques Apprentissage supervisé
9
10
Algorithmes Génétiques Apprentissage supervisé
10
  • Codage des règles, cas particuliers
  • kj 1 dans la sous-chaîne de rang j signifie
  • "la valeur de l'attribut aj n'a pas d'importance"
  • Ex.
  • (taille petit ou moyen ou grand) et (forme
    cubique ou triangulaire)
  • ?
  • (forme cubique ou triangulaire)
  • codage 111 0110
  • kj 0 dans la sous-chaîne de rang j implique
  • "toute la règle contenant cette sous-chaine est
    incohérente"  
  • A propos des règles incohérentes

11
Algorithmes Génétiques Apprentissage supervisé
11
  • Codage des systèmes de règles (individus des
    populations élevées par le GA)
  • Système de règles ensemble de règles.
  • Codage chaîne de bits obtenue par la
    concaténation des sous-chaînes
  • codant les règles.
  • Ex.
  • (taille petit ou moyen) et (forme cubique
    ou triangulaire),
  • (taille grand) et (forme triangulaire)
  • ?
  • (taille petit ou moyen) et (forme cubique
    ou triangulaire)
  • ou
  • (taille grand) et (forme triangulaire)
  • codage 110, 0110 001, 0010

règle
règle
système de règles
12
Algorithmes Génétiques Apprentissage supervisé
12
  • L'opérateur de sélection
  • Problème
  • Sélectionner un individu au hasard dans une
    population selon la loi de probabilités
  • Pr(i) ?(i) / ?0?j?p-1 ?(j) pour tout individu
    i.
  • Solution (Principe illustré sur un exemple)
  • On considère une population comprenant 4
    individus (i.e. p 4), on suppose
  • Pr(0) 1/4, Pr(1) 3/8, Pr(2) 1/8, Pr(3)
    1/4 (i.e., D8).
  • La sélection est opérée de manière uniforme sur
    une échelle sur laquelle
  • le poids de chaque individu i est représenté par
    le numérateur de Pr(i) après
  • réduction au même dénominateur.

13
Algorithmes Génétiques Apprentissage supervisé
13
L'opérateur de sélection (suite)
  • Procédure
  • 1. réduire toutes les probabilités Pr(i) au même
    dénominateur, on note
  • D le dénominateur commun,
  • d0, , dp-1 les numérateurs obtenus après
    réduction au même dénominateur,
  • 2. tirer au hasard un nombre r dans l'intervalle
    entier 0, D-1,
  • 3. sélectionner l'individu s dans 0, p-1,
    correspondant à r.
  • Il est donné par
  • ?0?i?s-1 di ? r ? ?0?i?s di.
  • Exemple
  • On prend la même population que précédemment 4
    individus (i.e. p 4) tels que
  • Pr(0) 1/4, Pr(1) 3/8, Pr(2) 1/8, Pr(3)
    1/4 (i.e., D8),
  • si r 4 ?
  • si r 5 ?
  • si r 0 ?
  • si r 7 ?

2 ? 4 ? 23 ? s 1.
23 ? 5 ? 231 ? s 2.
0 ? 0 ? 2 ? s 0.
231 ? 7 ? 2312 ? s 3.
14
Algorithmes Génétiques Apprentissage supervisé
14
  • L'opérateur de sélection (suite)
  • D'autres opérateurs de sélection sont
    alternativement possibles.
  • Pour les utilisateurs de C
  • GALIB une bibliothèque spécialisée dans le
    développement de GAs
  • http//lancet.mit.edu/ga/
  • Pour les utlisateurs de MatLab
  • GATBX
  • Direct
  • http//www.shef.ac.uk/
    acse/research/ecrg/gat.html
  • Via Mathtools.net
  • http//www.mathtools.n
    et/MATLAB/Optimization/Genetic_algorithms/

15
Algorithmes Génétiques Apprentissage supervisé
15
  • L'opérateur de croisement
  • Cet opérateur consiste à construire deux
    nouveaux systèmes de règles en
  • combinant deux systèmes règles (chaînes de
    bits).
  • s1
    s'1

  • ?
  • s2
    s'2
  • En général,
  • long(s1) ? long(s2),
  • long(s'1) ? long(s1),
  • long(s'2) ? long(s2),
  • long(s'1) ? long(s'2).
  • La procédure de croisement respecte la règle
    dinvariance du nombre total
  • de règles
  • nintroduit aucun matériel génétique autre que
    celui contenu dans

16
Algorithmes Génétiques Apprentissage supervisé
16
  • L'opérateur de croisement (suite)
  • Dans GABIL, un opérateur de croisement qui
    respecte les contraintes précédemment énoncées
    est défini par la procédure suivante
  • on suppose que chaque règle est codée sur b
    bits,
  • on considère deux systèmes s1 et s2 de r1 et r2
    règles respectivement,
  • on tire aléatoirement deux nombres x11 et x12
    sur l'intervalle entier 0, r1 - 1
  • et deux nombres x21 et x22 sur l'intervalle
    entier 0, r2 - 1,
  • on tire aléatoirement deux nombres y1 et y2 sur
    l'intervalle entier 0, b - 1,
  • on effectue l'échange suivant entre les deux
    systèmes de règles

17
Algorithmes Génétiques Apprentissage supervisé
17
L'opérateur de croisement (suite) Exemple
18
Algorithmes Génétiques Apprentissage supervisé
18
  • Autres opérateurs
  • GABIL utilise deux opérateurs d'évolution
    additionnels
  • Opérateur de relaxation partielle
  • 110, 0110 001, 0010
  • 110, 1110 001, 0010
  • relaxe l'une des disjonctions dans l'une des
    règles d'un système de règles en repositionnant
    un bit à 1 (élargit la condition exprimée par
    cette disjonction).
  • Opérateur de relaxation totale
  • 110, 0110 001, 0010

19
Algorithmes Génétiques Apprentissage supervisé
19
  • Fonction de performance
  • La fonction de performance utilise le fichier
    d'apprentissage pour évaluer le niveau de
    performance de chaque système de règles s.
  • Un objet obj du fichier d'apprentissage est
    correctement classé par un système de règles s si
    l'une des deux conditions suivantes est vraie
  • la classe de obj est la classe cible de
    l'algorithme d'apprentissage
  • et il existe une règle r dans s vérifiée par
    obj (il existe une règle r dans s reconnaissant
    obj
  • comme objet de la classe cible).
  • ou
  • la classe de obj n'est pas la classe cible de
    l'algorithme d'apprentissage
  • et toutes les règles r de s sont non vérifiées
    pour obj (il n'existe aucune règle dans s
  • reconnaissant obj comme objet de la classe
    cible).
  • ?1(s) nombre d'objets de la classe cible du
    fichier dapprentissage correctement classés par
    s
  • nombre d'objets de la classe
    cible dans le fichier dapprentissage
  • ?2(s) nombre d'objets extérieurs à la classe
    cible du fichier dapprentissage correctement
    rejetés par s
  • nombre d'objets extérieurs à
    la classe cible dans le fichier dapprentissage

20
Algorithmes Génétiques Apprentissage supervisé
20
codage des valeurs dattribut 00 règle non
valide, 01 0, 10 1, 11 0 ou 1.
  • Exemple
  • Classe cible 1.
  • Système de règles
  • 10, 11, 10 cest-à-dire a1 1 et (a2 1 ou
    0) et a3 1
  • (une seule règle dans le système)
  • Objets correctement classés
  • Obj1 non
  • Obj2 oui
  • Obj3 oui
  • Obj4 oui
  • Obj5 oui
  • Obj6 oui
  • Obj7 oui
  • Obj8 oui
  • Obj9 oui

?1(s) 4/5
?(s) 0.5(4/5 10/10)
?2(s) 10/10
21
Algorithmes Génétiques Apprentissage supervisé
21
Analyse probabiliste des GAs On donne ici
quelques éléments. Se reporter à "Evolutionary
Algorithms, W. M. Spears", Springer Verlag,
2000. On cherche ici à caractériser l'impact du
mécanisme de sélection sur l'évolution d'une
population (l'ouvrage de Spears contient une
analyse détaillée des mécanismes de croisement
et de mutation). Pour des raisons de simplicité
on s'intéressera aux GAs dont les individus sont
codés sous forme de chaînes de bits de taille
fixée n. Toute chaîne de bits de taille n
correspond à un sommet de lhypercube de
dimension n. Tout sommet de lhypercube de
dimension n peut être défini comme lintersection
de lensemble de sous-cubes dont il est un des
sommets. On appelle ces sous-cubes des schémas.
Toute chaîne de bits de taille n peut être
caractérisée par l'ensemble des schémas auxquels
elle appartient dans lhypercube de dimension n.
Schémas associés à la chaîne de bits
101 (i.e.,tous les sous-cubes auxquels elle
appartient)
22
Algorithmes Génétiques Apprentissage supervisé
22
Schémas associés à la chaîne de bits
101 (i.e.,tous les sous-cubes auxquels elle
appartient)
  • Analyse probabiliste des GAs (suite)
  • Toute population peut être caractérisée par
  • lensemble des schémas engendrés par les
    individus de la population
  • et
  • la façon dont les individus se distribuent sur
    cet ensemble (nombre dindividus
  • par schéma).
  • Par exemple, les deux individus 101 et 111 ont
    pour schémas communs 1 et
  • 1, et pour schémas individuels 0 et 1.
  • L'impact du mécanisme d'évolution sur une
    population peut être caractérisé par son impact
    sur lévolution de lensemble des schémas.

23
Algorithmes Génétiques Apprentissage supervisé
23
  • Analyse probabiliste des GAs (suite)
  • Objectif
  • On se propose de montrer que le mécanisme de la
    sélection conduit les schémas contenant les
    individus les plus performants à affirmer leur
    influence au fur et à mesure que les générations
    se succèdent .
  • Notations
  • 1. S(s,t) l'ensemble des individus appartenant
    au schéma s à l'étape t,
  • 2. n(s, t) le nombre dindividus appartenant au
    schéma s à l'étape t,
  • la sélection opérant au hasard, n(s,t) est
    considéré comme une
  • variable aléatoire.
  • 3. ?(i, t) la performance de l'individu i à
    l'étape t,
  • 4. ?(P, t) la moyenne des performances
    individuelles à l'étape t
  • ?(P, t) (1/p)?0?i ? p-1 ?(i, t),

24
Algorithmes Génétiques Apprentissage supervisé
24
  • Analyse probabiliste des GAs (suite)
  • Hypothèses
  • 1. Le modèle dévolution est générationnel à
    chaque étape t, toute la population est changée
    r 1 dans la procédure prototype.
  • 2. Le croisement est de type point unique.
  • 3. la mutation est de type bit-à-bit.
  • 4. Les p/2 paires dindividus requises en
    préalable de lopération de croisement de la
    procédure prototype est construite selon le
    protocole
  • 4.1. On tire p fois dans la population selon la
    loi de probabilités
  • Pr(i) ?(i) / ?0?j?p-1 ?(j) pour tout individu
    i.
  • 4.2. Le même individus tiré plusieurs fois donne
    lieu à deux objets distincts dans la liste
    résultat du tirage.
  • 4.3. Les p objets de la liste résultat sont
    appariés au hasard avant croisement (les tirage
    pour la formation des paires sont exhaustifs).

25
Algorithmes Génétiques Apprentissage supervisé
25
Analyse probabiliste des GAs (suite) Calcul
l'espérance mathématique E(n(s, t1))

0 si i
? S(s, t1) on pose les variables aléatoires Xi,
i 1, , p telles que Xi

1 si i ? S(s,
t1) 0 avec la
probabilité 1 - Pr(i ? S(s, t1)) Xi prend la
valeur 1 avec
la probabilité Pr(i ? S(s, t1)) On forme ?0?i ?
p-1 Xi et on note que cette somme aléatoire
compte les i tels que i ? S(s, t1). Autrement
dit ?0?i ? p-1 Xi n(s, t1). par
suite E(n(s, t1)) E(?0?i ? p-1 Xi ) ?0?i ?
p-1 E(Xi )
?0?i ? p-1 0 . (1 - Pr(i ? S(s,
t1))) 1 . Pr(i ? S(s, t1))
?0?i ? p-1 Pr(i ?
S(s, t1)). Analysons lévènement i ? S(s,
t1) i ? S(s, t1) ? (1) on trouve i1 dans
la liste résultat du tirage tel que i1 ? S(s, t)
et (2) le croisement impliquant
i1 génère i2 vérifiant le schéma s
et (3) la mutation impliquant i2 génère
i vérifiant le schéma s On suppose que les
opérations de tirage avant croisement, de
croisement et de mutation son effectuées de
manière indépendante Pr(i ? S(s, t1)) Pr(1)
Pr(2) Pr(3).
26
Algorithmes Génétiques Apprentissage supervisé
26
Analyse probabiliste des GAs (suite)
Calculons Pr(1) Pr(on trouve i1 est dans la
liste résultat du tirage tel que i1 ? S(s, t))
Pr(i1 ? S(s, t) et i1 est dans la liste résultat
du tirage ) Pr((OUj ? S(s, t) i1 j) et i1
est dans la liste résultat du tirage) Pr(OUj ?
S(s, t) (i1 j et i1 est dans la liste résultat
du tirage)) ?j ? S(s, t) Pr(i1 j et i1 est
dans la liste résultat du tirage ) ?j ? S(s,
t) Pr(i1 j) et i1 est dans la liste résultat du
tirage i1 j) (1/p) ?j ? S(s, t) Pr(j est
dans la liste résultat du tirage). Pr(j est
dans la liste résultat du tirage) Pr( j
est tiré à létape 1 du tirage

ou j est tiré à létape 2 du tirage

ou
ou j est tiré à
létape p du tirage). Les occurrences multiples
du même individu de la population dans la liste
résultat du tirage représentent des objets
différents, les évènements de la disjonction
sont disjoints. Pr(j est dans la liste résultat
du tirage) ?0?i ? p-1 Pr(j est tiré à létape i
du tirage). ?0?i ? p-1 (?(j) /
?0?j?p-1 ?(j))
p ?(j) / ?0?j?p-1
?(j)
?(j) / ?(P, t) En
conclusion Pr(1) (1/p) ?j ? S(s, t) ?(j) /
?(P, t) (n(s, t) ?(s, t)) / (p ?(P,
t))
27
Algorithmes Génétiques Apprentissage supervisé
27
  • Analyse probabiliste des GAs (suite)
  • Définitions
  • On associe à tout schéma s
  • sa zone de rupture la zone comprise entre le
    premier et le dernier
  • bit instancié de sa représentation,
  • son indice de rupture la taille de sa zone de
    rupture,
  • son ordre le nombre de positions instanciées,
  • sa longueur la taille de sa représentation.
  • Ex.
  • 0111
  • zone de rupture,
  • indice de rupture 4,
  • ordre 4,
  • longueur 7.
  • 0
  • zone de rupture vide

28
Algorithmes Génétiques Apprentissage supervisé
28
  • Analyse probabiliste des GAs (suite)
  • Calculons
  • Pr(2) Pr(le croisement impliquant i1 génère i2
    vérifiant le schéma s)
  • 1 - Pr(le croisement impliquant i1
    génère i2 ne vérifiant pas le schéma s)
  • 1 indice de rupture(s) /
    (longueur(s) - 1)
  • Pr(3) Pr(la mutation impliquant i2 génère i
    vérifiant le schéma s)
  • Pr(aucune position instanciée de s
    nest altérée dans la mutation)
  • 1 - (1 Pr(mutation))? ? (1
    Pr(mutation))

  • ordre(s) fois
  • 1 - (1 Pr(mutation))ordre(s)
  • Pr(mutation)) est toujours un nombre
    infinitésimal. En prenant le développement
    limité de (1 Pr(mutation))ordre(s) au voisinage
    de 0 et si on néglige tous les termes du
    développement à partir de lordre 2 on obtient

29
Algorithmes Génétiques Apprentissage supervisé
29
  • Analyse probabiliste des GAs (suite)
  • on a , précédemment, obtenu le résultat suivant
  • E(n(s, t1)) E(?0?i ? p-1 Xi ) ?0?i ? p-1
    Pr(i ? S(s, t1)),
  • Pr(i ? S(s, t1)) Pr(1) Pr(2) Pr(3),
  • Pr(1) (n(s, t) ?(s, t)) / (p ?(P, t)),
  • Pr(2) 1 indice de rupture(s) / (longueur(s)
    - 1),
  • Pr(3) 1 - ordre(s) Pr(mutation).
  • En intégrant tout ces résultats on obtient
  • E(n(s, t1)) (n(s, t) ?(s, t)) / ?(P, t)
  • ? 1 indice de
    rupture(s) / (longueur(s) - 1),
  • ? 1 - ordre(s)
    Pr(mutation).
  • En observant que le croisement et la mutation
    peuvent créer des individus qui satisfont le
    schéma s à partir dindividus qui ne le satisfont
    pas, on voit que le second membre de légalité
    précédente est en fait une borne inférieure. Il
    faut donc écrire (Théorème des schémas de
    Holland)
  • E(n(s, t1)) ? (n(s, t) ?(s, t)) / ?(P, t)

30
Algorithmes Génétiques Apprentissage supervisé
30
Analyse probabiliste des GAs (suite)
Théorème des schémas de Holland E(n(s, t1))
? (n(s, t) ?(s, t)) / ?(P, t)
? 1 indice de rupture(s) /
(longueur(s) - 1), ? 1
- ordre(s) Pr(mutation). Conséquence du
théorème Les schémas qui aurons les chances les
plus grandes de prospérer sont ceux (1) dont la
performance moyenne est supérieure à la
performance moyenne de la population toute
entière, (2) qui ont un indice de rupture
faible, (3) qui ont un ordre faible.
Write a Comment
User Comments (0)
About PowerShow.com