RECONNAISSANCE DES FORMES - sorbonne-universite · Traitement dimages Traitement du signal (parole)...

Preview:

Citation preview

1Cours de Reconnaissance des Formes– Catherine Achard

RECONNAISSANCE

DES FORMES

Catherine ACHARD

Institut des Systèmes Intelligents et de

Robotique

catherine.achard@upmc.fr

2Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

3Cours de Reconnaissance des Formes– Catherine Achard

Principe

MATHEMATIQUES INFORMATIQUERdF

Traitement d’images

Traitement du signal (parole) Biologie

PhysiqueInstrumentation

4Cours de Reconnaissance des Formes– Catherine Achard

• On dispose d’un ensemble de formes dont la classe est

connue (base d’apprentissage ou de références)

• On met au point une méthode qui, en étudiant cette base,

sera ensuite capable de classer des formes inconnues

Principe

5Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

6Cours de Reconnaissance des Formes– Catherine Achard

Applications

isolés

cursifsligne de base

Variabilité entre

scripteurs

Reconnaissance de texte

7Cours de Reconnaissance des Formes– Catherine Achard

Biométrie

Signature

Empreinte

digitale

Visage

Iris

Empreinte

vocale

Applications

8Cours de Reconnaissance des Formes– Catherine Achard

Reconnaissances d’empreintes digitales

http://www.biometrie-online.net/techno/empreintes/empreintes-

digitales.php

Applications

9Cours de Reconnaissance des Formes– Catherine Achard

médicale satellitaire

Imagerie

Applications

10Cours de Reconnaissance des Formes– Catherine Achard

200 400 600 800 1000 1200 1400 1600 1800 2000

200

400

600

800

1000

1200

1400

200 400 600 800 1000 1200 1400 1600 1800 2000

200

400

600

800

1000

1200

1400

Aide technique

Véhicules intelligents

Analyse de scène

Applications

11Cours de Reconnaissance des Formes– Catherine Achard

Signaux audio

Reconnaissance de locuteurs

• Parmi 10 personnes, qui parle ?

Reconnaissance de parole

• Parmi ces 20 mots, lequel la personne a dit ?

Applications

12Cours de Reconnaissance des Formes– Catherine Achard

Signaux divers : diagnostic de panne

Sur un avion, il y a plusieurs centaines de

capteurs qui donnent des signaux en

permanence.

Comment faire pour détecter

automatiquement une panne et diagnostiquer

son origine ?

Applications

13Cours de Reconnaissance des Formes– Catherine Achard

Champignon

fermé

Champignon

taché

Champignon

véreux

Champignon

terreux

Contrôle de qualité

Applications

14Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

15Cours de Reconnaissance des Formes– Catherine Achard

Difficultés

Problème de

résolution

Problème de

pose

Distance entre

visage?

16Cours de Reconnaissance des Formes– Catherine Achard

Difficultés

Expressions faciales, occlusion

17Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

18Cours de Reconnaissance des Formes– Catherine Achard

Méthode supervisée ou non supervisée

Méthode supervisée :

On reçoit une image binaire

et on doit l’associer à une

des 26 lettres de l’alphabet

On connait à l’avance les

classes possibles. La base

d’apprentissage est

étiquetée avec ces 26

classes

Méthode non supervisée :

Un client vient d’acheter un

livre sur Amazon. Je souhaite

retrouver les personnes avec

les mêmes gouts pour

orienter ce client

On ne connait pas à

l’avance les classes possibles.

La base d’apprentissage est

composée de clients ayant

fait des achats. On souhaite

regrouper les clients ayant les

mêmes gouts dans une

classe

19Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

20Cours de Reconnaissance des Formes– Catherine Achard

Cas particulier : la détection

Raisonnons sur un cas concret : comment détecter un visage dans uneimage ?

21Cours de Reconnaissance des Formes– Catherine Achard

On change le problème de détection en un problème de classification

On présente une imagette (une zone de l’image) en entrée d’unsystème de reconnaissance. Celui-ci nous dit si cette imagette est unvisage ou non (sortie binaire)

Problème:

Comment savoir où rechercher dans l’image ?

Comment détecter à plusieurs échelles ?

En testant toutes les combinaisons possibles

En chaque position, problème de reconnaissance. Est-ce un visage ou non ?

Cas particulier : la détection

22Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

23Cours de Reconnaissance des Formes– Catherine Achard

Reconnaître les truites et les saumons

Exemple

24Cours de Reconnaissance des Formes– Catherine Achard

Extraire l’objet de l’image

Pré-traitement

Exemple

25Cours de Reconnaissance des Formes– Catherine Achard

Extraire de la forme un vecteur de mesure

aussi appelé vecteur de caractéristiques

ou codage

ou features

Codage

Exemple en 1 dimension : la taille des poissons

Exemple

26Cours de Reconnaissance des Formes– Catherine Achard

Taille des poissons

SaumonTruite

Trop de chevauchement, décision pas robuste. Que faire ?

Taille des

poissons

Seuil de décision

Classification

Exemple

27Cours de Reconnaissance des Formes– Catherine Achard

Autre caractéristique :

la teinte des poissons

Trop de chevauchement, décision pas robuste. Que faire ?

Seuil de décision

TruiteSaumon

Teinte

Classification

Exemple

28Cours de Reconnaissance des Formes– Catherine Achard

Teinte et longueur des poissons Vecteur de caractéristiques à 2 dimensions

On peut ajouter d’autres caractéristiques pour améliorer la classification

Mais les données ne sont pas toujours idéales

frontière de décision

Truite Saumon

Teinte

Longueur

Classification

Exemple

29Cours de Reconnaissance des Formes– Catherine Achard

Pourquoi ne pas utiliser une frontière plus complexe ?Quelle sera l’erreur pour de nouveaux poissons ?

frontière de décision

Truite Saumon

Teinte

Longueur

Teinte et longueur des poissons Vecteur de caractéristiques à 2 dimensions

Classification

Exemple

30Cours de Reconnaissance des Formes– Catherine Achard

Comment trouver une frontière moins spécifique, moins bonne sur l’ensemble d’entrainement mais certainement meilleure sur de

nouveaux poissons ? ?

frontière de décision

Truite Saumon

Teinte

Longueur

Teinte et longueur des poissons Vecteur de caractéristiques à 2 dimensions

Classification

Exemple

31Cours de Reconnaissance des Formes– Catherine Achard

Espace

de

représentation

Espace

de

décision

Espace

de

mesure

Codage Classification

Les étapes de la reconnaissance de formes

32Cours de Reconnaissance des Formes– Catherine Achard

IntroductionPrincipeApplicationsDifficultésMéthode supervisée ou non supervisée Cas particulier de la détectionRaisonnons sur un exempleRéférences

Prétraitements et codage

Classification

33Cours de Reconnaissance des Formes– Catherine Achard

- DUDA Richard, HART Peter STORK David, "Pattern Classification ". Wiley Sciences, 2nd edition.

- CHRISTOPHER M. BISHOP, “Pattern Recognition and machine learning”, springer, 2006

- BELAID Abdel, BELAID Yolande, "Reconnaissance des formes : Méthodes et

applications". InterEditions, 1992.

- DEVIJVER Pierre, KITTLER J., "Pattern Recognition: a statistical approach". Prentice Hall, 1982.

- DUBUISSON Bernard, "Diagnostic et reconnaissance des formes". Hermes, 1990.

- FU King-Sun, "Syntactic Methods in Pattern Recognition". Academic Press, 1974.

- GAILLAT Gérard, "Méthodes statistiques de reconnaissance des formes". Publication ENSTA, 1983.

- MICLET Laurent, "Méthodes structurelles pour la reconnaissance des formes". Eyrolles et CNET - ENST, 1984.

- MILGRAM Maurice,"Reconnaissance des formes : Méthodes numériques et

connexionnistes". Armand Colin, 1993.

- PAVLIDIS T., "Structural Pattern Recognition". Springer Verlag, 1982.

- SIMON Jean-Claude, "La reconnaissance des formes par algorithmes". Masson, 1984.

- WATANABE Satosi, "Knowing and Guessing". John Wiley, 1969.

Références

34Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

35Cours de Reconnaissance des Formes– Catherine Achard

ESPACE DE

REPRESENTATION

ESPACE DE

MESURE

Codage

Prétraitements et codage

36Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

37Cours de Reconnaissance des Formes– Catherine Achard

Qu’est ce qu’un bon codage ?

Pouvoir discriminant

Le codage doit être différent pour des exemples de classesdifférentes forte variance inter-classes

Pouvoir unifiant

Le codage doit être à peu près le même pour tous lesexemples d’une même classe faible variance intra-classe

Stabilité/invariance

Codage le plus insensible possible au bruit

En fonction des applications, invariance en translation,rotation, changement d’échelle

Faible dimension

Plus le codage est de faible dimension, plus les temps decalcul seront faibles

Augmenter la dimension peut détériorer les résultats dereconnaissance (malédiction des grandes dimensioncompromis à trouver)

Caractéristique des codages

38Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariances

Analyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

39Cours de Reconnaissance des Formes– Catherine Achard

Paradoxe

Il faut segmenter pour reconnaître et … reconnaître pour segmenter

Prétraitement

Exemple : isoler les lettres

But : isoler la forme à reconnaître

40Cours de Reconnaissance des Formes– Catherine Achard

A vous de jouer, on fait comment ?

Prétraitement

41Cours de Reconnaissance des Formes– Catherine Achard

Segmentation

Projection selon y segmentation en lignes

Prétraitement

42Cours de Reconnaissance des Formes– Catherine Achard

Projection selon x segmentation en lettres

Prétraitement

43Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariances

Analyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

44Cours de Reconnaissance des Formes– Catherine Achard

Codage global

On code toute la forme sans en extraire d’éléments spécifiques. La

forme peut être représentée par un vecteur de paramètres

Exemple pour une personne : le poids et la taille

Codage structurel

On extrait des éléments spécifiques de la forme et leur relation.

Exemple :

pour la personne 1 : pull rouge au dessus d’un pantalon bleu au

dessus de chaussures noires

Pour reconnaitre un ‘L’ : contour d’abord vertical puis horizontal

Codage global vs structurel

45Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de Freeman

Histogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principales

Analyse discriminante linéaireSélection/extraction de caractéristiques

Classification

46Cours de Reconnaissance des Formes– Catherine Achard

Codage rétinien

On garde toute l’information directement dans une rétine :

Problème :

-La lettre n’est pas toujours à la même position

-La résolution de l’image n’est pas toujours la même

47Cours de Reconnaissance des Formes– Catherine Achard

Codage rétinien

-Calcul du centre de gravité

-Sélection du plus petit carré centré en G et englobant tous les pixels

-Réduction de la dimension (attention, pas binaire !!)

Rétine 10x10

après centrage

et réduction

Vecteur de

caractéristique

s de dimension

100

48Cours de Reconnaissance des Formes– Catherine Achard

Codage quasiment neutre

Pas de perte d’information

Laisse le classifieur travailler

Efficace si base d’exemples importante

Ne tolère ni les transformations ni les déformations

Codage rétinien

49Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

50Cours de Reconnaissance des Formes– Catherine Achard

Ils codent n’importe quelle forme, même non binaire

Soit I(x,y) une image

Moment d’ordre p,q

Aire :

Centre de masse :

00 ( , )x y

M I x y

01 10( , ) ( , )q p

x y x y

M y I x y M x I x y

( , )p q

pq

x y

M x y I x y

10 01

00 00

