SlideShare une entreprise Scribd logo
1  sur  58
Télécharger pour lire hors ligne
Apprentissage statistique,
Cr´er des machines intelligentes
e

Ga¨l Varoquaux
e
1 L’apprentissage statistique en deux
mots
2 Une application en recherche en
neuroscience
3 Scikit-learn: une boite ` outils
a
d’apprentissage

G Varoquaux

2
1 L’apprentissage statistique en
deux mots

G Varoquaux

3
1 Une perspective historique
Intelligence artificielle
Concevoir des r`gles de d´cision
e
e

ann´es 80
e

Mangeable?
Grand?
Mobile?

G Varoquaux

4
1 Une perspective historique
Intelligence artificielle
Concevoir des r`gles de d´cision
e
e

ann´es 80
e

Apprentissage machine
Les cr´er ` partir d’observations
e a

ann´es 90
e

G Varoquaux

4
1 Une perspective historique
Intelligence artificielle
Concevoir des r`gles de d´cision
e
e

ann´es 80
e

Apprentissage machine
Les cr´er ` partir d’observations
e a

ann´es 90
e

Apprentissage statistique
ann´es 2000
e
Mod´liser le bruit dans les observations
e

G Varoquaux

4
1 Une perspective historique
Intelligence artificielle
Concevoir des r`gles de d´cision
e
e

ann´es 80
e

Apprentissage machine
Les cr´er ` partir d’observations
e a

ann´es 90
e

Apprentissage statistique
ann´es 2000
e
Mod´liser le bruit dans les observations
e
Big data
Beaucoup d’observations,
des r`gles simples
e

G Varoquaux

maintenant

4
1 Une perspective historique
Intelligence artificielle
Concevoir des r`gles de d´cision
e
e

ann´es 80
e

Apprentissage machine
Les cr´er ` partir d’observations
e a

ann´es 90
e

Apprentissage statistique
ann´es 2000
e
Mod´liser le bruit dans les observations
e
Big data
Beaucoup d’observations,
des r`gles simples
e

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´thode na¨
e
ıve

1 Stocker des images connues (bruit´es) et les noms
e
qui vont avec.

2 A partir d’une photo (bruit´e aussi), trouver l’image
e
qui lui ressemble le plus.

M´thode “des plus proches voisins”
e

G Varoquaux

6
1 M´thode na¨
e
ıve

1 Stocker des images connues (bruit´es) et les noms
e
qui vont avec.

2 A partir d’une photo (bruit´e aussi), trouver l’image
e
qui lui ressemble le plus.

M´thode “des plus proches voisins”
e
Quel taux d’erreurs sur les images d´j` vues?
ea
...
0: pas d’erreurs
Donn´es de test = donn´es d’apprentissage
e
e
G Varoquaux

6
1 1er probl`me: le bruit
e

Taux de prediction

Donn´es non li´es ` la variable ` pr´dire
e
e a
a e

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
e
1 2`me probl`me: nombre de descripteurs
e

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 ` partir de
a
descripteurs num´riques
e
Difficult´s: i) bruit,
e
Andr´
e
Bernard
Charles
Didier
ii) nombre de descripteurs
Tˆche “supervis´e”: labels connus
a
e
Tˆche “non supervis´e”: labels inconnus
a
e

G Varoquaux

?

9
1 Apprentissage supervis´: r´gression
e e

y

Un seul descripteur:
une dimension

x

G Varoquaux

10
1 Apprentissage supervis´: r´gression
e e

y

y

Un seul descripteur:
une dimension

x

x
Quel mod`le pr´f´rer?
e
ee

G Varoquaux

10
1 Apprentissage supervis´: r´gression
e e

y

y

Un seul descripteur:
une dimension

x
x
Probl`me du “sur-apprentissage”
e
(“overfit”)
Minimiser l’erreur n’est pas toujours favorable
(apprentissage du bruit)
Donn´es de test = donn´es d’apprentissage
e
e
G Varoquaux

10
1 Apprentissage supervis´: r´gression
e e

y

y

Un seul descripteur:
une dimension

x
x
Pr´f´rer les mod`les simples
ee
e
= concept de “r´gularisation”
e
Equilibrer le nombre de param`tres ` apprendre
e
a
avec la quantit´ de donn´es
e
e
G Varoquaux

10
1 Apprentissage supervis´: r´gression
e e

y

y

Un seul descripteur:
une dimension

Compromis biais

variance

x
x
Pr´f´rer les mod`les simples
ee
e
= concept de “r´gularisation”
e
Equilibrer le nombre de param`tres ` apprendre
e
a
avec la quantit´ de donn´es
e
e
G Varoquaux

10
1 Apprentissage supervis´: r´gression
e e
Un seul descripteur:
une dimension

Deux descripteurs:
2 dimensions

y

y

x

X_2
X_1

Plus de param`tres
e
Equilibrer le nombre de param`tres ` apprendre
e
a
avec la quantit´ de donn´es
e
e
G Varoquaux

10
1 Apprentissage supervis´: r´gression
e e
Un seul descripteur:
une dimension

Deux descripteurs:
2 dimensions

y

y

x

X_2
X_1

Plus de param`tres
e
⇒ besoin de plus de donn´es
e
“mal´diction de la dimensionalit´”
e
e
G Varoquaux

10
1 Apprentissage supervis´: classification
e
Variable ` pr´dire cat´gorielle, par ex. des chiffres
a e
e
X2

X1
G Varoquaux

11
1 Apprentissage non supervis´
e
Structure de la bourse

G Varoquaux

http://scikit-learn.org/stable/auto examples/
applications/plot stock market.html
12
1 Apprentissage non supervis´
e
Structure de la bourse
Donn´es non lab´lis´es
e
e e
plus courantes que les donn´es labelis´es
e
e

G Varoquaux

http://scikit-learn.org/stable/auto examples/
applications/plot stock market.html
12
1 L’apprentissage statistique

Des d´fis
e
Statistiques
Computationels

G Varoquaux

13
1 Strat´gies d’apprentissage sur du “big data”
e

Big data
L’acc`s aux donn´es limite plus que
e
e
la puissance de calcul

G Varoquaux

14
1 Strat´gies d’apprentissage sur du “big data”
e
1 R´duction de donn´es ` la vol´e
e
e a
e

