Apprentissage%20automatique%20et%20notions%20connexes - PowerPoint PPT Presentation

About This Presentation
Title:

Apprentissage%20automatique%20et%20notions%20connexes

Description:

... (synth se et reconnaissance) de la parole reconnaissance d ... Data Mining par apprentissage automatique de r seaux bay siens Inf rence ... – PowerPoint PPT presentation

Number of Views:191
Avg rating:3.0/5.0
Slides: 133
Provided by: free2550
Category:

less

Transcript and Presenter's Notes

Title: Apprentissage%20automatique%20et%20notions%20connexes


1
Apprentissage automatiqueet notions connexes
  • ARTC - ESIEA 4ème année
  • Intervenant Paul MUNTEANU
  • Centre de Recherche du Groupe ESIEA

2
Objectifs du module
  • Présenter les bases de l'apprentissage
    automatique
  • Introduire, par ce biais, des nouveaux concepts
    de l'IA
  • une nouvelle stratégie de recherche les
    algorithmes génétiques
  • des nouveaux formalismes de représentation des
    connaissances les réseaux de neurones et les
    réseaux bayésiens
  • Thématique commune
  • importance accordée aux aspects numériques en IA
  • importance accordée aux sources d'inspiration
    biologiques de l'IA, en complément des maths et
    de l'informatique

3
Bibliographie (facultative)
  • T.M. Mitchell,  Machine Learning , McGraw-Hill,
    1997
  • un bouquin sur l'AA écrit récemment, avec le
    recul de quelques dizaines d'années de carrière
    scientifique brillante, par un des pères
    fondateurs du domaine
  • S. Russel, P. Norvig,  Artificial Intelligence
    A Modern Approach , Prentice Hall, 1995
  • une vraie encyclopédie de l'IA actuelle
  • le livre de référence le plus utilisé dans
    l'enseignement de l'IA dans le monde

4
Plan du cours
  • Introduction à l'AA
  • Notions théoriques d'AA
  • Notions algorithmiques d'AA
  • Exemples d'algorithmes d'AA
  • basés sur des algorithmes génétiques
  • basés sur des réseaux de neurones
  • basés sur des réseaux bayésiens

5
Introduction à l'AA
  • Définition de l'AA
  • Relation avec d'autres disciplines
  • Intérêt pratique et applications de l'AA
  • Typologie de l'AA

6
Définition de l'AA
  • Tâche non-triviale, comme pour toutes les
    disciplines scientifiques
  • Pas de définition consensuelle
  • Solution de facilité
  • renvoyer la balle dans le champ des psychologues
     automatisation des activités qui, si elles
    étaient réalisées par des êtres vivants,
    s'appelleraient apprentissage 

7
Définitions plus opérationnelles
  • L'apprentissage est la construction ou la
    modification des représentations de ce dont on
    fait l'expérience ( Learning is constructing or
    modifying representations of what is being
    experienced  - Michalski, 1986)
  • L'apprentissage automatique est l'étude des
    méthodes informatiques d'acquisition de nouvelles
    connaissances, de nouvelles aptitudes et de
    nouvelles façons d'organiser les connaissances
    existantes( Machine Learning is the study of
    computational methods for acquiring new
    knowledge, new skills, and new way to organise
    existing knowledge  - Carbonell, 1987)

8
Définitions plus opérationnelles (2)
  • On dit qu'un programme informatique apprend de
    l'expérience E, par rapport à un ensemble de
    tâches T et à une mesure de performance P, si ses
    performances dans l'accomplissement des tâches de
    T, telles qu'elles sont mesurées par P,
    s'améliorent avec l'expérience E  ( A computer
    program is said to learn from experience E with
    respect to some class of tasks T and performance
    measure P, if its performance at tasks in T, as
    measured by P, improves with experience E  -
    Mitchell, 1997)

9
Relation avec d'autres disciplines
  • AA Ì IA Ì Informatique
  • Influencé par un grand nombre d'autres
    disciplines
  • algorithmique, résolution de problème
  • probabilités, statistiques, théorie de
    l'information
  • reconnaissance des formes, automatique,
    traitement du signal
  • génétique, neurophysiologie, éthologie,
    psychologie
  • philosophie

