UF Analyse descriptive et prédictive - Contexte : L'Intelligence Artificielle L'apprentissage - LAAS
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
UF Analyse descriptive et prédictive Contexte : - L’Intelligence Artificielle - L’apprentissage M.-J. Huguet https://homepages.laas.fr/huguet 2019-2020
Le buzz (1) L’IA est en vogue dans les médias et la presse scientifique Nombreuses réalisations depuis 20 ans avec une forte accélération : 1997 : Deep Blue (IBM) : un système informatique bat le champion du monde d’échecs 2005 : Challenge DARPA : un robot se déplace de façon autonome en env. inconnu 2007 : Challenge DARPA : un robot se déplace de façon autonome en env. urbain 2011 : Watson (IBM) : bat des champions du monde au Jeu Jeopardy! 2012 : Succès de l’apprentissage profond en reconnaissance d’images (Imagenet) o Large Scale Visualization Challenge 2014 : Google : description automatique d’images 2015 : Facebook : reconnaissance faciale 2015/2016 : AlphaGo (Google) : bat le champion du monde de Go 2016 : Daddy’s Car (composition style Beatles), Sony CSL ………………….. 2
Le buzz (2) …. 2017 … 2018 … 2019 … 2020 Compagnons Traduction instantanée Recommandation, identification de communautés Véhicules sans chauffeur Impact des données massives sur le (re)-nouveau de l’IA Apprentissage « artificiel » ou apprentissage « machine » 3
Données et Connaissances Connaissances Indispensables pour une machine intelligente Différents axes de recherche en IA : Modélisation et règles d’utilisation des connaissances o 1er axe de l’IA : imiter la pensée et le raisonnement Acquisition progressive de connaissances par une machine o 2e axe de l’IA : imiter le fonctionnement du cerveau Ajout d’un 3e axe : analyser les données o Statistiques et probabilités Complémentarité de ces axes 4
Références (1) Livres Intelligence Artificielle, S. Russel, P. Norvig, Pearson Education, 2010 http://aima.cs.berkeley.edu/ Apprentissage Artificiel, A. Cornuejols, L. Miclet, V. Barrat, Eyrolles, 3ème Ed., 2018 Recherche / Vulgarisation scientifique L’héritage d’Alan Turing, Journal du CNRS Intelligence Artificielle, Livre Blanc INRIA Chaine youtube science4all et série « Intelligence Artificielle et Machine Learning » L’IA, mythes ou réalités, Intersectices 2015 https://interstices.info/jcms/p_84122/l-intelligence-artificielle-mythes-et-realites 5
Références (2) Cours (accessibles sur le web): Histoire de l’IA, Frédéric Fürst, Univ Picardie, 2015 (?) Apprentissage, Jean-Daniel Zucker, UPMC, 2010-2011 Apprentissage non supervisé, Nicolas Baskiotis, UPMC, 2016-2017 Apprentissage, Chloe-Agathe Azencott, Centrale SupElec, 2016- 2017 6
Références (3) Cours du collège de France http://www.college-de-france.fr Enseignement Chaire Mathématiques et Sciences Numériques Gérard Berry : Algorithmes, machines et langages Enseignement Chaires annuelles Informatique et Sciences Numériques 2017-2018 : Claire Mathieu : o Algorithmes 2015-2016 : Yann LeCun : o L’apprentissage profond 2011-2012 : Serge Abiteboul : o Sciences des données : de la logique du premier ordre à la toile 7
Références (4) Associations scientifiques : AFIA : Association Française d’IA : http://afia.asso.fr/ GdR IA : Groupe de Recherche IA (CNRS) : http://www.gdria.fr/ Jeux de tests : Opendata : https://www.data.gouv.fr/fr/ UCI : http://archive.ics.uci.edu/ml/index.php Challenge Kaggle : https://www.kaggle.com/ Groupe Meetup Toulouse Data Science https://www.meetup.com/fr-FR/Tlse-Data-Science/ 8
IA : les débuts Les bases de l’IA (A. Turing 1950) Une machine peut-elle penser ? Eng : http://cogprints.org/499/1/turing.html Fr : https://books.google.fr/books?id=Aab_kiv_DwMC&pg=PA39#v=onepage&q&f=false Reformulation : une machine peut-elle imiter l’être humain ? Intérêt : On peut évaluer la réponse à la deuxième question et comparer une machine à l’être humain qui lui pense L’intelligence est indépendante de la forme Test de Turing : Evaluer la deuxième question Jeu de l’imitation auquel est soumis une machine Le résultat du jeu : la machine est déclarée intelligente ou pas 10
IA : Test de Turing (1) Hypothèses : toute activité intellectuelle peut se reproduire à l’aide d’un nombre fini de symboles que l’on stockerait et que l’on emploierait au fur et à mesure que le raisonnement avance. les êtres humains peuvent juger de l’intelligence d’une machine en comparant son comportement avec le comportement humain Principe : Un observateur dialogue avec une machine et un être humain S’il ne peut pas distinguer l’être humain de la machine alors celle-ci passe le test de Turing et est déclarée intelligente Mais : des comportements intelligents ne sont pas humains. Exemple résoudre des calculs complexes rapidement Mais : des comportements humais ne sont pas parfaits ni rationnels Pour se faire passer pour un humain, une machine doit avoir sa logique, mais aussi… ses défauts 11
IA : Test de Turing (2) Test original Femme Homme Situation 1 : dialogue entre observateur, une femme (dit la vérité) et un homme se faisant passer pour une femme (ment) Observateur Femme Ordinateur Situation 2 : dialogue entre observateur, une femme et une machine remplaçant l’homme se faisant passer pour une femme Observateur Résultat : si l’observateur trouve aussi souvent la bonne réponse dans la situation 2 que dans la situation 1 alors la machine a réussi à imiter l’homme 12
IA : une machine qui apprend ? Les bases de l’IA (A. Turing 1950) Comment arriver à imiter le cerveau d’un être humain ? Impossibilité d’apprendre par cœur comment répondre dans toutes les situations Simuler un processus d’évolution à partir d’un état plus simple Machine « enfant » Processus d’évolution et de sélection Introduction de la notion de « machine qui apprend » Impossibilité d’avoir une représentation de l’état interne de la machine Différence avec le comportement « prévisible » utilisé pour réaliser des calculs Intégrer du hasard dans le processus d’évolution Par où commencer ? Résoudre des problèmes complexes (jeu d’échecs) Développer des organes sensoriels 13
Histoire (brève) de l’IA (1) 1956 : Naissance « officielle » de l’IA Conférence de Dartmouth (initiateurs : ) Rêve de l’IA : Construire des machines pouvant égaler l’être humain - Comment simuler la pensée et le langage au travers de règles formelles? - Comment faire penser un réseau de neurones? - Comment doter une machine de capacité d'apprentissage automatique? - Comment doter une machine de créativité? 14
Histoire (brève) de l’IA (2) Précurseurs (années 1950 …) : A. Turing : une machine peut-elle penser ? (Test de Turing) H. Simon & A. Newel : démonstration automatique de théorèmes (Logic Theorist) W. Mc Culloch & W. Pitts : réseaux de neurones artificiels W. Weaver : règles linguistiques, traduction automatique 1956 – 1974 : l'Age d’or 1957 : Perceptron (F. Rosenblatt) : réseau de neurones artificiels à 1 seule couche 1957 : GPS General Problem Solver (H. Simon & A. Newel) o Problème = Etat Courant, But, Opérateurs o Systèmes de production = ensemble de règles d’inférence o Résolution : appliquer ces règles (ch. arrière / induction) 1958 : LISP (J. Mc Carthy) : LISt Processing, langage de référence de l’IA o Représentation du programme et des données par des listes Année 60 : Grammaires de N. Chomsky, Réseaux Sémantiques (R. Quillian) 15
Histoire (brève) de l’IA (3) 1956 – 1974 : l'Age d’or Problèmes de jeux, Démonstration, Heuristiques, Logique, Planification d’actions, Traitement du langage naturel, Vision, … Deux familles : Logique et informatique : imiter la pensée et le raisonnement Sciences cognitives et sciences humaines : imiter le fonctionnement du cerveau Des prédictions (1958) … dans 10 ans … o un ordinateur sera champion du monde d’échecs • 1997 : Deep Blue o un ordinateur écrira de la musique qui sera considérée comme esthétique • 2016 : Daddy’s Car (style des Beatles), …. o un ordinateur découvrira un théorème fondamental des mathématiques o les théories psychologiques auront la forme de programmes 16
Histoire (brève) de l’IA (4) 1974 – 1980 : Premier hiver de l’IA Crise scientifique, morale et financière Limite en puissance de calcul, Limite NP-Complétude (Cook 71; Karp 72) Besoin de grandes masses de données pour produire des connaissances Paradoxe : o certains problèmes difficiles pour l’être humain peuvent être résolus (ex : démonstration) o mais pour des problèmes faciles pour l’être humain (reconnaître un visage), il n’y a pas de résultats probant Est-il pertinent de doter les machines d’intelligence ? L’intelligence peut-elle se ramener à des modèles symboliques ? Développement de nouveaux modèles et méthodes : o Extension des logiques : Multi-valuées, Floues, Modales, Temporelles, … o Langage Prolog (clauses de Horn), 17
Histoire (brève) de l’IA (5) 1980-1987 : le retour des financements … Boom des systèmes experts et de l’ingénierie des connaissances (E. Feigenbaum) Application à des domaines spécifiques (demande des entreprises) o Pour limiter l’explosion combinatoire des systèmes de production o Premiers systèmes experts : DENDRAL (Chimie), MYCIN (Médical) Nouveaux modèles d’acquisition et de représentation des connaissances o Graphes conceptuels, Logique de description Raisonnement et Décision : Programmation par contraintes, Raisonnement à base de cas, Apprentissage symbolique Permettre aux programmes de s’améliorer Liens avec la biologie Algorithmes génétiques, Insectes sociaux, Systèmes Multi-Agents Réseaux de neurones : rétro-propagation du gradient (J. Hopfield) o Applications à la reconnaissance de caractères ou reconnaissance vocale 18
Histoire (brève) de l’IA (6) 1987 – 1993 (1995 ?) : Second hiver de l’IA Spécialisation/Fragmentation de l’IA en nombreux sous-domaines Recentrage vers la robotique o Le corps (capacités sensorielles, mouvement) est essentiel pour produire de la connaissance et du raisonnement J. Pearl : liens entre des problèmes d’IA et d’autres domaines (mathématique, économie, recherche opérationnelle) : probabilité, théorie de la décision, optimisation, modèles de Markov, réseaux bayésiens, … Nombreuses réalisations dans des applications spécifiques : o Robotique industrielle, reconnaissance vocale, diagnostic, reconnaissance des formes, recherche d’information, … Quand un problème est résolu, ce n’est plus un problème d’IA … 19
Histoire (brève) de l’IA (7) Fin années 1990 : Retour en force de l’IA Années 1990 : Développement des ordinateurs personnels, des jeux vidéos et du Web o Rendre les moteurs de recherche plus intelligent • Web sémantique : des données aux connaissances / Ontologies o Coder une IA ≈ coder un algorithme de jeu Pionniers (en France) Jacques Pitrat (Doct. 1966) et Jean-Louis Laurière (1976 – ALICE) - Paris 6 Alain Colmerauer (Doct. 1967, - Prolog1 1974, Prolog4 1996) - Marseille 20
Histoire (brève) de l’IA (8) Et maintenant : Données massives Explosion des données Convergence de différentes évolutions Méthodes de « Data Science » Méthodes computationnelles / Algorithmes Capacité de calcul et de stockage o processeurs, architectures des systèmes informatiques Focalisation importante sur l’Apprentissage (Artificiel) Automatique Rôle clé pour une machine « intelligente » 21
Apprentissage Automatique Domaine multi-disciplinaire - Raisonnement et Décision - Représentation Optimisation des connaissances Statistiques Intelligence - Robotique : Artificielle planification, reconnaissance de formes/vision Probabilités Apprentissage Automatique Sciences Cognitives Traitement du Signal Médecine / Automatique Biologie
Les limites de l’informatique (1) … on ne peut pas tout calculer …. Limites des calculs Travaux A. Turing 1936 Calculabilité : ce qui est calculable peut être décomposé en un nombre fini d’étapes Concept de « machine » simulant les calculs : base du fonctionnement des ordinateurs actuels Décidabilité : Peut-on tout calculer ? NON 23
Les limites de l’informatique (2) …. on n’a pas assez de temps …. Difficulté des calculs : Complexité Problèmes « faciles » Besoin en ressources (temps et mémoire) Problèmes « difficiles » o en fonction des données d’entrée Ex : Voyageur de commerces o Que va-t-il se passer si les données varient en taille ? o Pour 4 points : • 6 trajets ≠ o Pour 8 points : • plus de 5 000 o pour 13 points : • plus de 480 millions o A 3 GHz (3 op / 10−9 seconde) • 19 villes : 1 an o Classification des problèmes • 27 villes : 8x âge univers o Si 1 op / 10−44 seconde 24 • 50 villes : 400 x âge univers
Section 2. L’apprentissage automatique 25
Définition générale Qu’est-ce que l’apprentissage pour une « machine » ? Simon (1983) : changements dans un système lui permettant d’améliorer ses performances sur une tâche déjà vue ou similaire. Tâches ? Applications ? o Prédiction ? Classification ? Planification et Action ? Résolution de problèmes ? Changements ? o Acquérir de nouvelles connaissances / de nouvelles capacités o Réviser ses connaissances / son comportement • Résoudre mieux / plus efficacement les problèmes Performances ? o Des capacités du système après apprentissage, … Qu’est-ce que l’apprentissage statistique ? Donner aux ordinateurs la capacité d' « apprendre » à partir de données Obtenir des modèles de données ou de processus lorsque la formalisation de règles explicites semble impossible Description des données estimation d’un modèle (entrainement) Prédiction sur ces données exploitation d’un modèle 26
Démarche Raisonnement inductif : Raisonnement déductif : Déterminer des « lois » Déterminer une conclusion générales à partir de cas particulière à partir particuliers Connaissances d’affirmations générales - Modèles Résolution de Apprentissage problèmes Résolution de Apprentissage problèmes Problème Décisions – Données Solutions - Actions 27
Exemple Apprendre à jouer aux échecs But : Apprendre les règles du jeu par observation ? Apprendre à bien jouer ? Prédire les actions de l’adversaire ? Prédire le vainqueur ? … Méthode de résolution pour chercher le prochain coup à jouer algo MinMax basé sur une fonction d’évaluation Apprendre une « bonne » fonction d’évaluation Identifier des stratégies par rapport à des positions, Apprendre par cœur certains coups, … Choix des données d’apprentissage : quelles parties d’échecs ? Intérêt de prendre en compte des coups « faibles », des coups illégaux ? Quel séquencement ? Comment valider après apprentissage : nombre de parties gagnées (sur quel échantillon ?) avec explication ? 28
Exemple Reconnaître des caractères manuscrits Quels caractères : séparation des éléments ? Difficulté : impossible d’apprendre par cœur toutes les formes d’écriture Codage des données : matrice binaire Pré-traitement des images et segmentation Mesures codage o Homogénéisation (centrage, échelle, ….) Reconnaissance (classification) Descripteurs pertinents Représentation o hauteur, largeur, boucle, … Post-traitement : spécificités linguistique Décisions classification Reconnaissance des Formes : Théorie du Codage (de l’information), Traitement du signal, Traitement d’images, … 29
Raisonnement Différents mécanismes de raisonnement Raisonnement inductif : de l’expérimentation à la production de connaissances Déterminer des « lois » générales à partir de cas particuliers Partir d’un nombre fini de propositions pour en proposer une conclusion Supervisé : avec « professeur » Non supervisé : « sans professeur » Par renforcement : processus incrémental par interactions avec environnement Exemples : classification, partitionnement, identification, …. Raisonnement déductif : de l’explication à la révision de connaissances Déterminer une conclusion particulière à partir d’affirmations générales La conclusion est une conséquence nécessaire des affirmations par inférence logique Environnement connu / inconnu Exemples : Résolution de problèmes, action 30
Données Différentes natures Données quantitatives : Valeurs continues ou discrètes Données qualitatives (catégorielles) : Valeurs discrètes Exemple : genre ; pays de naissance Données ordinales : Valeurs discrètes avec relation d’ordre Exemple : nombre d’étoiles pour évaluer un service Données séquentielles : Exemple : séquence d’états Données temporelles Données spatiales 31
Différentes étapes Un problème à résoudre Acquisition des données Quelles données ? Comment les collecter ? Caractéristiques des données Préparation et nettoyage des données Données manquantes ? Données bruitées ? Obtention d’un modèle Phase d’entrainement sur une partie des données Evaluation du modèle Phase de validation du modèle sur une autre partie des données Déploiement Mise en « production » du modèle pour résoudre le problème posé 32
Différents types d’apprentissage (1) Apprentissage supervisé Deux étapes 1. Déterminer un modèle à partir de données étiquettées Données Environnement Oracle Evaluation Données : Etiquettes : , ∀ ∈ [1, . . ] , … , Apprentissage : Résultat : Estimation ℎ Modèle ℎ ~ ( ), ∀ ∈ [1, . . ] 33
Différents types d’apprentissage (2) Apprentissage supervisé Deux étapes 2. Déterminer l’étiquette d’une nouvelle donnée, connaissant le modèle appris Qu’est-il appris ? Concept (fonction booléenne) Régression (fonction continue) Classification (fonction discrète ou classe) 34
Différents types d’apprentissage (3) Apprentissage non supervisé Le système ne dispose que d’exemples : Données sans étiquette Nombre et nature des classes sont inconnus Rechercher une structure dans les données Partitionner les exemples en clusters Clustering (segmentation, partitionnement) 35
Différents types d’apprentissage (4) Apprentissage par renforcement Apprendre par interaction avec l’environnement par rapport à des observations Principe Observation d’un état Calcul d’une action (prise de décision) Réalisation de l’action Réception (et mémorisation) d’un résultat suite à cet action Découvrir une stratégie via un mécanisme de récompenses (positives ou négatives) 36
Processus d’apprentissage supervisé Séparation des jeux de données Base d’apprentissage Performances en entrainement Base de test / validation Performances en généralisation Sous-apprentissage Le modèle appris est éloigné des données En entrainement et en validation Sur-apprentissage Le modèle appris se généralise mal Erreurs sur la base de test On ne trouve que ce qu’il y a dans les données Interprétation ? Explicabilité ? Equité ? Robustesse ? 37
Processus d’apprentissage non supervisé Comment évaluer un bon clustering ? Homogènes : les éléments d’un même cluster sont similaires Séparés : les éléments de différents clusters sont différents Plusieurs métriques d’évaluation o Le résultat dépend beaucoup de la modélisation du problème et de la mesure de distance … 38
Méthodes d’apprentissage supervisé Exemple : réseaux de neurones - Réseaux de relation entre entrées (données) et sortie (étiquettes) - Pondération des entrées - Propagation des entrées vers la sortie - Fonction d’activation - Mesure des écarts / étiquettes - Rétro-propagation pour mise à jour des poids - Arrêt : mesure de performances (erreur) sur un ensemble de données - Exemple d’architecture de réseaux de neurones avec une couche « cachée » 39
Méthodes d’apprentissage supervisé Nombreuses architectures de réseaux de neurones https://towardsdatascience.com/the-mostly- complete-chart-of-neural-networks-explained- 3fb6f2367464 - Prix Turing 2019 : deep learning - Y. LeCun,Y. Bengio et G. Hinton 40
Débats (anciens et nouveaux …) Intérêts/Craintes de l’IA dans la société : Augmentation des connaissances Amélioration des technologies Partage : o L’Homme augmenté o Métiers et emplois Conséquences écologiques Respect de la vie privée (Fouille de données, Internet des Objets, …) Robots guerriers … Éthique des recherches et des algorithmes, Transparence Autonomie partagée 41
Section 3. Formation 5-SDBD 42
Analyse descriptive/prédictive/prescriptive Analyse descriptive Comprendre les données; les décrire; chercher régularités Apprentissage non-supervisé Ex : pourquoi y-a-t-il des bouchons sur la route ? Tronc Analyse prédictive commun Identifier des règles de décision / données futures Apprentissage supervisé Ex : quel sera le trafic dans 2 heures ? Ex : diagnostic médical - Description des patients – Prédiction d’une pathologie Analyse prescriptive Quelles actions effectuer ? Option AP Ex : quel est le meilleur trajet en partant à 8h ? 43
Plan de l’UF – Tronc commun Partie Analyse exploratoire – G. Trédan – M. Roy – R. Pasqua Méthodologie pour analyser un ensemble de données Visualisation de données TP en R Partie Apprentissage supervisé – M-V. Le Lann – M. Siala Principes généraux Quelques méthodes : K-plus proches voisins; Réseaux de neurones, Support Vector Machines TP en Python (ScikitLearn) Partie Apprentissage non-supervisé – MJ. Huguet – M. Siala Principes généraux Quelques méthodes : k-means, approches hiérachiques, basées graphes Quelques problèmes : fouille de données, réseaux sociaux TP en Python 44
Outils Apprentissage supervisé et non supervisé : Scikitlearn (Python), R, Matlab, …. Deep Learning / Big Data : TensorFlow, Theano, Keras, Caffe, Torch, …. Lien : https://project.inria.fr/deeplearning/files/2016/05/DLFrameworks.pdf Langages : Scala, Julia, … Quelques liens : https://scala-lang.org/ https://www.coursera.org/learn/scala-spark-big-data https://julialang.org/ 45
Vous pouvez aussi lire