plan introductiona l'apprentissage automatique … · introductiona l'apprentissage...

11
Introduction ` a l’apprentissage automatique eance 1 Introduction, classification non-supervis´ ee Fr´ ed´ eric Sur ´ Ecole des Mines de Nancy https://members.loria.fr/FSur/enseignement/apprauto/ 1/42 Plan 1 Introduction Vocabulaire Exemples Le cours 2 Apprentissage et IA : difficult´ es fondamentales Mal´ ediction de la dimensionnalit´ e Dilemme biais-fluctuation 3 Partitionnement / classification non supervis´ ee Classifications hi´ erarchiques K -moyennes Mean-shift clustering 4 Conclusion 2/42 Qu’est-ce que l’apprentissage ? Apprentissage automatique/statistique (machine/statistical learning) Deux grandes familles : Apprentissage supervis´ e pour algorithme f w (param. w ) Donn´ ees : base d’exemples avec sortie attendue (x i , y i ) 1i N Phase 1 : apprentissage, trouver w tel que i , f w (x i ) y i Phase 2 : pr´ ediction avec x inconnu, f w (x )=? y i ∈{1, 2 ..., N } : classification supervis´ ee y i R d : egression Exemples : x i =image, y i ∈{elo,voiture} (classification), (x i , y i ) = (vitesse, distance d’arrˆ et) (r´ egression). Apprentissage non supervis´ e / partitionnement (clustering) Donn´ ees : base d’exemples (x i ) 1i N But : trouver des sous-ensembles des x i partageant des caract´ eristiques communes. Exemple : x i vecteur des notes de l’´ el` eve i 3/42 Intelligence Artificielle ? Ensemble de th´ eories et de techniques mises en œuvre en vue de ealiser des machines capables de simuler l’intelligence humaine. Source : larousse.fr Test de Turing Imitation game IA g´ en´ erale, IA forte, IA faible Illustration : By Bilby (Own work) [Public domain], via Wikimedia Commons 4/42

Upload: tranthuy

Post on 16-Sep-2018

232 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Introduction a l’apprentissage automatique

Seance 1

Introduction, classification non-supervisee

Frederic SurEcole des Mines de Nancy

https://members.loria.fr/FSur/enseignement/apprauto/

1/42

Plan

1 IntroductionVocabulaireExemplesLe cours

2 Apprentissage et IA : difficultes fondamentalesMalediction de la dimensionnaliteDilemme biais-fluctuation

3 Partitionnement / classification non superviseeClassifications hierarchiquesK -moyennesMean-shift clustering

4 Conclusion

2/42

Qu’est-ce que l’apprentissage ?Apprentissage automatique/statistique (machine/statistical learning)

Deux grandes familles :

Apprentissage supervise pour � algorithme � fw (param. w)Donnees : base d’exemples avec sortie attendue (xi , yi )1≤i≤NPhase 1 : apprentissage, trouver w tel que ∀i , fw (xi ) ' yiPhase 2 : prediction avec x inconnu, fw (x) = ?

yi ∈ {1, 2 . . . ,N} : classification superviseeyi ∈ Rd : regression

Exemples : xi=image, yi ∈ {velo,voiture} (classification),(xi , yi ) = (vitesse, distance d’arret) (regression).

Apprentissage non supervise / partitionnement (clustering)Donnees : base d’exemples (xi )1≤i≤NBut : trouver des sous-ensembles des xi partageant descaracteristiques communes.Exemple : xi � vecteur � des notes de l’eleve i

3/42

Intelligence Artificielle ?� Ensemble de theories et de techniques mises en œuvre en vue derealiser des machines capables de simuler l’intelligence humaine. �

Source : larousse.fr

Test de TuringImitation game

IA generale,IA forte,IA faible

Illustration : By Bilby (Own work) [Public domain], viaWikimedia Commons

4/42

Page 2: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Quelques notions historiques

1642 : Blaise Pascal et pascaline

1763-1812 : theoreme de Bayes (Bayes - Laplace)

∼1945 : premiers ordinateurs→ applications potentielles : traitement du langage naturel,� systemes experts �, OCR, computer vision, jeux. . .

1970s : “AI winter”

1980s : reseaux de neurones artificiels et apprentissage

1990s : premieres voitures autonomes

fin 1990s : SVM, methodes a noyau

1997 : Deep Blue bat Garry Kasparov

debut 2000 : robotique grand public

2010s : apprentissage profond (deep learning)

2016 : AlphaGo bat Lee Sedol

. . .

5/42

Apprentissage non supervise / partitionnement

Illustration : scikit-learn, iris de Fisher

Problemes : dimension, metrique, ambiguıte. . .

6/42

Apprentissage supervise

Illustration : scikit-learn

Problemes : dimension, bruit, fonction d’apprentissage, evaluationdes performances. . .

7/42

Regression

Illustration : scikit-learn

La regression lineaire est un algorithme de l’intelligence artificielle !8/42

Page 3: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Exemple : phylogenie moleculaire (partitionnement)

Illustration : britannica.com

9/42

Exemple : Google news (partitionnement)

10/42

Exemple : OCR (apprentissage supervise)

