Apprentissage Statistique Master DAC - Université Paris 6 P. Gallinari, [email protected], http://www-connex.lip6.fr/~gallinar/ Année 2014-2015 Partie 1 Introduction Apprentissage Automatique Problématique : Nous souhaitons avoir des ordinateurs intelligents adaptatifs avec un comportement robuste Programmer de tels comportement est souvent impossible Par exemple : Intelligence artificielle dans les jeux (scripts) Solution : Faire un ordinateur capable de se programmer lui-m^eme a partir d'exemples (apprentissage classique / par imitation) a partir de son "experience" (apprentissage par renforcement) 3 Apprentissage Statistique - P. Gallinari Exemple 4 Apprentissage Statistique - P. Gallinari Exemple 5 Apprentissage Statistique - P. Gallinari Exemple 6 Apprentissage Statistique - P. Gallinari Exemple 7 Apprentissage Statistique - P. Gallinari Exemple 8 Apprentissage Statistique - P. Gallinari Exemple 9 Apprentissage Statistique - P. Gallinari Exemple 10 Apprentissage Statistique - P. Gallinari Quand utiliser l’apprentissage Il n'y a pas d'expert humain L'utilisation d'un expert humain est trop couteuse ou trop peu performante La quantité de données est telle qu'une analyse manuelle est impossible Les données évoluent rapidement dans le temps Les modelés doivent être adaptes a l'utilisateur Les systèmes doivent s'adapter facilement a des conditions opérationnelles différentes 11 Apprentissage Statistique - P. Gallinari Apprentissage à partir d'exemples 3 ingrédients de base Données {z1, ..., zN} Machine Fθ Critère C (apprentissage et évaluation) But Extraire de l'information à partir des données Information pertinente pour la tâche étudiée pour d'autres données du même type Utilisation Inférence sur de nouvelles données Type d'apprentissage : Supervisé Non supervisé Semi supervisé Renforcement 12 Apprentissage Statistique - P. Gallinari Exemples - problèmes d'apprentissage Parole / Ecriture Données : (signal, (transcription)) But : reconnaître signal Critère : # mots correctement reconnus Conduite véhicule autonome Données : (images routes, (commande volant)) e.g. S. Thrun Darpa Challenge + Google car But : suivre route Critère : distance parcourue Recherche d'information textuelle Données : (texte + requête, (information pertinente)) – corpus d’apprentissage But : extraire l'information correspondant à la requête Critère : Rappel / Précision Diagnostic dans systèmes complexes Données : (état capteurs + alarmes, (diagnostic)) But : diagnostic correct Critère : ? 13 Apprentissage Statistique - P. Gallinari Exemples - problèmes d'apprentissage Modélisation d'utilisateur Données : (Traces utilisateur) But : analyser/ modéliser le comportement de l'utilisateur Exemples : ciblage clientèle, aide navigation, publicité, recommandation, assistants personnels e.g. Google now Critère : ? Evaluation : ? Example Google Now Google Now keeps track of searches, calendar events, locations, and travel patterns. It then synthesizes all that info and alerts you—either through notifications in the menu bar or cards on the search screen—of transit alerts for your commute, box scores for your favorite sports team, nearby watering holes, and more. You can assume it will someday suggest a lot more. 14 Apprentissage Statistique - P. Gallinari Exemples - problèmes d'apprentissage Plus difficile : Traduction Extraction d’information (e.g. Never-Ending Language/ Image Learning) Compréhension de texte / scène visuelle – extraction de sens Découverte dans bases de données ou bases de connaissances .... Données : i.e. représenter l'information ?? But ?? Critère ?? Evaluation ?? 15 Apprentissage Statistique - P. Gallinari Données : diversité 16 Apprentissage Statistique - P. Gallinari Données : quantités Yahoo! Data – A league of its own… U. Fayyad KDD’07 Terrabytes of Warehoused Data Millions of Events Processed Per Day 14,000 GRAND CHALLENGE PROBLEMS OF DATA PROCESSING TRAVEL, CREDIT CARD PROCESSING, STOCK EXCHANGE, RETAIL, INTERNET Y! PROBLEM EXCEEDS OTHERS BY 2 ORDERS OF MAGNITUDE 17 Apprentissage Statistique - P. Gallinari warehouse Y! Main Walmart Y! Data Highway Warehouse Y! Panama Y! Panama NYSE 100 Y! LiveStor VISA 94 AT&T SABRE 500 49 25 Korea 225 1,000 Telecom 120 2,000 Amazon 50 5,000 Données : quantités Petabytes (10^15) (chiffres 2012) Google processes about 24 petabytes of data per day Google Street View Has Snapped 20 Petabytes of Street Photos Telecoms: AT&T transfers about 30 petabytes of data through its networks each day Physics: The experiments in the Large Hadron Collider produce about 15 petabytes of data per year Neurology: It is estimated that the human brain's ability to store memories is equivalent to about 2.5 petabytes of binary data 18 Apprentissage Statistique - P. Gallinari Big Data: Volume, Velocity, Variety, and Veracity http://www-01.ibm.com/software/data/bigdata/ Volume: terabytes, petabytes Turn 12 terabytes of Tweets created each day into improved product sentiment analysis Convert 350 billion annual meter readings to better predict power consumption Velocity: streams Scrutinize 5 million trade events created each day to identify potential fraud Analyze 500 million daily call detail records in real-time to predict customer churn faster Variety: Big data is any type of data - structured and unstructured data such as text, sensor data, audio, video, click streams, log files and more. New insights are found when analyzing these data types together. Monitor 100’s of live video feeds from surveillance cameras to target points of interest Exploit the 80% data growth in images, video and documents to improve customer satisfaction Veracity: Establishing trust in big data presents a huge challenge as the variety and number of sources grows. 19 Apprentissage Statistique - P. Gallinari Gartner Hype Cycle: Big Data 20 Apprentissage Statistique - P. Gallinari 21 Apprentissage Statistique - P. Gallinari Data science (Wikipedia 2013) Data science incorporates varying elements and builds on techniques and theories from many fields, including mathematics, statistics, data engineering, pattern recognition and learning,advanced computing, visualization, uncertainty modeling, data warehousing, and high performance computing with the goal of extracting meaning from data and creating data products. …..Data science seeks to use all available and relevant data to effectively tell a story …. Data science is the practice of deriving valuable insights from data. Data science is emerging to meet the challenges of processing very large data sets i.e. "Big Data" consisting of structured, unstructured or semistructured data that large enterprises produce. A domain at center stage of data science is the explosion of new data generated from smart devices, web, mobile and social media. ……data scientists rely heavily upon elements of statistics, machine learning, text retrieval and natural language processing to analyze data and interpret results. 22 Apprentissage Statistique - P. Gallinari Place de l’apprentissage L’apprentissage constitue une brique dans le processus de fouille / traitement de données qui arrive souvent à la fin du processus qui est intégré dans une application ou dans le SI de l’entreprise Les différentes étapes de l’analyse des données Collecte des données / stockage Prétraitement des données, étiquetage éventuel Analyses des données par des techniques exploratoires Mise au point et test de différents modèles d’apprentissage Evaluation 23 Apprentissage Statistique - P. Gallinari Domaines d’application en Data Mining Exemples Web recherche d'information, filtrage d'information extraction d'information textuelle : e.g. recherche, bibliothèques virtuelles, veille technologique, Question Answering , ... Multi-média image + son, vidéo Données d’entreprise infos produits, infos clients, ciblage clientèle ... Analyse comportement e.g. telecoms : serveurs web, accès services commerciaux, internet - intranet, aide accès information, publicité Distribué Mobiles : personnalisation, accès information Capteurs distribués, objets connectés Biologie - analyse de séquences, de structures Automobile ... 24 Apprentissage Statistique - P. Gallinari Challenges de l’apprentissage Passage à l’échelle Quantité de données, taille données Dynamicité Flux Distribué Complexité des données et des problèmes Données structurées standards (XML, RDF, SMIL, …), taxonomies Web2.0 : découverte / analyse de relations !! Nouveaux problèmes, nouveaux usages Adaptation rapide outils existants et création de nouveaux outils 25 Apprentissage Statistique - P. Gallinari Plan du cours Introduction/Perceptron Cadre formel de l’apprentissage => Deep Learning Méthodes à noyaux Apprentissage non supervisé et EM Apprentissage semi-supervisé et modèles de graphes Apprentissage de représentations Apprentissage séquentiel (bandit et renforcement) Théorie de l’apprentissage 26 Apprentissage Statistique - P. Gallinari 4 Familles d’algorithmes 27 Apprentissage Statistique - P. Gallinari Données dans la pratique de l’apprentissage Distinguer les ensembles d’apprentissage Mettre au point le modèle de test Evaluer les performances du modèle appris de validation Apprentissage de méta-paramètres Remarque On fera en général l’hypothèse que toutes les données sont générées suivant une même loi 28 Apprentissage Statistique - P. Gallinari Apprentissage supervisé Ensemble d'apprentissage Constitué de couples (entrée, sortie désirée) , ,…, , But Au moyen d'un algorithme d'apprentissage, découvrir l’association = ( ) En utilisant les données d’appprentissage Qui offre une bonne généralisation i.e. = ( ) si hors de l'ensemble d'apprentissage mais généré par le même phénomène Utilisation discrimination, identification, prévision, approximation … 29 Apprentissage Statistique - P. Gallinari Apprentissage non supervisé Ensemble d'apprentissage Uniquement des données d’entrée ,…, But Regrouper les données similaires Modéliser les données Découvrir des relations non spécifiées à l’avance entre les données Utilisation estimation de densité, extraction de similarités 30 Apprentissage Statistique - P. Gallinari Apprentissage semi supervisé Ensemble d’apprentisage étiquetés – faible quantité , ,…, , non étiquetés – grande quantité ,…, But Extraire l’information des exemples non étiquetés utile pour l’étiquetage Apprendre conjointement à partir des deux ensembles d’exemples Utilisation grandes masses de données où l’étiquetage est possible mais trop coûteux données qui évoluent implémentation rapide de systèmes génériques pour différentes instances d’un problème 31 Apprentissage Statistique - P. Gallinari Apprentissage par Renforcement Ensemble d'apprentissage Couples (entrée, sortie désirée qualitative) , ,…, , Les xi peuvent être des séquences (temporal credit assignment), les di sont des réponses qualitatives (e.g. 0,1), déterministes ou stochastiques. But Apprendre des actions optimales Utilisation commande, décision séquentielle, robotique, jeux, programmation dynamique, applications web ou sociales, ... 32 Apprentissage Statistique - P. Gallinari Exemple introductif : Perceptron 33 Apprentissage Statistique - P. Gallinari Un exemple : Perceptron (1960 Rosenblatt) (image from Perceptrons, Minsky and Papert 1969) Cellules d’association Cellule de décision Le perceptron est utilisé pour la discrimination La cellule de décision calcule une fonction à seuil : = (∑ + )= (∑ )avec Classe 1 : { ∶ Classe 2 : { ∶ 34 = +1} = −1} Apprentissage Statistique - P. Gallinari = 1 L'algorithme du perceptron (2 classes) Données base d’apprentissage ( , # ), $ = 1. . &, Output classifieur ) ∈ ( , décision = Initialiser w (0) Répeter (t) choisir un exemple, ( * , #(*)) Si #(*) ) * . * ≤ 0alors) * + 1 = ) * + 1#(*). * Jusqu'à convergence ∈ ( , # ∈ −1,1 (∑ C'est un algorithme à correction d'erreur si ε est constant : règle à incrément fixe si ε est fonction du temps : règle à incrément variable 35 Apprentissage Statistique - P. Gallinari ) Fonction discriminante linéaire = ). + =∑ avec =1 Surface de décision: hyperplan F(x) = 0 Quelques propriétés : w est le vecteur normal de l'hyperplan, il défini son orientation distance de x à H : 2 = ( )/ ) w0 = 0 : H passe par l'origine 36 Apprentissage Statistique - P. Gallinari Géométrie de la discrimination linéaire F ( x) w F(x) > 0 F(x) = 0 W F(x) < 0 37 Apprentissage Statistique - P. Gallinari Le perceptron effectue une descente de gradient Fonction de coût 4 = −∑ ,5 678987::é ). .# gradient 2<#) 4 = => => B => ,…, avec =?@ =?A =?C = −∑ ,5 678987::é Règle d’apprentissage ) = ) − 1 2<#) 4 Demo http://lcn.epfl.ch/tutorial/english/ 38 Apprentissage Statistique - P. Gallinari .#