M Mx et y

M M

Moments géométriques

51Cours de Reconnaissance des Formes– Catherine Achard

Orientation:

Moments centrés pour être invariant en translation

Moments normalisés pour être invariant en changement d’échelle

( ) ( ) ( , )p q

pq

x y

x x y y I x y

11

20 02

1 2arctan( )

2

M

M M

Moments géométriques

52Cours de Reconnaissance des Formes– Catherine Achard

Moments invariants en rotation : Moment de Hu

1 20 02

22

2 20 02 11( ) 4

2 2

3 30 12 21 03( 3 ) (3 )

2 2

4 30 12 21 03( ) ( )

2 2

6 20 02 30 12 21 03 11 30 12 21 03( ) ( ) ( ) 4 ( )( )

2 2 2 2

7 21 03 30 12 30 12 21 03 30 12 21 03 30 12 21 03(3 3 )( ) ( ) 3( ) ( 3 )( ) 3( ) ( )

2 2 2 2

5 30 12 30 12 30 12 21 03 21 03 21 03 30 12 21 03( 3 )( ) ( ) 3( ) (3 )( ) 3( ) ( )

Moments géométriques

53Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codages

Prétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinienMoments géométriquesFiltres de Haar

Local Binary Patterns (LBP)Codage de contours

Codage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

54Cours de Reconnaissance des Formes– Catherine Achard

Filtres de Haar

Plusieurs filtres à plusieurs échelles, plusieursorientations, estimés en plusieurs positions del’image.