10
Intérêt pratique de l'AA
  • on le fait une seule fois (à la différence des
    humains, les programmes peuvent partager les
    connaissances apprises par simple copie)
  • même si c'est lent ça peut être plus rapide que
    la programmation (plus le recueil d'expertise)
  • parfois, on ne peut pas faire autrement !
    (comment écrire un programme pour réaliser une
    tâche que nous ne savons pas réaliser nous-mêmes
    ?)

11
Applications pratiques de l'AA
  • systèmes experts
  • méthode d'acquisition de connaissances
    alternative ou complémentaire au recueil
    d'expertise
  • traitement automatique du langage naturel (écrit)
  • traitement (synthèse et reconnaissance) de la
    parole
  • reconnaissance d'images

12
Applications pratiques de l'AA (2)
  • planification, robotique
  • personnalisation de logiciels
  • lecteurs de news ou de mail
  • bureautique
  • jeux
  • activités beaucoup plus terre-à-terre industrie
    chimique, agriculture, zootechnie, ...

13
Extraction de Connaissances à partir des Données
(ECD)
  • Regroupe la partie la plus importante des
    applications de l'AA à l'heure actuelle
  • L'AA est utilisé pour la fouille des données
    historiques accumulées par les entreprises
  • ECD Ë AA, AA Ë ECD !
  • l'ECD combine l'AA avec des techniques issues des
    bases de données, des statistiques, de la
    visualisation, etc.
  • l'AA ne se réduit pas à la fouille de données

14
Applications de l'ECD
  • Analyse de risque
  • assurances caractéristiques des clients à haut
    risque
  • banques décider si un crédit peut être accordé
    à une certaine personne
  • Marketing
  • publipostage caractéristiques de la population
    à cibler
  • grande distribution profils des consommateurs,
    effet des soldes ou de la publicité, modèles
    d'achat ( panier de la ménagère )

15
Applications de l'ECD (2)
  • Analyse financière
  • maximiser le retour sur investissement des
    portefeuilles d'actions
  • Gestion des stocks
  • quand commander un produit
  • quelle quantité demander
  • Maintenance et contrôle de qualité
  • détection et diagnostic des pannes ou des défauts
  • choix des solutions à appliquer

16
Applications de l'ECD (3)
  • Détection des fraudes
  • informatique
  • cartes bancaires
  • télécommunications, distribution d'eau et
    d'énergie
  • Recherche scientifique
  • médecine diagnostic, choix des traitements
  • astronomie analyse des données recueillies par
    satellite, catégorisation des étoiles

17
Typologie de l'AA
  • Selon la provenance de l'expérience exploitée par
    l'apprentissage
  • fournie apprentissage à partir d'exemples
  • acquise d'une manière autonome, par interaction
    avec l'environnement apprentissage par
    renforcement

18
Les exemples
  • Exemple un objet, une situation, etc.
  • La représentation la plus simple
    attribut-valeur
  • Les exemples sont caractérisés par les valeurs de
    leurs attributs (champs, variables, etc.)
  • Tous les exemples sont décrits par les mêmes
    attributs
  • Un ensemble d'exemples peut donc être représenté
    comme une table à deux dimensions
  • les lignes correspondent aux exemples
  • les colonnes correspondent aux attributs

19
Les attributs
  • Caractérisent les différents aspects (traits,
    facettes, paramètres) des exemples
  • Extrêmement hétérogènes
  • Pour un traitement informatique on doit les
    répartir dans des types qui partagent (pour un
    système donné)
  • le même encodage
  • les mêmes opérations inter- et intra-type
  • Certains types  usuels  pour l'AA

20
Les types d'attributs
  • atomiques
  • nominaux valeurs identifiées par des noms, sans
    autre relation entre elles que l'exclusion
    réciproque
  • numériques valeurs identifiées par des nombres
  • discrets (Î Z)
  • continus (Î R)
  • binaires 2 valeurs qui peuvent être vues comme
  • nominales (vrai/faux)
  • numériques (0/1)

21
Les types d'attributs (suite)
  • hiérarchiques relation d'ordre partiel
  • structurés
  • multimédia (textes, images, sons, films),
    séquences d'événements, etc.

couleur
froide
chaude
jaune
rouge
vert
bleu
22
Typologie de l'AA à partir d'exemples
  • Selon le degré de guidage de la part de
    l'instructeur
  • apprentissage supervisé
  • l'instructeur indique un attribut particulier que
    l'algorithme devra apprendre à prédire à partir
    des autres attributs
  • apprentissage non-supervisé
  • tous les attributs sont traités de la même
    manière
  • inventer de nouveaux concepts (proposer des
    partitions  naturelles  des exemples)
  • découvrir des relations entre les attributs

23
Plan du cours
  • Introduction à l'AA
  • Notions théoriques d'AA
  • Notions algorithmiques d'AA
  • Exemples d'algorithmes d'AA

24
Aspects théoriques de l'AA
  • Les principales méthodes d'inférence de l'AA
  • la déduction
  • l'induction
  • Le biais d'induction
  • Formalisation du biais d'induction
  • logique
  • probabilités
  • théorie de l'information

25
La déduction
  • la méthode d'inférence la plus étudiée d.p.d.v.
    théorique (logique formelle) et la plus utilisée
    pour automatiser le raisonnement en IA
  • garantit le préservation de la vérité à partir
    de prémisses vraies on obtient toujours des
    conclusions vraies
  • est utilisée dans certaines formes
    d'apprentissage (analytique) pour organiser d'une
    manière plus opérationnelle des connaissances
    qu'on possède déjà
  • généralement utilisée pour exploiter les
    résultats de l'apprentissage

26
La déduction (2)
  • La déduction nous permet de formaliser des
    raisonnements comme
  •  Tous les éléphants sont gris 
  •  Clyde est un éléphant 
  •  Clyde est gris 
  • Ça marche très bien quand on raisonne du général
    vers le particulier !

27
Limites de la déduction
  • Mais pas dans l'autre sens (du particulier vers
    le général)
  •  Clyde est un éléphant   Clyde est gris 
  •  Dimbo est un éléphant   Dimbo est gris 
  • ...
  •  Tous les éléphants sont gris 
  • Dans un certain sens cette inférence est
    incorrecte (tant qu'on n'ait pas vu tous les
    éléphants on ne pourra jamais être certains de la
    conclusion)

28
L'induction
  • Et pourtant on utilise tous ce type d'inférence
    très souvent !
  • après avoir vu suffisamment d'images d'éléphants
    n'importe quel enfant apprend qu'ils sont tous
    gris
  • Elle est donc indispensable dans la plupart des
    formes d'apprentissage (empirique)
  • Elle est même utilisée intensément dans les
    sciences expérimentales
  • Ce type d'inférence s'appelle induction

29
Exemple d'induction
Y
X
Quelle est la relation entre X et Y ?
30
Exemple d'induction (2)
Y
X
La déduction nous permet de rejeter une infinité
d'hypothèses celles qui sont en désaccord avec
les exemples
31
Exemple d'induction (3)
Y
X
Mais il reste encore une infinité d'autres
hypothèses entre lesquelles la déduction ne peut
pas discerner !
32
Exemple d'induction (4)
Y
X
Et pourtant la meilleure solution nous paraît
évidente la plus  simple  des hypothèses en
accord avec les exemples
33
Le biais d'induction
  • Dans la plupart des cas la seule adéquation aux
    exemples (critère imposé par la déduction) ne
    suffit pas pour choisir entre les hypothèses
    possibles
  • Tout autre critère de sélection ou de préférence
    que l'adéquation aux exemples s'appelle biais
    d'induction
  • Le biais d'induction peut être plus ou moins
    explicite dans un algorithme d'apprentissage -
    mais il existe toujours !
  • Le biais d'induction le plus utilisé le rasoir
    d'Occam
  •  Toutes choses égales par ailleurs, préfère
    l'hypothèse la plus simple 