Une r´duction rapide,
e
respectant les propri´t´s
ee
statistiques des donn´es
e
Limite la charge m´moire + disque
e
G Varoquaux

14
1 Strat´gies d’apprentissage sur du “big data”
e
1 R´duction de donn´es ` la vol´e
e
e a
e
2 Algorithmes “en ligne”

Consomment les donn´es en flux
e
Convergent vers des grandeurs moyennes
G Varoquaux

14
1 Strat´gies d’apprentissage sur du “big data”
e
1 R´duction de donn´es ` la vol´e
e
e a
e
2 Algorithmes “en ligne”
3 Parall´lisme par d´coupage des donn´es
e
e
e
Stratification pour suivre
la structure statistique et
de stockage des donn´es
e
Taille des blocs adapt´
e
aux unit´s de calcul
e

G Varoquaux

14
1 Strat´gies d’apprentissage sur du “big data”
e
1
2
3
4

R´duction de donn´es ` la vol´e
e
e a
e
Algorithmes “en ligne”
Parall´lisme par d´coupage des donn´es
e
e
e
Caching
Minimiser la latence d’acc`s aux donn´es
e
e
Ne pas recalculer la mˆme chose
e

G Varoquaux

14
1 Strat´gies d’apprentissage sur du “big data”
e
1
2
3
4
5

R´duction de donn´es ` la vol´e
e
e a
e
Algorithmes “en ligne”
Parall´lisme par d´coupage des donn´es
e
e
e
Caching
Acc`s rapide aux donn´es
e
e

Repr´sentation coh´rente avec les motifs d’acc`s
e
e
e
Compression pour limiter la bande consomm´e
e
G Varoquaux

14
1 Apprentissage statistique
Apprendre une logique
d´cisionnelle
e

G Varoquaux

15
1 Apprentissage statistique et big data
Apprendre une logique
d´cisionnelle riche
e

G Varoquaux

15
1 Apprentissage statistique et big data
Apprendre une logique
d´cisionnelle riche
e

Regression

Classification

Non supervis´, ex. clustering
e

G Varoquaux

15
1 Apprentissage statistique et big data
Apprendre une logique
d´cisionnelle riche
e

Les difficult´s
e
Statistiques
grande dimension
⇒ sur-apprentissage

Computationelles
sch´ma d’acc´s aux donn´es
e
e
e

G Varoquaux

15
2 Une application en recherche
en neuroscience

Lier la biologie des neurones ` la pens´e
a
e
G Varoquaux

16
2 L’IRM fonctionnelle

t

Enregistrement de l’activit´ c´r´brale
e ee

G Varoquaux

17
2 NeuroImagerie cognitive

Apprendre un lien bilateral entre activit´
e
c´r´brale et fonction cognitive
ee
G Varoquaux

18
2 Mod`les d’encodage de l’information
e

Pr´dire les r´ponses neurales
e
e
⇒ apprendre les repr´sentations c´rebrale
e
e
G Varoquaux

19
2 D´codage de l’activit´ c´r´brale
e
e ee

“Lire dans les pens´es”
e
G Varoquaux

20
2 Accumulation de donn´es
e

Atlas cognitif

G Varoquaux

21
2 Accumulation de donn´es
e

Atlas cognitif

Probl´matique d’apprentissage et de
e
“big data” en science fondementale

G Varoquaux

21
3 Scikit-learn: une boite `
a
outils d’apprentissage

G Varoquaux

c Theodore W. Gray

22
3 scikit-learn
L’apprentissage statistique pour tous
Pas de domaine d’application sp´cifique
e
Pas de pr´requis en machine learning
e

Librairie logicielle de qualit´
e
Interfaces pens´es pour l’utilisateur
e

D´veloppement communautaire
e
License BSD, contributeurs tr`s vari´s
e
e

http://scikit-learn.org
G Varoquaux

23
3 Une biblioth`que Python
e
Une biblioth`que, pas un programme
e
Plus expressif et polyvalent
Facile ` integrer
a
Python:
Un langage haut niveau
- interactif,
- facile ` debugger,
a
Appels transparents au C
Ecosyst`me tr`s dynamique
e
e

G Varoquaux

24
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´es
e

G Varoquaux

25
3 D´veloppement comunautaire
e
´
Enormement de fonctionnalit´s:
e
b´n´fices d’une grande ´quipe
e e
e
Croissance du projet:

Plus de 200 contributeurs
∼ 12 d´veloppeurs coeur
e
1 ing´nieur INRIA temps plein
e
Coˆt de d´veloppement estim´: 6 millions $
u
e
e
Mod`le COCOMO,
e
http://www.ohloh.net/p/scikit-learn
G Varoquaux

26
3 Fonctionalit´s
e
Apprentissage supervis´
e
Arbres de d´cision (Random-Forest, Boosted Tree)
e
Mod`les lin´aires
e
e
SVM
Apprentissage non supervis´
e
Clustering
Apprentissage de dictionnaire
D´tection d’outliers
e
S´lection de mod`les
e
e
Validation crois´e int´gr´e
e
e e
Optimisation de param`tres
e
G Varoquaux

27
Code

G Varoquaux

28
3 Structures de donn´es
e
27
7979
8794
0387 52701578
07
0179 46124797
17
9407 18717887
07
5497 90495190
34
1365 65358098
42
7475 46349084
15
4872 73245614
56
9034 87745620
71
7895

9
1
4

9

7

3

2

9

4

1

7

9

3

7

6
5

4

4
9

7

8

3

1

8

8

0

Tableau numpy
Tableau num´rique typ´ n-dimensionnel
e
e
Abstraction sur un pointeur

Matrice creuse scipy
Structure 2D avec peu d’´l´ments
ee
Diff´rentes repr´sentations de donn´es
e
e
e

6

Calcul vectoriel
Op´rations num´riques et matricielles
e
e
G Varoquaux

29
3 Sp´cifier un mod`le
e
e
Un concept central: l’estimateur
Instanci´ sans les donn´es
e
e
Mais en sp´cifiant ses param`tres
e
e
from s k l e a r n . n e i g h b o r s import
KNearestNeighbors
estimator = KNearestNeighbors (
n n e i g h b o r s =2)

G Varoquaux

30
3 Entraˆ
ıner un mod`le
e
Apprendre ` partir de donn´es
a
e
estimator . f i t ( X train , Y train )
o`:
u
X est un tableau ou une matrice de forme
nobservations × ndescripteurs
y est un tableau numpy, entier ou flottant
nobservations

