Académique Documents
Professionnel Documents
Culture Documents
Correspondances (AFC)
Inertie du nuage de points
YOUTUBE
https://youtube.com/playlist?list=PLzjg2z2kYUrg6XvYVYMxdZQnouBEwavfQ
J. DABOUNOU - FST DE SETTAT
UNIVERSITE HASSAN Ier
Mai 2020
Introduction
L’analyse factorielle des correspondance se propose de déterminer des liaisons
possible entre des variables qualitatives.
Partants des modalités obtenues pour deux variables qualitatives par rapport à n
individus, l’AFC, utilisera des principes communs à toutes les méthode d’analyse
factorielle pour rendre compte des liaisons entre variables, et permettre une
réduction de la dimensionnalité des données de façon à les ramener dans un espace
qui préserve (ou explique) le maximum d’inertie.
Nous allons présenter des démarches pour réaliser une AFC à travers un exemple
simple.
On cherche à savoir s’il y a des liaisons entre les deux variables V1 et V2.
L’analyse Factorielle des Correspondances (AFC) va nous apporter une réponse
« géométrique » à cette question. Elle va nous permettre en même temps de réduire
la dimensionnalité des données.
J. DABOUNOU - FST DE SETTAT AFC001 - 2
Tableau de contingence
On construit alors un tableau de contingence (ou tableau croisé) :
Modalités de V2
m21 m22 m2j m2J
m11 n11 n12 n1j n1J
m12
n21 n22 n2j n2J
Modalités de V1
⁞ ⁞ ⁞
m1i ni1 ni2 nij niJ
⁞ ⁞ ⁞
m1I nI1 nI2 nIj nIJ
n= nij
i=1,I et j=1,J
n individus
12 armoire marron
Modalités de Type
Modalités de V2
m21 m22 m2j m2J Cm
m11 f11 f12 f1j f1J f1.
m12 f21 f22 f2j f2J f2.
Modalités de V1
probabilités ⁞ ⁞ ⁞ ⁞
m1i fi1 fi2 fij fiJ fi.
contingence ⁞ ⁞ ⁞ ⁞
m1I fI1 fI2 fIj fIJ fI.
Lm f.1 f.2 f.j f.J 1
Ce qui revient à dire que la probabilité conjointe est égale au produit des probabilités
marginales. Modalités de V2
fij
Ou alors, si on se donne j{1,…,J}, avoir f = f.j. m21 m22 m2j m2J Cm
i.
m11 f11 f12 f1j f1J f1.
Il s’agit ici d’une égalité entre la probabilité
conditionnelle (posséder la modalité m2j m12 f21 f22 f2j f2J f2.
Modalités de V1
sachant qu’on a déjà la modalité m1i) est égale ⁞ ⁞ ⁞ ⁞
à la probabilité marginale (posséder la m1i fi1 fi2 fij fiJ fi.
modalité m2j sans aucune condition sur la ⁞ ⁞ ⁞ ⁞
variable V1). m1I fI1 fI2 fIj fIJ fI.
On a :
Lm f.1 f.2 f.j f.J 1
P(m1i, m2j) fij
P m2j m1i = =
P(m1i). fi.
et
P(m2j) = f.j
J. DABOUNOU - FST DE SETTAT AFC001 - 8
Tableaux en situation d’indépendance
Les variables V1 et V2 sont indépendantes, si pour tout i=1,I et tout j=1,J on a fij = fi..f.j.
Ce qui revient à dire que le tableau des probabilités conjointes est égal au tableau des
produits des probabilités marginales.
Ainsi, on aura :
m11 f11 f12 f1j f1J f1. m11 f1..f.1 f1..f.2 f1..f.j f1..f.J f1.
m12 f21 f22 f2j f2J f2. m12 f2..f.1 f2..f.2 f2..f.j f2..f.J f2.
⁞ ⁞ ⁞ ⁞ ⁞ ⁞ ⁞ ⁞
=
m1i fi1 fi2 fij fiJ fi. m1i fi..f.1 fi..f.2 fi..f.j fi..f.J fi.
⁞ ⁞ ⁞ ⁞ ⁞ ⁞ ⁞ ⁞
m1I fI1 fI2 fIj fIJ fI. m1I fI..f.1 fI..f.2 fI..f.j fI..f.J fI.
Lm f.1 f.2 f.j f.J 1 Lm f.1 f.2 f.j f.J 1
m11 n11 n12 n1j n1J n1. m11 n.f1..f.1 n.f1..f.2 n.f1..f.j n.f1..f.J n1.
m12 n21 n22 n2j n2J n2.
m12 n.f2..f.1 n.f2..f.2 n.f2..f.j n.f2..f.J n2.
⁞ ⁞ ⁞ ⁞
= ⁞ ⁞ ⁞ ⁞
m1i ni1 ni2 nij niJ ni.
m1i n.fi..f.1 n.fi..f.2 n.fi..f.j n.fi..f.J ni.
⁞ ⁞ ⁞ ⁞
⁞ ⁞ ⁞ ⁞
m1I nI1 nI2 nIj nIJ nI.
m1I n.fI..f.1 n.fI..f.2 n.fI..f.j n.fI..f.J nI.
Lm n.1 n.2 n.j n.J 1
Total n.1 n.2 n.j n.J n
Tableau de contingence Tableau des effectifs théoriques
Sous l’hypothèse H0, les variables V1 et V2 sont indépendantes, et pour tout i=1,I et
tout j=1,J on doit avoir fij = fi..f.j.
En toute rigueur, l’égalité parfaite fij = fi..f.j n’est pas exigée. On se donne un seuil de
signification α au-delà duquel l’hypothèse H0 serait rejetée.
• On choisit souvent α=0.05 (ou 5%). Mais selon le problème posé, d’autres valeurs
de α peuvent être utilisées.
I représente l’intensité de la liaison entre les variables. Il mesure l’écart entre les
probabilités observées et les probabilités théoriques. Elle permettra par la suite de
caractériser l’inertie des données.
J. DABOUNOU - FST DE SETTAT AFC001 - 12
Distance du Khi2 (Exemple)
Données observées :
gris marron noir TOTAL Cm gris marron noir Cm
probabilités
armoire 1 3 5 9 0.300 armoire 0,033 0,100 0,167 0.300
2 6 3 bureau 0,067 0,200 0,100 0.367
bureau 11 0.367
5 4 1 chaise 0,167 0,133 0,033 0.333
chaise 10 0.333 contingence Lm 0,267 0,433 0,300 1
TOTAL 8 13 9 30 1
Lm 0,267 0,433 0,300 1
Données théoriques :
gris marron noir TOTAL Cm gris marron noir Cm
probabilités
armoire 2,40 3,90 2,70 9 0.300 armoire 0,08 0,13 0,09 0.300
bureau 2,93 4,77 3,30 11 0.367 bureau 0,10 0,16 0,11 0.367
chaise 2,67 4,33 3,00 10 0.333 chaise 0,09 0,14 0,10 0.333
TOTAL 8 13 9 30 1
contingence Lm 0,267 0,433 0,300 1
Lm 0,267 0,433 0,300 1
Suit une loi du Khi2 à = (I-1)(J-1) degrés de liberté. Il s’agit d’une somme des carrés
des écarts relativisés qui constitue une approximation asymptotique d’une somme des
carrés de distributions normales centrées réduites indépendantes.
Dans la somme 2 ci-dessus nous avons IJ termes. Pour ne garder qu’une somme de
terme indépendants :
1. On retranche I (une colonne) car la somme des effectifs dans chaque ligne est fixe,
2. On retranche J-1 (une ligne) parce que la somme des effectifs dans chaque
colonne est fixe. Noter qu’il reste J-1 colonnes après l’opération précédente.
Ce qui permet d’obtenir termes indépendants.
Si un effectif théorique est inférieur à 5, on peut être amené à regrouper des lignes
(ou des colonnes) et à réinterpréter les modalités correspondantes en conséquence.
La courbe passe par l’origine parce que la probabilité que les effectifs observés
coïncident avec les effectifs théoriques pour une observation aléatoire est nulle.
J. DABOUNOU - FST DE SETTAT AFC001 - 17
Valeur critique pour le test du Khi2
On détermine une valeur critique 2𝑐𝑟𝑖𝑡𝑖𝑞𝑢𝑒 à
l’aide de la table du Khi2 en utilisant le seuil
de signification α et le degré de liberté .
Table du Khi2
J. DABOUNOU - FST DE SETTAT AFC001 - 18
Règles de décision pour le test du Khi2
On détermine ainsi une valeur critique 2𝑐𝑟𝑖𝑡𝑖𝑞𝑢𝑒 qui dépend de la loi de probabilité
utilisée, donc du seuil de signification α et du degré de liberté , pour laquelle :
• Si l’écart observé 2 < 2𝑐𝑟𝑖𝑡𝑖𝑞𝑢𝑒 alors on rejette l’hypothèse H0
• Si l’écart observé 2 2𝑐𝑟𝑖𝑡𝑖𝑞𝑢𝑒 alors on rejette l’hypothèse H0
Accepter H0
Rejeter H0
gris % TOTAL %
armoire 1 0.125 9 0.300
bureau 2 0.250 11 0.367
chaise 5 0.625 10 0.333
TOTAL 8 1 30 1
% 0,267
Les colonnes obtenues pour chaque modalité de la variable « Couleur » sont appelées profils
colonne et seront notées respectivement C1, C2 et C3. La colonne qui correspond à la population
totale s’appelle profil colonne moyen et sera notée Cm.
Pour chaque ligne i, on note ni. = ni1+ni2+ni3, et pour chaque colonne j, on note n.j = n1j+n2j+n3j.
Le ième terme de Cm, noté fi. est donc donné par :
ni. ni1+ni2+ni3 ni1 ni2 ni3
fi. = = = + +
n n n n n
ni1 n.1 ni2 n.2 ni3 n.3
Donc, fi. = + +
n.1 n n.2 n n.3 n
n.1 n.2 n.3
et ainsi, on peut écrire Cm = C1 + C2 + C3
n n n
Cette dernière relation permet de considérer Cm comme une moyenne de C1, C2 et C3, pondérée
n n n
par .1, .2 et .3, que nous allons noter respectivement par la suite f.1, f.2 et f.3.
n n n AFC001 - 21
J. DABOUNOU - FST DE SETTAT
Relation entre profils ligne
Cela doit être répété pour toutes les modalités de la variable « type ».
bureau 2 6 3 11 0.367
L2 0,182 0,545 0,273 1
chaise 5 4 1 10 0.333
L3 0,500 0,400 0,100 1
TOTAL 5 10 9 30 1
Lm 0,167 0,333 0,300 1
On construit aussi des profils ligne notés respectivement L1, L2 et L3 et un profil ligne moyen noté
Lm. On adoptant les notations introduites dans les diapositives précédentes, on montre que :
n1. n2. n3.
Lm = L1 + L + L
n n 2 n 3
On peut écrire alors Cm et Lm sous la forme :
Cm = f.1 C1 +f.2 C2 +f.3 C3
et
Lm = f1. L1 + f2. L2 + f3. L3
Titre du graphique
0,60
0,50
0,40
0,30
0,20
0,10
0,00
gris marron noir
L1 L2 L3 Lm
Modalités de V1
⁞ ⁞ ⁞ ⁞
m1i fi1 fi2 fij fiJ fi.
Pour l’AFC, on représente les points que constituent les lignes du tableau dans l’espace RJ, où J
désigne le nombre de modalités pour la variable V2. On cherche ensuite à projeter ces points dans
un espace de dimension inférieure, comme cela se fait dans l’ACP.
On passe ensuite aux colonnes, et on refait le même processus.
A chaque point Li est associé un poids égal à fi.. Ce poids correspond à la proportion de population
représentée par la ligne Li, or cette proportion est justement fi..
Comme nous l’avons déjà montré, Lm constitue le centre de gravité des points Li auxquels on a
affecté les poids associés.
Lm = f1. L1 + f2. L2 + f3. L3
La somme des termes de chaque profil ligne Li est égale à 1. Ceci est vrai aussi pour le profil ligne
moyen. On en déduit que les profils ligne et le profil ligne moyen appartiennent à l’hyperplan
Donc tous les profils ligne se trouvent dans un hyperplan de dimension J-1. Plus précisément
encore, tous les profiles appartiennent au simplexe de sommets e1=(1,0,…,0), e2=(0,1,…0),…,
eJ=(0,…,1). Ici nous avons J=3 ce qui simplifie beaucoup les choses.
Cette dispersion est évaluée en calculant l’inertie par rapport à Lm du nuage de points Li, dont la
formule est :
I= fi. d Li , Lm 2
On doit donc définir une distance sur l’ensemble des points de l’espace RJ, en tenant compte de
la nature des points Li.
2
1 frj fsj
= −
f.j fr. fs.
j=1,J
Cette dernière écriture est très convenable, puisqu’elle rappelle la distance euclidienne entre Lr et
1
Ls avec une pondération par .
f.j
On définit ainsi une distance appelée de distance de2.
On a :
2
2
1 frj fsj
d2 Lr , Ls = −
f.j fr. fs.
j=1,J
On voit en particulier que, si les deux variables sont indépendantes, donc fij − fi.f.j, pour tout i=1,I
et j=1,J, et ainsi :
d2 Li , Lm 2 = 0
Ce qui veut dire que tous les points du nuage seront confondus avec le profil ligne moyen Lm.
La distance des profils ligne par rapport au profil ligne moyen exprime ainsi la dispersion du
nuage de points, et la formule qui donne l’inertie de ce nuage devient :
I= fi. d Li , Lm 2
i
1 2
= f − fi.f.j
fi.f.j ij
i=1,I j=1,J
On remarque que dans l’expression de l’inertie du nuage de points représentant les profils ligne, i
et j jouent un rôle symétrique. On en déduit, ce qui peut d’ailleurs être démontré directement,
que l’inertie est la même que l’on considère le nuage de points représentant les profils ligne dans
l’espace RJ ou le nuage de points représentant les profils colonne dans l’espace RI.
60ans et plus
0.75
15-24ans
0.50
Profil ligne
moyen
0.25
25-34ans
45-59ans
35-44ans
1 1
𝕝I : le vecteur unitaire de RI : 𝕝I = 1 , et 𝕝 : le vecteur unitaire de RJ : 𝕝 = 1
⋮ J J ⋮
1 1
On a, le profil ligne moyen Lm = 𝐏t 𝕝I et le profil colonne moyen Cm = 𝐏 𝕝J. On rappelle que
f.1 f1.
Lm = f.2 et Cm = f2.
⋮ ⋮
f.J fI.
DI = diag(fi.) et DJ = diag(f.j) : les matrices diagonales dont les éléments diagonaux sont constitués
respectivement des composantes (fi.) de Cm et (f.j) de Lm.
f
De même, C = ( ij )t, la matrice des profils colonne pour notre exemple:
f.j
C1 C2 C3
f11/f.1 f21/f.1 f31/f.1 f41/f.1 f51/f.1
m11 % f11/f.1 f21/f.1 f31/f.1 f41/f.1 f51/f.1
C= f12/f.2 f22/f.2 f32/f.2 f42/f.2 f52/f.2 m12 % f12/f.2 f22/f.2 f32/f.2 f42/f.2 f52/f.2
f13/f.3 f23/f.3 f33/f.3 f43/f.3 f53/f.3 m13 % f13/f.3 f23/f.3 f33/f.3 f43/f.3 f53/f.3
Cm % f1. f2. f3. f4. f5.
L = DI-1 P et C = DJ-1 Pt
1
I= f − fi.f.j 2
fi.f.j ij
i=1,I j=1,J
I représente l’inertie totale du nuage de points formé par les profils ligne.
I1 = fi. GO12i
i=1,I
Or on a :
fij 1
GO1i = <GLi , u1 >2 = ( − f.j) u1,j
fi. f.j
j=1,J
Soit F1 le vecteur dont les composantes sont les projections des Li sur la droite D1. c’est-à-dire les
GO1i, on a :
F1 = (DI−1 P − 𝕝I Ltm ) DJ−1 u1
où Li RJ D1
F(u) = (DI−1 P − 𝕝I Ltm ) DJ−1 𝐮
Sous la contrainte:
u1 O1i
1 2 G
u 2 = uj = ut DJ−1 u = 1
f.j
j=1,J
Or on a : DI 𝕝I = Cm
u1 = arg max ut DJ−1 (P − CmLtm )t DI−1(P − Cm Ltm ) DJ−1 𝐮
u
Ainsi :
• u1 est vecteur propre de 𝐒 = (P − CmLtm )t DI−1(P − Cm Ltm ) DJ−1 associé à une valeur propre 1
On pose :
−1
2
u1 = DJ u1
On peut écrire :
−1 −1
2
DJ (P − Cm Lt )t D −1(P −
m I
t
Cm Lm )DJ2
u1 = 1 u1
−1 −1
2
u1 est vecteur propre de 𝐒 = DJ (P − Cm Lt )t D −1(P −
m I Cm Lm )DJ associé à la valeur propre 1.
t 2
On vérifie facilement que 𝐒 est symétrique définie-positive de rang r égal à celui de P − CmLtm ,
donc diagonalisable avec les valeurs propres positives ou nulles, on note 1 2 … r > 0 et u1,
u2, … ur les vecteurs propres unitaires (pour la métrique euclidienne) associés.
1
2
On en déduit que S admet les mêmes valeurs propres et les vecteurs propres us = DJ us.
On a par ailleurs pour s=1,r: uts DJ−1 us = uts us = 1.
Ce qu’on recherchait dans le problème d’optimisation.
J. DABOUNOU - FST DE SETTAT AFC001 - 44
Inertie totale et inertie expliquée
Nous avions montré que l’inertie totale du nuage de points formé par les profils ligne est donnée
par l’expression :
I = tr(DI−1(P − Cm Ltm ) DJ−1(P − Cm Ltm )t)
= tr((P − Cm Ltm )t DI−1(P − Cm Ltm ) DJ−1)
Pour une matrice diagonalisable, la trace est égale à la somme des valeurs propres. Donc
I = 1+ 2 + … + r
Les composantes principales portées par le s-ième axe principal (vecteur us) sont données par :
Fs = DI−1(P − Cm Ltm ) DJ−1 us
Nous rappelons que les composantes principales sont constituées à partir des projections du
nuage de points sur l’axe principal. L’inertie expliquée par l’axe s est alors :
s = Fts DI Fs
Sous la contrainte:
u1 N1i
1 2 G
v 2 = vi = v t DI−1 v = 1
fi.
i=1,I
= 1+ 2 + … + r
Les composantes principales portées par le s-ième axe principal (vecteur vs) sont données par :
Gs = DJ−1(Pt − Lm Ctm ) DI−1 vs
Gs = DJ−1(P − CmLtm )t DI−1 vs
−1 −1 −1 −1
2
où 𝐒 = DJ (P − Cm Lt )t D −1(P −
m I
t
Cm Lm )DJ2
où T = DI (P − CmLm ) DJ (P − Cm
2 t −1
Lt )t D 2
m I
−1 −1 −1 −1
t t
On pose : X =DI (P − Cm Lm )DJ . On a:
2 2
On pose : X =DI (P − Cm Lm )DJ . On a:
2 2
t t t t
𝐒 = X X = U D U T = X X = V D V
Avec U = u1 | u2 | … | ur et D = diag(s ) Avec V = v1 | v2 | … | vr et D = diag(s )
1 1
t
Fs = DI−1(P − Cm Lm ) DJ us et on pose : Fs = DI Fs
−1 2 −1
Gs = DJ (P − Cm Lt )t D −1 v
m I s et on pose : Gs = D2J Gs
t t t
On voit facilement que: X us = Fs et s = Fts DI Fs = Fs F On voit facilement que: X vs = Gs et s = Gts DJ Gs = Gs G
t
F = X U avec F = F1 | F2 | … | Fr G = X V avec G = G1 | G2 | … | Gr
Les composantes principales s’obtiennent alors par : Les composantes principales s’obtiennent alors par :
−1 −1
2
F = DI F G = DJ2 G
Cette décomposition aurait d’ailleurs pu être obtenue directement par la décomposition en valeurs
singulières de X (ou SVD: Singular Value Decomposition). Mais nous avons préféré une construction
directe des matrices pour en saisir la signification.
Comme les vecteurs propres us, s=1,r sont orthogonaux et de norme 1, on peut écrire :
r
X= s vs uts
s=1
v1,1 u1,1 u1,2 u1,J v2,1 u2,1 u2,2 u2,J vr,1 ur,1 ur,2 ur,J
v1,2 v2,2 vr,2
X = 1 ⸽ + 2 ⸽ + … + r ⸽
On voit facilement que cette factorisation de X permet de s’écrire sous une forme plus compacte :
v1,1 v2,1 … vr,1
1 0 … 0 u1,1 u1,2 … u1,J
v1,2 v2,2 … vr,2
0 2 … 0 u2,1 u2,2 … u2,J
X= ⋮ ⋱ ⋮ ⋮ … ⋮
⸽ ⸽ ⸽ ⸽
0 0 … r ur,1 ur,2 … ur,J
t
X = V ΣU
J. DABOUNOU - FST DE SETTAT AFC001 - 55
Factorisation et reconstruction des données
On peut négliger des valeurs propres et se limiter à (s) pour s=1,k avec k << r, si l’inertie cumulée
est importante. Cela permet de réduire considérablement la dimensionnalité des données.
Σ U t
X
IxJ
=V Ixk
Ixk kxJ
On peut aussi se limiter aux deux premiers axes principaux pour visualiser les liaisons entre les
variables sur un plan.
Σ t
U
X =V Ixk kxJ
IxJ Ixk
t
On procède de même pour T = X X .
F = DI F et G = DJ G.
2 2