34
Généralisation du rasoir d'Occam
y
x
Ce biais est si fort qu'il nous pousse parfois à
négliger certaines imperfections des hypothèses,
pourvu qu'elles soient simples (on peut penser
dans ce cas que les imperfections sont causées
plutôtpar le bruit de mesure que par une
relation plus complexe entre x et y)
35
Formalisation du biais d'induction
  • Logique ramener l'induction à la déduction
  • restreindre suffisamment la classe des hypothèses
    acceptables afin d'obtenir une solution unique en
    accord avec les exemples
  • cas précédent la classe des fonctions linéaires
    yf(x)
  • formuler un critère de préférence parmi les
    hypothèses qui sont en accord avec les exemples
  • cas précédent la fonction polynomiale de degré
    minimal

36
Formalisation du biais d'induction (2)
  • Probabilités
  • les critères statistiques  orthodoxes  tels que
    le maximum de vraisemblance, P(DH), ne suffisent
    généralement pas
  • cas précédent P(DH) 1 pour toutes les
    hypothèses en accord avec les exemples
  • approche  bayésienne  des probabilités
    critère du maximum a posteriori P(HD)

37
Théorie bayésienne des probabilités
  • Théorème de Bayes
  • La probabilité a priori va biaiser
    l'apprentissage envers les hypothèses les  moins
    surprenantes  dans l'état actuel de nos
    connaissances (avant avoir vu les données)
  • La théorie des probabilités traite dans un cadre
    unitaire la déduction et l'induction

38
Formalisation du biais d'induction (3)
  • Théorie de l'information (principe de la
    description de longueur minimale MDL Minimum
    Description Length)
  • L'apprentissage est vu comme un problème de
    compression de l'information
  • La meilleure théorie est celle qui minimise la
    longueur totale du message transmis DL(H)
    DL(DH)

Théorie
DonnéesThéorie
0111000110
111000101000111001110101
DL(H)
DL(DH)
39
Formalisation du biais d'induction (4)
  • La quantité d'information portée par un message
    de probabilité p est -log2(p)
  • en conséquence, le nombre optimal de bits
    nécessaires pour le coder est -log2(p)
  • Justification intuitive
  • un message de probabilité 1 n'apporte aucune
    information
  • ça ne sert à rien de gaspiller de la bande
    passante pour informer notre interlocuteur que la
    nuit il fait noir
  • un message de probabilité approchant 0 apporte
    une information qui tend vers l'infini
  • feriez-vous des économies pour être le premier à
    annoncer que des extraterrestres ont atterris à
    Laval ?

40
Formalisation du biais d'induction (5)
  • Donc
  • le critère MDL est conceptuellement identique au
    critère du maximum a posteriori mais évite
    l'explicitation des probabilités (ce qui plaît
    aux informaticiens)
  • la méthode de codage adoptée spontanément par les
    informaticiens tient intrinsèquement compte des
    probabilités, par simple souci d'économie

41
Plan du cours
  • Introduction à l'AA
  • Notions théoriques d'AA
  • Notions algorithmiques d'AA
  • Exemples d'algorithmes d'AA

42
Notions algorithmiques d'AA
  • Une fois qu'on a défini ce qu'on cherche (en
    acceptant un certain biais d'induction) le
    problème n'est pas résolu pour autant !
  • Théoriquement on pourrait évaluer toutes les
    hypothèses afin de trouver la meilleure
  • Pratiquement la recherche exhaustive est
    impossible à réaliser (l'espace des hypothèses
    possibles est très grand, souvent infini)

43
AA comme recherche heuristique
  • la plupart des algorithmes d'AA réalisent donc
    une recherche heuristique de la  meilleure 
    hypothèse
  • l'espace de recherche est défini par le
    formalisme utilisé pour la représentation des
    hypothèses
  • la qualité des hypothèses est calculée par une
    fonction d'évaluation
  • au cours de la recherche, l'affinement des
    hypothèses est réalisé par certains opérateurs
    de transformation

44
Illustration
Espace de recherche
Opérateur de transformation
Hypothèse initiale
Score de l'hypothèse calculé par la fonction
d'évaluation
Hypothèse finale
Trajectoire déterminée par la stratégie de
recherche
45
Algorithme générique d'AA
  • Initialisation une (ou plusieurs) hypothèse(s)
    initiale(s)
  • Recherche d'une (ou plusieurs) hypothèse(s)
    améliorée(s)
  • Tant que non condition d'arrêt
  • Choix du (des) opérateur(s) à appliquer sur la
    (les) hypothèse(s) courante(s) en vue de
    l'amélioration de la fonction d'évaluation
  • Obtention d'une (de plusieurs) hypothèse(s) par
    l'application du (des) opérateurs choisi(s)
  • Post-traitement de la  (des) hypothèse(s)
    obtenue(s)

46
Stratégies de recherche  classiques 
  • Par escalade (hill-climbing)
  • par descente du gradient
  • Avec liste tabou
  • Par recuit simulé
  • Avec retour-arrière (backtracking)
  • En faisceau (beam-search)
  • par algorithmes génétiques

47
Recherche par escalade
  • une seule hypothèse courante
  • on choisit à chaque itération l'opérateur qui
    réalise l'amélioration maximale de la fonction
    d'évaluation
  • avantage la plus rapide
  • désavantage
  • dépendante de l'hypothèse initiale
  • facilement piégée par les optima locaux
  • cas particulier descente du gradient

48
Recherche par descente du gradient
  • Les hypothèses sont des fonctions d'un ensemble
    de paramètres numériques
  • La fonction d'évaluation
  • E est dérivable en
  • L'opérateur de transformation est selon qu'on
    veut maximiser ou minimiser
  • Paramètre taux d'apprentissage h (qui diminue
    généralement au cours du temps)

49
Descente du gradient
Min local
Min global
50
Amélioration de la recherche par escalade
  • L'optimum retrouvé dépend du point de départ de
    la recherche
  • multiples départs avec point initial aléatoire
  • Pour sortir d'un optimum local on peut accepter
    de dégrader la qualité de l'hypothèse courante
  • liste tabou
  • recuit simulé