G Varoquaux

31
3 Utiliser un mod`le
e
Prediction: classification, regression
Y test = estimator . predict ( X test )
Transformation: reduction de dimension, filtre
X new = e s t i m a t o r . t r a n s f o r m ( X t e s t )
Estimation de densit´, vraissemblance
e
test score = estimator . score ( X test )
Estimation “en-line”
e s t i m a t o r . p a r t i a l f i t (X, Y)
G Varoquaux

32
3 Vectorization
Passer des donn´es brutes ` la matrices X
e
a

doc 1
doc 2
doc 3
doc 4
doc 5
doc 6
doc 7
doc 8
doc 9
doc 10
doc 11
doc 12
doc 13
doc 14

Pour le texte: compter les occurrences de mots
- Donn´es d’entr´e: liste de documents (string)
e
e
- Donn´es de sortie: matrice creuse
e

n
pytho
java

33

99

C#
iler
p

com

G Varoquaux

1
ace 1
interf
r
serve
r44
drive

7
7

22
99
44
44
1
1
99 77
99
33
88
66
77
55
33
4

9
9

88

7
7
00
88
33
3 Vectorization
Passer des donn´es brutes ` la matrices X
e
a
Pour le texte: compter les occurrences de mots
- Donn´es d’entr´e: liste de documents (string)
e
e
- Donn´es de sortie: matrice creuse
e
from s k l e a r n . f e a t u r e e x t r a c t i o n . t e x t
import H a s h i n g V e c t o r i z e r
h a s h e r = H a s h i n g V e c t o r i z e r ()
X = h a s h e r . f i t t r a n s f o r m ( documents )

G Varoquaux

33
Exemples

G Varoquaux

34
Scikit-Learn: Machine Learning en Python
Apprentissage + big data = logique d´cisionnelle riche
e
Statistiques, algorithmes, acc`s aux donn´es
e
e
Scikit-learn:
- En Python
- Projet dynamique
- Page web tr`s fournie
e
http://scikit-learn.org

@GaelVaroquaux

Contenu connexe

En vedette

Advanced network modelling 2: connectivity measures, goup analysis
Advanced network modelling 2: connectivity measures, goup analysisAdvanced network modelling 2: connectivity measures, goup analysis
Advanced network modelling 2: connectivity measures, goup analysisGael Varoquaux
 
Processing biggish data on commodity hardware: simple Python patterns
Processing biggish data on commodity hardware: simple Python patternsProcessing biggish data on commodity hardware: simple Python patterns
Processing biggish data on commodity hardware: simple Python patternsGael Varoquaux
 
Succeeding in academia despite doing good_software
Succeeding in academia despite doing good_softwareSucceeding in academia despite doing good_software
Succeeding in academia despite doing good_softwareGael Varoquaux
 
On the code of data science
On the code of data scienceOn the code of data science
On the code of data scienceGael Varoquaux
 
Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014
Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014
Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014Nicolas SORHAITZ
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4jBoris Guarisma
 
Aiguille dans botte de foin: scikit-learn et joblib
Aiguille dans botte de foin: scikit-learn et joblibAiguille dans botte de foin: scikit-learn et joblib
Aiguille dans botte de foin: scikit-learn et joblibGael Varoquaux
 
Scikit-learn for easy machine learning: the vision, the tool, and the project
Scikit-learn for easy machine learning: the vision, the tool, and the projectScikit-learn for easy machine learning: the vision, the tool, and the project
Scikit-learn for easy machine learning: the vision, the tool, and the projectGael Varoquaux
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
Open Source Scientific Software
Open Source Scientific SoftwareOpen Source Scientific Software
Open Source Scientific SoftwareGael Varoquaux
 
Sondage aléatoire simple ou a probabilité égal
Sondage aléatoire simple ou a probabilité égal Sondage aléatoire simple ou a probabilité égal
Sondage aléatoire simple ou a probabilité égal hammamiahlem1
 
Je configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtoolsJe configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtoolsRonan Amicel
 
Inter-site autism biomarkers from resting state fMRI
Inter-site autism biomarkers from resting state fMRIInter-site autism biomarkers from resting state fMRI
Inter-site autism biomarkers from resting state fMRIGael Varoquaux
 
Connectomics: Parcellations and Network Analysis Methods
Connectomics: Parcellations and Network Analysis MethodsConnectomics: Parcellations and Network Analysis Methods
Connectomics: Parcellations and Network Analysis MethodsGael Varoquaux
 
Machine learning and cognitive neuroimaging: new tools can answer new questions
Machine learning and cognitive neuroimaging: new tools can answer new questionsMachine learning and cognitive neuroimaging: new tools can answer new questions
Machine learning and cognitive neuroimaging: new tools can answer new questionsGael Varoquaux
 
Optimal discretization of hedging strategies rosenbaum
Optimal discretization of hedging strategies   rosenbaumOptimal discretization of hedging strategies   rosenbaum
Optimal discretization of hedging strategies rosenbaumKezhan SHI
 
Brain reading, compressive sensing, fMRI and statistical learning in Python
Brain reading, compressive sensing, fMRI and statistical learning in PythonBrain reading, compressive sensing, fMRI and statistical learning in Python
Brain reading, compressive sensing, fMRI and statistical learning in PythonGael Varoquaux
 
Brain maps from machine learning? Spatial regularizations
Brain maps from machine learning? Spatial regularizationsBrain maps from machine learning? Spatial regularizations
Brain maps from machine learning? Spatial regularizationsGael Varoquaux
 

En vedette (20)

Advanced network modelling 2: connectivity measures, goup analysis
Advanced network modelling 2: connectivity measures, goup analysisAdvanced network modelling 2: connectivity measures, goup analysis
Advanced network modelling 2: connectivity measures, goup analysis
 
Processing biggish data on commodity hardware: simple Python patterns
Processing biggish data on commodity hardware: simple Python patternsProcessing biggish data on commodity hardware: simple Python patterns
Processing biggish data on commodity hardware: simple Python patterns
 
Succeeding in academia despite doing good_software
Succeeding in academia despite doing good_softwareSucceeding in academia despite doing good_software
Succeeding in academia despite doing good_software
 
On the code of data science
On the code of data scienceOn the code of data science
On the code of data science
 
Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014
Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014
Cartographie statistique décisionnelle--Rendez-vous Ritme du 6 mars 2014
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4j
 
Aiguille dans botte de foin: scikit-learn et joblib
Aiguille dans botte de foin: scikit-learn et joblibAiguille dans botte de foin: scikit-learn et joblib
Aiguille dans botte de foin: scikit-learn et joblib
 
Scikit-learn for easy machine learning: the vision, the tool, and the project
Scikit-learn for easy machine learning: the vision, the tool, and the projectScikit-learn for easy machine learning: the vision, the tool, and the project
Scikit-learn for easy machine learning: the vision, the tool, and the project
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
Open Source Scientific Software
Open Source Scientific SoftwareOpen Source Scientific Software
Open Source Scientific Software
 
Sondage aléatoire simple ou a probabilité égal
Sondage aléatoire simple ou a probabilité égal Sondage aléatoire simple ou a probabilité égal
Sondage aléatoire simple ou a probabilité égal
 
Je configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtoolsJe configure mes serveurs avec fabric et fabtools
Je configure mes serveurs avec fabric et fabtools
 
Inter-site autism biomarkers from resting state fMRI
Inter-site autism biomarkers from resting state fMRIInter-site autism biomarkers from resting state fMRI
Inter-site autism biomarkers from resting state fMRI
 
Connectomics: Parcellations and Network Analysis Methods
Connectomics: Parcellations and Network Analysis MethodsConnectomics: Parcellations and Network Analysis Methods
Connectomics: Parcellations and Network Analysis Methods
 
Machine learning and cognitive neuroimaging: new tools can answer new questions
Machine learning and cognitive neuroimaging: new tools can answer new questionsMachine learning and cognitive neuroimaging: new tools can answer new questions
Machine learning and cognitive neuroimaging: new tools can answer new questions
 
Python et NoSQL
Python et NoSQLPython et NoSQL
Python et NoSQL
 
Optimal discretization of hedging strategies rosenbaum
Optimal discretization of hedging strategies   rosenbaumOptimal discretization of hedging strategies   rosenbaum
Optimal discretization of hedging strategies rosenbaum
 
Brain reading, compressive sensing, fMRI and statistical learning in Python
Brain reading, compressive sensing, fMRI and statistical learning in PythonBrain reading, compressive sensing, fMRI and statistical learning in Python
Brain reading, compressive sensing, fMRI and statistical learning in Python
 
Brain maps from machine learning? Spatial regularizations
Brain maps from machine learning? Spatial regularizationsBrain maps from machine learning? Spatial regularizations
Brain maps from machine learning? Spatial regularizations
 
Python packaging
Python packagingPython packaging
Python packaging
 

Similaire à Scikit-learn: apprentissage statistique en Python. Créer des machines intelligentes

Softshake 2015 - Des small data aux big data - Méthodes et Technologies
Softshake 2015 - Des small data aux big data - Méthodes et TechnologiesSoftshake 2015 - Des small data aux big data - Méthodes et Technologies
Softshake 2015 - Des small data aux big data - Méthodes et TechnologiesOCTO Technology Suisse
 
Retour d'expérience - Credit.fr
Retour d'expérience - Credit.frRetour d'expérience - Credit.fr
Retour d'expérience - Credit.frAltares D&B
 
#NSD14 - La sécurité autour du Big Data
#NSD14 - La sécurité autour du Big Data#NSD14 - La sécurité autour du Big Data
#NSD14 - La sécurité autour du Big DataNetSecure Day
 
CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...
CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...
CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...Eric Culnaert
 
IA C'EST MON DADA : Conference introduction machine learning et IA
IA C'EST MON DADA : Conference introduction machine learning et IAIA C'EST MON DADA : Conference introduction machine learning et IA
IA C'EST MON DADA : Conference introduction machine learning et IAHalszka de Breza
 
Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018
Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018 Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018
Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018 e-Xpert Solutions SA
 
Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...
Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...
Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...I MT
 
La vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxLa vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxVisionGEOMATIQUE2014
 
La vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxLa vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxACSG - Section Montréal
 
Des données au savoir : big data et data mining
Des données au savoir : big data et data miningDes données au savoir : big data et data mining
Des données au savoir : big data et data miningPierre-Alain Four
 
8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf
8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf
8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdfgesix36345
 
Six sigma & Big data
Six sigma & Big dataSix sigma & Big data
Six sigma & Big dataXL Groupe
 
Présentation Dataquitaine 2023.pdf
Présentation Dataquitaine 2023.pdfPrésentation Dataquitaine 2023.pdf
Présentation Dataquitaine 2023.pdfVIA INNO
 
slides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelman
slides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelmanslides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelman
slides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelmanshuai wang
 
Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016
Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016
Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016Micropole Group
 
L'émergence d'une nouvelle filière de formation : data science
L'émergence d'une nouvelle filière de formation : data scienceL'émergence d'une nouvelle filière de formation : data science
L'émergence d'une nouvelle filière de formation : data scienceKezhan SHI
 
Cours intro ia_2015_2016
Cours intro ia_2015_2016Cours intro ia_2015_2016
Cours intro ia_2015_2016Serge Garlatti
 
Lettre information Transtech - juillet 2018
Lettre information Transtech - juillet 2018Lettre information Transtech - juillet 2018
Lettre information Transtech - juillet 2018Transtech Aquitaine
 

Similaire à Scikit-learn: apprentissage statistique en Python. Créer des machines intelligentes (19)

Softshake 2015 - Des small data aux big data - Méthodes et Technologies
Softshake 2015 - Des small data aux big data - Méthodes et TechnologiesSoftshake 2015 - Des small data aux big data - Méthodes et Technologies
Softshake 2015 - Des small data aux big data - Méthodes et Technologies
 
Retour d'expérience - Credit.fr
Retour d'expérience - Credit.frRetour d'expérience - Credit.fr
Retour d'expérience - Credit.fr
 
#NSD14 - La sécurité autour du Big Data
#NSD14 - La sécurité autour du Big Data#NSD14 - La sécurité autour du Big Data
#NSD14 - La sécurité autour du Big Data
 
CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...
CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...
CCC-CONNECTION spécial Intelligence artificielle et commerce avec Inria, Lume...
 
IA C'EST MON DADA : Conference introduction machine learning et IA
IA C'EST MON DADA : Conference introduction machine learning et IAIA C'EST MON DADA : Conference introduction machine learning et IA
IA C'EST MON DADA : Conference introduction machine learning et IA
 
Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018
Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018 Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018
Présentation d'e-Xpert Solutions et F5 Networks - Event Oct 2018
 
ACT6100 introduction
ACT6100 introductionACT6100 introduction
ACT6100 introduction
 
Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...
Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...
Colloque IMT -04/04/2019- L'IA au cœur des mutations industrielles - Introduc...
 
La vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxLa vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieux
 
La vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieuxLa vision par ordinateur en télédétection spatiale : état des lieux
La vision par ordinateur en télédétection spatiale : état des lieux
 
Des données au savoir : big data et data mining
Des données au savoir : big data et data miningDes données au savoir : big data et data mining
Des données au savoir : big data et data mining
 
8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf
8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf
8-IntroFouilleeeeeeeeeeeeeeeeeeeeeeeeeeeeee.pdf
 
Six sigma & Big data
Six sigma & Big dataSix sigma & Big data
Six sigma & Big data
 
Présentation Dataquitaine 2023.pdf
Présentation Dataquitaine 2023.pdfPrésentation Dataquitaine 2023.pdf
Présentation Dataquitaine 2023.pdf
 
slides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelman
slides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelmanslides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelman
slides_conf_sur_AI_big_data_par_Françoise_Soulié-Fogelman
 
Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016
Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016
Matinée Micropole DE LA BI A LA DATA INTELLIGENCE 18-10-2016
 
L'émergence d'une nouvelle filière de formation : data science
L'émergence d'une nouvelle filière de formation : data scienceL'émergence d'une nouvelle filière de formation : data science
L'émergence d'une nouvelle filière de formation : data science
 
Cours intro ia_2015_2016
Cours intro ia_2015_2016Cours intro ia_2015_2016
Cours intro ia_2015_2016
 
Lettre information Transtech - juillet 2018
Lettre information Transtech - juillet 2018Lettre information Transtech - juillet 2018
Lettre information Transtech - juillet 2018
 

Plus de Gael Varoquaux

Evaluating machine learning models and their diagnostic value
Evaluating machine learning models and their diagnostic valueEvaluating machine learning models and their diagnostic value
Evaluating machine learning models and their diagnostic valueGael Varoquaux
 
Measuring mental health with machine learning and brain imaging
Measuring mental health with machine learning and brain imagingMeasuring mental health with machine learning and brain imaging
Measuring mental health with machine learning and brain imagingGael Varoquaux
 
Machine learning with missing values
Machine learning with missing valuesMachine learning with missing values
Machine learning with missing valuesGael Varoquaux
 
Dirty data science machine learning on non-curated data
Dirty data science machine learning on non-curated dataDirty data science machine learning on non-curated data
Dirty data science machine learning on non-curated dataGael Varoquaux
 
Representation learning in limited-data settings
Representation learning in limited-data settingsRepresentation learning in limited-data settings
Representation learning in limited-data settingsGael Varoquaux
 
Better neuroimaging data processing: driven by evidence, open communities, an...
Better neuroimaging data processing: driven by evidence, open communities, an...Better neuroimaging data processing: driven by evidence, open communities, an...
Better neuroimaging data processing: driven by evidence, open communities, an...Gael Varoquaux
 
Functional-connectome biomarkers to meet clinical needs?
Functional-connectome biomarkers to meet clinical needs?Functional-connectome biomarkers to meet clinical needs?
Functional-connectome biomarkers to meet clinical needs?Gael Varoquaux
 
Atlases of cognition with large-scale human brain mapping
Atlases of cognition with large-scale human brain mappingAtlases of cognition with large-scale human brain mapping
Atlases of cognition with large-scale human brain mappingGael Varoquaux
 
Similarity encoding for learning on dirty categorical variables
Similarity encoding for learning on dirty categorical variablesSimilarity encoding for learning on dirty categorical variables
Similarity encoding for learning on dirty categorical variablesGael Varoquaux
 
Machine learning for functional connectomes
Machine learning for functional connectomesMachine learning for functional connectomes
Machine learning for functional connectomesGael Varoquaux
 
Towards psychoinformatics with machine learning and brain imaging
Towards psychoinformatics with machine learning and brain imagingTowards psychoinformatics with machine learning and brain imaging
Towards psychoinformatics with machine learning and brain imagingGael Varoquaux
 
Simple representations for learning: factorizations and similarities
Simple representations for learning: factorizations and similarities Simple representations for learning: factorizations and similarities
Simple representations for learning: factorizations and similarities Gael Varoquaux
 
A tutorial on Machine Learning, with illustrations for MR imaging
A tutorial on Machine Learning, with illustrations for MR imagingA tutorial on Machine Learning, with illustrations for MR imaging
A tutorial on Machine Learning, with illustrations for MR imagingGael Varoquaux
 
Scikit-learn and nilearn: Democratisation of machine learning for brain imaging
Scikit-learn and nilearn: Democratisation of machine learning for brain imagingScikit-learn and nilearn: Democratisation of machine learning for brain imaging
Scikit-learn and nilearn: Democratisation of machine learning for brain imagingGael Varoquaux
 
Computational practices for reproducible science
Computational practices for reproducible scienceComputational practices for reproducible science
Computational practices for reproducible scienceGael Varoquaux
 
Coding for science and innovation
Coding for science and innovationCoding for science and innovation
Coding for science and innovationGael Varoquaux
 
Estimating Functional Connectomes: Sparsity’s Strength and Limitations
Estimating Functional Connectomes: Sparsity’s Strength and LimitationsEstimating Functional Connectomes: Sparsity’s Strength and Limitations
Estimating Functional Connectomes: Sparsity’s Strength and LimitationsGael Varoquaux
 
Social-sparsity brain decoders: faster spatial sparsity
Social-sparsity brain decoders: faster spatial sparsitySocial-sparsity brain decoders: faster spatial sparsity
Social-sparsity brain decoders: faster spatial sparsityGael Varoquaux
 
Simple big data, in Python
Simple big data, in PythonSimple big data, in Python
Simple big data, in PythonGael Varoquaux
 
Building a cutting-edge data processing environment on a budget
Building a cutting-edge data processing environment on a budgetBuilding a cutting-edge data processing environment on a budget
Building a cutting-edge data processing environment on a budgetGael Varoquaux
 

Plus de Gael Varoquaux (20)

Evaluating machine learning models and their diagnostic value
Evaluating machine learning models and their diagnostic valueEvaluating machine learning models and their diagnostic value
Evaluating machine learning models and their diagnostic value
 
Measuring mental health with machine learning and brain imaging
Measuring mental health with machine learning and brain imagingMeasuring mental health with machine learning and brain imaging
Measuring mental health with machine learning and brain imaging
 
Machine learning with missing values
Machine learning with missing valuesMachine learning with missing values
Machine learning with missing values
 
Dirty data science machine learning on non-curated data
Dirty data science machine learning on non-curated dataDirty data science machine learning on non-curated data
Dirty data science machine learning on non-curated data
 
Representation learning in limited-data settings
Representation learning in limited-data settingsRepresentation learning in limited-data settings
Representation learning in limited-data settings
 
Better neuroimaging data processing: driven by evidence, open communities, an...
Better neuroimaging data processing: driven by evidence, open communities, an...Better neuroimaging data processing: driven by evidence, open communities, an...
Better neuroimaging data processing: driven by evidence, open communities, an...
 
Functional-connectome biomarkers to meet clinical needs?
Functional-connectome biomarkers to meet clinical needs?Functional-connectome biomarkers to meet clinical needs?
Functional-connectome biomarkers to meet clinical needs?
 
Atlases of cognition with large-scale human brain mapping
Atlases of cognition with large-scale human brain mappingAtlases of cognition with large-scale human brain mapping
Atlases of cognition with large-scale human brain mapping
 
Similarity encoding for learning on dirty categorical variables
Similarity encoding for learning on dirty categorical variablesSimilarity encoding for learning on dirty categorical variables
Similarity encoding for learning on dirty categorical variables
 
Machine learning for functional connectomes
Machine learning for functional connectomesMachine learning for functional connectomes
Machine learning for functional connectomes
 
Towards psychoinformatics with machine learning and brain imaging
Towards psychoinformatics with machine learning and brain imagingTowards psychoinformatics with machine learning and brain imaging
Towards psychoinformatics with machine learning and brain imaging
 
Simple representations for learning: factorizations and similarities
Simple representations for learning: factorizations and similarities Simple representations for learning: factorizations and similarities
Simple representations for learning: factorizations and similarities
 
A tutorial on Machine Learning, with illustrations for MR imaging
A tutorial on Machine Learning, with illustrations for MR imagingA tutorial on Machine Learning, with illustrations for MR imaging
A tutorial on Machine Learning, with illustrations for MR imaging
 
Scikit-learn and nilearn: Democratisation of machine learning for brain imaging
Scikit-learn and nilearn: Democratisation of machine learning for brain imagingScikit-learn and nilearn: Democratisation of machine learning for brain imaging
Scikit-learn and nilearn: Democratisation of machine learning for brain imaging
 
Computational practices for reproducible science
Computational practices for reproducible scienceComputational practices for reproducible science
Computational practices for reproducible science
 
Coding for science and innovation
Coding for science and innovationCoding for science and innovation
Coding for science and innovation
 
Estimating Functional Connectomes: Sparsity’s Strength and Limitations
Estimating Functional Connectomes: Sparsity’s Strength and LimitationsEstimating Functional Connectomes: Sparsity’s Strength and Limitations
Estimating Functional Connectomes: Sparsity’s Strength and Limitations
 
Social-sparsity brain decoders: faster spatial sparsity
Social-sparsity brain decoders: faster spatial sparsitySocial-sparsity brain decoders: faster spatial sparsity
Social-sparsity brain decoders: faster spatial sparsity
 
Simple big data, in Python
Simple big data, in PythonSimple big data, in Python
Simple big data, in Python
 
Building a cutting-edge data processing environment on a budget
Building a cutting-edge data processing environment on a budgetBuilding a cutting-edge data processing environment on a budget
Building a cutting-edge data processing environment on a budget
 

Scikit-learn: apprentissage statistique en Python. Créer des machines intelligentes

  • 1. Apprentissage statistique, Cr´er des machines intelligentes e Ga¨l Varoquaux e
  • 2. 1 L’apprentissage statistique en deux mots 2 Une application en recherche en neuroscience 3 Scikit-learn: une boite ` outils a d’apprentissage G Varoquaux 2
  • 3. 1 L’apprentissage statistique en deux mots G Varoquaux 3
  • 4. 1 Une perspective historique Intelligence artificielle Concevoir des r`gles de d´cision e e ann´es 80 e Mangeable? Grand? Mobile? G Varoquaux 4
  • 5. 1 Une perspective historique Intelligence artificielle Concevoir des r`gles de d´cision e e ann´es 80 e Apprentissage machine Les cr´er ` partir d’observations e a ann´es 90 e G Varoquaux 4
  • 6. 1 Une perspective historique Intelligence artificielle Concevoir des r`gles de d´cision e e ann´es 80 e Apprentissage machine Les cr´er ` partir d’observations e a ann´es 90 e Apprentissage statistique ann´es 2000 e Mod´liser le bruit dans les observations e G Varoquaux 4
  • 7. 1 Une perspective historique Intelligence artificielle Concevoir des r`gles de d´cision e e ann´es 80 e Apprentissage machine Les cr´er ` partir d’observations e a ann´es 90 e Apprentissage statistique ann´es 2000 e Mod´liser le bruit dans les observations e Big data Beaucoup d’observations, des r`gles simples e G Varoquaux maintenant 4
  • 8. 1 Une perspective historique Intelligence artificielle Concevoir des r`gles de d´cision e e ann´es 80 e Apprentissage machine Les cr´er ` partir d’observations e a ann´es 90 e Apprentissage statistique ann´es 2000 e Mod´liser le bruit dans les observations e Big data Beaucoup d’observations, des r`gles simples e maintenant “Big data isn’t actually interesting without machine learning” Steve Jurvetson, VC, Silicon Valley G Varoquaux 4
  • 9. 1 L’apprentissage statistique Exemple: reconnaissance de visage Andr´ e G Varoquaux Bernard Charles Didier 5
  • 10. 1 L’apprentissage statistique Exemple: reconnaissance de visage Andr´ e G Varoquaux Bernard Charles ? Didier 5
  • 11. 1 M´thode na¨ e ıve 1 Stocker des images connues (bruit´es) et les noms e qui vont avec. 2 A partir d’une photo (bruit´e aussi), trouver l’image e qui lui ressemble le plus. M´thode “des plus proches voisins” e G Varoquaux 6
  • 12. 1 M´thode na¨ e ıve 1 Stocker des images connues (bruit´es) et les noms e qui vont avec. 2 A partir d’une photo (bruit´e aussi), trouver l’image e qui lui ressemble le plus. M´thode “des plus proches voisins” e Quel taux d’erreurs sur les images d´j` vues? ea ... 0: pas d’erreurs Donn´es de test = donn´es d’apprentissage e e G Varoquaux 6
  • 13. 1 1er probl`me: le bruit e Taux de prediction Donn´es non li´es ` la variable ` pr´dire e e a a e 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
  • 14. e 1 2`me probl`me: nombre de descripteurs e 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
  • 15. 1 L’apprentissage statistique Exemple: reconnaissance de visage Apprentissage ` partir de a descripteurs num´riques e Difficult´s: i) bruit, e Andr´ e Bernard Charles Didier ii) nombre de descripteurs Tˆche “supervis´e”: labels connus a e Tˆche “non supervis´e”: labels inconnus a e G Varoquaux ? 9
  • 16. 1 Apprentissage supervis´: r´gression e e y Un seul descripteur: une dimension x G Varoquaux 10
  • 17. 1 Apprentissage supervis´: r´gression e e y y Un seul descripteur: une dimension x x Quel mod`le pr´f´rer? e ee G Varoquaux 10
  • 18. 1 Apprentissage supervis´: r´gression e e y y Un seul descripteur: une dimension x x Probl`me du “sur-apprentissage” e (“overfit”) Minimiser l’erreur n’est pas toujours favorable (apprentissage du bruit) Donn´es de test = donn´es d’apprentissage e e G Varoquaux 10
  • 19. 1 Apprentissage supervis´: r´gression e e y y Un seul descripteur: une dimension x x Pr´f´rer les mod`les simples ee e = concept de “r´gularisation” e Equilibrer le nombre de param`tres ` apprendre e a avec la quantit´ de donn´es e e G Varoquaux 10
  • 20. 1 Apprentissage supervis´: r´gression e e y y Un seul descripteur: une dimension Compromis biais variance x x Pr´f´rer les mod`les simples ee e = concept de “r´gularisation” e Equilibrer le nombre de param`tres ` apprendre e a avec la quantit´ de donn´es e e G Varoquaux 10
  • 21. 1 Apprentissage supervis´: r´gression e e Un seul descripteur: une dimension Deux descripteurs: 2 dimensions y y x X_2 X_1 Plus de param`tres e Equilibrer le nombre de param`tres ` apprendre e a avec la quantit´ de donn´es e e G Varoquaux 10
  • 22. 1 Apprentissage supervis´: r´gression e e Un seul descripteur: une dimension Deux descripteurs: 2 dimensions y y x X_2 X_1 Plus de param`tres e ⇒ besoin de plus de donn´es e “mal´diction de la dimensionalit´” e e G Varoquaux 10
  • 23. 1 Apprentissage supervis´: classification e Variable ` pr´dire cat´gorielle, par ex. des chiffres a e e X2 X1 G Varoquaux 11
  • 24. 1 Apprentissage non supervis´ e Structure de la bourse G Varoquaux http://scikit-learn.org/stable/auto examples/ applications/plot stock market.html 12
  • 25. 1 Apprentissage non supervis´ e Structure de la bourse Donn´es non lab´lis´es e e e plus courantes que les donn´es labelis´es e e G Varoquaux http://scikit-learn.org/stable/auto examples/ applications/plot stock market.html 12
  • 26. 1 L’apprentissage statistique Des d´fis e Statistiques Computationels G Varoquaux 13
  • 27. 1 Strat´gies d’apprentissage sur du “big data” e Big data L’acc`s aux donn´es limite plus que e e la puissance de calcul G Varoquaux 14
  • 28. 1 Strat´gies d’apprentissage sur du “big data” e 1 R´duction de donn´es ` la vol´e e e a e Une r´duction rapide, e respectant les propri´t´s ee statistiques des donn´es e Limite la charge m´moire + disque e G Varoquaux 14
  • 29. 1 Strat´gies d’apprentissage sur du “big data” e 1 R´duction de donn´es ` la vol´e e e a e 2 Algorithmes “en ligne” Consomment les donn´es en flux e Convergent vers des grandeurs moyennes G Varoquaux 14
  • 30. 1 Strat´gies d’apprentissage sur du “big data” e 1 R´duction de donn´es ` la vol´e e e a e 2 Algorithmes “en ligne” 3 Parall´lisme par d´coupage des donn´es e e e Stratification pour suivre la structure statistique et de stockage des donn´es e Taille des blocs adapt´ e aux unit´s de calcul e G Varoquaux 14
  • 31. 1 Strat´gies d’apprentissage sur du “big data” e 1 2 3 4 R´duction de donn´es ` la vol´e e e a e Algorithmes “en ligne” Parall´lisme par d´coupage des donn´es e e e Caching Minimiser la latence d’acc`s aux donn´es e e Ne pas recalculer la mˆme chose e G Varoquaux 14
  • 32. 1 Strat´gies d’apprentissage sur du “big data” e 1 2 3 4 5 R´duction de donn´es ` la vol´e e e a e Algorithmes “en ligne” Parall´lisme par d´coupage des donn´es e e e Caching Acc`s rapide aux donn´es e e Repr´sentation coh´rente avec les motifs d’acc`s e e e Compression pour limiter la bande consomm´e e G Varoquaux 14
  • 33. 1 Apprentissage statistique Apprendre une logique d´cisionnelle e G Varoquaux 15
  • 34. 1 Apprentissage statistique et big data Apprendre une logique d´cisionnelle riche e G Varoquaux 15
  • 35. 1 Apprentissage statistique et big data Apprendre une logique d´cisionnelle riche e Regression Classification Non supervis´, ex. clustering e G Varoquaux 15
  • 36. 1 Apprentissage statistique et big data Apprendre une logique d´cisionnelle riche e Les difficult´s e Statistiques grande dimension ⇒ sur-apprentissage Computationelles sch´ma d’acc´s aux donn´es e e e G Varoquaux 15
  • 37. 2 Une application en recherche en neuroscience Lier la biologie des neurones ` la pens´e a e G Varoquaux 16
  • 38. 2 L’IRM fonctionnelle t Enregistrement de l’activit´ c´r´brale e ee G Varoquaux 17
  • 39. 2 NeuroImagerie cognitive Apprendre un lien bilateral entre activit´ e c´r´brale et fonction cognitive ee G Varoquaux 18
  • 40. 2 Mod`les d’encodage de l’information e Pr´dire les r´ponses neurales e e ⇒ apprendre les repr´sentations c´rebrale e e G Varoquaux 19
  • 41. 2 D´codage de l’activit´ c´r´brale e e ee “Lire dans les pens´es” e G Varoquaux 20
  • 42. 2 Accumulation de donn´es e Atlas cognitif G Varoquaux 21
  • 43. 2 Accumulation de donn´es e Atlas cognitif Probl´matique d’apprentissage et de e “big data” en science fondementale G Varoquaux 21
  • 44. 3 Scikit-learn: une boite ` a outils d’apprentissage G Varoquaux c Theodore W. Gray 22
  • 45. 3 scikit-learn L’apprentissage statistique pour tous Pas de domaine d’application sp´cifique e Pas de pr´requis en machine learning e Librairie logicielle de qualit´ e Interfaces pens´es pour l’utilisateur e D´veloppement communautaire e License BSD, contributeurs tr`s vari´s e e http://scikit-learn.org G Varoquaux 23
  • 46. 3 Une biblioth`que Python e Une biblioth`que, pas un programme e Plus expressif et polyvalent Facile ` integrer a Python: Un langage haut niveau - interactif, - facile ` debugger, a Appels transparents au C Ecosyst`me tr`s dynamique e e G Varoquaux 24
  • 47. 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´es e G Varoquaux 25
  • 48. 3 D´veloppement comunautaire e ´ Enormement de fonctionnalit´s: e b´n´fices d’une grande ´quipe e e e Croissance du projet: Plus de 200 contributeurs ∼ 12 d´veloppeurs coeur e 1 ing´nieur INRIA temps plein e Coˆt de d´veloppement estim´: 6 millions $ u e e Mod`le COCOMO, e http://www.ohloh.net/p/scikit-learn G Varoquaux 26
  • 49. 3 Fonctionalit´s e Apprentissage supervis´ e Arbres de d´cision (Random-Forest, Boosted Tree) e Mod`les lin´aires e e SVM Apprentissage non supervis´ e Clustering Apprentissage de dictionnaire D´tection d’outliers e S´lection de mod`les e e Validation crois´e int´gr´e e e e Optimisation de param`tres e G Varoquaux 27
  • 51. 3 Structures de donn´es e 27 7979 8794 0387 52701578 07 0179 46124797 17 9407 18717887 07 5497 90495190 34 1365 65358098 42 7475 46349084 15 4872 73245614 56 9034 87745620 71 7895 9 1 4 9 7 3 2 9 4 1 7 9 3 7 6 5 4 4 9 7 8 3 1 8 8 0 Tableau numpy Tableau num´rique typ´ n-dimensionnel e e Abstraction sur un pointeur Matrice creuse scipy Structure 2D avec peu d’´l´ments ee Diff´rentes repr´sentations de donn´es e e e 6 Calcul vectoriel Op´rations num´riques et matricielles e e G Varoquaux 29
  • 52. 3 Sp´cifier un mod`le e e Un concept central: l’estimateur Instanci´ sans les donn´es e e Mais en sp´cifiant ses param`tres e e from s k l e a r n . n e i g h b o r s import KNearestNeighbors estimator = KNearestNeighbors ( n n e i g h b o r s =2) G Varoquaux 30
  • 53. 3 Entraˆ ıner un mod`le e Apprendre ` partir de donn´es a e estimator . f i t ( X train , Y train ) o`: u X est un tableau ou une matrice de forme nobservations × ndescripteurs y est un tableau numpy, entier ou flottant nobservations G Varoquaux 31
  • 54. 3 Utiliser un mod`le e Prediction: classification, regression Y test = estimator . predict ( X test ) Transformation: reduction de dimension, filtre X new = e s t i m a t o r . t r a n s f o r m ( X t e s t ) Estimation de densit´, vraissemblance e test score = estimator . score ( X test ) Estimation “en-line” e s t i m a t o r . p a r t i a l f i t (X, Y) G Varoquaux 32
  • 55. 3 Vectorization Passer des donn´es brutes ` la matrices X e a doc 1 doc 2 doc 3 doc 4 doc 5 doc 6 doc 7 doc 8 doc 9 doc 10 doc 11 doc 12 doc 13 doc 14 Pour le texte: compter les occurrences de mots - Donn´es d’entr´e: liste de documents (string) e e - Donn´es de sortie: matrice creuse e n pytho java 33 99 C# iler p com G Varoquaux 1 ace 1 interf r serve r44 drive 7 7 22 99 44 44 1 1 99 77 99 33 88 66 77 55 33 4 9 9 88 7 7 00 88 33
  • 56. 3 Vectorization Passer des donn´es brutes ` la matrices X e a Pour le texte: compter les occurrences de mots - Donn´es d’entr´e: liste de documents (string) e e - Donn´es de sortie: matrice creuse e from s k l e a r n . f e a t u r e e x t r a c t i o n . t e x t import H a s h i n g V e c t o r i z e r h a s h e r = H a s h i n g V e c t o r i z e r () X = h a s h e r . f i t t r a n s f o r m ( documents ) G Varoquaux 33
  • 58. Scikit-Learn: Machine Learning en Python Apprentissage + big data = logique d´cisionnelle riche e Statistiques, algorithmes, acc`s aux donn´es e e Scikit-learn: - En Python - Projet dynamique - Page web tr`s fournie e http://scikit-learn.org @GaelVaroquaux