1 Introduction
Les données sont typiquement : une matrice X ∈ Mn,p (R) décrivant n individus
et p variables, une matrice D ∈ Mn,n (R) décrivant des distances, dissimilarités entre
n individus, une matrice de similarités S ∈ Mn,n (R). D’une manière générale tout
objet x ∈ χ est envisageable, mais c’est uniquement lorsque l’on introduira les
noyaux positifs, que l’on pourra les traiter. Traiter des données dans R assure un
socle de méthodes qui se déclineront ensuite dans des espaces de Hilbert à noyau
reproduisant.
2 Méthodes factorielles
2.1 Décomposition en valeurs singulières
On dispose d’une matrice X n × p de rang r
Preuve. Commençons par observer que X 0 X a le même rang que X. En effet, soit
x ∈ ker X 0 X,
X 0 Xx = 0
⇒ x0 X 0 Xx = 0
⇒ Xx = 0
⇒ x ∈ ker X
1
Cours d’analyse de données N. Wicker
Vérification :
Pr
Soit x quelconque, on réécrit x : x = i=1 αi vi + y avec y ∈ ker X. Ainsi
Xr
U DV 0 x = U DV 0 ( αi vi + y)
i=1
r
X
= αi U DV 0 vi
i=1
r
X
= αi U Dei
i=1
Xr
= αi di U ei
i=1
Xr
= αi di di−1 Xvi
i=1
= Xx
d’où X = U DV 0 .
Préambule
q
Pp 2
Choix d’une métrique En général, d(x, y) = i=1 (xi − yi ) . Souvent, on regarde
d(x, y)2= kx − yk2 .
Parfois, on a besoin de kx − yk2M = (x −
y)0 M(x − y) avec M
positive (semi-définie positive). Une métrique usuelle est la matrice diagonale
2
2. Méthodes factorielles
diag(Var−1 −1
1 , . . . Varp ) où l’on utilise les variances. Alors :
Var−1
1 0
..
kx − ykM = (x − y)0 .
(x − y)
Var−1
0 p
p
X (xi − yi )2
=
Vari
i=1
p !2
X x yi
= √ i −√ = kx∗ − y ∗ k2
i=1
Vari Vari
Inertie ou variance
Pn Pn
Définition 1 – Le centre de gravité est g = i=1 mi xi avec i=1 mi = 1.
Typiquement, mi = n1 pour tout i. On peut donner une masse plus importante à des
données plus fiables que les autres .
Var Y =E(Y Y 0 )
=U 0 XX 0 U
=U 0 U DU 0 U
=D
3
Cours d’analyse de données N. Wicker
Preuve.
n
X
I= mi (xi − g)0 M(xi − g)
i=1
n
X
= tr mi (xi − g)0 M(xi − g)
i=1
n
X
= tr M mi (xi − g)(xi − g)0
i=1
= tr V M
Au passage, on remarque que l’inertie totale est égale à la somme des valeurs propres
de V M.
0M
L’opérateur de projection est P = aa
a0 Ma En effet,
aa0 M aa0 M
P2 =
a0 Ma a0 Ma
aa0 M
= 0 =P
a Ma
P est dit idempotent. Par ailleurs, x − P (x) ⊥ a, en effet :
aa0 Mx
a0 M(x − P (x)) = a0 M(x − )
a0 Ma
0 0
a Maa Mx
= a0 Mx −
a0 Ma
=0
Calculons l’inertie après projection :
n
X
I(a) = mi kP (xi ) − P (g)k2
i=1
n
X
= mi kP (xi − g)k2
i=1
n
X
= mi [P (xi − g)]0 MP (xi − g)
i=1
n !0
aa0 M aa0 M
X !
= mi 0 (x − g) M 0 (x − g)
a Ma i a Ma i
i=1
n
X (xi − g)0 Maa0 Maa0 M(xi − g)
= mi
(a0 Ma)2
i=1
4
2. Méthodes factorielles
n
X (xi − g)0 Maa0 M(xi − g)
I(a) = tr mi
a0 Ma
i=1
n
X Maa0 M
= tr mi (x − g)(xi − g)0
a0 Ma i
i=1
n
Maa0 M X
= tr mi (xi − g)(xi − g)0
a0 Ma
i=1
Maa0 MV
= tr
a0 Ma
a0 MV Ma
= tr
a0 a
0
a MV Ma
=
a0 Ma
M 1/2 existe car M = P DP 0 avec D > 0. ainsi en posant b = M 1/2 a, on maximise alors :
b0 M 1/2 V M 1/2 b
I(b) =
kbk2
Cela revient à maximiser I(b) = b0 M 1/2 V M 1/2 b sous la contrainte kbk = 1. Or,
M 1/2
PVp M
1/2 est symétrique donc on peut écrire : I(b) = b0 U ΛU 0 b. On peut écrire
Pp Pp
b = i=1 αi ui avec U = (u1 | . . . |up ). Ainsi I(b) = i=1 αi2 λi avec i=1 αi2 = 1. On sup-
Pp
pose que λ1 > λ2 > . . . > λp . La solution est donc b = v1 car I(b) > i=1 αi2 λ1 = λ1 .
Comme b est vecteur propre de M 1/2 V M 1/2 , on a
M 1/2 V M 1/2 b = λb
⇒ V M 1/2 b = λM −1/2 b
⇒ V MM −1/2 b = λM −1/2 b
⇒ V Ma = λa
5
Cours d’analyse de données N. Wicker
6
2. Méthodes factorielles
hxi , uj iM
cos(x
i , uj ) =
kxi kM kuj kM
cji
= par orthonormalité des uj
kxi kM
Ainsi,
2
cji
2
cos(x
i , uj ) = Pp 2
k=1 cji
Profils des lignes : D1−1 N où D1 = diag(n1. , . . . , nm1 . ) Profils des colonnes : (N D2−1 )0
où D1 = diag(n.1 , . . . , n.m2 )
On peut considérer soit les profils-lignes, soit les profils-colonnes. Pour les
profils-lignes, on regarde D1−1 N . Comme matrice de poids, on choisit Dn1 pour
7
Cours d’analyse de données N. Wicker
donner plus de poids aux lignes avec des effectifs importants. Avec cette matrice de
poids, le centre de gravité est donnée par :
X 0 D1
g= 1
n
D1
= (D1−1 N )0 1
n
1
= N0
n
1
= (n , . . . , n.m2 )0
n .1
Pour les profils-colonnes, ma matrice de poids est Dn2 et gc = n1 (n1. , . . . , nm1 . )0 . Comme
métrique, on choisit M = nD2−1 pour les profils-lignes et M = nD1−1 pour les profils-
colonnes. Cette métrique est appelée métrique du χ2 . On a alors :
m2 !2
2
X n nij ni 0 j
d (li , li 0 ) = −
n.j ni. ni 0 .
j=1
Preuve. On considère :
n 0
2(nij − nij n.j )(ni 0 j + ni 0 j 0 )
.j
− A
ni. ni 0 .
!2 !2
n nij ni 0 j n nij 0 ni 0 j 0
avec A = − + −
nij ni. ni 0 . nij 0 ni. ni 0 .
8
2. Méthodes factorielles
Ainsi,
n2 1 + n.j 0 + n2 0 1 + n.j n 2
0 1 +
n.j 0
+ n 2
0 0 1 +
n.j 0
n ij
n.j ij n.j 0 ij n.j ij n.j
d ∗2 (li , li 0 ) − d 2 (li , li 0 ) =
2
+ 2
−
n.j + n.j 0 ni. ni 0 .
n 0
2nij 1 + n.j ni 0 j + ni 0 j 0
.j
− A
ni. ni 0 .
2
nij 1 n2ij 0 1 n2i 0 j 1 n2i 0 j 0 1
2n ij n i 0k 2n ij 0 ni 0 j 0
= n 2 + 2 + 2 + 2 − − − A
n
ni. .j ni. .j n 0 n
ni 0 . .j ni 0 . ij n 0 n n 0 n
i. i . .j n n 0 n
i. i . .j 0
2 2 2 2
n nij nij 0 ni 0 j 0 ni 0 j 2nij ni 0 j 2nij 0 ni 0 j 0
= + + + − − − A
n.j n2 i. n2
i. n20 i. n20 i.
ni. ni 0 . ni. ni 0 .
!2 !2
n nij ni 0 j n nij 0 ni 0 j 0
= − + − −A =
n.j ni. ni 0 . n.j ni. ni 0 .
=0
ni. n.j 2
Pm1 Pm2 nij − n
1
Proposition 3 – L’inertie I = n i=1 j=1 ni. n.j
n
m1 X
m2
n n 2
1X nij − i.n .j
= ni. n.j
n
i=1 j=1 n
D’où le nom de la métrique. Evidemment, le même résultat est obtenu à partir des
profils colonne.
9
Cours d’analyse de données N. Wicker
−−−→
Proposition 4 – OG est M-orthogonal au nuage de points.
n
Preuve. En effet, si on considère un point li = ( nni1 , . . . , nim2 )0 on a :
i. i.
0
1 1
(li − g)0 Mg = li − (n.1 , . . . , n.m2 )0 nD2−1 (n.1 , . . . , n.m2 )0
n n
0
1
0
= li − (n.1 , . . . , n.m2 ) 1
n
= 1−1 = 0
Nous avons maintenant tous les éléments pour réaliser l’ACP : V M est ici pour les
profils ligne égal à :
V M = ((D1−1 N )0 − g10 )D1 (D1−1 N − 1g 0 )D2−1
= (N 0 D1−1 − g10 )D1 (D1−1 N − 1g 0 )D2−1
= N 0 D1−1 N D2−1 − g10 N D2−1 − N 0 1g 0 D21 + g10 D1 1g 0 D2−1
= N 0 D1−1 N D2−1 − g(n.1 , . . . , n.m2 )D2−1 − (n.1 , . . . , n.m2 )g 0 D2−1
= N 0 D1−1 N D2−1 − ngg 0 D21 − ngg 0 D2−1 + ngg 0 D2−1
= N 0 D1−1 N D2−1 − ngg 0 D2−1
−−−→
Or, OG est orthogonal au plan des données, c’est donc un vecteur propre pour la
valeur propre 0. Donc, V Mg = 0 = N 0 D1−1 N D2−1 − ngg 0 D2−1 . Ainsi :
N 0 D10 N D2−1 g = nggD2−1 g
1
= ngg 0
n
n.1 + · · · + n.m2
=g
n
On a déjà un vecteur propre de V M, c’est g. On veut les autres vecteurs propres qui
seront orthogonaux à g. Si on a par exemple le vecteur propre a de V M :
V Ma = λa = N 0 D1−1 N D2−1 a − gg 0 Ma = 0 car g est M-orthogonal à a
Ainsi il suffit de chercher les vecteurs propres de N 0 D1−1 N D2−1 , de manière similaire
pour les profils colonnes, on cherche les vecteurs propres de N D2−1 N D1−1 .
10
2. Méthodes factorielles
ac0 = 1
⇒ k 2 al0 D2−1 N 0 nN D2−1 al = 1
⇒ k 2 nal0 D2−1 λal = 1
⇒ λk 2 al0 nD2−1 al = 1
⇒ λk 2 = 1
1
⇒k= √
λ
et donc al = √1 N 0 D −1 ac .
λ 1
m1
X
D1−1 N = ckl (alk )0 + 1gl0
k=1
11
Cours d’analyse de données N. Wicker
1
c̄kl = (n , . . . , nm1 . )ckl
n 1.
1
= (n1. , . . . , nm1 . )XMalk
n
1
= (n1. , . . . , nm1 . )D1−1 N nD2−1 alk
n
1
= 10 N nD2−1 alk
n
1
= (n1. , . . . , n.m2 )nD2−1 alk
n
= g l0 Malk = 0 si alk , g l
ni.
Pm1 l 2 ni. e ckl (i)2 n
Ainsi, λk = i=1 ck (i) n donc la contribution de la i ligne est égale à λk . De la
n.i
ckc (i)2
même, la contribution de la i e colonne est égale à : λk
n
.
1 0 0
0 1 0
X1 = 1 0 0
0 1 0
0 0 1
12
2. Méthodes factorielles
!
D1 0
propres de N 0 D1−1 N D2−1 avec N = XD1 = 2In et D2 = . Ainsi,
0 D2
D1−1
!
0 1 0
N D1−1 N D2 = (X1 X2 )0 (X1 X2 )
2 0 D2−1
1 X10 X1 X10 X2 D1−1
! !
0
=
2 X20 X1 X20 X2 0 D2−1
1 X10 X1 X10 X2 D1−1
! !
0
=
2 X20 X1 X20 X2 0 D2−1
N D2−1
!
1 1 0
= I +
2 m1 +m2 2 N 0 D1−1 0
−1
!
1 Im1 N D2
=
2 N 0 D1−1 Im2
Soit un vecteur propre (ab)0 de N 0 D1−1 N D2−1 associé à la valeur propre λ. Ainsi :
N D2−1
! ! !
1 Im1 a a
=λ
2 N 0 D1−1 Im2 b b
Soit
a + N D2−1 b = 2λa
(
N 0 D1−1 a + b = 2λb
N D2−1 b
a = 2λ−1
⇒
b = N 0 D1−1 a
2λ−1
N D2−1 N 0 D1−1 a = (2λ − 1)2 a
(
⇒
N 0 D1−1 N D2−1 b = (2λ − 1)2 b
B est donc un axe principal pour l’AFC par profils-ligne et a un axe principal pour
l’AFC par profils-colonne. Donc, pour l’AFCM on travaille sur X = (X1 | . . . |Xp ) si on
a p variables qualitatives.
13
Cours d’analyse de données N. Wicker
N D2−1 al
Retour sur l’AFC : ac = √ où al est l’axe principal profil-ligne et ac l’axe
λ
N 0 D1−1 ac
principal correspondant profils-colonne. al = √ ,
λ
cl = XMal = D1 N nD2−1 al
N 0 D −1
= D1−1 N nD2−1 √ 1 ac
λ
−1
D1 N
= √ (N D2−1 )0 nD1−1 ac
λ
D1−1 N c
= √ c
λ
c
Dans le cadre de l’AFCM, on a cl = √1 Npc ainsi chaque individu-ligne est la
λ
moyenne barycentrique des individus-colonnes associés à ses attributs à une constante
près. Cela autorise d’une certaine manière la double représentation sur un graphique
des profils-ligne et colonne.
Définition 3 – On dit que D est euclidienne si ∃x1 , . . . , xn tels que ∀i, j, Dij = kxi −
xj k2 .
A A A C D E M E protéine 1
− − A C D − M − protéine 2
sij = 4/8 = 1/2, plus la similarité est grande plus les objets sont proches. On définit
la dissimilarité comme par exemple dij = 1 − sij . D’autres possibilités existent, et
nous en verrons une particulière plus tard.
−d 2
Notations : soit une matrice A = {ars }r,s avec ars = 2rs . Soit la matrice de centrage
H = I − n1 110 . B = HAH est la matrice centrée. On introduit aussi a.s = n1 ni=1 ais ,
P
alors si on note B = brsr,s , on a : brs = (ars − a.s ) − (ar. − a.. ) avec a.. = n12 ni=1 nj=1 aij .
P P
14
2. Méthodes factorielles
Preuve. Supposons que D est euclidienne. Donc ∃x1 , . . . , xn tels que pour chaque
2 = kx − x k2 alors
distance, on a dr,s r s
ainsi brs = (xr − x̄)0 (xs − x̄) et donc B = HX(HX)0 avec X = (x1 , . . . , xn )0 . Soit z un vecteur
quelconque : z0 Bz = z0 HXX 0 Hz = (X 0 Hz)0 (X 0 Hz) > 0, ainsi B est bien positive.
Supposons maintenant que B > 0, alors comme B est symétrique B = U DU 0
et comme B > 0, les valeurs propres sont toutes positives et donc on peut écrire :
B = U D 1/2 D 1/2 U 0 = XX 0 avec X = U D 1/2 = (x1 , . . . , xn )0 . Ainsi,
Puis,
kxr − xs k2 = arr + a.. − a.r − ar. + ass + a.. − a.s − as. − 2(ars + a.. − ar. − a.s )
= arr + ass − 2ars
2
drs d2 d2
=− − ss + 2 rs
2 2 2
2
= drs
15
Cours d’analyse de données N. Wicker
Proposition 6 – Il arrive que B ne soit pas positive, on peut alors la rendre positive en
ajoutant une constante c2 à toutes les distances au carré.
0 c2 ... c2
.. ..
1 c2 0 . .
A∗ = A −
..
2 .. .. 2
. . . c
c2 c2
... ...
0 c2 ... c2
.. ..
c2 0 . .
Ainsi B∗ = HA∗ H avec H = I − n1 110 et B∗ = HAH − H Ce qui
2 ..
.. .. 2
. . . c
c2 c2
... ...
16
2. Méthodes factorielles
peut se réécrire :
c2
B∗ = HAH − H(110 − I)H
2
c2 1 c2 1
= HAH − (I − 110 )(110 − I) − (I − 110 )
2 n 2 n
0 + 1 110
c2 1n1 n
= HAH − (110 − I − (110 − I)
2 n
c2 1 1 1
= HAH − (−I + 110 + 110 − 2 1n10 )
2 n n n
c2 1
= HAH − (−I + 110 )
2 n
c2
= HAH + H
2
Les vecteurs propres de B sont centrés, en effet, si Bv = λv, on a HAHv = λv et donc
HHAHv = λHv. Or H 2 = H, en effet :
1 1
HH = (I − 110 )(I − 110 )
n n
2 0 1 0 0
= I − 11 + 2 11 11
n n
1 0
= I − 11
n
=H
Ainsi, HAHv = λHv = λv car v est centré. Toujours avec v vecteur propre de B, on
a:
c2
B∗ = HAHv + Hv
2
c2
= λv + v
2
c2
= (λ + )v
2
c2
Pour avoir B∗ > 0, il suffit donc de prendre 2 = −λmin .
17
Cours d’analyse de données N. Wicker
Propriétés d’optimalité
Proposition 7 – Cas 1 : on dispose de distances euclidiennes alors MDS minimise
P 2 − d ∗2 où d ∗ sont les distances obtenues après projection suivant les k axes.
φ = r,s drs rs rs
P Pn 0 Pk
Preuve. En effet, φ se réécrit : φ − r,s i=1 (li xr − li0 xs )2 − 0
i=1 (li xr − li0 xs )2 avec
L = (l1 | . . . |ln ) = (L1 |L2 ). Ainsi,
n
X X
φ= (li0 xr − li0 xs )2
r,s i=k+1
n
X X
= [li0 (xr − xs )]2
r,s i=k+1
n
X X
= li0 (xr − xs )(xr − xs )0 li
r,s i=k+1
X n X
= li0 ( (xr − xs )(xr − xs )0 )li
i=k+1 r,s
Or,
X X X
(xr − xs )(xr − xs )0 = (xr − g)(xr − g)0 + (xs − g)(xs − g)0 − (xs − g)(xs − g)0 + (xr − g)(xs − g)
r,s r,s r,s
X
0
= 2n (xr − g)(xr − g)
r
= 2n2 V
Et donc,
p
X
φ= 2n2 li0 V li
i=k+1
2
= 2n tr(L02 V L2 )
= 2n2 tr(L02 U DU 0 L2 )
18
2. Méthodes factorielles
que hj > 0,
p
X p X
X p
hj = fij2
j=1 j=1 i=k+1
p X
X p
= fij2
i=k+1 j=1
= p−k
p
X
hj = fij2
i=k+1
Xp
= hfi , ej i2
i=k+1
Xp
6 hfi , ej i2 = 1
i=1
19
Cours d’analyse de données N. Wicker
donc à D ∗ constant,
Pn P on minimise ψ suivant Γ ), il fautPn doncPmaximiser tr(DΓ 0 ∗
Pn D∗ PΓ n). Or, 2
0 ∗ n ∗ 2 n ∗ 2
tr D(Γ D Γ ) = i=1 j=1 dj γij On veut maximiser i=1 di j=1 dj γij = j=1 dj i=1 di γij .
Cela se réécrit nj=1 dj∗ hj avec hj = ni=1 di γij2 . On remarque que :
P P
n
X n X
X n
hj = di γij2
j=1 j=1 i=1
n
X n
X
= di γij2
i=1 i=1
n
X
= di
i=1
Par ailleurs, ∀j, hj > 0, on suppose que d1 > d2 > . . . > dn et d1∗ > . . . > dn∗ . h1 doit
être le plus grand possible, or h1 = ni=1 di γi1 2
6 d1 ni=1 γi1 2
P P
= d1 . h1 = d1 ⇒ γ11 = 1
Pn 2 2 P n 2
et γi1 = 0∀i > 2. h2 = i=1 di γi2 = d1 γ12 + i=2 di γi2 6 d2 car γ11 = 1 et matrice
orthonormée. Ainsi γi2 = (0, 1, 0, . . . , 0)0 . et ∀i, hi = di , γii = 1, γij = 0 et donc Γ = I.
On a donc U 0 B∗ U = D ∗ et ainsi
Par ailleurs, la projection s’effectuant dans Rk , on ne prend que les k plus grands
vecteurs propres.
Choix de la translation
n
X n
X
φ= (kxi − Ayi k2 + b0 b) − 2b0 (xi − Ayi )
i=1 i=1
20
2. Méthodes factorielles
Ainsi,
n
∂φ X
= 2nb0 − 2 (xi − Ayi )0
∂b
i=1
n
1X
⇒b= (xi − Ayi )
n
i=1
b vaut 0 si les deux nuages sont centrés. On suppose donc les nuages centrés pour
simplifier. Ainsi, φ devient :
n
X
φ= kxi − Ayi k2
i=1
n
X
= xi0 xi + yi0 A0 Ayi − 2xi0 Ayi
i=1
= tr(XX 0 + Y Y 0 ) − 2 tr(XAY 0 ))
∂L
= 2Z 0 − 2AΛ = 0
∂A
⇒ Λ = A0 Z 0 car A est orthonormée
21
Cours d’analyse de données N. Wicker
U DU 0 = A0 V DU 0
⇒ U D = A0 V D par colonne-orthonormalité
⇒ U = A0 V
On prend donc A = V U 0 et Z = Y 0 X = U DV 0 .
Il s’agit bien d’un maximum car :
∂L
= −Ip ⊗ Λ
∂A
avec A = (a1 | . . . |ap ). Or, Λ est positive, ainsi la dérivée est négative.
3 Méthodes de classification
Apprentissage non supervisé, il s’agit donc de réaliser des classes, à partir
d’ensemble d’invidus. Les individus sont décrits par des variables quantitatives,
qualitatives, des distances, des similarités, des dissimilarités. On distingue les
méthodes de partitionnement de celles engendrant une classification hiérarchique.
Une partition signifie que l’on effectue un seul découpage en classes, en classification
hiérarchique il y a plusieurs découpages imbriqués.
22
3. Méthodes de classification
Preuve.
n X
X k
Iinter = pi kxi − cj k2 zij
i=1 j=1
n X
X k
= pi kxi − gj + gj − cj k2 zij
i=1 j=1
n X
X k X k
n X n X
X k
= pi kxi − gj k2 zij + pi kgj − cj k2 zij − 2 pi (xi − gj )0 (gj − cj )zij
i=1 j=1 i=1 j=1 i=1 j=1
n X
X k
> pi kxi − gj k2 zij
i=1 j=1
Méthode sk-means
Des données sphériques peuvent être obtenues par standardisation des indi-
x −x̄
vidus. Si on a un individu x = (x1 , . . . , xp ) on le transforme en y = ( x1σ−x̄ , . . . , pσ ).
Pp Pp 2
Ainsi, i=1 yi = 0 et i=1 yi = 1. y ∈ S p−2 dans Rp−1 . On minimise ni=1 kj=1 (1 −
P P
23
Cours d’analyse de données N. Wicker
Pn Pk Pn Pk hxi ,cj i
cos(
xi , cj ))zij = i=1 j=1 zij − i=1 j=1 kxi kkcj k zij Cela revient à maximiser :
X k
n X k X
X n
hxi , cj izij = h xi zij i
i=1 j=1 j=1 i=1
k X
X n
6 k zij xi kkcj k
j=1 i=1
Pn
Pn z x
et donc on a un maximum quand cj ∝ Pi=1 ij i .
i=1 zij xi de telle sorte que cj = k ni=1 zij xi k
24
3. Méthodes de classification
Méthode du saut minimum (Single-linkage) δ(A, B) = min d(a, b). Cette dis-
(a,b)∈A×B
similarité ne rend pas bien compte du comportement global des classes. (ajouter
figure)
Méthode de Ward Ici la dissimilarité est donnée par la perte d’inertie inter-classe :
Dissimilarité raisonnable et très utilisée, elle est à rapprochée de la méthode k-
means.
k−2
X k−2
X
δ(A, B) = pi kgi − gk2 + pA kgA − gk2 + pB kgB − gk2 − pi kgi − gk2 − (pA + pB )kgA,B − gk2
i=1 i=1
p g + pB gB
= pA kgA − gk + pB kgB − gk − (pA + pB )k A A
2 2
− gk2
pA + pB
kpA ga + pB gB k2
= pA kgA k2 + pA kgk2 − 2gA0 g + pB kgB k2 + pB kgk2 − 2gB0 g − − (pA + pB )kgk
pA + pB
2(pA gA + pB gB )0 g
2
pA kgA k2 + pB2 kgB k2 + 2pA pB gA0 gB
= pA kgA k2 + pB kgB k2 −
pA + pB
2
= (pA kgA k2 + pA pB kgA k2 + pA pB kgB k2 + pB2 kgB k2 − pA
2
kgA k2 − pB2 kgB k2 − 2pA pB gA0 gB )
pA
p p
= A B (kgA k2 + kgB k2 − 2gA0 gB )
pA + pB
p p
= A B d(gA , gB )2
pA + pB
25
Cours d’analyse de données N. Wicker
Preuve.
(pA + pB )pC pA gA + pB gB
δ((A, B), B) = d( , gc )2
pA + pB + pC pA + pB
(p + pB )pC pA gA + pB gB
= A k − gC k2
pA + pB + pC pA + pB
2 2
(pA + pB )pC 2pA gA0 gC 2pB gB0 gC 2 2 0
2 pA kgA k + pB kgB k + 2pA pB gA gB
= − + kgC k +
pA + pB + pC pA + pB pA + pB (pA + pB )2
2 0 2 2
kgC k2 + pA kgA k2 −2pB2 gB0 gC + pB2 kgC k2 + pB2 kgB k2
(pA + pB )pC −2pA gA gC + pA
+ +
pA + pB + pC (pA + pB )2 (pA + pB )2
(pA + pB )2
2
(p + pB )pC pA kgA − gC k2 pB2 kgB − gC k2 + pA pB (−kgA − gB k2 + kgA − gC k2 + kgB −
= A +
pA + pB + pC (pA + pB )2 (pA + pB )2
2
!
(pA + pB )pC 2 2 pA pB d(gA , gB )
= p d(g , g ) + pB d(gB , gC ) −
pA + pB + pC A A C pA + pB
(pA + pC )δ(A, C) + (pB + pC )δ(B, C) − pC δ(A, B)
=
pA + pB + pC
26
4. Méthodes à noyau
classe j. Ainsi :
n X
X k
I= zij mi kxi − gj + gj − gk2 avec gj le centre de gravité de la classe j
i=1 j=1
n X
X k n X
X k n X
X k
= zij kxi − hj k2 + zij kgj − gk2 + 2 zij (xi − gj )0 (gj − g)
i=1 j=1 i=1 j=1 i=1 j=1
k X
X n k X
X n
= zij mi kxi − gj k2 + zij mi kgj − gk2
j=1 i=1 j=1 i=1
4 Méthodes à noyau
4.1 Introduction
Questions en suspens : utilité de la complétude : théorème du point fixe(Toute
application contractante a un point fixe).
Idée : remplacer les produits scalaires par des noyaux pour passer d’un ensemble
quelconque à un espace de Hilbert.
Théorème 3 – Si (F, k.k) et (G, k.k) sont deux espaces vectoriels normés et L une applica-
tion linéaire de F dans G on a équivalence entre les trois propriétés suivantes :
1. L est bornée.
2. L est continue.
3. L est continue en un point.
27
Cours d’analyse de données N. Wicker
Unicité : Supposons qu’il en existe deux, soient k1 (x, .) et k2 (., .) alors f (x) =
hk1 (x, .), f i = hk2 (x, .), f i Alors, hk1 (x, .) − k2 (x, .), f i = 0 pour tout f ∈ H, en particulier,
kk1 (x, .) − k2 (x, .)k2 = 0 et k1 (x, .) = k2 (x, .).
Preuve. ⇒ Si les δx sont continues, il s’agit alors de formes linéaires continues sur
un espace de Hilbert, donc par le théorème de Riesz, ∃gx ∈ H tel que δx f = hgx , f i.
On définit alors k(x, .) = gx .
⇐ On dispose de k(., .) noyau reproduisant et
X n
n X n
X n
X
ai aj k(xi , xj ) = h ai k(xi , .), aj k(xj , .)i
i=1 j=1 i=1 j=1
n
X
=k ai k(xi , .)k2
i=1
>0
28
4. Méthodes à noyau
On montre d’abord que cette définition a un sens, c’est-à-dire que la limite existe,
qu’elle est unique et qu’elle réalise bien les propriétés du produit scalaire.
Lemme 1 – La limite existe.
Preuve. Soient fn et fn0 qui convergent vers f , gn et gn0 qui convergent vers g. On note
αn = hfn , gn iH0 et αn0 = hfn0 , gn0 iH0 . Alors,
Maintenant que h., .i est bien défini, vérifions qu’il s’agit d’un produit scalaire. En
particulier, montrons que hf , f iH = 0 ⇔ f = 0
(⇒) hf , f iH = 0 ⇒ lim hfn , fn iH0 = 0 soit kfn kH0 →n→+∞ 0. Ainsi, |fn (x)| = |δx fn | 6
n→+∞
kδx k.kfn kH0 . La norme kδx fn k est bornée par continuité de δx sur H0 et kfn kH0 tend
vers 0 pour n suffisamment grand, ce qui achève la preuve.
29
Cours d’analyse de données N. Wicker
(⇐) Si f = 0 alors ∃(fn )n ∈ H0 qui tend vers 0. Alors hf , f iH = lim hfn , fn iH0 =
n→+∞
lim kfn k2H0 or par hypothèse de H0 , kfn k2H0 → k0k2H0 = 0. Concernant la bilinéarité,
n→+∞
on a haf , giH = lim hafn , gn iH0 = lim ahfn , gn iH0 = ahf , gi. Idem pour la symétrie
n→+∞ n→+∞
et la positivité.
H0 est dense dans H. En effet, soit f ∈ H, ∃fn suit de Cauchy ∈ H0 qui converge
vers f . On a alors kfm − f k2H = lim hfm − fn , fm − fn iH0 . Et donc ∃N tel que ∀n, m > N ,
n→+∞
kfm − fn kH0 < donc kf − fn k2H < .
Les fonctions d’évaluation sont continues dans H. Pour cela il suffit de montrer
que δx est continue en 0. Soit f ∈ H tel que kf kH < η. On veut montrer que |f (x)|
peut être rendu aussi petit que possible. Or
Or, fn (x) converge ponctuellement vers f et δx continue sur H0 avec kfn kH0 qui tend
vers 0.
Preuve. Soit une suite de Cauchy fn dans H pour k.kH . Ce qui signifie que pour tout
η∃N suffisamment grand tel que pour tout n, m > N on a kfn − fm kH < η. Donc en
choisissant η assez petit on a |fn (x) − fm (x)| < par continuité de δx . fn (x) est une
suite de Cauchy dans R complet, donc fn (x) converge ponctuellement vers f (x). Pour
tout n, on définit gn ∈ H0 suffisamment proche de fn en norme et ponctuellement
pour un x donné |f (x) − gn (x)| 6 |f (x) − fn (x)| + |fn (x) − gn (x)| 6 2 donc gn converge
ponctuellement vers f . Pour cela, il faut montrer que gn est une suite de Cauchy
dans H0
30
4. Méthodes à noyau
31
Cours d’analyse de données N. Wicker
Ainsi
tr(Da G1 Da G2 ) = tr(Da G11/2 G11/2 Da G21/2 G21/2 ) par symétrie et positivité des matrices de Gram
= tr(G11/2 Da G21/2 G21/2 Da G11/2 )
= tr(AA0 ) avec A = G11/2 Da G21/2
>0
Lemme 6 – Soit un noyau k̃(x, y) = f (x)k(x, y)f (y), si k(x, y) est positif alors k̃(x, y) l’est
aussi avec f fonction quelconque.
32
4. Méthodes à noyau
0
Lemme 7 – Le noyau exponentiel k(x, y) = ecx y , est positif.
+∞
X (cx0 y)k
k(x, y) =
k!
k=0
chaque terme de la somme est un noyau positif car puissance d’un noyau positif
d’après le lemme 5.
kx−yk2
Lemme 8 – Le noyau gaussien k(x, y) = e− 2 est positif.
en intégrant sur le contour [−R, R] ∪ {R + ti[0, 1]} ∪ [R + ti, −R + ti] ∪ {−R + ti[0, 1]}.
où lij1 (resp. lij2 ) est la longueur du plus court chemin entre i et j dans le graphe G1
(resp. G2 ).
33
Cours d’analyse de données N. Wicker
où i (resp. j) sont une liste d’indices permettant de retrouver les lettres du mot u
dans le mot s (resp. t), λ ∈ R et ie l’indice de fin et is l’indice de début.
h wa , x+ i + ba = 1
(
h wa , x− i + ba = −1
Sans perte de généralité, on peut ainsi considérer que les points x− et x+ vérifient :
(
hw, x+ i + b = 1
hw, x− i + b = −1
⇒ 2 = hw, x+ − x− i
2 w +
⇒ =h , x − x− i
kwk kwk
34
4. Méthodes à noyau
2
Ainsi, on peut chercher à maximiser kxk , de manière équivalente on peut minimiser
2
kwk ou encore kwk pour des raisons de dérivabilité. Le problème d’optimisation
devient alors :
( 2
min kwk2
s.c. (hw, xi i + b)yi > 1∀i ∈ 1, . . . , n
En dérivant, on obtient :
n
∂L X
=w− xi y i α i
∂w
i=1
n
∂L X
=− yi αi
∂b
i=1
Par le théorème de Wolfe 3 , comme le problème primal est convexe, les contraintes
convexes alors il suffit d’avoir un point w, b vérifiant de manière stricte toutes les
contraintes pour que maximiser le dual en w, b, λ1 , . . . , λn permette de minimiser le
problème primal en w, b.
Attention : l’optimisation peut être coûteuse (expression en n2 ), les points même
dans H peuvent ne pas être séparables.
35
Cours d’analyse de données N. Wicker
Il faut trouver un compromis entre avoir une grande marge 2/kwk et avoir peu
d’erreur ξ. En contrepartie de la souplesse offerte par la marge souple, une difficulté
apparaît, le choix de c. Pour choisir c, le plus simple est de faire une validation
croisée.
kwk k2
( P
K
+ Cn ni=1 t,zi ξ r
P P
k=1 2
s.c. ∀i, r , zi , hwzi , Φ(xi )i + bzi > hwr , Φ(xi )i + br + 2 + ξir
Idée : un point x est plus dans son demi-espace (défini par Pzi ) que dans un autre
demi-espace. Si on considère le cas biclasse, avec x1 dans la classe 1 et x2 dans la
classe 2, on obtient, d’une part :
36
4. Méthodes à noyau
Le lagrangien est :
n n
kwk2 1 X X
L(w, ρ, ξ, α, β) = + ξi − ρ + αi (ρ − ξ − hw, Φ(xi )i − βi ξi
2 nη
i=1 i=1
Méthode 2
Ajouter une figure
Idée : englober toues les points dans une sphère (la plus petite possible). Le
problème d’optimisation est alors :
1 Pn
min R2 + nη
(
i=1 ξi
s.c. ∀ikΦ(xi ) − ck2 6 R2 + ξi
37
Cours d’analyse de données N. Wicker
n n
1 X X
L(R, c, ξ, α, β) = R2 + ξi + αi (kΦ(xi ) − ck2 − R2 − ξi ) − βi ξi
nη
i=1 i=1
n n
∂L X X
= 2R − 2R αi = 0 ⇒ αi = 1
∂R
i=1 i=1
n n
∂L X X
= αi 2(Φ(xi ) − c) = 0 ⇒ c = αi Φ(xi )
∂c
i=1 i=1
∂L 1
= − αi − βi = 0
∂ξi nη
n n n n
X X 1 X X
L = R2 − αi R2 + ξi ( − αi − βi ) + αi kΦ(xi ) − αj Φ(xj )k2
nη
i=1 i=1 i=1 j=1
n
X n X
X n n X
X n
= αi kΦ(xi )k2 − 2 αi αj hi + αi αj hΦ(xi )Φ(xj )i
i=1 i=1 j=1 i=1 j=1
n
X n X
X n
= αi kΦ(xi )k2 − αi αj hΦ(xi ), Φ(xj )i
i=1 i=1 j=1
On remarque que le premier terme est celui de la première méthode. Par ailleurs,
si k(., .) est le noyau gaussien alors les deux méthodes sont équivalentes. En effet,
kx−yk2
k(x, y) = e− 2 et donc kΦ(xi )k2 = k(xi , xi ) = 1. L’interprétation géométrique est :
faire figure
car les points sont sur une sphère.
38
4. Méthodes à noyau
Cv = λv s’écrit alors :
n n n
1X X X
Φ(xi )Φ(xi )0 αj Φ(xj ) = λ αj Φ(xj )
n
i=1 j=1 j=1
n n n
1 X X X
⇒ Φ(xi ) αj k(xi , xj ) = λ αΦ(xj )
n
i=1 j=1 j=1
n n n
1X X X
k(xi , xk ) αj k(xi , xj ) = λ αj k(xj , xk )
n
i=1 j=1 j=1
n
n n
1 X X X
αj k(xk , xi )k(xi , xj ) = λ αj k(xj , xk )
⇒
n
j=1 i=1 j=1
1
⇒ G2 α = λGα(1)
n
1
Gα = λα(2)
n
1 2
(
nG α = λGα
λα + λz = n1 Gα
39
Cours d’analyse de données N. Wicker
1 2 1
Ainsi
Pn n G α = λGα + λGz ⇒ Gz = 0 et λ(α + z) = n G(α + z). On cherche v =
i=1 αi Φ(xi )
Gz = 0
⇒ z0 Gz = 0
Xn X n
⇒ zi zj k(xi , xj ) = 0
i=1 j=1
n
X n
X
⇒ zi zj hΦ(xi ), Φ(xj )i = 0
i=1 j=1
n
X n
X
⇒ zi hΦ(xi ), zj Φ(xj )i = 0
i=1 j=1
n
X n
X
⇒h zi Φ(xi ), zj Φ(xj )i = 0
i=1 j=1
n
X
⇒k zi Φ(xi )k = 0
i=1
n
X
⇒ zi Φ(xi ) = 0
i=1
1
λα = Gα
n
Pn Pn
Normalisation de v, hv, vi = 1 soit i=1 j=1 αi αj hΦ(xi ), Φ(xj )i = 1. La projection
des données s’effectue ainsi :
n
X
hΦ(x), vi = αi hΦ(x), Φ(xi )i
i=1
Xn
= αi k(xi , x)
i=1
40
5. Ouverture sur les graphes
Pn
Cas où les points ne sont pas centrés : Φ̃(xi ) = Φ(xi ) − n1 j=1 Φ(xj ) Ainsi :
n n
1X 1X
G̃ = hΦ(xi ) − Φ(xk ), Φ(xj ) − Φ(xk )i
n n
k=1 k=1
n n n n
1X 1X 1 XX
= k(xi , xj ) − k(xi , xk ) − k(xk , xj ) + 2 k(xk , xl )
n n n
k=1 k=1 k=1 l=1
et donc G̃ = HGH avec H = In − n1 110 (kernel regression ? pas fait mais en projet) (un
truc sur les graphes ?)
41
Cours d’analyse de données N. Wicker
Ainsi, comme dans MDS on cherche à maximiser la variance des axes choisis, il faut
prendre les valeurs propres les plus petites.
Références
Borgwardt, K. et H. Kriegel (2005). « Shortest-path kernels on graphs ». In : Data
Mining, Fifth IEEE International Conference on Data Mining (cf. p. 33).
Lodhi, H. et al. (2002). « Text Classifiation using String Kernels ». Journal of Machine
Learning Research 2, p. 419–444 (cf. p. 34).
Mardia, K., J. Kent et J. Bibby (1979). Multivariate Analysis. Academic Press (cf. p. 1).
Saporta, G. (1990). Probabilités, analyse des données et statistique. Technip (cf. p. 1).
Schölkopf, B. et A. Smola (2001). Learning with kernels. MIT Press (cf. p. 1).
Wolfe, P. (1961). « A duality theorem for nonlinear programming ». Quarterly of
Applied Mathematics 19, p. 239–244 (cf. p. 35).
42
Table des matières