51
Recherche avec liste tabou
  • Extension directe de la recherche par escalade
  • On applique toujours l'opérateur qui produit
    l'hypothèse de qualité maximale (même si celle-ci
    est d'une moins bonne qualité que l'hypothèse
    courante)
  • Pour éviter les risques de cyclage, on maintien
    une liste des k derniers agents évalués (k à
    déterminer par l'utilisateur)
  • Subsiste encore des risques de blocage

52
Risques de blocage
Si klt2 alors situation de cyclage
Si kgt3 alors situation de blocage
53
Recherche par recuit simulé
  • Autre extension directe de la recherche par
    escalade
  • Afin d'éviter les optima locaux on accepte
    parfois de modifier l'hypothèse courante dans un
    sens qui diminue la fonction d'évaluation (afin
    d'explorer de nouvelles régions de l'espace de
    recherche)
  • La probabilité d'accepter une telle hypothèse est
    contrôlée par un paramètre T ( température )
    qui décroît au cours du temps

54
Recherche par recuit simulé
  • A chaque itération
  • on choisit au hasard un opérateur de
    transformation que l'on applique à l'hypothèse
    courante HC afin de produire une nouvelle
    hypothèse HN
  • soit Df la différence entre les valeurs de la
    fonction d'évaluation de HN et HC
  • si Df gt 0 alors la nouvelle hypothèse devient
    l'hypothèse courante
  • sinon, la nouvelle hypothèse devient l'hypothèse
    courante avec la probabilité

55
Recherche avec retour-arrière
  • Les stratégies de recherche précédentes sont des
    stratégies irrévocables
  • La recherche avec retour-arrière est une
    stratégie tentative
  • Si la recherche par escalade aboutit à un optimum
    local inacceptable
  • on remet en cause un des choix de transformation
    qui ont été faits
  • on recommence la recherche avec l'hypothèse la
    plus prometteuse qui n'a pas encore été poursuivie

56
Recherche en faisceau
  • Contrôlée par un paramètre b la taille du
    faisceau
  • Au lieu de garder uniquement la meilleure
    hypothèse, on garde un  faisceau  des b
    meilleures hypothèses
  • A chaque itération on applique tous les
    opérateurs de transformation à toutes les
    hypothèses du faisceau et on sélectionne les b
    meilleures

57
Les stratégies de recherche "bio"
  • Toutes les méthodes précédentes sont des
    solutions génériques, assez peu surprenantes,
    données par des informaticiens à des problèmes de
    recherche NP-complets
  • La proximité entre l'IA et les sciences de la vie
    a donné naissance à des approches plus exotiques
    et qui ont reçus des noms bizarres algorithmes
    génétiques, systèmes à fourmis, etc.

58
Les stratégies de recherche "bio" (2)
  • La nature résout souvent des problèmes de
    recherche
  • trouver les caractéristiques génétiques idéales
    d'une population biologique dans un certain
    écosystème
  • trouver le chemin optimal vers la nourriture par
    une colonie d'animaux sociaux (comme les fourmis)
  • Les stratégies de recherche "bio" abstraient les
    caractéristiques des solutions naturelles afin de
    les intégrer dans des stratégies techniques de
    recherche

59
Recherche par algorithmes génétiques
  • Cas particulier de la recherche en faisceau
  • Utilise des codages particuliers des hypothèses
    ( génomes )
  • suite de bits (approche classique)
  • programmes représentés par leur arbre syntaxique
    ( programmation génétique )
  • Utilise des opérateurs de transformation
    particuliers, inspirés de l'évolution naturelle
    des espèces biologiques sélection, croisements
    et mutations

60
Opérateurs génétiques
Sélection
11101001000
11101001000
11101001000
11101010101
Croisement
00001010101
00001001000
Mutation
11101001000
11101011000
61
Algorithme génétique  générique 
  • Génère p hypothèses au hasard, pour former la
    population initiale P
  • Pour chaque HiÎP
  • Calcule la valeur de la fonction d'évaluation
    Eval(Hi)
  • Tant que la condition d'arrêt n'est pas remplie
    (max(Eval(Hj))ltSeuil)
  • Génère la population suivante, PS, par
    sélection, croisement et mutation à partir de P
  • PPS
  • Pour chaque HiÎP
  • Calcule la valeur de la fonction d'évaluation
    Eval(Hi)
  • Retourne argmax(Eval(Hj))

62
Génération de la population suivante
  • Initialise la population suivante
  • Pour chaque HiÎP Calcule sa probabilité de
    sélection
  • Sélection
  • Choix aléatoire, en accord avec prob, de (1-r)p
    hypothèses de P pour faire partie de PS
  • Croisement
  • Choix aléatoire de rp/2 paires d'hypothèses de
    P, en accord avec prob, croisement de ces paires
    d'hypothèses et rajout de leurs descendants à PS
  • Mutation
  • Choix aléatoire de mp hypothèses de PS, avec une
    probabilité uniforme, et inversion, pour chacune
    de ces hypothèses, d'un bit choisi aléatoirement

63
Discussion
  • p, r, m sont des paramètres fournis par
    l'utilisateur
  • un bon fonctionnement nécessite un subtil dosage
    de croisements et mutations
  • pour éviter trop de consanguinité maintien de
    plusieurs sous-populations relativement autonomes

64
Plan du cours
  • Introduction à l'AA
  • Notions théoriques d'AA
  • Notions algorithmiques d'AA
  • Exemples d'algorithmes d'AA

65
L'apprentissage supervisé
  • Les exemples des énoncés de problèmes déjà
    résolus accompagnés de leurs solutions
  • Le but apprendre à résoudre des problèmes du
    même type
  • La solution est représentée comme un attribut
    particulier (éventuellement structuré), qu'il
    faut apprendre à prédire à partir des autres
    attributs

66
L'apprentissage supervisé (2)
  • Soit X1, X2, , Xn les attributs prédictifs et Y
    l'attribut à prédire
  • La relation entre Y et X1, X2, , Xn peut être
    exprimée
  • de manière déterministe Y f(X1, X2, , Xn)
  • de manière probabiliste P(Y X1, X2, , Xn)
  • Selon le type de Y on parlera de
  • discrimination ou classification supervisée (Y
    est nominal la classe)
  • régression (Y est numérique)

