Université Paris 13/Younès Bennani Reconnaissance des Formes 1
Reconnaissance Statistique des Formes
2
Younès BENNANIExercice
µ
1= 1 0
!
"
# $
% , µ
2= 0
1
!
"
# $
% , µ
3= 2
2
!
"
# $
%
On considère dans l’espace 2-D un problème à 3 classes :
- Donner les expressions des fonctions de décision
- Donner les expressions des frontières entre les 3 classes
P C ( )
1= P C ( )
2= 1
4 , P C ( )
3= 1
2
= = 1 0
0 2
!
"
# $
%
&
2&
1, &
3= ! " # 1 0 0 1 $ %
Université Paris 13/Younès Bennani Reconnaissance des Formes 3
Bayes Classifier
Hypothèse de Multi-normalité
x x x
x x
x x x x
x
o o o
o o o o
o o
o o
l l
l l
l
l l
l l l
l l l
l
!1
"1
!2
"2
!3
"3
La fonction de décision est :
g
i( X ) = ! 1
2 (X ! µ
i)
t"
i!1
( X ! µ
i) ! n
2 ln 2 [ ] # ! 1
2 ln [ ] "
i+ ln [ P(C
i) ]
La frontière entre les classes :
g
ij( X ) = g
i( X) ! g
j( X)
Bayes Classifier
Hypothèse de Multi-normalité
x x x
x x
x x x x
x
o o o
o o o o
o o
o o
l l
l l
l
l l
l l l
l l l
l
!1
"1
!2
"2
!3
"3
Université Paris 13/Younès Bennani Reconnaissance des Formes 5
Bayes Classifier
Hypothèse de Multi-normalité
Exercice (corrigé)
La fonction de décision pour C1:
!
1= !
2= 2, 1
2 ln !
1= 1
2 ln !
2= 1 2 ln 2
!
3= 1, 1
2 ln !
3= 0
!
1"1
= !
2"1
= 1 0
0
12
#
$
% &
' ( , !
3"1
= 1 0
0 1
#
$ % &
'
g1(X)= !1 2
x1 x2
"
#
$ %
& ! 1 0
"
#
$ %
&
' ( )
* + ,
t 1 0
0 1/ 2
"
#
$ %
&
x1 x2
"
#
$ %
& ! 1 0
"
#
$ %
&
' ( )
* + , !1
2ln(2)+ln 1 4
"
# %
&
= !1
2
(
x1!1 x2)
" 10 1/ 20#
$ %
&
x1!1 x2
"
#
$ %
& ! 1
2ln(2)+ln 1 4
"
# %
&
= !1
x1!1
( )
2+ 1x22' * ! 5
ln(2)
Université Paris 13/Younès Bennani Reconnaissance des Formes 7
Les fonctions de décision :
g2(X)= !1
2 x12 + 1
2
(
x2 !1)
2"
#
$
% ! 5 2ln(2) g3(X)=!1
2
[ (
x1!2)
2+(
x2!2)
2]
!ln(2)g1(X)= !1
2
(
x1!1)
2 +1 2x22"
#
$
% ! 5 2ln(2)
Les frontières entre les 3 classes :
entre C1 et C2 g1 2(X)=g1(X)!g2(X)
=x1! x2 2 !1
4 =0
entre C1 et C3
entre C2 et C3
g1 3(X)=g1(X)!g3(X)
= x22
4 !2x2!x1+ 7!3ln(2)
2 = 0
g2 3(X)=g2(X)!g3(X)
= x12
4 !2x1! x2+ 7!3ln(2)
2 =0
Représentation graphique
-2 -1 0 1 2 3 4 5 6 7 8
-6 -4 -2 0 2 4 6 8
µ1
µ2
µ3
g1 2(X)
g1 3(X) g2 3(X)
Université Paris 13/Younès Bennani Reconnaissance des Formes 9
Notions de distances
Définir une distance entre un objet et une classe à partir de la distance entre objets (formes) :
Approche la plus simple et la plus intuitive en RdF.
Un élément appartient à une classe s'il est plus proche de cette classe que toutes les autres.
La distance dépend de la forme à traiter et des paramètres extraits.
x x x
x x
x x x x
x
oo o
o o o o
o o
o o
+ X
Définition d’une distance
E : ensemble de points,
Espace métrique réel s'il existe une fonction : d : ExE !
!
vérifiant :
1. " (x,y) # E2, x#y $ d(x,y) > 0, (séparabilité)
2. " x # E, d(x,x) = 0, (réflexivité)
3. " (x,y) # E2, d(x,y)=d(y,x), (symétrie)
4. " (x,y,z) # E3, d(x,z) $ d(x,y) + d(y,z). (inégalité triangulaire)
Université Paris 13/Younès Bennani Reconnaissance des Formes 11
Exemples de distances
Distance de Hamming
X =
{ }
xi i=1Kn = x1 x2M xn
!
"
#
# #
$
%
&
&
& Y =
{ }
yi i=1Knd1(X,Y)= xi!yi
i=1 n
"
d2(X,Y)=
(
xi! yi)
2i=1 n
"
dk(X,Y)= xi!yi i=1
n
"
# k
$
% &
' (
1 k
d!(X,Y)=maxi=1Knxi"yi Distance Euclidienne
Distance dk
Distance du maximum E : ensemble de points, (X,Y) # E2
Distances entre formes et classes
Plus la distance est petite, plus on admet que la ressemblance est grande.
x x x
x x
x x x x
x
o o o
o o o o
o o
o o
X +
Ci
Cj d (Ci, Cj)
d2(X,Y)=
(
xi !yi)
2i=1 n
"
• La distance d entre deux classes Ci et Cj est définie par :
d (C
i, C
j) = inƒ { d X,Y ( ) ; X !C
iet Y !C
j}
d (X, Cj) d (X, Ci)
Université Paris 13/Younès Bennani Reconnaissance des Formes 13
Distances binaires
• caractéristiques des formes ne sont pas mesurables.
• codage binaire : 1 % présence de l’attribut (caractère) 0 % absence de l’attribut
• Le nombre de fois où X et Y possèdent le même caractère (couples de 11)
• Le nombre de fois où X et Y ne possèdent aucun caractère commun (couples de 00)
• Le nombre de fois où X ne possède pas le caractère possédé par Y (couples de 01)
• Le nombre de fois où X possède un caractère non possédé par Y (couples de 10) a= xi.yi
i=1 n
!
b=
(
1!xi)
i=1 n
" (
1!yi)
h=
(
1!xi)
i=1 n
"
.yig= xi. 1
(
!yi)
i=1 n
"
Quelques distances binaires
• Russel et Rao
• Joccard et Needham
• Dice
• Sokal et Sneath
S1(X,Y)= a a+b+g+h S2(X,Y)= a
n!b S3(X,Y)= a
2a+g+h S4(X,Y)= a
a+2(g+h) S5(X,Y)=a+b
n S6(X,Y)= a g+h
• Sokal et Michenon
• Kulzinsky
Université Paris 13/Younès Bennani Reconnaissance des Formes 15
Exemple
Caractéristiques
Rond Allongé Rouge Vert
1 0 1 0
0 1 0 1
1 0 0 1
S
2( , )=0 et S
2( , )=0.33
et se ressemblent plus que et
MDC: Minimum-Distance Classifier
M classes { C1,C2,..., CM }, M prototypes Y = { Y1,Y2,..., YM } dans !n on cherche à identifier la forme X.
• Attribuer un élément X à une classe Ck :
X !C
k" C
k= Arg min
Ci
d X,C (
i)
!
D
i= d X,C (
i) = d( X,Y
i) = [ ( X " Y
i)
t( X " Y
i) ]
12,1 # i # M
D
k= min
1!i!M
( d( X, Y
i) )
Université Paris 13/Younès Bennani Reconnaissance des Formes 17
MDC: Minimum-Distance Classifier
• Fonction de décision pour Ci :
D
i2
= [ ( X ! Y
i)
t( X ! Y
i) ]
= X
tX ! 2 X
tY
i+ Y
itY
iConstante
minimiser
D
i2!
minimiser!2 X
tY
i+ Y
itY
i, 1 " i " M
maximiser
c
2 X
tY
i! Y
itY
i, 1 " i " M g
i( X ) = X
tY
i! 1
2 Y
itY
i, 1 " i " M X #C
issi g
i(X) > g
j( X), j $ i
MDC: Minimum-Distance Classifier
• Fonction de décision linéaire :
g
i( X ) = X
tY
i! 1
2 Y
itY
i, 1 " i " M g
i( X ) = W
itX, 1 ! i ! M
X =
x
1x
2M x
n1
!
"
#
#
# #
$
%
&
&
&
&
W
i= w
i,1w
i, 2M w
i,nw
i,n+1!
"
#
#
# #
$
%
&
&
&
&
=
y
i,1y
i, 2M y
i,n'1 2
Y
itY
i!
"
#
#
# #
$
%
&
&
&
&
Université Paris 13/Younès Bennani Reconnaissance des Formes 19
MDC: Minimum-Distance Classifier
• Cas Multi-prototypes :
C
i! Y
i(1), Y
i( 2), K , Y
i(ni)D
i= min
1!j!ni
d (X , Y
i(j))
( )
g
i( X ) = X
tY
i(j)! 1
2 ( Y
i(j))
tY
i(j)
, 1 " j " n
iX #C
issi g
i(X) > g
j( X), j $ i
• Fonction de décision pour Ci :
MDC: Minimum-Distance Classifier Exemple
C
1! (1, 0), (1,1) C
2! (0,1), (3,1)
C
3! (1,2), (0, 0), ("1,1) X = (1, "1) #?
Consider a three-class problem in R2 where each class is represented by its prototypes as follows:
Given the incoming pattern :
Université Paris 13/Younès Bennani Reconnaissance des Formes 21
MDC: Minimum-Distance Classifier Exemple
!
g1(X)=
(
x1,x2) ( )
1,0 t"12
( )
1,0( )
1,0 t=x1"1 2 g2(X)=(
x1,x2) ( )
0,1t"12( )
0,1( )
0,1t=x2"12 g3(X)=
(
x1,x2) ( )
0,0 t"12( )
0,0( )
0,0 t=0!
D1=min
[
d X(
, 1,0( ) )
,d X(
, 1,1( ) ) ]
"( )
1,0D2=min
[
d X, 0,1( ( ) )
,d X, 3,1( ( ) ) ]
"( )
0,1D3=min
[
d X, 1,2( ( ) )
,d X,( (
#1,1) )
,d X(
,(
#1,1) ) ]
"( )
0,0!
g12(X)=g1(X)"g2(X)=x1"x2=0
g23(X)=g2(X)"g3(X)=x2"1
2=0
g31(X)=g3(X)"g1(X)= 1
2"x1=0
Les fonctions de décision :
Les frontières entre les 3 classes : entre C1 et C2
entre C2 et C3
entre C3 et C1
Méthodes non paramétriques
k-Nearest Neighbour : KNN k-plus proches voisins : KPPV
N observations D = { X1, X2,...,XN} dans !n réparties en M classes {C1,C2,..., CM}, d(Xi, Xj) est une distance entre les observations Xi et Xj.
Règle du plus proche voisin (k=1) :
Xi est affecté à la classe Cj si Cj est la classe de l'objet Xj, tel que : d(Xi, Xj) = min k#i, K=1…N d(Xi, Xk), pour Xk appartenant à D.
x x x
x x
x x x x
x
oo o
o
o o o
o o
o o
i
Ci
x
x
x + o
o o
o o
o o
o x
xx x
x x
Cj Xj
Université Paris 13/Younès Bennani Reconnaissance des Formes 23
Méthodes non paramétriques
k-Nearest Neighbour : KNN k-plus proches voisins : KPPV
Règle des k plus proches voisins :
Xi est affecté à la classe Ci si Ci est la classe la mieux représentée parmi les k voisins les plus proches de Xi, tel que :
ki = max { k1, k2, …, kM } $ Xi # Ci.
Avec ki = le nombre d’éléments de la classe Ciparmi les k voisins les plus proches de Xi. et k1+k2+ …+ kM = k
x x x
x x
x x x x
x
oo o
o
o o o
o o
o o
Xi Ci
x
x
x + o
o o
o o
o o
o x
xx x
x x
Cj kj =3 ki =5
k= 8
Méthodes non paramétriques
k-Nearest Neighbour : KNN k-plus proches voisins : KPPV
Propriétés de convergence en probabilité :
la probabilité d’erreur avec la règle du plus proche voisin (PPV) converge en probabilité vers une quantité inférieure à deux fois l’erreur minimum de la décision bayésienne, mais reste supérieure ou égale à une fois cette erreur.
Err
Bayes! lim
n"#Err
PPV! 2 Err
BayesUniversité Paris 13/Younès Bennani Reconnaissance des Formes 25
Méthodes non paramétriques
k-Nearest Neighbour : KNN k-plus proches voisins : KPPV
Surface de séparation générée par KNN
Voronoi Net Delaunay Net
Frontière entre les 2 classes
Prototypes de la classe 1
Prototypes de la classe 2
Méthodes non paramétriques
k-Nearest Neighbour : KNN
k-plus proches voisins : KPPV
Université Paris 13/Younès Bennani Reconnaissance des Formes 27
Décision et Rejet
variante (k,l)-Nearest Neighbour (k,l)-NN
Décisions avec rejet :
consiste à fixer un seuil l de décision : k/2 < l < k
et à décider que Xi est affecté à la classe Ci si au moins l parmi les k voisins les plus proches de Xi appartiennent à Ci.
x x x
x x
x x x x
x
o o o
o
o o o
o o
o o
Xi Ci
x
x
x + o
o o
o o
o o
o x
xx x
x x
Cj kj =3 ki =5
(k,l)= (8,5) $ Xi # Ci
(k,l)= (8,6) $ Rejet
Variantes accélérées
k-Nearest Neighbour : KNN k-plus proches voisins : KPPV
KNN = méthode lente en phase de décision
nécessite le calcul de N distances dans un espace à n dimensions.
Variantes sub-optimales nécessitent moins de calcul :
• La condensation
[P.E. Hart, « The condensed Nearest Neighbor Rule » IEEE Transactions Information Theory, 14, May, 1968.]
• Le pavage
[C. Delannoy, « Un algorithme rapide de recherche de plus proches voisins » RAIRO Informatique, 14(3):275-286, 1980.]
• La hiérarchie
[J. H. Friedman, J. L. Bentley, R. A. Finkel, « An algorithm for finding best matches in logarithmic expected time », ACM Transactions on Software, 3(3), 1977]
• Le tri
[T. P. Yunk, « A technique to identify Nearest Neighbors », IEEE Transactions on Systems, Man and Cybernetics, 6:678-683, 1976]
Université Paris 13/Younès Bennani Reconnaissance des Formes 29
Recherche des KNN
Méthode de projection
J.H. Friedman, F. Baskett, L.J. Shustek
« An algorithm for finding nearest neighbors »
IEE trans. Comput?, Vol. C-24, pp. 1000-1006, Oct. 1975
Méthode non-paramétrique KNN Avantages :
- pas d’hypothèse sur les distributions - simple à mettre en œuvre
- donne une probabilité d’erreur faible Inconvénients :
- temps de calcul important (recherche des knn) - place mémoire
(stockage de l’ensemble des prototypes)
Recherche des KNN
Méthode de projection : 2-dimension
Pré-traitement Étape 0 :
projeter l’ensemble des points sur un axe et trier les projections
(projection+trie une seule fois pour l’ensemble des données) O(NlogN)
Recherche des knn Étape 1 :
localiser la projection du point test sur l’axe de projection
(recherche dichotomique O(logN)) Étape 2 :
trouver les 2 plus proches projections
(une de chaque coté)de la projection du point test Étape 3 :
calculer la distance (en dimension complète) entre les 2 prototypes et le point test
choisir le prototype minimisant cette distance : rd
Université Paris 13/Younès Bennani Reconnaissance des Formes 31
Recherche des KNN
Méthode de projection : 2-dimension
Étape 4 :
déterminer les limites de la recherche - borne #1=projection du test+rd - borne #2=projection du test -rd Étape 5 :
calculer et sauvegarder en mémoire les distances entre le test et les prototypes à l’intérieur des deux bornes
Étape 6 :
trouver le prototype minimisant la distance par rapport au test = le plus proche voisin
Pour la recherche des knn (k>1) Étape 7 :
supprimer le ppv (trouvé à l’étape 6) de la liste des prototypes à l’intérieur des bornes
répeter k fois de l’étape 1 à l’étape 7 Si k>1, les bornes sont recalculées à chaque itération.
Recherche des KNN
Méthode de projection : d-dimension
Comment trouver le meilleur axe de projection ?
Université Paris 13/Younès Bennani Reconnaissance des Formes 33
Maximum coordinate ! distance
2 Euclidian
1 Manhattan
n p
Metric
Recherche des KNN
Méthode de projection : d-dimension
Étape 0.1 :
projeter l’ensemble des points sur les d axes et trier les projections
Étape 0.2 :
estimer le nombre n de distances à calculer dans le cas d’une distribution uniforme (worst case)
!
( )
kd!1/dN1"(1/d)!
" kd d 2#1
$
% & ' ( ) !
$
% & '
( )
1/d
(
2N)
1#(1/d)!
k1/dN1"(1/d)
K: le nombre des ppv, d: la dimension, N: le nombre de prototypes
Recherche des KNN
Méthode de projection : d-dimension
Étape 1 :
localiser la projection du test sur chaque axe Étape 2 :
trouver la position du (n/2)ème prototype de chaque coté du test
Étape 3 :
calculer la distance S entre ces 2 prototypes Étape 4 :
calculer la projection de la densité locale D au voisinage du point test (local projected density) :
Étape 5 :
sélectionner l’axe minimisant D et l’utiliser pour la recherche des knn (méthode 2-dimension)!
D=n/S
Université Paris 13/Younès Bennani Reconnaissance des Formes 35
Nettoyage (editing) de l’ensemble d’apprentissage
Début
diviser aléatoirement l’ensemble d’apprentissage en deux sous-ensembles S1 et S2
tant que la stabilisation de S1 et S2 n’est pas réalisée faire
1-classer tous les points de S1 sur S2 par la règle du 1-ppv 2-éliminer de S1 tous les points dont la classe n’est pas la même que celle de leur plus proche voisin dans S2
3-classer tous les points de S2 sur le nouveau S1 par la règle du 1-ppv 4-éliminer de S2 tous les points dont la classe n’est pas la même que celle de leur plus proche voisin dans S1
fin tant que
L’ensemble d’apprentissage nettoyé est composé de S1& S2 fin.
Condensation (condensing) de l’ensemble d’apprentissage
Début
ordonner les m exemples d’apprentissage de x1 à xm initialiser S par x1 et G par x2 à xm
tant que S et G ne sont pas stabilisés faire pour
chaque point gi de G faire
si le 1-ppv de gi dans S n’a pas la même classe que gi alors enlever gi de G et le mettre dans S
fin si fin pour
fin tant que
L’ensemble d’apprentissage condensé est S fin.
Université Paris 13/Younès Bennani Reconnaissance des Formes 37