Introduction au Machine Learning en Python Alexandre Gramfort Telecom ParisTech - CNRS LTCI Université Paris-Saclay [email protected] 1 Institut Mines-Télécom Qui suis-je? • Enseignant chercheur à Télécom ParisTech • machine learning • traitement du signal et des images • calcul scientifique • optimisation à grande échelle • Développeur du projet 2 Triumph of the Nerds: Nate La victoire des “Nerds”: Nate Silver gagne états Silver Wins indans 50 50 States Vraiment? http://mashable.com/2012/11/07/nate-silver-wins/ http://mashable.com/2012/11/07/nate-silver-wins/ 3 La réalité sur Nate Silver $ git clone gh:jseabold/538model $ du -h 538model/data 188K 538model/data 15% de la capacité d’une disquette 3’5 https://github.com/jseabold/538model 4 Le regionator 3000 3000 Regionator http://labs.data-publica.com/regionator3000/ http://labs.data-publica.com/regionator3000/ 5 Vraiment? http://transports.blog.lemonde.fr/2014/06/05/regionator-lacarte-de-france-dessinee-par-les-trajets-quotidiens/ http://transports.blog.lemonde.fr/2014/06/05/regionator-la- carte-de-france-dessinee-par-les-trajets-quotidiens/ 6 120% de lahttp://www.insee.fr/fr/themes/detail.asp? capacité d’une disquette 3’5 reg_id=99&ref_id=mobilite-professionnelle-10 http://www.insee.fr/fr/themes/detail.asp?reg_id=99&ref_id=mobilite-professionnelle-10 7 Big data ≠ Analyse prédictive “Predictive analytics” 8 Science des données “Data science” Data Science Développement de méthodes automatiques pour extraire des informations pertinentes de To gain insights into data through données complexes et (parfois) massives computation, statistics, and visualization 9 Applications business • Prévisions de ventes, perte de client, traffic, prix • Prediction CTR et prix d’enchêres sur des publicités en ligne • Computer vision pour les robots dans l’industrie ou l’agriculture • Détection d’anomalie dans les réseaux, de fraudes ou de spams • etc. 10 Applications en sciences • Décodage de l’activité cérébrale (interfaces cerveau-machine) • Décodage du rôle des gênes dans les réseaux de régulation • Prédire la distance entre chaque étoile de l’univers • Identifier le boson de Higgs dans les collisions proton-proton 11 L’exemple de la génomique Human Genome 12 Sequencing Séquencage 13 Coût du séquencage Sequencing Cost 14 Visualisation Genome Visualization [Krzywinski+2009]+ [Thorvaldsdó,r-2013]- [Meyer&2009]& 15 Exemple en imagerie cérébrale Lire dans les pensées “Brain reading” e g a Im scanning Machine Learning IRM fonctionelle 16 Résultats de UC Berkeley http://www.youtube.com/watch?v=nsjDnYxJ0bo [Nishimoto et al. 2011] 17 Résultats de UC Berkeley • Les données: • 30GB d’images de stim (15 trames/s en .png pendant 3h) • • • environ 4,000 volumes IRM fonctionelle envirion 10GB de données brutes > 3h d’acquisitions IRM 18 Exemple en vision par ordinateur “Google Brain Project” “The model has 1 billion connections, the dataset has 10 million 200x200 pixel images downloaded from the Internet.We train this network using model parallelism and asynchronous SGD on a cluster with 1,000 machines (16,000 cores) for three days.” [Conférence ICML 2012] 19 Google Brain Project [Conférence ICML 2012] 20 “Open Innovation” en Analyse prédictive 21 22 23 Les défis • données (500k users, 20k films, 100m notes) • 99% de données manquantes • les facteurs complexes qui affectent les notes (acteurs, réalisateurs, genre, etc.) 24 LaNetflix progression sur Netflix Prize Progress http://blogs.hbr.org/cs/2012/10/big_data_hype_and_reality.html 25 26 27 28 17 29 30 31 Analyse prédictive dans la pratique 32 Qu’est-ce q’un “data scientist” ? A Data Scientist Is... “A data scientist is someone who knows more statistics than a computer scientist and more computer science than a statistician.” - Josh Blumenstock “Data Scientist = statistician + programmer + coach + storyteller + artist” 33 Data science Data Science Computer Science Statistics Domain Science Drew Conway 34 La boîte à outil d’analyse prédictive Algorithmes Visualisation 35 Nature des données • Structurées: • Table / Tableau (BdD, CSV, Excel) • Non-structurées: • Images, videos • Texte (commentaires, logs) • Graphes/Réseaux • Séries temporelles, signaux • etc. 36 Avant l’estimation d’un modèle prédictif: Exploration de données (structurées) avec 37 http://grouplens.org/datasets/movielens/ 38 La “taxonomie” du machine learning • Apprentissage supervisé: apprentissage fonction entrée - sortie • classification (Trees, SVM, NN) • régression (Trees, NN, Gaussian Processes) • Apprentissage non-supervisé: • clustering (k-means, spectral clustering, Dirichlet processes) • réduction de dimension (PCA, ISOMAP, LLE, auto-associative NN) • estimation densité (kernel density, Gaussian mixtures, Boltzmann machines) • détection anomalie (one class SVM) • Apprentissage par renforcement: • apprentissage + contrôle dynamique: apprendre à se comporter dans un environnement pour maximizer le gain cumulé 39 Classification Reconnaissance de caractères 40 Classification Reconnaissance d’émotion 41 Classification Compréhension du langage 42 Illustration : Réduction dimension / clustering 43 Illustration : Estimation de densité http://scikit-learn.org/stable/auto_examples/applications/plot_species_distribution_modeling.html 44 Illustration : Détection d’anomalie http://scikit-learn.org/stable/auto_examples/covariance/plot_outlier_detection.html 45 Exemples? 46 Méthodes de classification 47 Exemple d’algorithme: les K-plus proches voisins (KNN) Demo notebook Linear Discriminant Analysis Demo notebook Un peu de théorie…