On ne peu pas utiliser toutes ces valeurs, lecodage serait bien trop grand (plusieursdizaines d’images !

55Cours de Reconnaissance des Formes– Catherine Achard

moyenne pour

plusieurs images

Filtres de Haar

En faisant des statistiques sur plusieursmilliers d’images d’une même classe, ondétermine quelles sont les tailles,orientations et positions pertinents pourfaire le codage.

56Cours de Reconnaissance des Formes– Catherine Achard

On en déduit, sur une grande base de données (apprentissage) quels sont les

filtres à utiliser et où.

Le code de l’image (vecteur de caractéristiques) est composé de la sortie de

tous ces filtres locaux

Filtres de Haar

Vecteur de caractéristiques

57Cours de Reconnaissance des Formes– Catherine Achard

Même chose pour un visage

Un visage est représenté par la

réponse de plusieurs filtres en

différentes positions

Filtres de Haar

58Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurelCodage de régions

Codage rétinien

Moments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

59Cours de Reconnaissance des Formes– Catherine Achard

Idée : obtenir un descripteur complètement invariant à l’éclairage

Solution : codage des relations d’ordre

Comparaison du niveau de gris d’un point avec ses voisins

Chaque comparaison renvoie un nombre binaire

Le mot binaire obtenu avec les 8 voisins est codé en décimal

L’histogramme de cette valeur pour tous les points d’une zone forme le

descripteur

Exemple

Une portion d’image :

un pixel et ses 8 voisins Le résultat de comparaison Le code binaire

Local Binary Patterns (LBP)

1*20+

1*21 +

1*22 +

1*23 +

0*24 + = 15

0*25 +

0*26 +

0*27 +

20

21

22

23

24

25

26

2+

60Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

61Cours de Reconnaissance des Formes– Catherine Achard

On code les contours à partir d’une liste chainée d’angles discrétisés

Exemple :

2 3 4 4 5 6 6 7 0 0 1 2

0

1

2

3

4

5

6

7

Codage des contours de freeman

63Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

64Cours de Reconnaissance des Formes– Catherine Achard

Histogrammes des orientations de gradients

On peut observer les probabilités des orientations du gradient dans

différentes zones de l’image

Pour un piéton :

I |Ix| |Iy|

65Cours de Reconnaissance des Formes– Catherine Achard

atan 0,Gy

Gx

Plusieurs étapes:- Calcul des gradients horizontaux et verticaux Gx et Gy avec

[-1 0 1] et [-1 0 1]T

- Calcul de l’orientation du gradient

-Construction de l’histogramme d’orientation de gradient pour différentes

zones (souvent 8 bins)

-Concaténation des différents histogrammes

-Variante : pondération des votes par l’amplitude du gradient

Histogrammes des orientations de gradients

66Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

67Cours de Reconnaissance des Formes– Catherine Achard

Descripteurs de Fourier

Le contour est décrit par la liste chaînée des points qui le constitue. Les

coordonnées {xi,yi} des points de cette liste sont transformées en un

complexe ui=xi+jyi

u0=x0+jy0

68Cours de Reconnaissance des Formes– Catherine Achard

TFD de la liste de points :

La majorité des informations est contenue dans les basses fréquences

les premières valeurs de an suffisent à caractériser le signal et

composent le vecteur de caractéristiques

Propriétés:

Translation : modification de a0 seulement

Rotation : modification de la phase

Changement d’échelle : multiplication des an par une constante

2j ni

Nn i

i

a u e

Descripteurs de Fourier

69Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

70Cours de Reconnaissance des Formes– Catherine Achard

Méthodes empiriques

Choix des caractéristiques pertinentes

Méthodes exploratoires

Algorithmes génétiques

Méthodes statistiques pour réduire la dimension ou la

taille des données

Analyse en composantes principales

Analyse discriminante linéaire

Sélection/extraction de caractéristiques

Comment trouver un bon codage ?

71Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

72Cours de Reconnaissance des Formes– Catherine Achard

La dimension des données n est la dimension du code les représentant

Ex : n = 100

Complexité algorithmique linéaire f(n2) ou f(n3) ou même,

exponentielle

Rétine 10 X 10:

(après centrage

et réduction)

Problème des grandes dimensions

73Cours de Reconnaissance des Formes– Catherine Achard

Plus la dimension n est grande, plus la base de données devra être de grande

dimension

Ex : avec deux exemples par dimension

Si n = 2, 22=4 données

Si n = 3, 23=8 données

Si n = 4 , 24=16 données

Si n = 20, 220=1.048.576 données

Considérons un nombre fixé N de points uniformément répartis dans un hyper-

cube de dimension n.

Plus n augmente, plus la variance des distances entre points diminue

En grande dimension, le voisinage immédiat d'une donnée est très peu

occupé tandis que la plupart des autres données se trouvent à des distances

très comparables de cette dernière.

D'une manière générale, les distances entre données de grande dimension

sont très concentrées autour de leur moyenne.

Problème des grandes dimensions

74Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

75Cours de Reconnaissance des Formes– Catherine Achard

Si on dispose de N vecteurs de données Xi de dimension n, leur matrice de covariance

est estimée par :

Σ =1

𝑁−1 𝑖=1𝑁−1 𝑋𝑖 − 𝜇 𝑋𝑖 − 𝜇 𝑇 où 𝜇 est le vecteur moyen des données Xi

La matrice de covariance est de dimension n x n et est symétrique.

Exemple en dimension 2

On peut représenter chaque point Xi dans le plan.

La matrice de covariance est de dimension 2x2

Σ =𝜎𝑥𝑥 𝜎𝑥𝑦𝜎𝑥𝑦 𝜎𝑦𝑦

Rappel sur les matrices de covariance

Matrice de covariance

La matrice de covariance est symétrique. Ses

valeurs codent la forme du nuage de point.

76Cours de Reconnaissance des Formes– Catherine Achard

1.01 -0.01

-0.01 0.99

1 -0.02

-0.02 9.46

1 3

3 9

Démo

Bayes 2D

Rappel sur les matrices de covariance

Matrice de covariance

77Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

78Cours de Reconnaissance des Formes– Catherine Achard

Supposons que l’on dispose de plusieurs exemples (N exemples) dont

le vecteur de caractéristiques est de dimension élevée (n).

Garder toutes ces dimensions est très couteux en temps de calcul et

met à mal certains algorithmes de classification sujet au phénomène

de malédiction des grandes dimensions.

On souhaite réduire la dimension du vecteur de caractéristiques

pour qu’il n’ait plus qu’une dimension d<<n

Comment faire ?

Dans un premier temps, il va falloir prétraiter les données.

Analyse en composantes principales

79Cours de Reconnaissance des Formes– Catherine Achard

Prétraitement des données

Les données Xj sont rangées dans un tableau X

(N=4 exemples de dimension n=5)

Mesure 1 Mesure 2 Mesure 3 Mesure 4 Mesure 5

Donnée 1

Donnée 2

Donnée 3

Donnée 4

Le tableau contient des informations de natures différentes.

Il est nécessaire de centrer les données : on soustrait la valeur de la moyenne de la colonne à chaque valeur. La nouvelle moyenne de la

colonne va être 0.

Il est aussi nécessaire de normaliser les données : on divise chaque valeur par l'écart type de sa colonne. Le nouvel écart type de la

colonne va être 1.

Analyse en composantes principales

80Cours de Reconnaissance des Formes– Catherine Achard

L’idée va être de changer le système d’axe de manière à ce que le

maximum d'informations soit contenu sur les premiers axes.

Exemple : pour des données en dimension deux (x1,x2) dans le repère

(i1,i2), l’ACP va donner un nouveau repère (u1,u2) tel que le maximum

d’information soit porté par u1. u1 correspondra à l’élongation maximaledu nuage de point. Les nouvelles coordonnées des points seront (y1,y2)

et la réduction de dimension consistera à ne garder que y1.

Axe principal

Analyse en composantes principales

i1

i2 u1u2

81Cours de Reconnaissance des Formes– Catherine Achard

Analyse en composantes principales

De manière plus formelle, chaque point 𝑋𝑖 s’exprime dans le repère initial

par:𝑋𝑖 = 𝑥𝑖1𝑖1+𝑥𝑖2𝑖2+…+𝑥𝑖𝑛𝑖𝑛

Et est représentée sous forme vectorielle:

𝑋𝑖 =

𝑥𝑖1⋮

𝑥𝑖𝑛L’ACP consiste à rechercher dans un premier temps l’axe 𝑢1 tq la

projection des données sur cet axe maximise la variance des données.

La projection des données sur l’axe 𝑢1 donne la nouvelle coordonnée des

points:

𝑦𝑖1 = 𝑋𝑖𝑇𝑢1 et 𝑢1

𝑇𝑢1 = 1

Et la variance des données sur cet axe sera:

𝜎 =1

𝑁

𝑖=1

𝑁

𝑦𝑖12=

1

𝑁

𝑖=1

𝑁

𝑦𝑖1𝑇𝑦𝑖1 =

1

𝑁

𝑖=1

𝑁

𝑢1𝑇𝑋𝑖𝑋𝑖

𝑇𝑢1

𝜎 = 𝑢1𝑇 Σ 𝑢1 et 𝑢1

𝑇𝑢1 = 1

Où Σ est la matrice de covariance des données tq Σ =1

𝑁 𝑖=1𝑁 𝑋𝑖𝑋𝑖

𝑇

82Cours de Reconnaissance des Formes– Catherine Achard

Analyse en composantes principales

Il s’agit d’un problème classique de maximisation sous contrainte que l’on

résout à partir du lagrangien:

L=𝑢1𝑇 Σ 𝑢1 - 𝜆 𝑢1

𝑇 𝑢1− 1

En annulant la dérivée de L par rapport à 𝑢1, on obtient:𝜕𝐿

𝜕𝑢1= 0 Σ 𝑢1= 𝜆 𝑢1

On reconnait l’équation des valeurs propres et des vecteurs propres de la

matrice de covariance Σ.

Le second axe correspondra au second vecteur propre de la matrice,…

Rmq:

La matrice de covariance est par construction symétrique et au moins

positive semi-définie. Ceci implique que les valeurs propres et les vecteurs

propres seront réels, que les valeurs propres seront positives ou nulles et que

les vecteurs propres seront orthogonaux entre eux.

83Cours de Reconnaissance des Formes– Catherine Achard

Chaque donnée Xi peut s’exprimer dans la base des vecteurs propres:

Xi= yi1 u1 + yi2 u2 + ….+yin un

Avec yi1=XiT. u1 (y1 scalaire)

Et sera représentée par le nouveau vecteur:

𝑋𝑖 =

𝑦𝑖1⋮

𝑦𝑖𝑛

La réduction de dimension consiste à ne garder que les première

composantes de ce vecteur pour représenter Xi:

𝑋𝑖 =

𝑦𝑖1⋮

𝑦𝑖𝑑avec d << n

1 2

1 2 3

... avec

...d

n

d n

On définit l’inertie portée par les d premiers axes par

Analyse en composantes principales

84Cours de Reconnaissance des Formes– Catherine Achard

Comment connaître le nombre d’axes à conserver ?

1. Avec un pourcentage d’inertie souhaité a priori

2. On divise l’inertie totale par la dimension initiale pour connaître l’inertie

moyenne par variable. On conserve tous les axes ayant une inertie

supérieure à cette moyenne

3. On observe l’évolution des valeurs propres:

4. Par validation sur une base de validation

Analyse en composantes principales

85Cours de Reconnaissance des Formes– Catherine Achard

Exemples d’ACP sur des images de visages

On dispose d’une base de références de 270 visages,

Chaque visage a pour dimension 38x38=1444 pixels n=1444

On range tous ces visages dans une matrice de dimension 270x1444.

Chaque visage est considéré comme un exemple de dimension 1444.

On prétraite les données puis on calcule la matrice de covariance de

cette grosse matrice. Elle est de dimension 1444x1444.

On calcule les valeurs propres et les vecteurs propres de cette matrice.

Chaque vecteur propre a pour dimension 1x1444. On peut remettre

chacun d’eux sous la forme d’une matrice de dimension 38*38.

Les 5 premiers vecteurs propres (eigen image) :

Analyse en composantes principales

86Cours de Reconnaissance des Formes– Catherine Achard

Si on ne conserve que ces 5 dimensions, chaque visage Xj de la base

s’exprime comme une combinaison linéaire de ces 5 ‘eigen-image’

Xi= yi1 u1 + yi2 u2 + yi3 u3 + yi4 u4 + yi5 u5

Ainsi, tous les exemples ne seront plus représentés que par un vecteur de

dimension 5.

A partir de ce vecteur, on peut :

Reconstruire les visages, on aura alors fait de la compression

Reconnaitre les visages

Analyse en composantes principales

87Cours de Reconnaissance des Formes– Catherine Achard

Reconstruction avec 5 ‘eigen images’

Compression = 288%

Reconstruction avec 49 ‘eigen images’

Compression = 32%

Reconstruction avec 144 ‘eigen images’

Compression = 10%

Analyse en composantes principales

88Cours de Reconnaissance des Formes– Catherine Achard

Démo

acp

Démo

Acp_visage \ACP_VISAGE\ACP_face

Eigen_image

Problème de l’ACP (voir démo)

Analyse en composantes principales

89Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

90Cours de Reconnaissance des Formes– Catherine Achard

Analyse discriminante linéaire.

Cette méthode tient compte de la répartition des points dans les

classes et essaye de maximiser le ratio entre la variance

inter classe des données et la variance intra classe.

Supposons que l’on ait un problème à K classes, et les

ensembles de points X1 et X2… XN correspondant, et

X={Xi} i=1…N

moyenne de chaque ensemble de points et moyenne

totale :

1, 2, …, K,

= p1*1 + p2*2+…+ pK*K

Où p1, p2,… pK sont les probabilités de chaque classe

Analyse discriminante linéaire

91Cours de Reconnaissance des Formes– Catherine Achard

Analyse discriminante linéaire.

Dispersion intra classe:

intra=p1* 1 + p2* 2+…+ + pK* K

où 1, 2,… K sont les matrices de covariance des classes

Dispersion inter classe

inter = p1(1-) (1-)T + p2(2-) (2-)T+…+ pK(K-) (K-)T

On recherche l’axe 𝑢1 tel que la projection des données sur cet axe

maximise le rapport entre la variance inter classe et la variance intra

classe.

La projection des points Xi selon le vecteur 𝑢1 s’exprime par :

𝑦𝑖1 = 𝑋𝑖𝑇𝑢1 et 𝑢1

𝑇𝑢1 = 1

Si la matrice de covariance des données de départ est

=E{XiT Xi}

dans le nouveau repère, on a

new = E{𝑦𝑖1𝑇 𝑦𝑖1 }=𝑢1

𝑇Σ 𝑢1

Analyse discriminante linéaire

92Cours de Reconnaissance des Formes– Catherine Achard

On recherche l’axe qui maximise le rapport entre la variance inter classe

et la variance intra classe et donc :

𝑢1𝑇Σ𝑖𝑛𝑡𝑒𝑟 𝑢1

𝑢1𝑇Σ𝑖𝑛𝑡𝑟𝑎𝑢1

Ceci revient à maximiser 𝑢1𝑇Σ𝑖𝑛𝑡𝑒𝑟 𝑢1 sous la contrainte 𝑢1

𝑇Σ𝑖𝑛𝑡𝑟𝑎𝑢1 = 1 (car

peu importe la norme de 𝑢1)

Pour cela, on forme le lagrangien dont on annule la dérivée:L=𝑢1

𝑇Σ𝑖𝑛𝑡𝑒𝑟 𝑢1 − 𝜆 𝑢1𝑇Σ𝑖𝑛𝑡𝑟𝑎𝑢1 − 1

𝜕𝐿

𝜕𝑢1= 0 Σ𝑖𝑛𝑡𝑒𝑟 𝑢1= 𝜆Σ𝑖𝑛𝑡𝑟𝑎𝑢1 Σ𝑖𝑛𝑡𝑟𝑎

−1 Σ𝑖𝑛𝑡𝑒𝑟 𝑢1= 𝜆𝑢1

On se ramène de nouveau à un problème aux valeurs/vecteurs propres

et on choisit pour 𝑢1 le premier vecteur propre de Σ𝑖𝑛𝑡𝑟𝑎−1 Σ𝑖𝑛𝑡𝑒𝑟.

Les autres axes de projection correspondent aux autres vecteurs propres

de Σ𝑖𝑛𝑡𝑟𝑎−1 Σ𝑖𝑛𝑡𝑒𝑟

Analyse discriminante linéaire

93Cours de Reconnaissance des Formes– Catherine Achard

De la même manière que l’ACP, on garde les axes

correspondant aux d premiers vecteurs propres de Σ𝑖𝑛𝑡𝑟𝑎−1 Σ𝑖𝑛𝑡𝑒𝑟

qui correspondent aux d plus grandes valeurs propres.

Avantage et inconvénient dans démo

Démo

lda

Analyse discriminante linéaire

94Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et codageCaractéristiques des codagesPrétraitements: extraire la formeCodage global vs structurel

Codage de régionsCodage rétinienMoments géométriquesFiltres de HaarLocal Binary Patterns (LBP)

Codage de contoursCodage de FreemanHistogramme des orientations de contoursDescripteurs de Fourier

Comment trouver un bon codage ?Problème des grandes dimensionsRappel sur les matrices de covariancesAnalyse en composantes principalesAnalyse discriminante linéaireSélection/extraction de caractéristiques

Classification

95Cours de Reconnaissance des Formes– Catherine Achard

Les méthodes de sélection de caractéristiques peuvent

être classées en trois catégories principales :

• Filter

• Wrapper

• Embedded

Sélection/extraction de caractéristiques

96Cours de Reconnaissance des Formes– Catherine Achard

Les méthodes filter travaillent en amont de la classification : on étudie les n dimensions (ou caractéristiques) et on en sélectionne

d en fonction d’un critère donné.

Par exemple, on garde les caractéristiques qui ont la plus forte

corrélation possible avec les étiquettes.

Sélection/extraction de caractéristiques

x1

x2

x3

xn

Filter

x3

x5

x9

x40

classifieur

n caractéristiques

d caractéristiques

d<<n

97Cours de Reconnaissance des Formes– Catherine Achard

Sélection/extraction de caractéristiques

Avantage des méthodes de type filter• efficacité calculatoire

Inconvénient des méthodes de type filter

• ne tiennent pas compte des interactions entre caractéristiques et

tendent a sélectionner des caractéristiques redondantes plutôt que

complémentaires.

• ne tiennent pas compte de la performance des méthodes de

classification

98Cours de Reconnaissance des Formes– Catherine Achard

Les méthodes wrapper évaluent un sous-ensemble de

caractéristiques par sa performance de classification en utilisant

un algorithme d'apprentissage

La complexité de l'algorithme d'apprentissage rend les méthodes

"wrapper" très coûteuses en temps de calcul stratégie de

recherche exhaustive impossible

Sélection/extraction de caractéristiques

x1

x2

x3

xn

x3

x5

x9

x40

classifieur

n caractéristiques

d caractéristiques

d<<n

Wrapper

Algo de

recherche

classification

99Cours de Reconnaissance des Formes– Catherine Achard

Sélection/extraction de caractéristiques

Exemple :on commence par un ensemble vide de caractéristiques.

A chaque itération, la meilleure caractéristique parmi celles qui restent

est sélectionnée

Avantage des méthodes de type wrapperCapable de sélectionner des sous-ensembles de caractéristiques de

petite taille qui sont performants pour le classificateur

Inconvénient des méthodes de type filter

• Très longues en temps de calcul car beaucoup d’apprentissages

nécessaires pour sélectionner le bon sous-ensemble de

caractéristiques

• Sous-ensemble dépendant du classificateur choisi

100Cours de Reconnaissance des Formes– Catherine Achard

Les méthodes Embedded ou intégrées incorporent la sélection de variables lors du processus d'apprentissage (boosting, arbre de

décision),

Ces méthodes seront vues dans la suite du cours

Sélection/extraction de caractéristiques

101Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Définition

Généralisation

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

102Cours de Reconnaissance des Formes– Catherine Achard

ESPACE DE

DECISION

ESPACE DE

REPRESENTATION

Reconnaissance des formes

et apprentissage

Introduction

103Cours de Reconnaissance des Formes– Catherine Achard

Classifier - Estimer

=

associer une classe C ou une valeur

à un vecteur de caractéristiques X=[x1, x2,… xn ] de dimension n

Vecteur de caractéristique X = forme + variabilité + bruit de mesure

Introduction

104Cours de Reconnaissance des Formes– Catherine Achard

Connaissances disponibles

Informations fournies par un « expert »

Modèles explicites (méthode structurelle)

Cas le plus général : base de données étiquetées ou non

Introduction

105Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Définition

Généralisation

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

106Cours de Reconnaissance des Formes– Catherine Achard

Condition requise

Bonne généralisation :

Capacité du classificateur/estimateur à reconnaître/estimer des

exemples qu’il n’a pas appris

Ne pas apprendre par cœur…

Généralisation

107Cours de Reconnaissance des Formes– Catherine Achard

Bonne généralisation, où est la frontière ?

Généralisation

108Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Probabilité, probabilités jointes, probabilités conditionnelles

Règle de Bayes

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