67
L'apprentissage supervisé (3)
  • Algorithmes  symboliques  (issus de l'IA)
  • induction d'arbres de décision
  • induction de règles
  • programmation logique inductive
  • Algorithmes connexionnistes (réseaux de neurones)
  • réseaux multi-couches à retro-propagation du
    gradient
  • Algorithmes  paresseux  (l'induction est
    retardée)
  • la méthode des K plus proches voisins
  • le raisonnement à partir des cas

68
L'induction de règles
  • Les règles de production le formalisme
    traditionnel de représentation des connaissances
    en IA classique
  • Si prémisses Alors conclusion
  • En apprentissage supervisé
  • les prémisses des règles portent sur les valeurs
    des attributs
  • la conclusion détermine la classe
  • La méthode d'induction la plus utilisée (séparer
    pour régner)
  • construction des règles une par une
  • recherche heuristique (par escalade ou en
    faisceau) des meilleures prémisses de chaque
    règle

69
Induction de règles avec des algorithmes
génétiques
  • A la différence de la méthode  séparer pour
    régner , les règles sont apprises toutes en même
    temps
  • 2 grandes familles d'approches
  • Pittsburgh individu paquet de règles
  • Michigan individu règle, population paquet
    de règles
  • Un des algorithmes les plus connus (Pittsburgh)
  • GABIL (DeJong, Spears, Gordon, Using genetic
    algorithms for concept learning, Machine
    Learning, 13, 1993)

70
Représentation des hypothèses
  • Attributs
  • Classe
  • Une règle
  • Principe d'encodage des règles
  • un bit par valeur d'attribut (ou de classe) 0
    valeur interdite, 1 valeur permise
  • groupes de bits de longueur et position fixe pour
    chaque attribut et pour la classe
  • Codage de la règle 1001 01 111 10

