1.61k likes | 2.08k Views
Introduction à l’ Apprentissage Artificiel. Antoine Cornuéjols. INA-PG et L.R.I., Université de Paris-Sud, Orsay (France) antoine@lri.fr http://www.lri.fr/~antoine/. Le cours. 1 - 2 - 3 - 4- 5 - 6 -7-8 Documents
E N D
Introduction à l’Apprentissage Artificiel Antoine Cornuéjols INA-PG et L.R.I., Université de Paris-Sud, Orsay (France) antoine@lri.fr http://www.lri.fr/~antoine/
Le cours • 1-2-3-4-5-6-7-8 • Documents • Le livre"L'apprentissage artificiel. Concepts et algorithmes" A. Cornuéjols & L. Miclet. Eyrolles. 2002. • Les transparents sur www.lri.fr/~antoine/ …cours apprentissage
Cours : plan prévu 1- Introduction à l’induction (AC) 2- Apprentissage statistique (BK) 3- Apprentissage par méthodes d’ensemble (BK) 4- Apprentissage non supervisé (BK) 5- Réseaux de neurones / Validation (AC) 6- Apprentissage de séquences (AC) 7- Fouille de données (MS) 8- Fouille de données relationnelles (MS)
Cours 1: plan 1- Introduction à l’induction 1.1- Visages de l’apprentissage 1.2- Des algorithmes 1.3- Approche plus formelle de l’induction 1.4- Apprentissage par exploration
1.1 Applications : Analyse de puces à ADN • Analyse de l’expression des gènes dans un phénomène biologique • Combien de gènes ? • Quels gènes ?
1.1 Applications : Prédiction de la bioactivité de molécules
1.1 Applications : Grand DARPA challenge (2005) 150 mile off-road robot race across the Mojave desert Natural and manmade hazards No driver, no remote control No dynamic passing Fastest vehicle wins the race (and 2 million dollar prize)
“Face Recognition: Component-based versus Global Approaches” (B. Heisele, P. Ho, J. Wu and T. Poggio), Computer Vision and Image Understanding, Vol. 91, No. 1/2, 6-21, 2003. 1.1 Applications : Apprendre à étiqueter des images • Reconnaissance de visages
1.1 Applications : Apprendre à étiqueter des images • Reconnaissance de visages
1.1 Applications : Robots • Robot wowwee
1.1- Autres apprentissages • Association • Imitation • Apprentissage de comportement : • Apprendre à marcher (insectoïdes de Brooks) • Apprendre à se comporter sur une planète • Apprendre à mieux jouer • S'adapter à l'adversaire • Ne pas répéter ses fautes • Apprendre à jouer en équipe • Équipes de robots
1.1- Autres apprentissages • Apprentissage pour la navigation • Apprentissage de trajets (fourmis, abeilles) • Robots • Discrimination • Identification de sous-marins vs. bruits naturels • Identification de locuteur / de signature • Reconnaissance de l'écriture manuscrite, de la parole • Code postal • Catégorisation • SKY SURVEY
1. 1- Autres apprentissages • Systèmes autonomes avec apprentissage
1.1- Autres apprentissages • Révision de théorie • Découverte scientifique • Découverte de régularités (en biochimie, …) • Apprendre à filtrer l'information • Apprendre les préférences d'un utilisateur • Apprendre à faire des résumés • Apprendre à communiquer (e.g. Steels, …) • ...
1. 1- Quel objectif ? (5) Et aussi Mieux comprendre l'apprentissage : • Pour ne pas avoir à programmer • Programmation par la démonstration • Programmation par l'exemple (e.g. l'EBL) • Programmation par échantillon d'apprentissage : induction • Pour mieux enseigner • Pour savoir ce que d'autres intelligences pourraient apprendre : théorie générale de l'apprentissage
1.1- C'est quoi la science de l'apprentissage artificiel ? On étudie les apprentissages : • naturels • artificiels • desthéories (s'appliquant à tout système apprenant) • desméthodeset desalgorithmes d'apprentissage Implémentables sur machines
1. 1- Des scénarios • Induction • 1 2 3 5 … • 1 1 1 2 1 1 2 1 1 1 1 1 2 2 1 3 1 2 2 1 1 … • Comment ? • Pourquoi serait-il possible de faire de l’induction ? • Est-ce qu’un exemple supplémentaire doit augmenter la confiance dans la règle induite ? • Combien faut-il d’exemples ?
1. 1- Des scénarios • Est-ce de l’apprentissage ? • Phénomène de mémoire, sans mémoire !?
1. 1- Des scénarios • Séquences d’analogies • Quelles situations sélectionner ? • Dans quel ordre ? • Est-ce de l’apprentissage ? a b c a a b a b c i j j k k k a b d ? ?
1. 1- Des scénarios • Soient deux exemples dont les descriptions pourraient être : • E1 : Un triangle rayé au-dessus d’un carré uni noir • E2 : Un carré uni blanc au-dessus d’un cercle rayé • Formuler une description générale de ces deux exemples
1. 1- Des scénarios ProblèmeQuel est le nombre a qui prolonge la séquence : 1 2 3 5 … a ?
Mais alors … comment faire de l’induction ? et que peut-être une science de l’induction ? 1. 1- Des scénarios • Solution(s). Quelques réponses valides : • a = 6. Argument : c’est la suite des entiers sauf 4. • a = 7. Argument : c’est la suite des nombres premiers. • a = 8. Argument : c’est la suite de Fibonacci • a = 2p. (a peut être n’importe quel nombre réel supérieur ou égal à 5) Argument : la séquence présentée est la liste ordonnée des racines du polynôme : P = x 5 - (11 + a)x 4 + (41 + 11a)x 3 - (61 - 41a)x2 + (30 + 61a)x - 30a qui est le développement de : (x - 1) . (x - 2) . (x - 3) . (x - 5) . (x - a) • GénéralisationIl est facile de démontrer ainsi que n’importe quel nombre est une prolongation correcte de n’importe quelle suite de nombre
1. 1- Des scénarios • Exemples décrits par : • nombre(1 ou 2); taille (petit ou grand); forme(cercle ou carré);couleur(rouge ou vert) • Les objets appartiennent soit à la classe + soit à la classe - + 1 grand carré vert + 2 petits carrés rouges 2 grands cercles rouges - + 1 grand cercle vert 1 petit cercle rouge + 1 petit carré vert - 1 petit carré rouge + 2 grands carrés verts +
1. 1- Des scénarios • Oui • Oui • Non
1. 1- Des scénarios • Est-ce une tâche de reconnaissance de forme ? de caractères ? • Comment coder les exemples ? 0 1 1 1 1 1 1 0 1 1 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 1 1 1 1 11 1 1 0 1 1 1 1 0 0 1 1 1 0 • Le choix de la représentation peut rendre l’apprentissage trivial • Mais comment faire ce choix ?
1. 1- Des scénarios Apprendre par coeur ? IMPOSSIBLE • Généraliser Comment coder les formes ? Apprentissage supervisé
1. 1- Des scénarios • Extraction de caractéristiques (descripteurs, attributs) • Eliminer les descripteurs non pertinents • Introduction de nouveaux descripteurs • Utilisation de connaissances a priori • Invariance par translation • Invariance par changement d’échelle • Histogrammes • Combinaisons de descripteurs • Ajouter des descripteurs (beaucoup) !!
"Erreur" Courbe d'apprentissage 1. 1- Des scénarios • Quel critère de performance (de succès) ? • Probabilité de misclassification • Risque • Nombre d’erreurs • Apprentissage sur un échantillon d'apprentissage • Test sur une base de test Taille échantillon
Introduction à l’induction • Induction : Proposer des lois générales à partir de l’observation de cas particuliers
Comment définir l’apprentissage ? • « Learning is any change in a system that allows it to perform better the second time on repetition of the same task or another task drawn from the same population » [Herbert Simon, 1983] • « Learning is making useful changes in mind » [Marvin Minsky, 1985] • « Learning is the organization of experience » [Scott, 1983] • « Learning is constructing or modifying representations of what is being experienced » [Riszard Michalski, 1986]
1.1- Ingrédients de l’apprentissage • Espace des hypothèses H • Espace des entrées X • Mesure de performance • Optimisation / exploration de H • Protocole
1.1- Premières notions • Protocole • Passif ou actif ? • Incrémental (on-line) ou « tout ensemble » (off-line) ? • Réponses immédiates ou après votre estimation ? • Critère de succès • Nombre de mauvaises réponses ? • Taux de mauvaises réponses (taux d’erreur) ? • Nombre d’essais avant d’avoir « identifié la solution » ? • Taux d’erreur de votre estimation finale (qui peut être erronée) (« Taux d’erreur en généralisation »)
1.1- Notion de protocole Le protocole règle les interactions entre les acteurs • Environnement : • Données fournies incrémentalement ou non (apprentissage en-ligne / batch) • Dans un ordre indifférent / hostile / favorable • Oracle : • Données semi-supervisées • Apprentissage multi-instances • Étiquettes vraies fournies avec les exemples ou seulement après prédiction de l’apprenant (risque mesuré par le nombre d’erreurs de l’apprenant : mistake-bound learning) (ou relativement au meilleur expert d’un comité :relative loss-bound models) • Peut fournir un contre-exemple quand l’apprenant propose une hypothèse candidate h non équivalente à la fonction cible (equivalence queries) • Apprenant : • Complètement passif : données i.i.d. • Peut poser des questions : fournir un exemple et demander son étiquette (membership queries) • Peut poser des questions sur les statistiques des exemples étiquetés (statistical queries) • Apprentissage actif : organise son exploration du monde
1.1- Questions essentielles • Données et connaissances a priori • Quelles données sont disponibles ? • Que sait-on du problème ? • Représentation • Comment représenter les exemples ? • Comment représenter les hypothèses ? • Méthode et estimation • Quel est l’espace des hypothèses ? • Comment évaluer une hypothèse en fonction des exemples connus ? • Évaluation de la performance après apprentissage ? • Commentreconsidérer l’espace des hypothèses?
1.1- Types d’apprentissages • Apprentissage supervisé À partir de l’échantillon d’apprentissageS= {(xi, ui)}1,mon cherche une loi de dépendance sous-jacente • Par exemple une fonction h aussi proche possible de f (fonction cible) tq : ui = f(xi) • Ou bien une distribution de probabilités P(xi, ui) afin de prédire l’avenir
1.1 - L'induction supervisée • Si f est une fonction continue • Régression • Estimation de densité • Si f est une fonction discrète • Classification • Si f est une fonction binaire (booléenne) • Apprentissage de concept
1.1- Types d’apprentissages • Apprentissage non supervisé De l’échantillon d’apprentissageS = {(xi)}1,mon cherche des régularités sous-jacentes • Sous forme d’une fonction : régression • Sous forme de nuages de points (e.g. mixture de gaussiennes) • Sous forme d’un modèle complexe (e.g. réseau bayésien) afin de résumer, détecter des régularités, comprendre …
1.1- Types d’apprentissages • Apprentissage par renforcement Les données d’apprentissage • Une séquence de perceptions, d’actions et de récompenses : (st, at, rt)t = 1, ¥ • Avec un renforcementrt • rt peut sanctionner des actions très antérieures à t Le problème: inférer une application : situation perçue action afin de maximiser un gain sur le long terme Environnement Action Perception Récompense Apprentissage de réflexes ... -> … apprentissage de planification
1.1- Plusieurs niveaux d’analyse ? 1. Analyse de principe, de faisabilité : que peut-on apprendre ? Sous quelles conditions ? sans référence à un algorithme particulier !! • Théories mathématiques en particulier de nature statistique 2. Niveau de la réalisation / simulationComment apprendre ? • Algorithmes • Programmes • Réalisations et tests empiriques
Cours 1: plan 1- Introduction à l’induction 1.1- Visages de l’apprentissage 1.2- Des algorithmes 1.3- Approche plus formelle de l’induction 1.4- Apprentissage par exploration
1.2- Algorithme des k-plus proches voisins • K-Nearest Neighbours