1.68k likes | 2.25k Views
Apprentissage automatique et notions connexes. ARTC - ESIEA 4ème année Intervenant : Paul MUNTEANU Centre de Recherche du Groupe ESIEA. Objectifs du module. Présenter les bases de l'apprentissage automatique Introduire, par ce biais, des nouveaux concepts de l'IA :
E N D
Apprentissage automatiqueet notions connexes ARTC - ESIEA 4ème année Intervenant : Paul MUNTEANU Centre de Recherche du Groupe ESIEA
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 Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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 » Paul MUNTEANU
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) Paul MUNTEANU
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érienceE »(« 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) Paul MUNTEANU
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 Paul MUNTEANU
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 ?) Paul MUNTEANU
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 Paul MUNTEANU
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, ... Paul MUNTEANU
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 Paul MUNTEANU
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 ») Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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) Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
Plan du cours • Introduction à l'AA • Notions théoriques d'AA • Notions algorithmiques d'AA • Exemples d'algorithmes d'AA Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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 ! Paul MUNTEANU
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) Paul MUNTEANU
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 Paul MUNTEANU
Exemple d'induction Y X Quelle est la relation entre X et Y ? Paul MUNTEANU
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 Paul MUNTEANU
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 ! Paul MUNTEANU
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 Paul MUNTEANU
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 » Paul MUNTEANU
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) Paul MUNTEANU
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 y=f(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 Paul MUNTEANU
Formalisation du biais d'induction (2) • Probabilités • les critères statistiques « orthodoxes » tels que le maximum de vraisemblance, P(D|H), ne suffisent généralement pas • cas précédent : P(D|H) = 1 pour toutes les hypothèses en accord avec les exemples • approche « bayésienne » des probabilités : critère du maximum a posteriori P(H|D) Paul MUNTEANU
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 Paul MUNTEANU
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(D|H) Théorie Données|Théorie 0111000110 111000101000111001110101 DL(H) DL(D|H) Paul MUNTEANU
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 ? Paul MUNTEANU
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 Paul MUNTEANU
Plan du cours • Introduction à l'AA • Notions théoriques d'AA • Notions algorithmiques d'AA • Exemples d'algorithmes d'AA Paul MUNTEANU
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) Paul MUNTEANU
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érateursde transformation Paul MUNTEANU
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 Paul MUNTEANU
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) Paul MUNTEANU
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 Paul MUNTEANU
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 Paul MUNTEANU
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) Paul MUNTEANU
Descente du gradient Min local Min global Paul MUNTEANU
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é Amélioration de la recherche par escalade Paul MUNTEANU