109Cours de Reconnaissance des Formes– Catherine Achard

Il existe deux types de probabilités

Probabilités discrètes : A est un événement

0 < P(A) < 1

p(A) + p(B) + p(C) + … + p(Z) = 1

p(AB)= p(A|B)*p(B) (probabilité conditionnelle)

Probabilités continues (densité de probabilité) :

Ne sont pas majorées par 1 (mais l’aire vaut 1)

Intégrale au lieu d’une somme

Rappels sur les probabilités

110Cours de Reconnaissance des Formes– Catherine Achard

Probabilités jointes

Pour 2 variables x et y, certaines instances de ces

deux variables sont plus fréquentes que d’autres.

Cette information est donnée par la densité de probabilité jointe de x et y : P(x,y)

yx

010

2030

4050

0

20

40

600

0.5

1

1.5

2

x 10-3

x

x

x

y

y

y

Rappels sur les probabilités

111Cours de Reconnaissance des Formes– Catherine Achard

Marginalisation

On peut retrouver la densité de probabilité d’une

seule variable à partir de la densité de probabilité

jointe par intégration.

Pour les variables continues,

Pour les variables discrètes,

Rappels sur les probabilités

112Cours de Reconnaissance des Formes– Catherine Achard

Probabilités Conditionnelles

P(x/y=y*) : probabilité de x sachant que y vaut y*

Cette probabilité conditionnelle peut être estimée

à partir des probabilités jointes :

x

y

y1

y2

P(x/y=y1)

P(x/y=y2)

Rappels sur les probabilités

113Cours de Reconnaissance des Formes– Catherine Achard

Probabilités Conditionnelles

P(x/y=y*) : probabilité de x sachant que y vaut y*

Cette probabilité conditionnelle peut être estimée

à partir des probabilités jointes :

Souvent, on ne spécifie pas la valeur de y* et:

Ceci peut être étendu avec plus de variables :

Rappels sur les probabilités

114Cours de Reconnaissance des Formes– Catherine Achard

Indépendance

Si les variables x et y sont indépendantes, alors

Rappels sur les probabilités

115Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Probabilité, probabilités jointes, probabilités conditionnelles

Règle de Bayes

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

116Cours de Reconnaissance des Formes– Catherine Achard

Les équations précédentes nous conduisent à :

Qui peut se mettre sous la forme :

Pb : comment estimer des probabilités

connaissant des échantillons ?

Règle de Bayes

117Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

118Cours de Reconnaissance des Formes– Catherine Achard

Connaissant un ensemble de N échantillons 𝑥𝑖 générés selon la loi

de probabilité 𝑝(𝑥), comment estimer la densité de probabilité

𝑝(𝑥) ?

Il existe deux grands types d’approches :

• les méthodes non paramétriques

• les méthodes paramétriques (la loi est fixée a priori et on en

recherche les paramètres)

Estimation des probabilités

119Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

120Cours de Reconnaissance des Formes– Catherine Achard

Histogramme (non paramétrique)

Une des méthodes les plus simples consiste à estimer

l’histogramme de l’ensemble de données.

• On divise chaque dimension en cases (bins) de largeur 𝒉• On compte le nombre d’échantillons 𝑥𝑖 par case

Estimation non paramétrique

121Cours de Reconnaissance des Formes– Catherine Achard

Histogramme (non paramétrique)

Pb:

- le choix de l’origine peut changer l’estimation de 𝑝(𝑥)- Comment choisir ℎ ?

Image issue de Pattern Recognition and machine learning – M. Bishop - 2007

Estimation non paramétrique

𝒑(𝒙) réel

𝒑(𝒙) estimé

122Cours de Reconnaissance des Formes– Catherine Achard

Histogramme (non paramétrique)

En deux dimensions

On peut reprendre la même formulation que précédemment

étendue à une dimension 2 puis 𝑛 dans le cas général,

Estimation non paramétrique

123Cours de Reconnaissance des Formes– Catherine Achard

Estimation non paramétrique

Problème de l’origine

Problème du choix de h (discrétisation)

Problème des grandes dimensions pour les estimations nonparamétriques

Supposons que l’on ait des données de dimension 20 et que

chaque dimension puisse prendre 5 valeurs, L’histogrammeaura en tout 520=9.1013 cases.

Il faudra une base de donnée énorme pour estimer

correctement 𝑝 𝑥 . Si la dimension est plus grande, le

problème devient encore plus difficile

124Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

125Cours de Reconnaissance des Formes– Catherine Achard

Estimation par noyau (non paramétrique)

Estimation non paramétrique

Pour remédier au problème de l’origine,

𝑝 𝑥 =𝑛𝑜𝑚𝑏𝑟𝑒 𝑑′é𝑐ℎ𝑎𝑛𝑡𝑖𝑙𝑙𝑜𝑛𝑠 𝑑𝑎𝑛𝑠 [𝑥 − ℎ, 𝑥 + ℎ]

𝑁2ℎ

Où N est le nombre d’échantillons total

Ceci s’exprime mathématiquement en 1D par :

𝑝 𝑥 =1

𝑁2ℎ

𝑖=1

𝑁

𝐾𝑥 − 𝑥𝑖

Avec 𝐾 𝑢 = 1 𝑠𝑖 𝑢 < 10 𝑠𝑖𝑛𝑜𝑛

Ceci revient à compter le nombre d’échantillons tombant dans

un hyper-cube de largeur ℎ centré en 𝑥Cette estimation est continue, elle est faite pour tout x

126Cours de Reconnaissance des Formes– Catherine Achard

Kernel Density Estimation (non paramétrique)

Pour remédier aux discontinuités liées à la discrétisation : fenêtres de

Parzen. On estime toujours la densité de probabilité avec:

𝑝 𝑥 =1

𝑁ℎ

𝑖=1

𝑁

𝐾𝑥 − 𝑥𝑖

Mais K() peut être un noyau quelconque,

Exemple avec un noyau gaussien en 2D :

𝑝 𝑥 =1

𝑁

𝑖=1

𝑁1

2𝜋 1/2ℎ𝑒𝑥𝑝 −

𝑥 − 𝑥𝑖2

2ℎ2

Ceci revient à placer une gaussienne autour de chaque point et à

sommer leur contribution

Estimation non paramétrique

127Cours de Reconnaissance des Formes– Catherine Achard

Kernel Density Estimation (non paramétrique)

Estimation de la densité de probabilité sur les mêmes données

que pour l’histogramme

- h trop petit estimation très bruitée

- h trop grand estimation trop lisse

Image issue de Pattern Recognition and machine learning – M. Bishop - 2007

Estimation non paramétrique

𝒑(𝒙) réel

𝒑(𝒙) estimé

Démo

Parzen.m

128Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

129Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

On souhaite comme précédemment estimer la densité de

probabilité 𝑝 𝑥 à partir d’une réalisation de N échantillons,

Le problème est très difficile quand on a un faible nombre

d’échantillons de dimension élevée.

La difficulté du problème est réduite si on connait a priori une

forme paramétrique de la loi. Dans ce cas, il n’y a plus qu’à

estimer les paramètres de la loi.

Ce problème est soluble par l’estimation du maximum de

vraisemblance.

130Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

131Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

Estimation du maximum de vraisemblance

(Estimation paramétrique)

Nous disposons de N échantillons 𝑥𝑖 tirés à partir de la loi

𝑝 𝑥 . D’autre part, 𝑝 𝑥 a une forme connue, dépendant de

paramètres 𝜃 : 𝑝 𝑥 = 𝑓(𝑥, 𝜃)

Nous recherchons les paramètres 𝜃 qui maximise la

vraisemblance des observations définie par:

𝐿 𝜃 𝑥 =

𝑖=1

𝑁

𝑝(𝑥𝑖) =

𝑖=1

𝑁

𝑓(𝑥𝑖 , 𝜃)

Il est souvent plus simple de travailler avec le logarithme de

cette vraisemblance appelée log-vraisemblance:

𝑙 𝜃 𝑥 = 𝑙𝑛

𝑖=1

𝑁

𝑝(𝑥𝑖) =

𝑖=1

𝑁

𝑙𝑛 𝑝(𝑥𝑖) =

𝑖=1

𝑁

ln(𝑓 𝑥𝑖 , 𝜃 )

132Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

Estimation du maximum de vraisemblance

(Estimation paramétrique)

Si 𝜃 = 𝜃1, 𝜃2, … , 𝜃𝑝Test un vecteur de dimension p et que △𝜃=

𝜕

𝜕𝜃1, … ,

𝜕

𝜕𝜃𝑝

𝑇

est l’opérateur gradient, l’estimation de 𝜃 est telle

que:

△𝜃 𝑙 = 0

L’estimation du maximum de vraisemblance consiste ainsi à

- Définir la vraisemblance : 𝐿 𝜃 𝑥 = 𝑖=1𝑁 𝑓(𝑥𝑖 , 𝜃)

- Estimer 𝜃 tq : 𝜃 = max𝜃

𝐿 𝜃 𝑥

133Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

134Cours de Reconnaissance des Formes– Catherine Achard

Loi de Bernouilli (estimation paramétrique)

Si 𝑥 est une variable binaire, alors

𝐵𝑒𝑟𝑛 𝑥 = 1 = 𝜇 et 𝐵𝑒𝑟𝑛 𝑥 = 0 = 1 − 𝜇

Ou encore

𝐵𝑒𝑟𝑛 𝑥 = 𝜇𝑥(1 − 𝜇) 1−𝑥

On montre que :

𝔼 𝑥 = 𝜇 et 𝑣𝑎𝑟 𝑥 = 𝜇(1 − 𝜇)

Et, avec l’estimation du maximum de vraisemblance:

𝜇 =1

𝑁

𝑖=1

𝑁

𝑥𝑖

Ces résultats peuvent être retrouvés par le calcul

Estimation paramétrique

135Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

136Cours de Reconnaissance des Formes– Catherine Achard

Loi binomiale (estimation paramétrique)

Supposons que l’on tire 𝑁 échantillons binaires selon la

loi de Bernouilli. La variable aléatoire 𝑥 qui compte le

nombre de réalisations de 1 parmi ces 𝑁 échantillons

suit une loi binomiale de paramètres 𝑁 et 𝜆 .

𝑥 peut donc prendre toutes les valeurs entières de 0 à

𝑁 et

𝑝 𝑥 =𝑁!

𝑁 − 𝑥 ! 𝑥!𝜆𝑥(1 − 𝜆)𝑛−𝑥

On montre alors que :

𝔼 𝑥 = Nλ et 𝑣𝑎𝑟 𝑥 = 𝑁𝜆 1 − 𝜆

Ces résultats peuvent être retrouvés par le calcul

Estimation paramétrique

.

137Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

138Cours de Reconnaissance des Formes– Catherine Achard

Loi uniforme (estimation paramétrique)

La variable aléatoire continue 𝑥 suit une loi uniforme

sur l’intervalle [a,b] si:

𝑝 𝑥 =1

𝑏 − 𝑎

On a alors

𝔼 𝑥 =𝑏−𝑎

2et 𝑣𝑎𝑟 𝑥 =

𝑏−𝑎 2

12

Estimation paramétrique

.

139Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

140Cours de Reconnaissance des Formes– Catherine Achard

Loi normale mono variable (estimation paramétrique)

Elle est définie par :

𝑝 𝑥 = 𝒩( 𝑥 𝜇, 𝜎) =1

2𝜋𝜎𝑒−

𝑥−𝜇 2

2𝜎2

