Professional Documents
Culture Documents
Ricco RAKOTOMALALA
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 1
PLAN
1. Position du problème
2. Détermination des variables discriminantes (axes factoriels)
3. Analyse des résultats
4. Etude de cas
5. Classement (prédiction) avec l’analyse discriminante
6. Les logiciels (Tanagra, R avec lda, SAS avec PROC CANDISC)
7. Conclusion
8. Bibliographie
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 2
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 3
Analyse discriminante descriptive - Objectif
Une population est subdivisée en K groupes (classes), elle est décrite par
une série de J caractères (variables) quantitatives.
Annee Temperature Soleil Chaleur Pluie Qualite
1924 3064 1201 10 361 medium
Ex. Les vins de Bordeaux 1925 3000 1053 11 338 bad
1926 3155 1133 19 393 medium
(Tenenhaus, 2006; page 353)
1927 3085 970 4 467 bad
Les lignes correspondent aux 1928 3245 1258 36 294 good
années (1924 à 1957) 1929 3267 1386 35 225 good
Groupe
Description
d’appartenance
Objectif(s) :
(1) Descriptif (Schéma d’explication) : Mettre en évidence les caractéristiques qui permettent
de distinguer au mieux les groupes Objectif principal
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 4
Analyse discriminante descriptive - Démarche
Principe : Trouver une succession de combinaisons linéaires des variables initiales (on parle de
variables latentes ou variables discriminantes, elles sont deux à deux orthogonales) qui permet de
distinguer au mieux (au sens des barycentres) les groupes analyse factorielle discriminante
Soleil
∑ (z
i
i − z ) = ∑ nk (z k − z ) + ∑∑ ( zik − z k )
2
k
2
k i
2
1250
1150
bad
good
1050
medium
SCT = SCE + SCR 950
Temperature
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 5
Analyse discriminante descriptive – Démarche (suite)
Un indicateur de qualité de la séparation des Trouver les coefficients (a1,a2) qui définissent
la variable discriminante Z (ou axe factoriel)
groupes à maximiser : le rapport de corrélation
maximisant le rapport de corrélation
SCE 0 ≤ η z2, y ≤ 1
η z2, y = avec Le nombre d’axes factoriels est égal à M =
SCT
MIN(J, K-1)
1 discrimination parfaite, les points associés aux groupes sont
agglutinés sur leurs barycentres (SCR = 0)
0 discrimination impossible, barycentres confondus (SCE = 0) Les axes sont deux à deux orthogonaux
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 6
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 7
Analyse discriminante descriptive a1 « a » est le vecteur des coefficients
Formulation mathématique a = M permettant de définir le premier
a
J axe factoriel Z c.-à-d. z = a1 ( x1 − x1 ) + L + a J ( x J − x J )
SCT = a'Va
∑ (xil − xl )(xic − xc )
1 [à un facteur (1/n) près]
V → vlc =
n i
Matrice de variance covariance intraclasses
W → wlc =
1
∑ ∑ (xil ,k − xl ,k )(xic ,k − xc,k ) SCR = a'Wa
n k i: yi = k
Matrice de variance covariance interclasses
B → blc = ∑
nk
(xl ,k − xl )(xc,k − xc ) SCE = a ' Ba
k n
Théorème d’Huyghens V=B+W
a ' Ba
max ⇔ max η z2, y
a a 'Va a
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 8
Analyse discriminante descriptive
Solution mathématique
L( a ) = a ' Ba − λ (a 'Va − 1)
∂L ( a )
= 0 ⇒ Ba = λVa λ est la première valeur propre de V-1B
∂a
« a » est le vecteur propre associé
⇒ V −1 Ba = λa
De manière générale, les axes factoriels de l’ADD sont définis par les valeurs
et vecteurs propres de la matrice V-1B.
Au plus, nous avons M = min(K-1, J) valeurs propres non nulles, et donc autant d’axes
factoriels.
2.0
1.5
1.0
medium
0.5
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 10
Analyse discriminante descriptive
Solution mathématique (bis) – Logiciels anglo-saxons
Les axes factoriels de l’AFD sont définis par les valeurs et vecteurs propres de la matrice W-1B.
Les vecteurs propres « a » de W-1B sont identiques à ceux de V-1B les axes factoriels sont
définis de la même manière.
Root Eigenvalue Proportion Canonical R Ex. le 1er axe explique 98% de l’écartement entre les barycentres
dans l’espace initial : 98% = 2.6432 / (2.6432 + 0.0534).
1 2.6432 0.9802 0.8518
Les 2 premiers axes expliquent 100% de cet écartement.
2 0.0534 1 0.2251
Clairement, le 1er axe suffit largement ici !!!
∏ (1 − η )
K −1
Plus la statistique prend une valeur faible, plus
Statistique de test Λq = 2
m intéressants sont les axes factoriels.
m= K −q
Dans le cadre de populations gaussiennes [c.-à-d. X = (X1,…,XJ) suit une loi multi normale dans chaque sous-
groupe], on peut utiliser les transformations de Bartlett (loi du KHI-2) et de Rao (loi de Fisher)
Wilks
Root Eigenvalue Proportion Canonical R CHI-2 d.f. p-value
Lambda
1 2.6432 0.9802 0.8518 0.260568 41.0191 4 0
2 0.0534 1 0.2251 0.949308 1.5867 1 0.207802
On neRicco
peutRakotomalala
pas retirer les deux premiers axes à 5% ; le second seul en revanche n’est pas significatif.
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 13
Analyse discriminante descriptive – Tester tous les axes
Un test particulier
Test MANOVA c.-à-d. test d’égalité des
H0 : les rapports de corrélation sont tous nuls
moyennes multidimensionnelles
⇔ H0 : η1 = L = η K −1 = 0
2 2
µ1,1 µ1, K
⇔ H0 : il est impossible de discerner les groupes
H0 : M = L = M Simultanément
dans l’espace de représentation µ µ
J ,1 J ,K
( )
K −1 Plus le LAMBDA est petit, plus les (moyennes des)
Statistique de test :
Λ = ∏ 1 −η 2
m groupes sont écartés dans l’espace de représentation
Le LAMBDA de Wilks m =1 (0 ≤ Λ ≤ 1).
Moyennes conditionnelles
Temperature vs. Soleil
1550
1450
LAMBDA de Wilks = 0.26
1350
Transformation de Bartlett Conclusion : Une des
Soleil
1250
bad
KHI-2 = 41.02 ; p-value < 0.0001 moyennes (barycentres)
1150 good
conditionnelles au moins
medium
1050 s’écarte des autres
Transformation de Rao
950
2800 3000 3200 3400 3600 F = 14.39 ; p-value < 0.0001
Temperature
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 14
Analyse discriminante descriptive – Interprétation des axes
Coefficients canoniques bruts et normalisés (intra-classes)
Coefficients bruts
Z = a1 ( x1 − x1 ) + L + a J ( x J − x J )
Pour un axe, les vecteurs propres permettent de
définir les coefficients de projection c.-à-d. ils = a0 + a1 x1 + L + a J x J
permettent de calculer le score (coordonnée) Coefficients non interprétables (comparables) parce variables
des individus sur l’axe. non définies dans les mêmes unités.
β j = a j ×σ j n−K
j
k i: y i = k
ij , k
Corrélation brute entre les variables et les axes factoriels, sans tenir compte de la structuration en
classes. On peut même produire un « cercle des corrélations » comme en ACP
2.0
Correlation scatterplot (CDA_1_Axis_1 vs. CDA_1_Axis_2)
Descriptors Total 1
0.9
1.5
Temperature 0.9334
0.8
0.7
Sun 0.9168
0.6 1.0
0.5
0.4
Soleil
0.5
0.3
0.2
CDA_1_Axis_2
0.1 0.0
0 -4.0 -3.0 -2.0 -1.0 0.0 1.0 2.0 3.0 4.0 5.0
-0.1
-0.2
-0.5
-0.3
Temperature
-0.4 -1.0
-0.5
-0.6
-0.7 -1.5
-0.8
-0.9 bad
-2.0
-1 good
-1 -0.9 -0.8-0.7 -0.6 -0.5 -0.4 -0.3-0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
CDA_1_Axis_1 medium
-2.5
Le 1er axe correspond à la conjonction des journées chaudes Les années où il a fait chaud avec beaucoup de
(température) et des durées d’ensoleillement élevées soleil, le millésime a été bon.
Permet d’interpréter simplement les axes, caractériser l’importance des variables. A privilégier.
A comparer avec les coefficients standardisés, si signes différents colinéarité entre les variables
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 16
Analyse discriminante descriptive – Interprétation des axes
Structure canonique intra-classes
Corrélation après centrage des variables et des axes sur les sous-populations. Permet de
caractériser le lien après avoir annihilé la structuration en classes.
Bof.
3 600 200
3 500
150
3 400
100
Température
3 300
Température
50
3 200 bad
3 100 0 good
bad
medium
3 000 good -50
2 900 medium
-100
2 800
-4.00 -2.00 0.00 2.00 4.00 6.00 -150
Axe 1 Axe 1
r = 0.9334 rw = 0.8134
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 17
Analyse discriminante descriptive – Interprétation des axes
Structure canonique inter-classes
Corrélation après réduction des variables et des axes aux moyennes conditionnelles. Permet d’exalter
la structuration en classes.
Séduisant en théorie. Difficile à lire en pratique (ex. « 1 » ou « -1 » systématiquement pour K = 2).
3 600 3 350
3 500
3 300
3 400
3 250
Température
3 300
Température
3 200
3 200 bad
r = 0.9334 rB = 0.9949
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 18
Analyse discriminante descriptive – Interprétation des axes
Moyenne conditionnelles sur les axes
Calculer les moyennes conditionnelles sur les axes.
Permet de comprendre les groupes bien discriminés sur un axe.
1
2
1
0
-1
-1
-2
-2
-3 -2 -1 0 1 2 3 4
-4 -3 -2 -1 0 1 2
Qualite Root n°1 Root n°2 TYPE Root n°1 Root n°2
bad -1.804187 0.153917 KIRSCH 3.440412 0.031891
good 1.978348 0.151489 POIRE -1.115293 0.633275
medium -0.01015 -0.3194 M IRAB -0.981677 -0.674906
Sq Canonical corr. 0.725517 0.050692 Sq Canonical corr. 0.789898 0.2544
Les 3 groupes bien discriminés sur le 1er axe KIRSCH vs. les deux autres sur le 1er axe
Rien d’intéressant sur le 2nd axe (rapport de corrélation très faible) POIRE vs. MIRAB sur le 2nd (rapport de corrélation reste élevé)
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 19
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 20
Vins de Bordeaux - Description rapide des données
3500
corrélées (cf. matrice des corrélations)
3300
Temperature
3100
(Rouge : Bad ; bleu : Medium ; vert :
2900
Good). On distingue les groupes, surtout
1400
40
même selon (température, soleil, chaleur)
30
Heat et (pluie).
20
10
Il y a un point manifestement atypique,
via la variable « Rain » (pluie)
500
Rain
300
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 21
Vins de Bordeaux – Discrimination selon les variables
Prises individuellement
Temperature Sun
3500
1400
3300
1200
Température, Soleil et Chaleur
3100
1000
2900
600
30
500
20
400
300
10
η 2
x, y = 0.50 η 2
x, y= 0.35
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 22
Vins de Bordeaux – Résultats de l’AFD
Le 2nd axe ne permet pas discerner
Roots and Wilks' Lambda les groupes, on peut la négliger.
Wilks
Root Eigenvalue Proportion Canonical R CHI-2 d.f. p-value
Lambda 96% du pouvoir discriminatoire de
1 3.27886 0.95945 0.875382 0.205263 46.7122 8 0
2 0.13857 1 0.348867 0.878292 3.8284 3 0.280599 l’AFD est porté par le 1er axe. Nous
allons y concentrer notre analyse.
(X1) CDA_1_Axis_1 vs. (X2) CDA_1_Axis_2 by (Y) Qualite
0
Sur le 1er axe, nous distinguons les 3 groupes. Les
moyennes conditionnelles nous indique (de gauche
-1
à droite) : les « bons » vins, les « moyens » et les
-2
« mauvais ».
-4 -3 -2 -1 0 1 2 3
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 23
Vins de Bordeaux – Caractérisation des groupes
Via la caractérisation des axes L’axe oppose la température et l’ensoleillement
Canonical Discriminant Function (plus ils sont élevés, meilleur sera le vin) et la pluie
Coefficients Unstandardized Standardized (plus il pleut, mauvais sera le vin ; l’impact est
Attribute Root n°1 Root n°2 Root n°1 Root n°2
Temperature -0.008575 0.000046 -0.750926 0.004054
moindre que pour les autres variables).
Soleil -0.006781 0.005335 -0.547648 0.430858
Chaleur 0.027083 -0.127772 0.198448 -0.936227
Attention, le rôle de « chaleur » est ambigu. En
Pluie 0.005872 -0.006181 0.445572 -0.469036
constant 32.911354 -2.167589 - réalité, il est fortement corrélé avec
« température » (cf. la matrice des corrélations).
Factor Structure Matrix - Correlations
Root Root n°1 Root n°2 « Chaleur » influe positivement sur la qualité mais,
Descriptors Total Within Between Total Within Between
Temperature -0.9006 -0.7242 -0.9865 -0.3748 -0.5843 -0.1636
par rapport à « température », son apport
Soleil -0.8967 -0.7013 -0.9987 0.1162 0.1761 0.0516 d’information additionnel dans l’explication de la
Chaleur -0.7705 -0.5254 -0.9565 -0.59 -0.7799 -0.2919
qualité est négligeable. Le rapport de corrélation
Pluie 0.6628 0.3982 0.9772 -0.3613 -0.4208 -0.2123
conditionnel (cf. Tenenhaus, page 376) est η 2
x3 , y / x1 = 0.0348
0.9
0.8
0.7
1
0.6
0.5
0.4
0.3 0
0.2
CDA_1_Axis_2
Soleil
0.1
0
-1
-0.1
-0.2
-0.3 Pluie
Temperature
-0.4 -2
-0.5
Chaleur -4 -3 -2 -1 0 1 2 3
-0.6
-0.7 medium bad good
-0.8
-0.9
-1
-1 -0.9-0.8-0.7-0.6-0.5-0.4-0.3-0.2-0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
CDA_1_Axis_1
Coordonnées des individus + Groupe
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ d’appartenance. Cercle des corrélations. 24
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 25
Classement de nouveaux individus – Règle d’affectation
Préambule
L’analyse discriminante linéaire (prédictive) propose un cadre théorique plus séduisant pour la
prédiction. Notamment en explicitant les hypothèses probabilistes.
Néanmoins, on peut s’appuyer sur les résultats de l’AFD pour classer les individus, en s’appuyant
sur des règles géométriques.
-1.5
-2.0
-2.5
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 26
Classement de nouveaux individus – AFD sur Température (X1) et Soleil (X2)
X1 = 3000 – X2 = 1100 – Millésime 1958 (Basé sur les prévisions météo)
3. Conclusion -1.0
-2.5
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 27
Classement de nouveaux individus
Distance euclidienne dans l’espace factoriel = distance de Mahalanobis dans l’espace initial
On peut calculer la même distance que précédemment dans l’espace initial en utilisant la métrique
W-1 : on parle de distance de MAHALANOBIS.
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 28
Classement de nouveaux individus
Produire une fonction de classement explicite Minimisation par rapport à « k », donc on peut supprimer
tout ce qui n’en dépend pas… et on multiplie par -0.5 on
Pour un individu « i » à classer, on calcule sa distance passe à une maximisation
euclidienne par rapport au barycentre de la classe « k »
dans l’espace défini par les Q axes factoriels (Q = M si on k * = arg min d i2 ( k ) ⇔ k * = arg max f i (k )
k k
prend tous les axes)
d ( k ) = ∑ (zim − z m , k )
Q Q
1
f i ( k ) = ∑ z m , k × zim − z m2 ,k
2 2
i
m =1 m =1 2
Q Q Q
1 Fonction canonique
= ∑ zim
2
+ z m2 ,k − 2 zim z m , k = ∑ z m ,k × zim − ∑ z m2 ,k
m =1 m =1 2 m =1 pour le facteur « m »
z m = a0 m + a1m x1 + a2 m x2 + L + a Jm x J
f (bad ) = 2.4815
Conclusion : le millésime 1958
Pour l’individu (x1 = 3000; x2 = 1100) f ( good ) = −6.5447
sera un « bad »
f (medium ) = 0.0230
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 29
Classement de nouveaux individus
Quel rapport avec l’analyse discriminante linéaire [ADL] (prédictive) ?
Equivalence
Certains logiciels font par défaut cette hypothèse, même pour l’ADL (ex. PROC
DISCRIM de SAS)
Introduire la correction avec les probabilités estimées sur les données permet de
réduire le taux d’erreur (cf. Hastie et al., 2001 ; page 95)
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 30
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 31
AFD avec TANAGRA
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 32
AFD avec TANAGRA (X1) CDA_1_Axis_1 vs. (X2) CDA_1_Axis_2 by (Y) Quality
Représentations graphiques
1
0
Projection dans le 1er plan factoriel
-1
-2
-4 -3 -2 -1 0 1 2 3
CDA_1_Axis_2
0.1
0
-0.1
Cercle des corrélations -0.2
-0.3 Rain
Temperature
-0.4
-0.5
Heat
-0.6
-0.7
-0.8
-0.9
-1
-1 -0.9 -0.8 -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Ricco Rakotomalala CDA_1_Axis_1
3
bad
2
good
Résultats initiaux un peu succincts. good
medium bad
good
bad
1
medium bad
good
Mais en programmant un peu, on peut
LD2
medium mediumgood bad badbad
0
good good bad
-1
bad
medium
medium
medium bad
medium
-2
Anglo-saxon. Utilise [1/(n-1)] pour -3
LD1
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 34
Carte factorielle
3
2
AFD avec R
1
Un peu plus loin avec R
Axe.2
good bad
0
medium
Un peu de programmation et le
-1
résultat en vaut la peine…
-2
-3
-4 -2 0 2 4
Axe.1
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 35
AFD avec SAS
La procédure CANDISC
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 36
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 37
Conclusion
Outils pour l’évaluation et l’interprétation des résultats (significativité des axes, coefficients
canoniques standardisés, structures canoniques…)
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 38
Bibliographie
Ricco Rakotomalala
Tutoriels Tanagra - http://tutoriels-data-mining.blogspot.fr/ 39