Illustration : scikit-learn

11/42

Exemple : traduction (apprentissage supervise)

→ essayer avec deepl.com. . .

12/42

Page 4: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Exemple : reconnaissance de la parole (apprentissage supervise)

13/42

Exemple : reconnaissance de visages (apprentissage supervise)

Illustration : Viola & Jones 2001

14/42

Exemple : pixel recursive super-resolution (regression)

Illustration : Googlebrain, ICCV 2017

Ici, x ∈ R64, y ∈ R1024

15/42

Exemple : “smart” city ?

Illustration : Saul Loeb/AFP/Getty Images

16/42

Page 5: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Le cours Introduction a l’apprentissage automatiqueProlongement de

TCS 2A Analyse de donnees

Modelisation des seriestemporelles

S’appuie sur TCS 1A :informatique, probabilites, statistique,analyse numerique

Equipe pedagogique :Benoıt Henry, Remi Peyre,Frederic Sur

TP : Python / Scikit-learnboıte a outils experimentale,pas de subtilites dans ce cours. . .

Modalites d’evaluation :test (format TP) le 12 juin 2018.

17/42

Plan

1 IntroductionVocabulaireExemplesLe cours

2 Apprentissage et IA : difficultes fondamentalesMalediction de la dimensionnaliteDilemme biais-fluctuation

3 Partitionnement / classification non superviseeClassifications hierarchiquesK -moyennesMean-shift clustering

4 Conclusion

18/42

La malediction de la dimensionnalite (curse of dimensionality)

Plusieurs aspects lies :

Volume de l’hypersphere unite dans Rd :

Vd =πd/2

Γ(d/2 + 1)∼

d→∞1√πd

(2πe

d

)d/2

−−−→d→∞

0

Volume de l’hypercube circonscrit : 2d

→ plus la dimension est grande, � plus il y a de place �

→ � concentration dans les coins �

Combinatoire / estimation de frequences→ quelle est la taille moyenne des eleves-ingenieurs ayantobtenu C en TCS analyse de donnees ?→ quelle est la taille moyenne des eleves-ingenieurs ayantobtenu C en TCS analyse de donnees, A en statistique, E enmathematiques I, Fx en mathematiques II ?

� Solution � pratique : reduire la dimension (cf. ACP)19/42

Erreur et risque en prediction

Notations et hypotheses :

base d’entraınement : (xi , yi )1≤i≤N , xi ∈ Rd , yi ∈ N ou Rd ′

realisation d’un N-echantillon i.i.d. (X,Y) (loi inconnue)

H : famille de predicteursExemple : H = {h : x 7→ a · x + b, (a, b) ∈ Rd}

cout d’une d’erreur : r(yi , h(xi )) (loss function)ex. regression : r(yi , h(xi )) = (yi − h(xi ))2

ex. classification : r(yi , h(xi )) = 0 si h(xi ) = yi et = 1 sinon

risque empirique : Re(h) = 1N

∑Ni=1 r(yi , h(xi ))

risque moyen de prediction : Rp(h) = E (r(Y , h(X ))) (inconnu)

→ idealement, on voudrait trouver f qui minimise Rp

→ on se contente de chercher f qui minimise Re

20/42

Page 6: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Borne sur le risqueOn suppose que :– f minimise le risque de prediction Rp

– f minimise le risque empirique Re

Question : Rp(f ) eloigne de Rp(f ) ?

Propriete

Rp(f ) ≤ Rp(f ) ≤ Rp(f ) + 2 maxh∈H|Rp(h)− Re(h)|

Preuve :

– par definition de f : Rp(f ) ≤ Rp(f )

– Rp(f ) = Rp(f )− Re(f ) + Re(f )− Re(f ) + Re(f )− Rp(f ) + Rp(f )

mais par definition de f : Re(f )− Re(f ) ≤ 0

et : Rp(f )− Re(f ) + Re(f )− Rp(f ) ≤|Rp(f )− Re(f )|+ |Rp(f )− Re(f )| ≤ 2 maxh∈H |Rp(h)− Re(h)|

Source : http://www.di.ens.fr/~mallat/CoursCollege.html

21/42

Dilemme biais-fluctuation

Rp(f ) ≤ Rp(f ) ≤ Rp(f ) + 2 maxh∈H|Rp(h)− Re(h)|

On aimerait bien que Rp(f ) ne soit pas trop eloigne de Rp(f )(biais), et soit petit.

Rp(f ) : erreur d’approximation � ideale � : plus petite erreurmoyenne pouvant etre atteinte par un predicteur de la famille H.→ pour minimiser Rp(f ), on a interet a avoir un � gros � H.

maxh∈H |Rp(h)− Re(h)| : erreur de fluctuation sur H entrerisque moyen de prediction et risque empirique.→ comme E (Re(h)) = Rp(h), on a interet a avoir N � grand �

→ a N fixe, plus H est � gros �, plus la fluctuation est grande.

Consequence : il faut trouver un compromis.

22/42

IllustrationRegression par polynomes de degre d→ minimisation de Re sur Hd = {x 7→∑d

i=0 aixi}

Illustration : scikit-learn

