apprentissage automatique introduction - master sep ... · «justfitting»...
TRANSCRIPT
Apprentissage automatiqueIntroductionMaster SEP - Master CS
Frédéric Blanchard
Université de Reims Champagne-Ardenne
IA, Data Sciences, Big Data, Machine Learning
Machine Learning
En résumé
Lacunes, faiblesses et dangers du machine learning
Technologies et outils
Références et ressources externes
2
IA, Data Sciences, Big Data,Machine Learning
IA, Data Sciences, Big Data,Machine Learning
Du déluge des données à l’avalanche dejargon
5
Tendances et effets de mode
• les évolutions technologiques ont placé les sciences des donnéesau centre des préoccupations numériques actuelles
• les promesses et les attentes sont nombreuses
• le marketing et les éléments de communication autour dessciences des données alimentent la confusion et les fantasmes
6
Le Hype Cycle de Gartner
Cet indicateur discutable a au moins le mérite d’offrir un historiquede ces effets de mode.
Il permet de prendre un peu de recul sur les promessestechnologiques et les effets d’annonce.
7
8
9
10
11
12
13
IA, Data Sciences, Big Data,Machine Learning
Tentative d’éclaircissement
Données et analyses des données
Les expressions
• Big Data (en français « déluge des données » ou « donnéesmassives »),
• Data Science (sciences des données),• Machine Learning (apprentissage),• Artificial Intelligence voire Algorithms (. . . )
sont abondamment employées dans les médias, souvent de manièreabusive.
Ces terminologies se rapportent toutes au phénomène engendré parla croissance des volumes des données disponibles et des possibilitésqu’offrent ces données.
15
Il convient de distinguer :
• les données et leur gestion :• production,• acquisition,• stockage,
• de leur analyse :• préparation,• exploration,• exploitation.
16
IA, Data Sciences, Big Data,Machine Learning
Big Data
Première tentative de définition
Le terme Big Data désigne les données dont on dispose aujourd’hui,ainsi que les technologies qui permettent de les gérer.
Naïvement, on pourrait définir les Big Data comme de gros volumesde données.
La question se pose alors de définir ce qu’est un « gros volume » dedonnées.
18
Ainsi les images numériques peuvent être considérées comme degros volumes de données.
Cette image contient 1 566 720 pixels couleurs, autrement dit4 700 160 valeurs entières correspondant aux trois composanteschromatiques (on imagine facilement ce que représenterait une vidéod’une heure, à 24 images par seconde).
19
Pourtant, on peut la traiter avec des algorithmes connus depuislongtemps sur un PC rudimentaire. Et on ne parle généralement pasde « Big Data » quand on fait du filtrage d’image !
20
Deuxième essai
On trouve parfois la définition suivante : « on parle de Big Data dèslors qu’il est nécessaire de paralléliser ou distribuer les calculs ».
C’est un peu mieux, mais toujours pas suffisant. Cettecaractérisation dépend naturellement du matériel dont on dispose.
Cette façon de définir les Big Data mêle quantité de données ettechnologies permettant de les traiter.
21
Les 3 ‘V’ 1
Pus récemment, on a vu se répandre des définitions plus« marketing », mais aussi plus précises.
Les Big Data seraient caractérisées par les 3 V :
• Volume : grandes quantité de données• Vitesse : fréquence (élevée) à laquelle sont produites/acquises
les données• Variété : hétérogénéité des données (nature)
1http://www.zdnet.fr/actualites/big-data-3-4-ou-5-v-39832210.htm
22
Tout augmente : 5 V 2
• Volume,• Vitesse,• Variété,• Véracité : qui ajoute la notion de fiabilité des données• Valeur : qui caractérise l’utilité de l’informtion apportée
Ce dernier ‘V’ est important. Bien que vague, la notion de valeurpermet -enfin- d’introduire un élement important : l’objectif
2http://www.silicon.fr/blog/big-data-mythes-et-realites
23
Ces définitions -un peu foutraques- sonnent un peu comme desslogans publicitaires mais recentrent la définition sur lescaractéristiques des données considérées.
Ainsi, on comprend que « Big Data » désigne finalement uneproblématique associée aux données et aux difficultés de lesexploiter.
La problématique des « Big Data » requiert des outils(technologiques et scientifiques) adaptés pour exploiter ces données.
24
Problèmes liés aux « Big Data »
• Stockage et extraction• Les données sont souvent non structurées,• et arrivent en flux continus (ou presque).• Les SGBD traditionnels ne sont pas adaptes
• au stockage de ces données• à leur extraction• à leur transformation.
25
Problèmes liés aux « Big Data »
• Analyse• Les données nécessitent d’être transformées pour être visualisées
et analysées.• Le grand nombre
• d’instances (taille de la population)• et de caractéristiques (dimensionnalité) compliquent la tâche
d’analyse.• La nature des données induit des choix de méthodes différents :
on ne traite pas une serie temporelle, un signal avec les mêmesoutils que le graphe d’un réseau social.
• Enfin et surtout : tout ce qui précède dépend de qu’on attendde ces données !
26
Update
Évolution de l’intérêt pour le terme « Big data » :
27
IA, Data Sciences, Big Data,Machine Learning
Science(s) des données et machine learning
Note : le spectre scientifique est tellement large qu’on peutlégitimement s’interroger sur l’existence du Data Scientist ; ce quiexplique peut-être la difficulté d’en trouver (voir aussi ici)
29
Science des données
Généralement, le but d’un projet relevant des sciences des donnéesest d’extraire des informations de ces données afin de satisfaire deuxtypes d’obectifs :
• la compréhension,• la prédiction.
30
Science des données : workflow
Le processus peut se schématiser de la manière suivante (« DataScience Workflow: Overview and Challenges » Philip Guo) :
31
Préparation des données : un travail ingrat mais crucial
La préparation (data munging, data cleaning) est l’étape quiconsiste à filtrer et transformer les données brutes pour les rendreutilisables par les algorithmes d’analyse.
On lit parfois que le data scientist consacre 80 % de son temps àcette étape.
32
Analyse : le come back du Machine Learning
L’analyse et l’utilisation des données préparées est le cœur d’unprojet de data science.
Cette étape d’exploitation des données dépend de la question poséeet de la nature des données disponiles.
Dans le cas général, les algorithmes sont issus du domaine duMachine Learning qui désigne une famille de méthodes dont leprincipe est d’« apprendre » un modèle à partir de données. Cettespécificité en fait donc un ensemble d’outils privilégiés dans l’anaysedes Big Data.
33
Analyse : le come back du Machine Learning
La disponibilité des données a aussi permis d’exhumer des approchesqui nécessitent, pour être efficaces, de disposer d’échantilonsuffisamment grand.
L’essor des big data et l’avènement du machine learning sont doncliés.
34
Analyse : le come back du Machine Learning
35
Machine Learning
Machine Learning
Intro
Généralité
Le machine learning regroupe les méthodes statistiques oualgorithmiques qui permettent :
• d’apprendre (ajuster ou construire) un modèle de liens entredes données
• d’utiliser ces modèles à des fins :• explicatives,• ou prédictives.
39
Exemples d’utilisation
• Dépistage du cancer de la peau• Recommandations de produits• Analyse des achats des clients d’un supermarché• Modélisation de la navigation d’un internaute• Prédiction de liens dans un réseau social• Détection de fraude à la carte bancaire
40
5 phases
Dans leur « introduction au machine learning » à l’usage desdéveloppeurs, les équipes de google définissent 5 phases :
41
Modèle général
Tout algorithme de machine learning est défini par trois éléments 3 :
• Une représentation des données et du problème• Arbre de décision, règles d’association, instances, etc.
• Un critère d’évaluation• Précision, vraisemblance, entropie, etc.
• Une technique d’optimisation• Descente de gradient, optimisation par contraintes, etc.
3https://courses.cs.washington.edu/courses/csep546/17au/slides/intro.pdf
42
Supervisé Vs Non-supervisé
On distingue plusieurs types d’apprentissage :
• l’apprentissage supervisé,• l’apprentissage non supervisé,• le semi-supervisé,• l’apprentissage par renforcement.
43
Machine Learning
Apprentissage supervisé
Principe
On parle d’apprentissage supervisé lorsqu’il existe une variable àexpliquer renseignée, totalement ou partiellement. L’apprentissagevise alors à trouver un modèle liant la valeur de la variable àexpliquer, aux autres. On peut ensuite utiliser ce modèle à des finpréditives.
45
Modèle
En d’autre termes, si on dispose de données (les xi) labellisées (parles li) (x1, l1), (x2, l2), . . . , (xn, ln), et qu’on note X1,X2, . . . ,Xd ,Yles variables qui décrivent ces données :
∀i = 1, . . . , n xi = (Xj(i))j=1,...,d et li = Y (i)
les algorithmes d’apprentissage supervisé font l’hypotèse que les lisont issus d’une variable Y , fonction des variables X 1,X 2, . . .Xd
qui décrivent les xi :
Y = f (X 1,X 2, . . . ,Xd)
46
Modèle
L’idée générale est d’apprendre cette fonction f en minimisantl’erreur ε afin de se servir de f pour prédire la valeur de Y sur desdonnées où elle n’est pas connue :
Y = f (X 1,X 2, . . . ,Xd) + ε
On parle parfois d’apprentissage prédictif
47
« Just fitting »
Dans une récente interview, Judea Pearl, le père des réseauxbayésiens déclarait :
« That sounds like sacrilege, to say that all the impressiveachievements of deep learning amount to just fitting acurve to data. From the point of view of the mathematicalhierarchy, no matter how skillfully you manipulate the dataand what you read into the data when you manipulateit, it’s still a curve-fitting exercise, albeit complex andnontrivial.»
48
Machine Learning
Apprentissage non-supervisé
Idée générale
Le clustering cherche à regrouper les données par similarité de leurscaractéristiques de sorte que deux éléments sont affectés au mêmegroupe s’ils sont assez similaires, et de sorte que deux élémentssuffisamment dissimilaires sont dans des groupes différents.
On obtient ainsi une variable catégorielle y qui représente lesgroupes d’appartenances des données.
51
Machine Learning
Apprentissage par renforcement
Idée générale
L’apprentissage par renforcement permet d’apprendre le modèleprogressivement, en utilisant les données une à une. Par un judicieuxsystème de pénalités/récompenses, le modèle est appris en continu.
Cette méthode d’apprentissage automatique est proche d’unconcept apprentissage humain.
53
Machine Learning
Et le deep learning dans tout ça ?
Deep learning
Le deep learning est une sous-catégorie de méthodes de machinelearning.
Il regroupe les méthodes neuronales dont le nombre de couches (lenombre de transformations successives des entrées) peut être élevé.
Il s’avère particulièrement efficaces sur des données images (et plusgénéralement sur les données fréquentielles ou temporelles).
(Voir plus loin https://developers.google.com/machine-learning/crash-course?hl=fr )
55
En résumé
57
58
59
60
Lacunes, faiblesses et dangers dumachine learning
Quelques esprits critiques
• Judea Pearl :• « How a Pioneer of Machine Learning Became One of Its
Sharpest Critics »• Pedro Domingos :
• « Ten Myths about Machine Learning », Medium, 2016• « A few useful things to know about Machine Learning », Pedro
Domingos, Communications of the ACM, 55(10), 78-87, 2012
62
Problèmes d’interprétation
• Quid d’un modèle neuronal pour comprendre la survenue d’unepathologie ?
• Le machine learning détecte des associations mais pas lacausalité ! 4
• Prédiction n’est pas (non plus) causalité ! 5
4« Causality », Judea Pearl (voir http://bayes.cs.ucla.edu/BOOK-2K/)5« To Explain or to Predict? » Galit Shmueli, Statistical Science, 2010, Vol. 25,No. 3, 289–310, DOI: 10.1214/10-STS330
63
Fiabilité et qualité des données
Les algorithmes apprennent des données
La qualité de ce qu’ils apprennent dépend donc de la qualité desdonnées qu’on leur fournit
Les résultats peuvent donc être décevants lorsque les données nesont pas représentatives de ce que l’on souhaite étudier.
Problèmes relatifs aux données :
• biais dans le recueil• données déséquilibrées
• individus• variables
• grande dimension
64
Exemples
65
Exemples
66
Exemples
67
Exemples
68
Efficacité, coûts
Training a single AI model can emit as much carbon as fivecars in their lifetimes
Karen Hao, 2019 6, Strubell et al, 20197
6https://www.technologyreview.com/s/613630/training-a-single-ai-model-can-emit-as-much-carbon-as-five-cars-in-their-lifetimes/
7« Energy and Policy Considerations for Deep Learning in NLP » Emma Strubell,Ananya Ganesh, Andrew McCallum https://arxiv.org/pdf/1906.02243.pdf
69
Technologies et outils
Programmation
La plupart des éditeurs de solutions d’analyse statistiques, ou deSGBD proposent des extensions de leurs produits dédiées aux BigData.
Il existe également de nombreux outils dédiées à des tâchesparticulières ou incluant les algorithmes d’analyse les plus populaires.
71
R et Python : les rock stars des data sciences
Pour répondre au plus grand cas de figures, la connaissance d’unlangage de programmation est indispensable au data scientist. Ellelui assure une plus grande polyvalence et lui permet d’utiliser unpannel d’outils plus large.
Les deux tendances les plus marquées sont l’émergence de R et cellede Python.
• R est plutôt ciblé sur les statistiques et le machine learning,• Python est un langage généraliste qui possède aujourd’hui des
bibliothèques de machine learning très fournies.
72
R, python, et les autres
• Python versus R for machine learning and data analysis• The Most Popular Language For Machine Learning and Data
Science Is . . .• R moves up to 5th place in IEEE language rankings• Trends Python Vs R
73
Évolution (sondage KD-Nuggets)
74
Technologies et outils
Les outils que nous allons utiliser danscette partie du module
R
IDE RStudio
Bonnes pratiques• Un répertoire par projet contenant code + données + résultats• Chemins relatifs• Commentaires• Conventions et style :
• Yihui Xié : https://yihui.name/formatr/• Hadley Wickham : http://adv-r.had.co.nz/Style.html et
http://r-pkgs.had.co.nz/style.html• Google : https://google.github.io/styleguide/Rguide.xml
76
Références et ressources externes
Documentation
• Mining of Massive Datasets, J. Leskovec, A. Rajaraman, J. D.Ullman, Cambridge University Press
• « Elements of Statistical Learning », T. Hastie, R. Tibshirani, J.Friedman, Springer
• « Statistiques multidimensionnelles », L. Lebart et al, Dunod.• « Approche pragmatique de la classification », J.-P. Nakache,
Technip• « R for Data Sciences », H. Wickham, O’Reilly
78
Documentation de référence
Tous les EXCELLENTS polys/slides/TP/manuels/tutos
de Ricco Rakotomalala
https://eric.univ-lyon2.fr/~ricco/
79
Cours en ligne de Google
Google a récemment mis à disposition du public, gratuitement, uncours en ligne très clair d’introduction au machine learning. Il y atoutefois deux partis pris importants :
• il s’agit d’une vision réductrice qui assimile le machine learningau deep learning (et au méthodes neuronales),
• la partie pratique est en réalité un tutoriel d’utilisation detensorflow, un produit google (au demeurant excellent, maisconcurrencé).
https://developers.google.com/machine-learning/crash-course?hl=fr
80
BU
• Sorbon, MdH• et : Bibliothèque numérique
84
Frédéric Blanchard
twitter.com/frdblnch
fredb.netlify.com
85