Et : 𝔼 𝑥 = 𝜇 et 𝑣𝑎𝑟 𝑥 = 𝜎2

L’estimation du maximum de vraisemblance conduit à:

𝜇 =1

𝑁 𝑖=1𝑁 𝑥𝑖 et 𝜎2 =

1

𝑁 𝑖=1𝑁 𝑥𝑖 − 𝜇 2

Estimation paramétrique

141Cours de Reconnaissance des Formes– Catherine Achard

Loi normale multi variables (estimation paramétrique)

Pour des données x de dimension n , elle est définie par :

𝑝 𝑥 = 𝒩( 𝑥 𝜇, Σ) =1

2𝜋 𝑛/2 Σ 1/2𝑒−

12

2𝑥−𝜇 𝑇Σ−1 𝑥−𝜇

Où 𝜇 est un vecteur de dimension 𝑛 et Σ une matrice de dimension 𝑛x 𝑛.

On a alors :

𝔼 𝑥 = 𝜇 et cov 𝑥 = 𝔼 𝑥 − 𝔼 𝑥 𝑥 − 𝔼 𝑥 𝑇 = Σ

L’estimation du maximum de vraisemblance conduit à:

𝜇 =1

𝑁 𝑖=1𝑁 𝑥𝑖 et Σ =

1

𝑁 𝑖=1𝑁 𝑥𝑖 − 𝜇 𝑥𝑖 − 𝜇 𝑇

Σ est la matrice de covariance. Mais que représente-t-elle

Estimation paramétrique

142Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

143Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

144Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

145Cours de Reconnaissance des Formes– Catherine Achard

Estimation paramétrique

146Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Introduction

Estimation non paramétriques des probabilités

Histogrammes

Estimation par noyaux

Estimation paramétrique des probabilités

Estimation du maximum de vraisemblance

Loi de Bernouilli

Loi binomiale

Loi uniforme

Loi normale

Mixture de gaussiennes, algorithme E.M

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

147Cours de Reconnaissance des Formes– Catherine Achard

Mixture de gaussiennes (estimation paramétrique)

Centaines densités de probabilités ne peuvent pas

être modélisées par une gaussienne. On peut alors

utiliser une mixture de gaussiennes (somme

pondérée de gaussiennes)

Images issue de Pattern Recognition and machine learning – M. Bishop - 2007

Estimation paramétrique

148Cours de Reconnaissance des Formes– Catherine Achard

Mixture de gaussiennes (estimation paramétrique)

De manière plus formelle,

𝑝 𝑥 = 𝑘=1𝐾 𝜋𝑘 𝒩( 𝑥 𝜇𝑘 , Σ𝑘 )

Avec 0 ≤ 𝜋𝑘 ≤ 1 et 𝑘=1𝐾 𝜋𝑘 = 1

Mais comment, à partir d’un ensemble d’échantillons générés à

partir de , 𝑝 𝑥 estimer les paramètres 𝜋𝑘 , 𝜇𝑘 𝑒𝑡 Σ𝑘?

Habituellement, on utilise le maximum de vraisemblance. Ici,

cette méthode n’aboutit pas à une formulation analytique on

utilise une approche numérique appelée ‘Expectation

Maximization’ ou ‘EM’

Estimation paramétrique

149Cours de Reconnaissance des Formes– Catherine Achard

Mixture de gaussiennes (estimation paramétrique)

Idée : ajouter une variable cachée ℎ𝒊𝒌 (non observable) précisant la

probabilité d’appartenance de l’exemple 𝒙𝒊 à la gaussienne 𝒌.

Initialisation : Initialiser de manière aléatoire les paramètres 𝜋𝑘 , 𝜇𝑘 𝑒𝑡 Σ𝑘

Étape E : On utilise les paramètres courants des gaussiennes pour

estimer l’appartenance de chaque exemple 𝑥𝑖 à chaque

gaussienne 𝐺𝑘 :

ℎ𝑖𝑘 =𝒩( 𝑥𝑖 𝜇𝑘 , Σ𝑘 )𝜋𝑘

𝑗𝒩( 𝑥𝑖 𝜇𝑗 , Σ𝑗 )𝜋𝑗

Étape M : connaissant la variable cachée (appartenance), ré-estimer les paramètres du modèle afin de maximiser lavraisemblance:

𝜇 𝑘 = 𝑖 ℎ𝑖𝑘𝑥𝑖

𝑖 ℎ𝑖𝑘Σ 𝑘 =

𝑖 ℎ𝑖𝑘 𝑥𝑖−𝜇𝑘 𝑥𝑖−𝜇𝑘𝑇

𝑖 ℎ𝑖𝑘𝜋 𝑘 = 𝑖 ℎ𝑖𝑘 et 𝑘 𝜋 𝑘 = 1

Itérer E+M jusqu’à convergenceDémo

EMclassique.m

Estimation paramétrique

150Cours de Reconnaissance des Formes– Catherine Achard

Mixture de gaussiennes (estimation paramétrique)

Comment déterminer le nombre de gaussiennes

On va rechercher à avoir une vraisemblance très grande :

𝐿 𝜃 𝑥 =

𝑖=1

𝑁

𝑝(𝑥𝑖) =

𝑖=1

𝑁

𝑘=1

𝐾

𝜋𝑘 𝒩( 𝑥 𝜇𝑘 , Σ𝑘 )

Problème :

Plus il y aura de gaussiennes, plus la vraisemblance sera grande

Pénalisation par la complexité (nombre de gaussiennes 𝑲)

Plus il y aura de données (𝑵 ), plus on peut se permettre degaussiennes

Bayesian Information Criterion (BIC) à minimiser :

𝐵𝐼𝐶 𝐾 = − ln 𝐿 𝜃 𝑥 +𝐾

2ln(N)

Estimation paramétrique

151Cours de Reconnaissance des Formes– Catherine Achard

Critère BICdonnées

Nombre de lois

Mixture de gaussiennes (estimation paramétrique)

Critère BIC

Estimation paramétrique

152Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classificationgénératives/discriminatives

Méthode de régression

153Cours de Reconnaissance des Formes– Catherine Achard

Qualité de la base de données

Plusieurs problèmes apparaissent:

Données inadaptées

Données aberrantes (outliers)

Données manquantes

157Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Matrice de confusion

Taux de bonne classification avec et sans cout

Courbe ROC

Méthodes de classificationgénératives/discriminatives

Méthode de régression

158Cours de Reconnaissance des Formes– Catherine Achard

Performances d’un classificateur

En RdF, 3 bases :

-Une base de référence ou d’apprentissage utilisée pourapprendre le classificateur

-Une base de validation pour déterminer les paramètres duclassifieur

-Une base de test : exemples jamais vus au préalable pourévaluer le classificateur

Pourquoi ?

159Cours de Reconnaissance des Formes– Catherine Achard

critères de rejet

étude des

confusions

facteur de

qualité

% formes bien classées

% formes mal classées

% formes non classées

En fonction des statistiques sur la base de test, on va pourvoir

définir:

Performances d’un classificateur

160Cours de Reconnaissance des Formes– Catherine Achard

Matrice de confusion :

1 2

1

2

décision

étiquette

e22 = Nb d’exemples

réellement 2 étiquetés 2

e12 = Nb d’exemples

réellement 1 étiquetés 2

e21 = Nb d’exemples

réellement 2 étiquetés 1

e11 = Nb d’exemples réellement 1 étiquetés 1

Performances d’un classificateur

161Cours de Reconnaissance des Formes– Catherine Achard

étiquette

1 2

1 90 6

2 20 104

décision

ExerciceQuel est le nombre d’exemples de la base de test ?

Que représente le chiffre 20 ?

Que représente le chiffre 104 ?

Quel est le taux de bonne reconnaissance?

Performances d’un classificateur

162Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Matrice de confusion

Taux de bonne classification avec et sans cout

Courbe ROC

Méthodes de classificationgénératives/discriminatives

Méthode de régression

163Cours de Reconnaissance des Formes– Catherine Achard

Taux de bonne classification sans coûts

Sans rejet

Taux de bonne classification

Taux d’erreur

Avec rejet

Taux de rejet

Taux de bonne classification

Taux d’erreur1a aTe Tb Tr

Nb d'exemples bien classés

Nb d'exemplessTb

Nb d'exemples non classés

Nb d'exemplesTr

1s sTe Tb

Performances d’un classificateur

𝑇𝑏𝑎 =Nb exemples bien classés

Nb exemples=

164Cours de Reconnaissance des Formes– Catherine Achard

Taux de bonne classification

Problème :

Il s’agit d’une mesure faible qui ne tient pas compte de

la distribution des classes

Exemple :En diagnostic médical, très peu de personnes sont

malades (5%?). On a donc des taux très bons en disant

que la personne est saine. Or, ce que l’on souhaite, c’est

ne pas rater ces 5% et donc, associer un mauvais taux

au classificateur qui dirait toujours ‘personne saine’.

Exemple sur 100 personnes

malade sain

malade 0 5

sain 0 95Tbs=95%

Performances d’un classificateur

165Cours de Reconnaissance des Formes– Catherine Achard

Taux de bonne classification

Solution :On tient compte de la répartition des classes et on construit une

matrice de confusion normalisée

1 2

1

2

décision

étiquette

e11/N1 e12/N1

e21/N2 e22/N2

N1 : Nombre d’exemples de la classe 1

N2 : Nombre d’exemples de la classe 2

Performances d’un classificateur

166Cours de Reconnaissance des Formes– Catherine Achard

Le nouveau taux de bonne classification devient

Où eii est le nombre d’exemple de la classe i classés i et Nc est le

nombre de classes

Et le nouveau taux d’erreur :

Exemple du médecin :Matrice de confusion normalisée

1

/Nc

ii

i i

etb Nc

N

e12/N1

e22/N2

1

1/ 1

Ncii

i i

ete Nc tb tr

N

tb=0.5

te=0.5

Taux de bonne classification sans coûts

malade sain

malade 0 1

sain 0 1

Performances d’un classificateur

167Cours de Reconnaissance des Formes– Catherine Achard

Problème 2 : Les performances dépendent des applications.

Exemple : en surveillance médicale, on préfère détecter à tortdes maladies plutôt que de risquer d’en laisser passer on

admet beaucoup de fausses alarmes mais pas de manque de

détection

On introduit une matrice des coûts

Performances d’un classificateur

168Cours de Reconnaissance des Formes– Catherine Achard

Taux de bonne classification avec coûts

1 2

1

2

décisionétiquette

Coût 1,1 Coût 1,2

Coût 2,1 Coût 2,2

Matrice des coûts:

Le taux de classification devient :

1

/

ii ii ij ijci j

i i

e Cout e Cout

tb NcN

Problème :Comment définir les coûts

???

Certains coûts peuvent (et doivent être négatifs)

Performances d’un classificateur

169Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Matrice de confusion

Taux de bonne classification avec et sans cout

Courbe ROC

Méthodes de classificationgénératives/discriminatives

Méthode de régression

170Cours de Reconnaissance des Formes– Catherine Achard

Comment comparer plusieurs classificateurs indépendamment du seuil ?

Problèmes à 2 classes

Trouvé par le classificateur

+ -

réel + TP FN

- FP TN

On définit les :

Vrai Positif (True Positive)

Vrai Négatif (True Négatif)

Faux Négatif (False Négatif)

Faux Positif (False Positif)

Performances d’un classificateur

171Cours de Reconnaissance des Formes– Catherine Achard

Négatifs

Positifs

TN

TP

FN FP