sous-apprentissage sur-apprentissageunder-fitting over-fitting

Cf criteres d’information AIC/SBC dans le cours series temporelles.23/42

Seance 1

1 IntroductionVocabulaireExemplesLe cours

2 Apprentissage et IA : difficultes fondamentalesMalediction de la dimensionnaliteDilemme biais-fluctuation

3 Partitionnement / classification non superviseeClassifications hierarchiquesK -moyennesMean-shift clustering

4 Conclusion

24/42

Page 7: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Partitionnement / classification non supervisee

Observations : points dans Rd , textes, sequences moleculaires. . .

Distance / mesure de dissimilarite entre observations d(x,y) :– L1, L2, L∞. . .– distance d’edition (de Levenshtein), voir polycopie (p. 13 et 76) :https://members.loria.fr/FSur/enseignement/RO/

Mesure de dissimilarite entre classes (cluster) D(A,B) :D(A,B) = min{d(x , y), x ∈ A, y ∈ B} (single linkage)

D(A,B) = max{d(x , y), x ∈ A, y ∈ B} (complete linkage)

D(A,B) =nAnB

nA + nB||mA −mB||2 (Ward)

=∑

x∈A∪B ||x − mA∪B||2 −∑

x∈A ||x − mA||2 −∑

x∈B ||x − mB||225/42

Les classifications hierarchiques

Cf. TCS Analyse de donnees

Algorithme :

1 initialisation : chaque observation dans une classe ;

2 jusqu’a ce qu’il ne reste qu’une classe, fusionner les deux plusproches au sens de D.

Sortie : le dendrogramme= arbre binaire de classification, ou hauteur des classes proportionnelle a

dissimilarite des classes filles.

Classification : hauteur-seuil dans le dendrogramme.

26/42

Exemple 1 : donnees a partitionner

Source :https://joernhees.de/blog/2015/08/26/scipy-hierarchical-clustering-and-dendrogram-tutorial/

27/42

Exemple 1 : single-linkage

28/42

Page 8: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Exemple 1 : classification a 5 groupes

29/42

Exemple 2 : donnees a partitionner

30/42

Exemple 2 : single-linkage

31/42

Exemple 2 : classification a 5 groupes

32/42

Page 9: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Exemple 2 : Ward

33/42

Exemple 2 : classification a 5 groupes

34/42

Discussion classification hierarchique

Dissimilarite entre observation ?

Dissimilarite entre groupes ?

Nombre de groupes ?→ Cf cours analyse de donnees : � saut � dans le dendrogramme ?

Donnees anisotropes ?

� Lent � O(N2 log(N)) / occupation memoire O(N2)

35/42

K -moyennes (K -means)

On cherche une partition (C1, C2, . . . , CK ) de (xi )1≤i≤N minimisant

E (C1, C2, . . . , CK ) =K∑

j=1

x∈Cj||x −mj ||2 (1)

ou mj est la moyenne des x ∈ Cj .

Algorithme :On itere :

etant donne une partition (C1, C2, . . . , CK ), on calcule lesmoyennes mj

pour tout 1 ≤ j ≤ K , on redefinit Cj comme l’ensemble des xplus proche de mj que des autres moyennes

→ convergence en un nombre fini d’etapes vers un minimum local.

36/42

Page 10: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Illustration de l’algorithme

Illustration : Par Mquantin — Travail personnel, CC BY-SA 4.0https: // commons. wikimedia. org/ w/ index. php? curid= 61321400

37/42

Discussion K -moyennes

Choix de K ?→ variations de E en fonction de K ?

Convergence vers un minimum local→ plusieurs executions avec initialisations differentes

Distributions anisotropes ?

� Rapide �

38/42

Mean-shift clustering

Source : http://www.chioka.in/meanshift-algorithm-for-the-rest-of-us-python/

noyau K (ex : K (x) = exp(−||x ||2))parametre h (largeur de bande, bandwidth)

Algorithme : pour chaque point x de l’ensemble a partitionner :

initialisation : y0 = x

on itere yt+1 =∑N

i=1 K ( yt−xih )/K0 xiles x convergeant vers le meme point sont classes ensemble.

39/42

Discussion mean-shift

Pas besoin de choisir le nombre de classes

Choix de la largeur de la fenetre ?

Plus lent que K -means

40/42

Page 11: Plan Introductiona l'apprentissage automatique … · Introductiona l'apprentissage automatique Seance 1 Introduction, classi cation non-supervisee Fred eric Sur Ecole des Mines de

Plan

1 IntroductionVocabulaireExemplesLe cours

2 Apprentissage et IA : difficultes fondamentalesMalediction de la dimensionnaliteDilemme biais-fluctuation

3 Partitionnement / classification non superviseeClassifications hierarchiquesK -moyennesMean-shift clustering

4 Conclusion

41/42

Conclusion

Deux grandes familles d’algorithmes d’apprentissage :

apprentissage supervise→ classification supervisee, regression

apprentissage non supervise→ partitionnement

Difficultes de l’apprentissage :malediction de la dimensionnalite, dilemme biais / fluctuation

En TP : partitionnement (clustering)

42/42