71
Représentation des hypothèses (2)
  • Problèmes
  • l'AG risque de produire des génomes
    inintéressants (1 pour plusieurs valeurs de la
    classe)
  • règles indépendantes il faut prévoir une
    stratégie de résolution des conflits
  • Dans GABIL
  • restriction à l'apprentissage des concepts
    (classes binaires exemples positifs et négatifs
    d'un concept)
  • apprentissage de règles uniquement pour les
    exemples positifs (si aucune règle applicable,
    l'exemple est classé négatif)
  • il n'est plus nécessaire d'encoder la conclusion
    de la règle

72
Représentation des hypothèses (3)
  • Principe d'encodage des paquets de règles
  • juxtaposition des codes des règles qui
    constituent le paquet
  • les génomes des paquets de règles ont une
    longueur variable
  • Exemple
  • codage 1001 01 111 1111 11 001

73
Opérateurs génétiques
  • Opérateurs de sélection et mutation standard
  • Opérateur de croisement modifié
  • à deux points de coupure
  • problème génomes de longueur variable
  • solution les points de coupure du deuxième
    parent sont choisis à des endroits avec la même
    sémantique que ceux du premier parent0101 11
    101 0001 01 111 1111 11 1011001 01 111
    1111 11 001 1101 11 001

74
Fonction d'évaluation
  • Récompense non-linéaire de la précision des
    paquets de règles
  • la précision d'une hypothèse H la proportion
    d'exemples bien classés par cette hypothèses
    parmi les exemples d'apprentissage
  • éval(H) précision(H)2
  • Observation
  • pas de traitement du bruit
  • pas de biais en faveur des hypothèses simples
  • amélioration possible

75
Réseaux de neurones
  • Apprentissage de fonctions à valeurs réelles,
    discrètes ou vectorielles
  • Robustes aux bruits et aux erreurs
  • Inspiration biologique
  • homme 1011 neurones connectés chacun à 104
    autres
  • Fonctionnement complexe obtenu par
    l'interconnexion d'unités de traitement très
    simples ? connexionnisme

76
Applications
  • Traitement du signal
  • reconnaissance de la parole
  • reconnaissance de bruits de termites
  • Interprétation de scènes visuelles
  • Stratégies de contrôle
  • véhicule autonome (70 mph sur 90 miles)

77
Caractéristiques générales
  • L'apprentissage peut être long
  • La relaxation est par contre très rapide
  • Approximateur de fonctions type  boite noire ,
    i.e. perte de lisibilité par rapport à d'autres
    approximateurs comme les arbres de décisions ou
    les règles

78
Le plus simple des réseau le perceptron
x01
w0
x1
w1
Perceptron
x2
w2
s
S
s 1 si gt 0 -1 sinon
wp
xp
79
Le perceptron
  • Séparation linéaire des classes
  • ET, OU, !ET, !OU mais pas OUX
  • exemple du ET w1 w2 0.5 et w0 -0.8
  • exemple du OU w1 w2 0.5 et w0 -0.3

80
Règle d'apprentissage LMS
  • L'espace de recherche est caractérisé par le
    vecteur de poids à valeurs réelles
  • recherche dans ?p
  • Règle d'apprentissage LMS (règle delta) wi wi
    Dwi Dwi ? (t-s) xi
  • Convergence après multiples applications si les
    exemples sont linéairement séparables

81
L'unité linéaire
x01
w0
x1
w1
Unité linéaire
x2
w2
s
S
wp
xp
82
Descente du gradient
  • Unité linéaire perceptron sans fonction de
    seuillage
  • Lerreur d'apprentissage, i.e. le critère à
    optimiser, est définie par
  • La direction permettant de descendre le long de
    la surface d'erreur est défini par le gradient de
    E par rapport à

83
Règle d'apprentissage delta
  • La descente de gradient s'effectue par
    avec
  • La version incrémentale (stochastique) diminue le
    risque d'obtenir un minimum local en utilisant
    plusieurs erreurs, une pour chaque donnée

84
Algorithme de descente de gradient pour unités
linéaires
  • Initialise les poids avec des petites valeurs
    aléatoires (entre -0,05 et 0,05)
  • tant que la condition d'arrêt n'est pas remplie
  • pour chaque exemple d'apprentissage
  • calcule la sortie s du neurone
  • pour chaque poids du réseau wi

85
Réseau de neurones multi-couches et
rétro-propagation du gradient
  • Le perceptron ne modélise que des fonctions
    linéaires (même si plusieurs en cascade)
  • Un réseau multi-couches peut exprimer une variété
    très riche de fonctions non linéaires
  • neurones avec sorties non linéaires en fonction
    des entrées
  • les sorties des neurones sont dérivables en
    fonction de leurs entrées

86
Neurone artificiel avec fonction de seuillage
sigmoïdale
x01
w0
x1
w1
Neurone
x2
w2
s
S
wp
xp
87
Les réseaux multi-couches
x1
s1
x2
s2
x3
xn
sm
Sorties
Entrées
Couche(s) cachée(s)
88
Définition du critère à optimiser
  • Le réseau multi-couches calcule une fonction
    non-linéaire des entrées et des poids
  • Le réseau pouvant avoir plusieurs sorties,
    l'erreur sur l'ensemble des données est redéfinie
    par
  • L'erreur pour la version stochastique

89
Retro-propagation du gradient
  • Comment calculer ?
  • Notations (on omet l'indice d)
  • eji l'entrée i du neurone j
  • wji le poids de l'entrée i du neurone j
  • activj (l'activation du neurone
    j)
  • sj la sortie du neurone j
  • Alors
  • où ?j est le  terme d'erreur  du neurone j

90
Retro-propagation du gradient (2)
  • La structure du réseau nous permet de calculer
    les termes d'erreur à partir de la couche de
    sortie vers la couche d'entrée
  • Après plusieurs calculs on obtient
  • pour les neurones de sortie (numérotés de 1 à m,
    correspondant aux variables à prédire)
  • pour les neurones des couches cachées

91
Remarques
  • La rétro-propagation est assez similaire aux
    règles LMS et delta ? (t-s) xi
  • Le terme (t-s) est remplacé par le terme dk plus
    complexe, intégrant le passage par la sigmoïde
  • Pour dh, les exemples ne fournissant pas
    directement l'erreur, on la calcule en sommant
    les dk pour chaque unité de sortie influencée par
    h, pondérés par wkh,  responsabilité  de h dans
    dk

92
Algorithme de rétro-propagation du gradient
  • Initialise les poids avec des petites valeurs
    aléatoires (entre -0,05 et 0,05)
  • tant que la condition d'arrêt n'est pas remplie
  • pour chaque exemple d'apprentissage
  • calcule su pour chaque neurone u
  • pour chaque neurone de sortie k
  • calcule son terme d'erreur
  • pour chaque neurone caché h
  • calcule son terme d'erreur
  • pour chaque poids du réseau wji

93
Critères d'arrêt
  • convergence de l'erreur sur l'ensemble
    d'apprentissage
  • risque de sur-apprentissage
  • minimisation de l'erreur sur un ensemble
    indépendant

94
Minima locaux
  • Pour éviter certains minima locaux, il est
    possible d'ajouter un terme d'inertie dans la
    mise à jour des poids
  • permet la sortie de petits minima locaux
  • permet la sortie de plateaux
  • augmente la grandeur du pas si la direction du
    gradient ne change pas et accélère ainsi la
    convergence

95
Sur-apprentissage
  • Réduction du risque de sur-apprentissage par
    réduction des poids (weight decay)
  • la réduction des poids s'effectue en modifiant le
    terme d'erreur
  • biaise l'apprentissage contre les surfaces trop
    complexes

96
Modification dynamique de la structure
  • Ajout incrémental de neurones dans la couche
    cachée
  • Elagage
  • élimination des neurones ayant des poids très
    faibles
  • élimination des neurones dont une faible
    variation de poids ne change pas beaucoup
    l'erreur (optimal brain damage), i.e. mesure de
    l'importance de la connexion avec

97
L'apprentissage non-supervisé
  • Invention de nouveaux concepts (Clustering)
  • Découverte de relations entre les attributs

98
Clustering
  • Classification non-supervisée, catégorisation,
    segmentation
  • Objectif
  • trouver des regroupements  naturels  (clusters)
    des exemples
  • inventer un nouvel attribut C dont les valeurs
    c1, c2,, ck indiquent le cluster auquel un
    exemple appartient
  • à la différence de la discrimination, les valeurs
    de C ne sont pas fournies avec les exemples
    d'apprentissage
  • critère pour réaliser les regroupements
  • maximiser la similarité inter-cluster
  • minimiser la similarité intra-cluster
  • Exemple d'application
  • segmentation de la clientèle en groupes homogènes

99
Cartes auto-organisatrices de Kohonen
  • Transformation de l'espace n-dimensionnel des
    exemples en un espace bi-dimensionnel (une carte)
  • Préservation du voisinage deux exemples qui
    sont similaires dans l'espace original seront
    également proches dans la carte
  • La carte est matérialisée par un réseau de
    neurones
  • Idée de base chaque neurone apprend à
    reconnaître un cluster d'exemples

100
Le réseau
  • Neurones
  • les sorties des neurones représentent les
    distances entre le vecteur des entrées et le
    vecteur des poids
  • sous certaines conditions de normalisation
  • Réseau
  • une seule couche de neurones
  • les attributs des exemples sont distribués sur
    tous les neurones par des connexions adaptatives
  • chaque neurone a une influence sur ses voisins
    par des connexions d'un type spécial les
    connexions récurrentes

101
Structure du réseau de Kohonen
Voisinage carré de dimension 1
connexion récurrente
connexion adaptative
x1
x2
xn
102
Principe de l'algorithme de Kohonen
  • Chaque neurone se spécialise dans la
    reconnaissance d'un cluster d'exemples similaires
  • Les neurones voisins dans le réseau représentent
    des clusters proches dans l'espace des exemples
  • Après la présentation d'un exemple , les
    vecteurs des poids du neurone le plus actif et de
    ceux de son voisinage se déplacent vers
  • L'apprentissage est contrôlé par un paramètre h
    qui décroît au cours de l'apprentissage
  • Le voisinage des neurones se rétrécit également
    au cours de l'apprentissage

103
Algorithme de Kohonen
  • tant que la condition d'arrêt n'est pas remplie
  • présenter un exemple au réseau et calculer
    les sorties des neurones
  • rechercher le neurone de sortie maximale i et
    son voisinage I
  • adapter les poids des neurones k Î I Èi
    selon la règle

104
L'apprentissage non-supervisé
  • Invention de nouveaux concepts (Clustering)
  • Découverte de relations entre les attributs

105
Apprentissage de réseaux bayésiens
  • Réseaux bayésiens le formalisme de
    représentation des connaissances incertaines le
    plus utilisé actuellement
  • Hybridation réussie entre
  • la compréhensibilité des résultats des méthodes
    symboliques
  • les fondements probabilistes rigoureux des
    méthodes statistiques
  • la structure en réseau de composants simples des
    approches connectionnistes

106
Applications des réseaux bayésiens
  • Réalisation de systèmes experts par recueil
    d'expertise
  • aide au diagnostic médical, technique, logiciel
  • assistants "intelligents" (Office 97)
  • (selon Bill Gates, l'avantage compétitif à terme
    de Microsoft serait son expertise dans les
    réseaux bayésiens Los Angeles Times, octobre
    1996)
  • applications militaires de pilotage automatique
    des systèmes de défense
  • etc.
  • Plus récemment Data Mining par apprentissage
    automatique de réseaux bayésiens

107
Inférence probabiliste
  • Le domaine étudié est représenté par un ensemble
    de variables (attributs) X1, X2,, Xn
  • On dispose des valeurs d'un sous-ensemble de ces
    variables (variables observées)
  • On veut caractériser les valeurs possibles d'un
    autre sous-ensemble de variables (variables
    requises) sous la forme de leurs distributions de
    probabilités

108
Représentation des connaissances
  • La distribution des probabilités jointes (DPJ)
    P(X1 x1, X2 x2,, Xn xn) ? P(x1, x2,, xn)
    pour toutes les combinaisons possibles des
    valeurs des variables
  • La connaissance de la DPJ est suffisante pour
    mener à bien toute inférence portant sur
    l'ensemble des variables
  • La représentation de la DPJ nécessite un nombre
    de paramètres exponentiel par rapport au nombre
    de variables (plus d'un milliard pour 20
    variables binaires)

109
Indépendance conditionnelle
  • Soit A, B et C des ensembles de variables et a, b
    et c des combinaisons de valeurs pour ces
    ensembles de variables
  • Si P(A aC c) P(A aB b, C c) ? a, b,
    c alors on dit que les variables A sont
    indépendantes des variables B si on connaît les
    variables C
  • La relation d'indépendance conditionnelle entre
    les variables A et B est symétrique
  • Idée exploiter les indépendances
    conditionnelles entre les variables afin de
    représenter la DPJ d'une manière plus compacte

110
Exploitation des indépendances conditionnelles
  • Règle du ET
  • Soit Pai ? Xi-1, Xi-2,, X1 tels que pour
    toutes les valeurs possibles
  • Formulation équivalente
  • la variable Xi est indépendante des variables
    Xi-1, Xi-2,, X1\Pai si on connaît les
    variables Pai

111
Représentation compacte de la DPJ
  • Alors on peut écrire la DPJ sous la forme
  • notation plus compacte
  • Au lieu d'un nombre de valeurs exponentiel par
    rapport au nombre de variables, on a besoin, pour
    chaque variable, d'un nombre de valeurs
    exponentiel par rapport au nombre de ses parents

112
Réseaux bayésiens (RB)
  • Graphe orienté sans cycle
  • les nœuds représentent les variables du domaine
  • les arcs représentent les influences directes
    entre les variables
  • Tables de probabilités conditionnelles (TPC)
    attachées à chaque nœud Xi
  • soit Pai les parents du nœud Xi
  • la TPC du nœud Xi contient les probabilités P(Xi
    xi Pai pai) pour toute valeur xi de Xi et
    toute combinaison de valeurs pai de Pai

113
Exemple - l'histoire
  • Stuart Russell, AI - A Modern Approach
  • une personne habitant Los Angeles (tremblements
    de terre fréquents) installe chez elle une alarme
    contre les cambriolages
  • elle demande à ses amis John et Mary (qui restent
    chez eux dans la journée) de l'appeler au travail
    s'ils entendent l'alarme
  • John appelle toujours quand il croît entendre
    l'alarme mais la confond parfois avec la sonnerie
    du téléphone
  • Mary aime écouter de la musique forte et, donc,
    n'entend pas toujours l'alarme

114
Exemple - le réseau bayésien
115
Construction de RB
  • Algorithme théorique
  • Choix d'un ordre sur les variables
  • Pour i de 1 à n
  • création du nœud correspondant à la variable Xi
  • recherche d'un ensemble minimal de variables Pai,
    parmi les variables déjà traitées, tels que la
    variable Xi est indépendante des variables Xi-1,
    Xi-2,, X1\Pai si on connaît les variables Pai
  • création d arcs orientés entre les variables Pai
    et la variable Xi
  • création de la TPC correspondant à la variable Xi
  • La complexité du réseau obtenu est très
    dépendante de l'ordre des variables
  • Dans la pratique, on s'appuie sur les relations
    de causalité directe entre les variables

116
Inférence à partir des RB
  • La connaissance de la DPJ est suffisante pour
    mener à bien toute inférence probabiliste portant
    sur les variables du domaine
  • L'inférence dans les réseaux bayésiens est
    NP-difficile
  • Il existe cependant des algorithmes d'inférence
    suffisamment rapides pour la plupart des
    applications pratiques
  • inférence exacte la méthode des arbres de
    jonction
  • inférence approximative méthodes type
    Monte-Carlo

117
Exemple - types d'inférence possibles
  • Diagnostique P(CJ) ?
  • Inférence causale P(JC) ?
  • Inférence inter-causale P(CA,T) ?
  • Inférence mixte
  • P(AJ,T) ? combinaison de diagnostic et
    d'inférence causale
  • P(CJ,T) ? combinaison de diagnostic et
    d'inférence inter-causale

118
Méthodes d'apprentissage des RB
  • Plusieurs catégories de méthodes selon que
  • la structure du réseau est connue ou non
  • apprentissage de paramètres
  • apprentissage de structure
  • les valeurs de tous les attributs sont
    disponibles ou non
  • on va s'intéresser uniquement à la première
    catégorie
  • pour les cas où certaines valeurs des variables
    sont absentes d'une manière aléatoire (valeurs
    manquantes) ou systématique (variables cachées)
    des méthodes d'apprentissage de type
    échantillonnage de Gibbs ou EM (Expectation-Maximi
    sation) ont été développées

119
Apprentissage des paramètres
  • La méthode la plus simple le comptage
  • Risque certaines combinaisons parents-enfant
    peuvent être peu ou pas du tout représentées
  • Méthodes plus sophistiquées
  • estimation bayésienne avec prise en compte des
    probabilités a-priori
  • utilisation de modèles locaux (arbres de
    décision) pour représenter la dépendance
    parents-enfant

120
Apprentissage de la structure
  • Définir une fonction d'évaluation des différentes
    structures possibles et utiliser une stratégie de
    recherche heuristique pour trouver la structure
     optimale 
  • Deux méthodes génériques en apprentissage pour
    définir les fonctions d'évaluation
  • le principe de la description minimale (MDL
    Minimum Description Length)
  • l'approche bayésienne qui passe par le calcul des
    probabilités a posteriori

121
Codage de la théorie
  • Théorie réseau bayésien R

122
Codage des données
  • Données somme des descriptions des exemples
  • Les paramètres qui minimisent cette expression
    sont
  • Donc

123
Exemple de codage des données
  • Soit le réseauet deux exemples à transmettre
    e1 (v, v, v) et e2 (v, f, v)
  • PR(Av, Bv, Cv) PR(Av).PR(Bv).PR(CvAv,
    Bv)
  • PR(Av, Bf, Cv) PR(Av).PR(Bf).PR(CvAv,
    Bv)
  • Le nombre de bits nécessaires est donc DL(DR)
    -(2 log2(PR(Av)) log2(PR(Bv))
    log2(PR(Bf)) log2(PR(CvAv, Bv))
    log2(PR(CvAv, Bf)))

124
Le score MDL
  • Le score se décompose donc en une somme de
    sous-scores locaux à chaque nœud (propriété
    importante pour l'optimisation)

125
L'approche bayésienne
  • P(G) réalise une pénalisation des structures
    dissemblables à une structure a priori ou, en
    absence d'une telle structure, des structures
    complexes (rasoir d'Occam)
  • P(DG) doit prendre en compte toutes les valeurs
    possibles des TPC

avec P(D) indépendant de G
le score "Bayésien"
126
Le score BD
  • Si
  • on accepte certaines hypothèses qui peuvent être
    résumées sous la forme "chaque distribution
    P(XiPai) peut être apprise indépendamment des
    autres"
  • les a priori sur les paramètres peuvent être
    représentés sous une certaine forme analytique
    (loi de Dirichlet)
  • Alors
  • l'intégrale de la vraisemblance peut être
    calculée analytiquement
  • le score résultant porte le nom de "Bayésien
    Dirichlet" (BD)

127
Le score BDe
  • Problème avec le score BD
  • demande l'obtention des a priori pour tous les
    paramètres de toutes les structures évaluées
    infaisable !
  • Si en plus des hypothèses déjà acceptées
  • on accepte que la vraisemblance ne puisse pas
    départager des structures qui représentent les
    mêmes relations d'indépendance conditionnelle
    (structures "équivalentes")
  • Alors
  • on aboutit à une formule analytique et à une
    méthode d'élicitation des a priori sur les
    paramètres qui définissent le score Bde
  • Les scores BD et BDe sont décomposables sur les
    nœuds

128
Optimisation des scores
  • La recherche de la structure optimale d.p.d.v. de
    ces scores (et de la plupart des autres) est
    NP-difficile
  • Recherche heuristique
  • Le plus souvent recherche gloutonne, tabou ou
    recuit simulé
  • Ses stratégies de recherche demandent la
    définition d'un ensemble d'opérateurs de
    transformation qui permettent l'exploration de
    l'espace de recherche

129
Opérateurs de transformation
A
B
Rajoute un arc
C
A
B
D
C
Enlève un arc
Renverse un arc
D
A
B
A
B
C
C
D
D
130
Détails algorithmiques
  • Le point de départ de la recherche
  • le réseau totalement déconnecté
  • un réseau a priori fourni par l'utilisateur
  • un réseau à structure contrainte qui peut être
    obtenu rapidement (l'arbre de recouvrement
    maximal)
  • La décomposabilité du score
  • facilite le calcul du score des hypothèses
    transformées au plus deux scores locaux à
    actualiser
  • peut être utilisée pour optimiser les calculs à
    l'aide d'une mémoire  cache 

131
Interprétation causale des réseaux bayésiens
  • Contestée par certains chercheurs peut-on
    vraiment apprendre des causalités à partir des
    données (sans faire des expériences) ?
  • Ses partisans s'appuient sur des hypothèses qui,
    selon eux, permettent de donner à certains arcs
    la sémantique de liens de causalité directe entre
    les variables
  • A l'origine d'une famille de méthodes
    d'apprentissage de structure reposant directement
    sur des tests d'indépendance conditionnelle
  • plus efficaces que les méthodes fondées sur un
    score
  • capables dans certains cas de découvrir la
    présence de variables cachées
  • très sensibles aux erreurs faites par les tests
    d'indépendance conditionnelle et à leur
    paramétrage

132
Conclusion
  • Il est difficile d'imaginer l'IA sans l'AA
  • L'AA a déjà prouvé son intérêt pratique par un
    grand nombre d'applications
  • Avec la Fouille de Données (Data Mining), l'AA
    connaît une nouvelle jeunesse et une approche
    plus pragmatique
  • En FD, le "tout automatique" et "les expériences
    de laboratoire" sont remplacés par une
    collaboration directe avec les experts humains et
    une confrontation sans merci avec les tâches
    pratiques à résoudre.
Write a Comment
User Comments (0)
About PowerShow.com