34 0 4MB
Apprentissage statistique, Cr´ eer des machines intelligentes
Ga¨ el Varoquaux
1 L’apprentissage statistique en deux mots 2 De l’activit´ e des neurones ` a la pens´ ee 3 Scikit-learn: une boite ` a outils d’apprentissage
G Varoquaux
2
1 L’apprentissage statistique en deux mots
G Varoquaux
3
1 Une perspective historique Intelligence artificielle Concevoir des r`egles de d´ecision
ann´ees 80
Mangeable? Grand? Mobile?
G Varoquaux
4
1 Une perspective historique Intelligence artificielle Concevoir des r`egles de d´ecision
ann´ees 80
Apprentissage machine Les cr´eer `a partir d’observations
ann´ees 90
G Varoquaux
4
1 Une perspective historique Intelligence artificielle Concevoir des r`egles de d´ecision
ann´ees 80
Apprentissage machine Les cr´eer `a partir d’observations
ann´ees 90
Apprentissage statistique ann´ees 2000 Mod´eliser le bruit dans les observations
G Varoquaux
4
1 Une perspective historique Intelligence artificielle Concevoir des r`egles de d´ecision
ann´ees 80
Apprentissage machine Les cr´eer `a partir d’observations
ann´ees 90
Apprentissage statistique ann´ees 2000 Mod´eliser le bruit dans les observations Big data Beaucoup d’observations, des r`egles simples
G Varoquaux
maintenant
4
1 Une perspective historique Intelligence artificielle Concevoir des r`egles de d´ecision
ann´ees 80
Apprentissage machine Les cr´eer `a partir d’observations
ann´ees 90
Apprentissage statistique ann´ees 2000 Mod´eliser le bruit dans les observations Big data Beaucoup d’observations, des r`egles simples
maintenant
“Big data isn’t actually interesting without machine learning” Steve Jurvetson, VC, Silicon Valley G Varoquaux
4
1 L’apprentissage statistique Exemple: reconnaissance de visage
Andr´e
G Varoquaux
Bernard
Charles
Didier
5
1 L’apprentissage statistique Exemple: reconnaissance de visage
Andr´e
G Varoquaux
Bernard
Charles
?
Didier
5
1 M´ ethode na¨ıve
1 Stocker des images connues (bruit´ees) et les noms qui vont avec.
2 A partir d’une photo (bruit´ee aussi), trouver l’image qui lui ressemble le plus.
M´ ethode “des plus proches voisins”
G Varoquaux
6
1 M´ ethode na¨ıve
1 Stocker des images connues (bruit´ees) et les noms qui vont avec.
2 A partir d’une photo (bruit´ee aussi), trouver l’image qui lui ressemble le plus.
M´ ethode “des plus proches voisins” Quel taux d’erreurs sur les images d´ ej` a vues? ... 0: pas d’erreurs Donn´ ees de test 6= donn´ ees d’apprentissage G Varoquaux
6
1 1er probl` eme: le bruit
Taux de prediction
Donn´ees non li´ees `a la variable `a pr´edire
1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.0
G Varoquaux
0.5
1.0
1.5
2.0
Niveau de bruit
2.5
3.0
7
1 2`eme probl` eme: nombre de descripteurs
Taux de prediction
Trouver une aiguille dans une botte de foin 0.95 0.90 0.85 0.80 0.75 0.70 0.65
G Varoquaux
1
2
3
4
5
6
7
8
9
Fraction utile du cadre
10
8
1 L’apprentissage statistique Exemple: reconnaissance de visage Apprentissage ` a partir de descripteurs num´ eriques Difficult´ es: i) bruit, Andr´e Bernard Charles Didier ii) nombre de descripteurs Tˆ ache “supervis´ ee”: labels connus Tˆ ache “non supervis´ ee”: labels inconnus
G Varoquaux
?
9
1 Apprentissage supervis´ e: r´ egression
y
Un seul descripteur: une dimension
x
G Varoquaux
10
1 Apprentissage supervis´ e: r´ egression
y
y
Un seul descripteur: une dimension
x
x Quel mod`ele pr´ef´erer?
G Varoquaux
10
1 Apprentissage supervis´ e: r´ egression
y
y
Un seul descripteur: une dimension
x x Probl` eme du “sur-apprentissage” Minimiser l’erreur n’est pas toujours favorable (apprentissage du bruit) Donn´ees de test 6= donn´ees d’apprentissage G Varoquaux
10
1 Apprentissage supervis´ e: r´ egression
y
y
Un seul descripteur: une dimension
x x Pr´ ef´ erer les mod` eles simples = concept de “r´egularisation” Equilibrer le nombre de param`etres `a apprendre avec la quantit´e de donn´ees G Varoquaux
10
1 Apprentissage supervis´ e: r´ egression Un seul descripteur: une dimension
Deux descripteurs: 2 dimensions
y
y
x
X_2 X_1
Plus de param`etres
G Varoquaux
10
1 Apprentissage supervis´ e: r´ egression Un seul descripteur: une dimension
Deux descripteurs: 2 dimensions
y
y
x
X_2 X_1
Plus de param`etres ⇒ besoin de plus de donn´ees “mal´ ediction de la dimensionalit´ e” G Varoquaux
10
1 Apprentissage supervis´ e: classification Variable `a pr´edire cat´egorielle, par ex. des chiffres X2
X1 G Varoquaux
11
1 Apprentissage non supervis´ e Structure de la bourse
G Varoquaux
12
1 Apprentissage non supervis´ e Structure de la bourse Donn´ ees non lab´ elis´ ees plus courantes que les donn´ ees labelis´ ees
G Varoquaux
12
1 Syst` emes de recommandation
G Varoquaux
13
1 Syst` emes de recommandation
Andr´e Bernard Charles Didier ´ Edouard
?
??? ??
???
??? ??
???
? ??
???
Peu de recoupement entre utilisateurs
G Varoquaux
13
1 L’apprentissage statistique
Des d´ efis Statistiques Computationels
G Varoquaux
14
1 Strat´ egies d’apprentissage sur du “big data”
Big data L’acc` es aux donn´ ees limite plus que la puissance de calcul
G Varoquaux
15
1 Strat´ egies d’apprentissage sur du “big data” 1 R´ eduction de donn´ ees ` a la vol´ ee
Une r´eduction rapide, respectant les propri´et´es statistiques des donn´ees Limite la charge m´emoire + disque G Varoquaux
15
1 Strat´ egies d’apprentissage sur du “big data” 1 R´ eduction de donn´ ees ` a la vol´ ee 2 Algorithmes “en ligne”
Consomment les donn´ees en flux Convergent vers des grandeurs moyennes G Varoquaux
15
1 Strat´ egies d’apprentissage sur du “big data” 1 R´ eduction de donn´ ees ` a la vol´ ee 2 Algorithmes “en ligne” 3 Parall´ elisme par d´ ecoupage des donn´ ees Stratification pour suivre la structure statistique et de stockage des donn´ees Taille des blocs adapt´e aux unit´es de calcul
G Varoquaux
15
1 Strat´ egies d’apprentissage sur du “big data” 1 2 3 4
R´ eduction de donn´ ees ` a la vol´ ee Algorithmes “en ligne” Parall´ elisme par d´ ecoupage des donn´ ees Caching
Minimiser la latence d’acc`es aux donn´ees Ne pas recalculer la mˆeme chose
G Varoquaux
15
1 Strat´ egies d’apprentissage sur du “big data” 1 2 3 4 5
R´ eduction de donn´ ees ` a la vol´ ee Algorithmes “en ligne” Parall´ elisme par d´ ecoupage des donn´ ees Caching Acc` es rapide aux donn´ ees
Repr´esentation coh´erente avec les motifs d’acc`es Compression pour limiter la bande consomm´ee G Varoquaux
15
1 Apprentissage statistique et big data Un fort potentiel Apprendre une logique d´ ecisionnelle riche Des d´ efis Statistiques grande dimension
Computationels De mise en oeuvre G Varoquaux
16
2 De l’activit´ e des neurones ` a la pens´ ee
G Varoquaux
17
2 L’IRM fonctionnelle
t
Enregistrement de l’activit´e c´er´ebrale
G Varoquaux
18
2 NeuroImagerie cognitive
Apprendre un lien bilateral entre activit´ e c´ er´ ebrale et fonction cognitive G Varoquaux
19
2 Decodage
“Lire dans les pens´ ees” G Varoquaux
20
2 Mod` eles d’encodage
Pr´ edire la r´ eponse neurale apprendre les repr´esentations G Varoquaux
21
2 Accumulation de donn´ ees pour la sp´ ecificit´ e Chaque exp´erience ne touche qu’`a peu de domaines cognitifs ⇒ “m´eta analyses”
G Varoquaux
22
2 Accumulation de donn´ ees pour la sp´ ecificit´ e
Motor
Atlas cognitif
High level Visual
Audio G Varoquaux
23
2 Accumulation de donn´ ees pour la sp´ ecificit´ e
Motor
Atlas cognitif
High level Probl´ ematique d’apprentissage et de “big data” en Visual science fondementale
Audio G Varoquaux
23
3 Scikit-learn: une boite ` a outils d’apprentissage
G Varoquaux
c
Theodore W. Gray
24
3 scikit-learn L’apprentissage statistique pour tous Pas de domaine d’application sp´ecifique Pas de pr´erequis en machine learning
Librairie logicielle de qualit´e Interfaces pens´ees pour l’utilisateur
D´eveloppement communautaire License BSD, contributeurs tr`es vari´es
http://scikit-learn.org G Varoquaux
25
3 Une biblioth` eque Python Une biblioth` eque, pas un programme Plus expressif et polyvalent Facile `a integrer Python: Un langage haut niveau - interactif, - facile `a debugger, - d’application g´en´erale Ecosyst`eme tr`es dynamique
G Varoquaux
26
3 Performance computationelle scikit-learn SVM 5.2 LARS 1.17 Elastic Net 0.52 kNN 0.57 PCA 0.18 k-Means 1.34
mlpy pybrain pymvpa 9.47 17.5 11.52 105.3 37.35 73.7 1.44 1.41 0.56 8.93 0.79 ∞ -
mdp shogun 40.48 5.63 0.58 1.36 0.47 0.33 35.75 0.68
Optimisations algorithmiques et non bas niveau Minimiser les copies des donn´ees
G Varoquaux
27
3 D´ eveloppement comunautaire ´ Enormement de fonctionnalit´ es: b´en´efices d’une grande ´equipe Croissance du projet:
Plus de 200 contributeurs ∼ 12 d´eveloppeurs coeur 1 ing´enieur INRIA temps plein Coˆ ut de d´ eveloppement estim´ e: 6 millions $ Mod`ele COCOMO, http://www.ohloh.net/p/scikit-learn G Varoquaux
28
3 Cl´ es de succ` es du d´ eveloppement libre 1 Un “march´e” dynamique 2 D´eveloppement transparent 3 Identit´e du projet non monopolis´ee 4 Grande qualit´e technique du projet 5 Contributeurs valoris´es 6 Recrutement actif 7 Communication / marketing
G Varoquaux
29
3 Cl´ es de succ` es du d´ eveloppement libre 1 Un “march´e” dynamique Les transparent limites du mod` ele 2 D´eveloppement 3 Identit´ e du projet non monopolis´ee Fuite des cerveaux. 4 Grande qualit´ e techniquepas du ` Nous n’arrivons aprojet payer assez les meilleurs d´ 5 Contributeurs valoris´ eesvelopeurs. Ils sontactif embauch´ es grace ` a leurs 6 Recrutement contributions mais disparaissent. 7 Communication / marketing
G Varoquaux
29
Apprentissage statistique et big data L’apprentissage conf`ere de la valeur au big data Il s’appuie sur les statistiques, et l’informatique th´eorique et appliqu´ee Toutes les disciplines connaissent un essort du big data Le logiciel est critique et le d´eveloppement libre bien adapt´e
@GaelVaroquaux