Performances d’un classificateur

Comment comparer plusieurs classificateurs indépendamment du seuil ?

Problèmes à 2 classes

172Cours de Reconnaissance des Formes– Catherine Achard

Courbe ROC (Receiver Operating Characteristic )Pour des problèmes binaires

étiquette

+ -

+ TP FN

- FP TN

décision Vrai Positif (TP)

Vrai Négatif (TN)

Faux Négatif (FN)

Faux Positif (FP)

Sensibilité Parmi les positifs de la base, % de correctsTP

TP FN

parmi les négatifs de la base, % de correctsTN

SpécificitéFP TN

Un bon classificateur devra être

sensible : détecter les positifs

spécifique : ne pas détecter aussi les négatifs

Généralement, plus un classificateur est sensible, moins il est

spécifique et vice versa

Performances d’un classificateur

173Cours de Reconnaissance des Formes– Catherine Achard

Courbe ROC (Receiver Operating Characteristic ) :

Sensibilité = f(1-spécificité)

Sensibilité Parmi les positifs de la base, % de correctsTP

TP FN

parmi les négatifs de la base, % de correctsTN

SpécificitéFP TN

1-spécificité

Se

nsi

bili

Courbe Roc

Point

idéal

Toutes les courbes ROC

passent par l’origine et

par le point (1,1)

Performances d’un classificateur

174Cours de Reconnaissance des Formes– Catherine Achard

Cas multi-classes

Matrice de confusion:

Trouvé par le classificateur

réel C0 C1 C2

C0 70 11 35

C1 17 73 8

C2 45 5 53

Somme des éléments sur la diagonaleTaux de reconnaissance=

Somme des éléments

Performances d’un classificateur

175Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

176Cours de Reconnaissance des Formes– Catherine Achard

3 approches différentes (Bishop 2007):

• Approche générative

• Approche discriminative

• Fonction discriminante

Méthodes génératives/discriminatives

177Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Approche générative : déterminer les densités de probabilités conditionnelles 𝑝(𝑥|𝐶𝑘) et les densités de probabilités a priori 𝑝(𝐶𝑘) pour

chaque classe individuellement. Puis utiliser le théorème de Bayes :

𝑝(𝐶𝑘|𝑥) =𝑝(𝑥|𝐶𝑘)𝑝(𝐶𝑘)

𝑝(𝑥)Où le dénominateur est un terme de normalisation :

𝑝(𝑥) =

𝑘

𝑝(𝑥|𝐶𝑘)𝑝(𝐶𝑘)

Connaissant 𝑝(𝐶𝑘|𝑥) , il est facile de trouver la classe de 𝑥.

Cette approche est dite générative car, connaissant 𝑝(𝑥|𝐶𝑘), il est facile de

générer des données dans l’espace des paramètres

Approche discriminative : Déterminer directement 𝑝(𝐶𝑘|𝑥) et décider de la

classe

Fonction discriminante: trouver une fonction 𝑓(𝑥) reliant directement les

données aux classes. Ex : pour un problème a deux classes, 𝑓(𝑥) est une

fonction à valeur binaire tq 𝑓(𝑥) = 0 pour la première classe et 𝑓(𝑥) =1 pour la seconde (aucune notion de probabilité)

Méthodes génératives/discriminatives

178Cours de Reconnaissance des Formes– Catherine Achard

Raisonnons sur un exemple : on souhaite déterminer la langue parlée par

une personne.

Approche générative : on apprend chaque langage puis on détermine à quel langage la

parole appartient (peut fonctionner avec une seule langue pour savoir si la personne parle

français ou non).

Approche discriminative: on apprend les différences linguistiques entre les langages,

sans apprendre le langage. Beaucoup plus simple !

Méthodes génératives/discriminatives

179Cours de Reconnaissance des Formes– Catherine Achard

Avantage/inconvénient des 3 approches

Approche générative• 𝑝(𝑥) est estimée. On peut considéré 𝑝(𝑥) comme la probabilité que 𝑥

soit bien modélisé par le modèle. Ceci permet de faire du rejet.

• 𝑝(𝑥|𝐶𝑘) peut être utilisée pour générer des données

• Permet à un système d’utiliser une seule classe. Ex : la teinte chaire

• Trouver 𝑝(𝑥|𝐶𝑘) pour chaque classe est très couteux en temps de calcul,

surtout quand 𝑥 est de grande dimension

• Nécessite une grande base de données, surtout quand 𝑥 est de grande

dimension

Approche discriminative• Il est beaucoup plus rapide de déterminer 𝑝(𝐶𝑘|𝑥) car la dimension de

𝐶𝑘 est bien souvent beaucoup plus faible que celle de x

Fonction discriminante• Modélisation et décision sont combinées dans un seul apprentissage

• 𝑝(𝐶𝑘|𝑥) n’est pas estimé. On ne pourra donc (i) ni faire du rejet; (ii) ni

combiner plusieurs classificateurs; (iii) ni compenser différentes

probabilités a priori des classes

Méthodes génératives/discriminatives

180Cours de Reconnaissance des Formes– Catherine Achard

Méthodes génératives Méthodes discriminatives

Classification bayésienne K plus proches voisins

Modélisation gaussienne Arbres de décision

GMM (Gaussian Mixture

Model)

Régression linéaire

HMM (Hidden Markov Model) SVM (Support Vector Machine

Réseaux bayésiens RVM (Relevance Vector

Machine)

MRF (Markov Random Fields) Réseaux de neurones

CRF (Conditional Random

fields )

Méthodes génératives/discriminatives

181Cours de Reconnaissance des Formes– Catherine Achard

Exemple : classification binaire

(Computer vision: models, learning and inference, Simon J.D. Prince 2012)

On souhaite estimer la teinte chaire (0/1) à partir de la quantité de rouge

𝑥 est une variable continue (quantité de rouge)

2 classes : teinte chaire ou non

Approche générative :• On modélise 𝑝(𝑥|𝐶0) et 𝑝(𝑥|𝐶1) par des gaussiennes (𝜇0, 𝜎0 , 𝜇1 , 𝜎1)

• On modélise 𝑝(𝑥|𝐶0) par une loi de Bernouilli de paramètre 𝜆• On utilise les données d’apprentissage ( 𝑥𝑖 , 𝐶𝑖 ) pour estimer les

paramètres (𝜇0, 𝜎0 , 𝜇1 , 𝜎1, 𝜆)

• On estime 𝑝(𝐶0|𝑥) et 𝑝(𝐶1|𝑥) en utilisant Bayes

Approche discriminative:• On modélise 𝑝(C|𝑥) par une loi de Bernouilli dont le paramètre 𝜆

dépend de x. Comme 0 < 𝜆 < 1 , on pose 𝜆 =1

1+exp(−Φ0−Φ1𝑥)et donc,

𝑝 C 𝑥 = Bern1

1+exp (−Φ0−Φ1𝑥)

• On utilise les données d’apprentissage ( 𝑥𝑖 , 𝐶𝑖 ) pour estimer les

paramètres (Φ0, Φ1) de 𝑝(𝐶0|𝑥) et 𝑝(𝐶1|𝑥) (4 paramètres)

• Pour un 𝑥 donné, on estime directement 𝑝(𝐶0|𝑥) et 𝑝(𝐶1|𝑥)

Méthodes génératives/discriminatives

182Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

183Cours de Reconnaissance des Formes– Catherine Achard

Données de départ :

Base de référence : ensemble de vecteurs de caractéristiques Xi et leurclasse Ci

Objectif :

Base de test : pour un nouveau vecteur X, trouver sa classe

Méthode :

Calculer la distance entre X et tous les exemples de la base de référence

Déterminer le vecteur le plus proche.

Affecter à X la classe de ce vecteur

Méthode discriminative : 1ppv

184Cours de Reconnaissance des Formes– Catherine Achard

Vecteurs de la

classe C1

Vecteurs de la

classe C2𝑥 ?

Calcul de distanceEn dimension 2, chaque exemple 𝑥𝑖 est caractérisé par un

vecteur de dimension 2 [𝑥 𝑦]𝑇 et est donc représenté dans le

plan :

𝑥

𝑦

Méthode discriminative : 1ppv

185Cours de Reconnaissance des Formes– Catherine Achard

Calcul de distance

En dimension 3, chaque exemple 𝑥𝑖 est caractérisé par un vecteur de dimension

3 : [𝑥 𝑦 𝑧]𝑇 et est donc représenté dans l’espace :

Vecteurs de la

classe C2Vecteurs de la

classe C1

𝑥 ?

Méthode discriminative : 1ppv

186Cours de Reconnaissance des Formes– Catherine Achard

Forme

Vecteur de

caractéristiques

de dimension 𝑛

Calcul de distance

En dimension n, chaque exemple 𝑥𝑖 est caractérisé par un vecteur de

dimension n et peut être représenté dans un système de dimension 𝑛 :

Méthode discriminative : 1ppv

187Cours de Reconnaissance des Formes– Catherine Achard

Signification géométrique

Les classes sont définies par

la réunion des domaines

d’influence des références

La résolution spatiale des

frontières est liée au nombre

de références et à leur

densité

Méthode discriminative : 1ppv

188Cours de Reconnaissance des Formes– Catherine Achard

Avantages :

Pas d’hypothèses

Simple à mettre en œuvre

Incrémental

tend vers l’erreur optimale

Inconvénients :

Quantité de calculs quasi-proportionnelle aunombre d’exemples

Pas d’extraction d’information utile

Méthode discriminative : 1ppv

189Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

190Cours de Reconnaissance des Formes– Catherine Achard

Algorithme des k ppv (plus proches voisins)

1. Calculer la distance entre 𝑥 et tous les exemples de la

base de référence

2. Déterminer les 𝑘 vecteurs les plus proches

Puis classe majoritaire

on peut faire du rejet

Méthode discriminative : Kppv

191Cours de Reconnaissance des Formes– Catherine Achard

-1 0 1 2 3 4 5 6 7-1

0

1

2

3

4

5

6

7

-1 0 1 2 3 4 5 6 7-1

0

1

2

3

4

5

6

7

k = 1, disp = 0.3 k = 1, disp = 0.7

Méthode discriminative : Kppv

192Cours de Reconnaissance des Formes– Catherine Achard

-1 0 1 2 3 4 5 6 7-1

0

1

2

3

4

5

6

7

-1 0 1 2 3 4 5 6 7-1

0

1

2

3

4

5

6

7

k = 11

disp = 0.7

k= 21

disp = 0.7

Méthode discriminative : Kppv

194Cours de Reconnaissance des Formes– Catherine Achard

En testant, il faut alors utiliser une nouvelle base : une base de

validation pour ne pas employer la base de référence pourmettre au point le classificateur

3 bases :

-Base de référence où sont stockés les exemples utilisés dansl’algorithme des k-ppv

-Base de validation qui sera utilisée pour optimiser le paramètrek

-Base de test qui évaluera sur des données jamais observées aupréalable les performances du classificateur

Comment choisir k ?

Méthode discriminative : Kppv

195Cours de Reconnaissance des Formes– Catherine Achard

D\Donnees\Doc-word\Enseignement\Rdf\codes

rdf\codes\demo_ecrit

ppv_char.m

Démo

Démo

Ppv.m

Démo

Méthode discriminative : Kppv

197Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

198Cours de Reconnaissance des Formes– Catherine Achard

2 3 4 4 5 6 6 7 0 0 1

3

2 3 4 5 6 6 7 0 1

Comment calculer la distance entre les deux chaines constituées de

suites de symboles de longueur différentes ?

Lorsque les exemples sont codés de manière structurelle, par une suite

de symbole, la distance euclidienne n’a aucun sens.

On fait alors appel à la distance d’édition.

Par exemple, pour un codage de Freeman : 8 états

0

1

2

3

4

56

7

Méthode par discrimination : Kppv

199Cours de Reconnaissance des Formes– Catherine Achard

Comparaison de chaînes de longueurs éventuellementdifférentes

Exemple : x = aabcb y = aababd

Déterminer la suite des transformations élémentaires pourpasser de x à y

Supprimer un symboleInsérer un symboleChanger un symbole ( S + I)

- affecter un coût à chaque transformation

distance = somme des coûts

Méthode par discrimination : Kppv

200Cours de Reconnaissance des Formes– Catherine Achard

Plusieurs chemins pour passer d’une chaîne à l’autre

Graphe orienté et valué

Choix : chemin de coût minimum

abcb

aabcb

aabcbd

aabab

aababd

ababdabab

arcs sommets

poids de l’arcS

I

C

I

C

I

C

I

aabcb

Méthode par discrimination : Kppv

201Cours de Reconnaissance des Formes– Catherine Achard

On note C(u,v) le coût pour changer u en v et $ l’élémentneutre

- x.$ = $.x = x pour tout mot x

- Insertion de u = substitution de $ par u C($,u)

- Suppression de u = substitution de u par $ C(u,$)

- Changement

Matrice des coûts : C(u,u) = 0 et C(u,v) > 0

(permet de corriger les problèmes de segmentation si ladifférence de coût est faible pour une erreur donnée)

Méthode par discrimination : Kppv

202Cours de Reconnaissance des Formes– Catherine Achard

Calcul par récurrence des distances cumulées D(i,j)

Matrice des coûts C() à initialiser a priori

X = a1a2a3…an

Y = b1b2b3…bm

X(i) = a1a2a3…ai

Y(j) = b1b2b3…bj

x(0) = y(0) = $

D(0,0) = d($,$) = 0

D(i-1,j) + C(ai,$)

D(i,j) = min D(i,j-1) + C($,bj)

D(i-1,j-1) + C(ai,bj)

Méthode par discrimination : Kppv

203Cours de Reconnaissance des Formes– Catherine Achard

Discrétisation

(ex : 8 directions)

Poids du codage

très important

Amplification du

bruit par le codage

Approche moins

structurelle

Plus grande

complexité

Codage

des vecteurs

Attributs

numériques

On peut aussi avoir des suites de caractères numériques :

programmation dynamique

D(i-1, j) + C(ai,bj)

D(i,j) = min D(i, j-1) + C(ai,bj)

D(i-1, j-1) + 2C(ai,bj)

C(ai,bj) = || bj – ai ||

Méthode par discrimination : Kppv

204Cours de Reconnaissance des Formes– Catherine Achard

Application à la saisie de mot sur les téléphones portables :

semaine ?

Drmain demain ?

demains ?

Quelle matrice de

cout ?

Méthode par discrimination : Kppv

205Cours de Reconnaissance des Formes– Catherine Achard

2 solutions

Réduction de la dimension de chaque exemple

ACP

LDA

Réduction de taille de la base de référence

On ne représente plus chaque classe que par sa

moyenne

Génération de prototypes : LVQ, K-moyennes

Dendrogramme

Dilemme robustesse/accélération

Accélération des k-PPV

Méthode discriminative : Kppv

206Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

207Cours de Reconnaissance des Formes– Catherine Achard

Les classes sont représentées par leur moyenne

2 solutions :

• On ne conserve que les moyennes (centres) 𝜇𝑐 des classes On calcule les distances euclidiennes de(𝑥𝑖 , 𝜇𝑐 ) entre l’exemple

𝑥𝑖 et tous les centres 𝜇𝑐 L’exemple est classé à la classe de la distance la plus faible

• On conserve les moyennes 𝜇𝑐 et les matrices de covariance Σ𝑐 de chaque

classe

On calcule les distances de Mahalanobis dM(𝑥𝑖 , c) entre l’exemple

𝑥𝑖 exemple et les classes c avec

𝒅𝑴 𝒙𝒊, 𝒄 = (𝒙𝒊 − 𝝁𝒄 )𝑻𝜮𝒄

−𝟏(𝒙𝒊 − 𝝁𝒄 )

L’exemple est classé à la classe cde la distance la plus faible

Rq : Si Σ=Identité, on retrouve la distance euclidienne

Méthode par discrimination : Kppv

208Cours de Reconnaissance des Formes– Catherine Achard

Comparaison – distance euclidienne – distance de Mahalanobis

Les deux points A et B

sont à la même distance

euclidienne de O

Pas logique

Les deux points A et B

sont à la même distance

de Mahalanobis de O

http://www.aiaccess.net/French/Glossaires

Démo

mahal.M

Méthode par discrimination : Kppv

209Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

210Cours de Reconnaissance des Formes– Catherine Achard

Sélection des références LVQ

LVQ : Learning Vector Quantization

Méthode supervisée, itérative :

Génération d’un ensemble de prototypes quasi optimaux

Minimise la variance intra-classe

Maximise variance inter-classe

1.Initialisation aléatoire des prototypes (noyau)

2.Pour chaque vecteur x, trouver le prototype p le plus proche

Si p et X sont de la même classe, rapprocher p de x

sinon, éloigner p de X

p(t+1) = p(t) a(t)[X – p(t)]

où a(t) : pas d’apprentissage

3.Retour en 2 ou arrêt

Méthode par discrimination : Kppv

211Cours de Reconnaissance des Formes– Catherine Achard

LVQ, Itération 1 LVQ, Itération 2

LVQ, Itération 3 LVQ, Itération 10

Méthode par discrimination : Kppv

212Cours de Reconnaissance des Formes– Catherine Achard

LVQ, Itération 1 LVQ, Itération 2

LVQ, Itération 10

Méthode par discrimination : Kppv

213Cours de Reconnaissance des Formes– Catherine Achard

LVQ, Itération 1

LVQ, Itération 10

Méthode par discrimination : Kppv

214Cours de Reconnaissance des Formes– Catherine Achard

LVQ, Itération 1 LVQ, Itération 2

LVQ, Itération 3 LVQ, Itération 10

Méthode par discrimination : Kppv

215Cours de Reconnaissance des Formes– Catherine Achard

Démo

Lvq.m

Initialisation aléatoire :

Pb n°1 : Nombre de prototypes

performances

Pb n°2 : Position des prototypes

convergence

Méthode par discrimination : Kppv

Sélection des références LVQ

216Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

217Cours de Reconnaissance des Formes– Catherine Achard

Génération de prototypes: k-moyennes (k-means)

Méthode non supervisée, itérative. Travaille

indépendamment sur chaque classe :

Initialisation aléatoire des prototypes p1,…, pk

Affecter chaque exemple x au prototype pi le plus

proche

Calculer les nouveaux prototypes : moyenne des

exemples de « leur » groupe

Retour en 2 si pas idempotence

Pb : nombre de prototypes optimaux ?

Démo

Kmeans.m

Méthode par discrimination : Kppv

218Cours de Reconnaissance des Formes– Catherine Achard

it=0 it=1

it=2 it=3

Génération de prototypes: k-moyennes (k-means)

Méthode par discrimination : Kppv

219Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

220Cours de Reconnaissance des Formes– Catherine Achard

Dendrogramme

Méthode non supervisée.

Travaille indépendamment sur chaque classe

Classification ascendante hiérarchique

Regroupement des données suivant un

critère de distance

Méthode par discrimination : Kppv

221Cours de Reconnaissance des Formes– Catherine Achard

Méthode par discrimination : Kppv

Dendrogramme

222Cours de Reconnaissance des Formes– Catherine Achard

Détermination des prototypes : coupure dans la

hiérarchie

7 prototypes

3 prototypes

Méthode par discrimination : Kppv

Dendrogramme

223Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

224Cours de Reconnaissance des Formes– Catherine Achard

Exemple : arbre de décision pour décider si on regarde la TV ou si on vase promener

Méthode discriminative (arbre de décision)

Quel temps ?

Température ? Voisin présent ?

TV

PromenadeTVTV Promenade

couvert soleil

pluie

<10 >10 oui non

225Cours de Reconnaissance des Formes– Catherine Achard

Un arbre de décision permet de classer chaque exemple avec un

ensemble de règles.

Manipulation facile de données symboliques.

Une suite de décisions permet de partitionner l’espace en régions

homogènes en terme de classe

La difficulté consiste à créer l’arbre à partir de la base d’exemple

étiquetée

Méthode discriminative (arbre de décision)

226Cours de Reconnaissance des Formes– Catherine Achard

On dispose d’une base de références composée:- des réponses au questions : vecteurs de paramètres

- de la classe associée à chaque exemple

Problème :Trouver l’ordre le plus cohérent dans l’agencement des

questions: il n’y a pas forcement besoin de tester tous les

paramètres à chaque fois

Méthode discriminative (arbre de décision)

227Cours de Reconnaissance des Formes– Catherine Achard

Initialisation : tous les exemples sont dans le même nœud X

Procédure construit_arbre(X)

Si X est une feuille Pb1

o Affecter une classe à X Pb2

Sinon

o Choisir la meilleure question et partitionner X en X1 et X2 Pb3

o Construit_arbre(X1)

o Construit_arbre(X2)

Fin si

Méthode discriminative (arbre de décision)

228Cours de Reconnaissance des Formes– Catherine Achard

Cet algorithme est très général. Plusieurs algorithmes vont en

découler en fonction :

1. De la façon de décider quand un nœud constitue une

feuille (Pb1)

2. De la façon d’affecter une classe à une feuille (Pb2)

3. De la façon de choisir la meilleure question (Pb3)

Méthode discriminative (arbre de décision)

229Cours de Reconnaissance des Formes– Catherine Achard

Problème 1:On décide qu’un nœud constitue une feuille :

Quand tous les exemples du nœud appartiennent à la

même classe

Quand tous les exemples du nœud ont le même vecteur

de paramètre

Quand le nombre d’exemples du nœud est inférieur à un

seuil

Quand une classe est largement majoritaire dans le nœud

En contrôlant les performances en généralisation sur une

base de validation

Méthode discriminative (arbre de décision)

230Cours de Reconnaissance des Formes– Catherine Achard

Problème 2:On affecte au nœud la classe majoritaire de ses exemples

Méthode discriminative (arbre de décision)

231Cours de Reconnaissance des Formes– Catherine Achard

Problème 3:

Comment choisir la meilleure question pour partitionner X ?

On utilise la théorie de l’information.Entropie sur X conditionnée par q

H(X/q) : quantité d’information contenue dans X si on

connaît q.

On va rechercher la question q qui minimise cette quantitéd’information (on voudrait que q nous amène toutes les

connaissances)

2

,

( / ) ( , ) log ( ( / ))u v

H X q p X u q v p X u a v

Méthode discriminative (arbre de décision)

232Cours de Reconnaissance des Formes– Catherine Achard

Dans le cas de données discrètes multi-variées pouvantprendre plus de 2 valeurs (rouge, vert bleu, jaune,…), on

étend le calcul de l’entropie conditionnelle. On pourra

alors être amené à avoir des nœuds non binaires

Dans le cas de variables continues, on va estimer pourchaque variable le seuil qui sépare au mieux les

exemples. On se ramène ainsi à un cas binaire.

Méthode discriminative (arbre de décision)

233Cours de Reconnaissance des Formes– Catherine Achard

Branches peu représentatives qui nuisent à la généralisation

générées par des exemples atypiques

On essaie de les supprimer par élagage en utilisant une

base de validation

Construction d’une forêt d’arbre aléatoire

Méthode discriminative (arbre de décision)

234Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

235Cours de Reconnaissance des Formes– Catherine Achard

𝑝(𝐶𝑘) : probabilité a priori (probabilité de la classe 𝐶𝑘 avantd’observer x)

𝑝(𝑥|𝐶𝑘) : vraisemblance des observations

𝑝(𝑥) : constante de normalisation: 𝑝(𝑥) = Σ 𝑝(𝑥|𝐶𝑘) 𝑝(𝐶𝑘)

𝑝(𝐶𝑘|𝑥) : probabilité a posteriori

Si le but est de minimiser la chance d’affecter 𝑥 à une mauvaiseclasse, intuitivement, on choisit la classe avec la plus grandeprobabilité a posteriori 𝑝(𝐶𝑘|𝑥). Cette décision est correcte maisd’autres décisions peuvent être prises

On dispose d’un exemple 𝑥 que l’on souhaite classer dans une des classes 𝐶𝑘

𝑝 𝐶𝑘 𝑥 =𝑃 𝑥|𝐶𝑘 𝑃(𝐶𝑘)

𝑃(𝑥)

Méthode générative : classification bayésienne

236Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

237Cours de Reconnaissance des Formes– Catherine Achard

Méthode générative : classification bayésienne

Décision par minimisation de l’erreur de classification

Dans un problème à 𝐾 classes, l’erreur de classification est donnée

par:

𝑃𝑒𝑟𝑟𝑒𝑢𝑟 = 1 − 𝑘=1𝐾 𝑝(𝑑é𝑐𝑖𝑑𝑒𝑟 𝑥 ∈ 𝐶𝑘 , 𝑥 ∈ 𝐶𝑘)dx

=1- 𝑘=1𝐾 𝑥 𝑎𝑓𝑓𝑒𝑐𝑡é à𝐶𝑘

𝑝(𝑥, 𝐶𝑘)dx

Pour minimiser 𝑃𝑒𝑟𝑟𝑒𝑢𝑟 il faut maximiser le second terme et donc

maximiser la valeur intégrée. On classera donc chaque exemple 𝑥à la classe avec le plus grand 𝑝(𝑥, 𝐶𝑘)

Or, 𝑝(𝑥, 𝐶𝑘)=𝑝(𝐶𝑘|𝑥)p(x)

Et comme 𝑝(𝑥) ne dépend pas de 𝑘,

on affecte 𝒙 à la classe qui maximise 𝒑(𝑪𝒌|𝒙)

238Cours de Reconnaissance des Formes– Catherine Achard

Méthode générative : classification bayésienne

Décision par minimisation d’un coût

Considérons une application médicale de détection de

cancer.

• Si un patient sain est diagnostiqué cancéreux, un stress et

d’autres examens complémentaires vont apparaitre

• Si un patient malade n’est pas diagnostiqué, les

conséquences sont beaucoup plus graves car la maladie

va continuer à évoluer

Les conséquences des erreurs ne sont pas les mêmes Introduction d’une matrice de coûts avec 𝐿𝑘𝑗, le coût

d’affecter un exemple de la classe 𝑗 à la classe 𝑘

Le coût total à minimiser va être donné par:

𝐶 = 𝑘 𝑗 𝑥 𝑎𝑡𝑡𝑟𝑖𝑏𝑢é à𝐶𝑘𝐿𝑘𝑗𝑝(𝑥, 𝐶𝑘) 𝑑𝑥

Or, comme précédemment, 𝑝(𝑥, 𝐶𝑘)=𝑝(𝐶𝑘|𝑥)p(x). Pour minimiser 𝐶, il faut minimiser 𝑘 𝐿𝑘𝑗𝑝(𝑥, 𝐶𝑘) pour tout 𝑥

On affecte x à la classe qui minimise 𝐤 𝐋𝐤𝐣𝐩(𝐱, 𝐂𝐤)

239Cours de Reconnaissance des Formes– Catherine Achard

Méthode générative : classification bayésienne

Décision avec rejet

Comme 𝑝(𝐶𝑘|𝑥) est connu, nous pouvons rejeter :

• les exemples tq la valeur maximale de 𝑝(𝐶𝑘|𝑥)<seuil

• les exemples qui ont leur deux plus grandes probabilités a

posteriori similaires

240Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroductionRappel sur les probabilitésEstimation des probabilitésQualité de la base de donnéesPerformance d’un classificateurMéthodes de classification génératives/discriminatives

Introduction

Méthode discriminative (K-ppv)1ppvKppvKppv et distance d’éditionDistance euclidienne et distance de Mahalanobis au centre des classesLVQK-moyennesDendrogramme

Méthode discriminative (arbre de décision)Méthode générative : classification bayésienne

IntroductionThéorie de la décisionEstimation des probabilités

Méthode de régression

241Cours de Reconnaissance des Formes– Catherine Achard

Classification

Une fois la règle de décision choisie, il reste à estimer

les vraisemblances de chaque classe p(x/Ck)

les probabilités a priori P(Ck)

Méthode générative : classification bayésienne

242Cours de Reconnaissance des Formes– Catherine Achard

Estimation des densités a priori

En l’absence d’informations particulières, les supposer

égales :

𝑝 𝐶𝑘 =1

𝐾où 𝐾 est le nombre de classes

Si l’échantillon d’apprentissage est représentatif, utiliser un

estimateur fréquentiel :

𝑝 𝐶𝑘 =𝑁𝑘

𝑁où 𝑁𝑘 est le nombre d’exemples de la classe 𝑘

et 𝑁 le nombre d’exemple total

Méthode générative : classification bayésienne

243Cours de Reconnaissance des Formes– Catherine Achard

Estimation de la vraisemblance

La vraisemblance de chaque classe Ck p(x/Ck) peut être estimée par

une des méthodes d’estimation de densité de probabilité introduiteprécédemment (estimation paramétrique ou non paramétrique)

Méthode générative : classification bayésienne

244Cours de Reconnaissance des Formes– Catherine Achard

Reconnaissance des formes et apprentissageIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

Méthode discriminative utilisant les KppV

Méthode générative

245Cours de Reconnaissance des Formes– Catherine Achard

Reconnaissance vs estimation

étiquette Variable continue

Reconnaître des

visages

Estimer la position de la têteΘ, ϕ

Exemples

Méthode de régression

246Cours de Reconnaissance des Formes– Catherine Achard

ESPACE DE DECISION

CONTINU

ESPACE DE

REPRESENTATION

OU

ESPACE DES PARAMETRES

Estimation

Méthode de régression

247Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

Méthode discriminative utilisant les KppV

Méthode générative

248Cours de Reconnaissance des Formes– Catherine Achard

Entrée : Une base de référence (vecteur de codage) associé à une variable

continue e (décision)

Sortie :Pour un exemple X inconnu, estimer la variable e.

Pour retrouver une estimation, on compare le descripteur de la forme

inconnue à ceux des exemples de la base.

L’estimation est faite en prenant la valeur e de l’exemple le plus

proche.

On peut aussi choisir de garder les K exemples les plus proches, puis

interpoler avec une moyenne ou une médiane des valeurs de e de

ces exemples

Méthode de régression

Méthode discriminative utilisant les KppV

249Cours de Reconnaissance des Formes– Catherine Achard

e=1.0

e=1.3

e=1.4

e=1.3

e=0.9

e=1.3

e=1.6

e=1.7

e=1.6

e=???

Méthode de régression

Méthode discriminative utilisant les KppV

250Cours de Reconnaissance des Formes– Catherine Achard

Exemple : Estimation de la courbure de la route à 18m

devant un véhicule

Méthode de régression

Méthode discriminative utilisant les KppV

251Cours de Reconnaissance des Formes– Catherine Achard

Orientation

gardée

Orientation

indésirable

Bande utile

10 mètres

26 mètres

Ligne de fuite

Méthode de régression

Méthode discriminative utilisant les KppV

252Cours de Reconnaissance des Formes– Catherine Achard

Ligne de fuite

Votes coté

gauche

26 mètres

10 mètres

Votes coté

droit

Méthode de régression

Méthode discriminative utilisant les KppV

253Cours de Reconnaissance des Formes– Catherine Achard

Méthode de régression

254Cours de Reconnaissance des Formes– Catherine Achard

Numéro d’image

Angle au volant

Méthode de régression

Méthode discriminative utilisant les KppV

255Cours de Reconnaissance des Formes– Catherine Achard

Base de 4900 images acquises sur un circuit

On partage la base en 2 : base de références et base de test

Pour chaque image test codage recherche des K codes les plus proches

dans la base de références K angles au volant

Puis moyenne ou médiane de ces valeurs

Taille du codage

Err

eu

r

mo

ye

nn

e

Méthode de régression

256Cours de Reconnaissance des Formes– Catherine Achard

Numéro d’image

Angle au volant réel et estimé à chaque image

Méthode de régression

257Cours de Reconnaissance des Formes– Catherine Achard

Introduction

Prétraitements et Codage

ClassificationIntroduction

Rappel sur les probabilités

Estimation des probabilités

Qualité de la base de données

Performance d’un classificateur

Méthodes de classification génératives/discriminatives

Méthode de régression

Méthode discriminative utilisant les KppV

Méthode générative

258Cours de Reconnaissance des Formes– Catherine Achard

Apprentissage sur la base d’exemple pour construire une fonction e=f(X) quiprédit les valeurs de e en des points arbitraires X non présents dans la base

d’entrainement.

Les données d’entrée X sont les vecteurs de paramètres (code) de dimension n.

La variable de sortie e est continue, de dimension n1<<n

Pour les modèles linéaires, la fonction est modélisée par une combinaison de

fonctions de base, et l’apprentissage sert à déterminer les coefficients de cette

combinaison.

Autre apprentissage : réseau de neurones

Attention à la complexité des modèles et au sur-apprentissage !

Méthode de régression

259Cours de Reconnaissance des Formes– Catherine Achard

0 1 1 2 2( ) ( ) ( ) ... ( ) K Ke X X X X

Cette équation n’implique pas que e est une combinaison linéaire

des données d’entrée X mais que e est une fonction linéaire des

paramètres que l’on veut estimer ωi

L’emploi des fonctions de base Φi introduit une non linéarité entre X

et e

Plusieurs fonctions de base possible.

Le plus classique : gaussiennes centrées sur les points

d’apprentissage (autant de fonctions de base que de points

d’apprentissage)

2

22( )iX X

i X e

Méthode de régression

260Cours de Reconnaissance des Formes– Catherine Achard

L’apprentissage consiste à rechercher les poids (ω) qui minimisent l’erreur au sens

des moindres carrés sur les données d’apprentissage :

En notant e=(e1, e2,…,eN)T

et

Le système peut s’écrire

Et a pour solution

1 0

( ) ( )N K

j k k j

j k

E w e w X

0 1 1 1 1

0 2 1 2 2

0 1

( ) ( ) ( )

( ) ( ) ( )

( ) ( ) ( )

K

K

N N K N

X X X

X X X

X X X

Φ

( )E w e w Φ

† † 1 où ( ) est la pseudo inverse de T Tw e Φ Φ

Des solutions non linéaires plus complexes existent:

-RVM

-…

Méthode de régression

Recommended