Acp Cours

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 49

Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Analyse en Composantes Principales


N. Jégou

Université Rennes 2

Master 1 Géographie
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Plan du cours

• Introduction

• Nuages Np et Nn

• La méthode

• Interprétation
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Bibliographie

• Ouvrages
• Pagès J., Statistique générale pour utilisateurs :
1) Méthodologie, PUR (2010)
• Pagès J., Analyse Factorielle multiple avec R
EDP Sciences (2013)
• Cornillon et al., Statistique avec R
PUR (2012)
• Vidéos - et Tutoriels R sur la page d’Agrocampus Ouest
http://math.agrocampus-ouest.fr/infoglueDeliverLive/enseignement/support2cours/videos

• Cours d’ACP
https://www.youtube.com/watch?v=TAaAr9OM8rc&list=PLD5F63A877B376200
• Utilisation de R
https://www.youtube.com/watch?v=1QPRsg3Bxok
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Motivations

L’Analyse en Composantes Principales (ACP) est la méthode de


base en statistique exploratoire multidimensionnelle (ou analyse des
données)
• Multidimensionnelle : l’analyse porte sur plusieurs variables
• Exploratoire : descriptive (par opposition à inférentielle)

Il s’agit de résumer l’information portant sur plusieurs variables en


• faisant émerger des liaisons entre variables
• formant des groupes d’individus se ressemblant
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Les données en ACP

• En ACP les données se présentent dans un tableau X à n


lignes et p colonnes où
• chaque ligne représente un individu
• chaque colonne représente une variable

• Les variables sont quantitatives : la matrice X est constituée


de valeurs numériques
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Les données en ACP

X est une matrice n × p de valeurs numériques : X est une matrice


n × p de valeurs numériques :
 
x11 . . . . . x1p
 x21 . . . . . x2p 
 
 . . . . . . . 
X = . . .

 . . . .  
 . . . . . . . 
xn1 . . . . . xnp
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Les données en ACP

Un individu est un élément de Rp


Le i ème individu :
 
x11 . . . . . x1p
 x21 . . . . . x2p 
 
 . . . . . . . 
X = xi1 .

 . . xij . xip 

 . . . . . . . 
xn1 . . . . . xnp
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Les données en ACP

Une variable est un élément de Rn


La j ème variable :
 
x11 . . . x1j . x1p
 x21 . . . . . x2p 
 
 . . . . . . . 
X = .

 . . . xij . .  
 . . . . . . . 
xn1 . . . xnj . xnp
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données Températures

• On dispose des p = 12 températures mensuelles pour n = 35


villes Européennes

• Sont par ailleurs renseignées les variables


• température moyenne annuelle
• amplitude de température
• latitude
• longitude
• région (qualitative à 4 modalités)
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données Températures

> don <- read.table("temperat.csv",sep=";",


+ dec=".",header=TRUE,row.names=1)

> dim(don)
[1] 35 17

> names(don)
[1] "Janvier" "Fevrier" "Mars" "Avril" "Mai" "Juin"
[7] "Juillet" "Aout" "Septembre" "Octobre" "Novembre"
[12] "Decembre"
[13] "Moyenne" "Amplitude" "Latitude" "Longitude" "Region"

> rownames(don)
[1] "Amsterdam" "Athenes" "Berlin" "Bruxelles"
[5] "Budapest" "Copenhague" "Dublin" "Helsinki"
[9] "Kiev" "Cracovie" "Lisbonne" "Londres"
[13] "Madrid" "Minsk" "Moscou" "Oslo"
[17] "Paris" "Prague" "Reykjavik" "Rome"
[21] "Sarajevo" "Sofia" "Stockholm" "Anvers"
[25] "Barcelone" "Bordeaux" "Edimbourg" "Francfort"
[29] "Geneve" "Genes" "Milan" "Palerme"
[33] "Seville" "St. Petersbourg" "Zurich"
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données Températures

• Nous ne considérons ici que les températures mensuelles


(p = 12)
• Les individus sont les villes
• Un individu est décrit par ses p = 12 valeurs : c’est un
élément de R12
• Les variables sont les températures mensuelles
• Une variable est décrite par ses valeurs sur les n = 35 individus
• Une variable est un élément de R35
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données centrées
• Moyennes par colonnes :

x . . . x1j . x1p 
11
x21 . . . . . x2p 
 . . . . . . . 
 
 . . . . xij . . 
 
. . . . . . .
 
xn1 . . . xnj . xnp
↓ ↓ ↓ ↓ ↓ ↓ ↓
x̄1 . . . x̄j . x̄p

> apply(don[,1:12],FUN=mean,MARGIN=2)

Janvier Fevrier Mars Avril Mai Juin


1.34571 2.21714 5.228571 9.28285 13.9114 17.414286

Juillet Aout Septembre Octobre Novembre Decembre


19.622857 18.98000 15.631429 11.00285 6.065714 2.880000
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données centrées

• Centrage des données :

x11 − x̄1 . x1j − x̄j . x1p − x̄p


 
.

 x21 − x̄1 . . . . x2p − x̄p 

 . . . . . . 
X = 

 . . . xij − x̄j . . 

 . . . . . . 
xn1 − x̄1 . . xnj − x̄j . xnp − x̄p

• A Paris, la température en janvier est plus élevée que la


moyenne, pas en août :
> don["Paris",1:12][c("Janvier","Aout")]-apply(don[,1:12],FUN=mean,MARGIN=2)[c("Janvier","Aout")]

Janvier Aout
Paris 2.354286 -0.28
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Ecart-type
• On peut calculer l’écart-type pour chaque variable :

x . . . x1j . x1p 
11
x21 . . . . . x2p 
 . . . . . . . 
 
 . . . . xij . . 
 
. . . . . . .
 
xn1 . . . xnj . xnp
↓ ↓ ↓ ↓ ↓ ↓ ↓
σ1 . . . σj . σp

• Il y a plus de variabilité de température en janvier qu’en mai :


> apply(don[,1:12],FUN=sd,MARGIN=2)[c("Janvier","Mai")]
Janvier Mai
5.502157 3.273582
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données centrées-réduites
• Centrage puis réduction :

(x11 − x̄1 )/σ1 . (x1j − x̄j )/σj . (x1p − x̄p )/σp


 
.

 (x21 − x̄1 )/σ1 . . . . (x2p − x̄p )/σp 

 . . . . . . 
X = 

 . . . (xij − x̄j )/σj . . 

 . . . . . . 
(xn1 − x̄1 )/σ1 . . (xnj − x̄j )/σj . (xnp − x̄p )/σp

• A Reykjavik, la température en mai est beaucoup plus froide


que la moyenne :
> scale(don[,1:12])["Reykjavik",c("Mai","Decembre")]
Mai Decembre
-2.2640122 -0.5395164
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Objectifs
• Nous considérons X centrée-réduite (ACP normée)
• Le tableau X peut être analysé à travers ses lignes (les
individus) ou à travers ses colonnes (les variables)
• ⇒ résumer l’information en gardant à l’esprit cette dualité
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Objectifs
• Nous considérons X centrée-réduite (ACP normée)
• Le tableau X peut être analysé à travers ses lignes (les
individus) ou à travers ses colonnes (les variables)
• ⇒ résumer l’information en gardant à l’esprit cette dualité
• Typologie des individus
• Il existe une variabilité de températures entre les individus
• ⇒ former des groupes d’individus semblables
• Termes clé : ressemblance
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Objectifs
• Nous considérons X centrée-réduite (ACP normée)
• Le tableau X peut être analysé à travers ses lignes (les
individus) ou à travers ses colonnes (les variables)
• ⇒ résumer l’information en gardant à l’esprit cette dualité
• Typologie des individus
• Il existe une variabilité de températures entre les individus
• ⇒ former des groupes d’individus semblables
• Termes clé : ressemblance
• Typologie des variables
• Il existe des variables liées entre elles
• ⇒ former des groupes de variables liées
• Termes clé : liaison - corrélation
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Objectifs
• Nous considérons X centrée-réduite (ACP normée)
• Le tableau X peut être analysé à travers ses lignes (les
individus) ou à travers ses colonnes (les variables)
• ⇒ résumer l’information en gardant à l’esprit cette dualité
• Typologie des individus
• Il existe une variabilité de températures entre les individus
• ⇒ former des groupes d’individus semblables
• Termes clé : ressemblance
• Typologie des variables
• Il existe des variables liées entre elles
• ⇒ former des groupes de variables liées
• Termes clé : liaison - corrélation
• Dualité : Quelles (groupes de) variables expliquent le plus la
variabilité inter-individus ?
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Nuage Np des individus : n points de Rp


• Un individu (ville - ligne) est un point de Rp (espace à p
dimensions)
• Nuage Np des individus : nuage de n points dans Rp
• La “Ville” moyenne est le centre de gravité G du nuage
• Analogie avec la géométrie de R2 , R3
Chaque axe est associé à une variable :
Axe Fevrier

y4 6= y1 , y2 , y3 M4 (x4 , y4 )

M1 (x1 , y1 )
y1 ≈ y2 ≈ y3
M3 (x3 , y3 )
M2 (x2 , y2 )

x1 ≈ x2 x3 ≈ x4 Axe Janvier
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Information

• Identification des groupes de points proches


• Identification de points isolés

⇒ dans quelles directions (i.e sur quelles variables) ?

• Identification de la forme du nuage


• Des directions d’allongements en particulier
⇒ concept clé : distances entre points
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Rappel : Distance dans R2

y1 M1 (x1 , y1 )
q
d(M1 , M2 ) = (x2 − x1 )2 + (y2 − y1 )2
Variable 2

y2 M2 (x2 , y2 )

x1 x2

Variable 1
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Distance dans Rp
• Analogie pour calculer la distance entre points de Rp :
 
x11 . . . . . x1p

 x21 . . . . . x2p 


 xi1 . . . xij . xip 

X =
 . . . . . . .  

 xl1 . . . xlj . xlp 

 . . . . . . . 
xn1 . . . . . xnp

• Distance entre individu i et individu l :


p
X
d 2 (i, l) = (xij − xlj )2
j=1
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

“Distance” entre villes

• Amsterdam est plus proche de Paris que d’Athènes en terme


de profil de températures :
> sum((don["Amsterdam",1:12]-don["Paris",1:12])ˆ2)

[1] 21.89

> sum((don["Amsterdam",1:12]-don["Athenes",1:12])ˆ2)

[1] 786.72

• Une quantification de l’information sur l’ensemble des


distances : la somme (des carrés) des distances au centre de
gravité :
Xn X p
(xij − x̄j )2
i=1 j=1
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Nuage Nn des variables : p vecteurs de Rn


• Une variable (mois - colonne) est ici considérée comme un
vecteur de Rn
• Nuage Nn des variables : p vecteurs dans n R
• Chaque axe est associé à un individu (ville) :

Athenes

Fevrier
x22

x21 Janvier

x12 x11 Amsterdam


Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Rappel : Produit scalaire

• La norme d’un vecteur correspond à sa longueur


• Le produit scalaire de deux vecteurs prend en compte
longueurs et l’angle qu’ils forment
−−→ −−→ −−→ −−→
hOM 1 , OM 2 i = kOM 1 k × kOM 2 k cos(θ) = x11 x12 + x21 x22

 
−→ x11
M2 OM 1 =
x22 x21
 
−→ x12
OM 2 =
x22
x21 M1
−→ q
2 + x2
Norme : kOM 1 k = x11 21
θ

O x12 x11
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Rappel : Produit scalaire

Pour des vecteurs de norme 1, la produit scalaire donne une mesure


de l’angle (via le cos) :
−−→ −−→
hOM 1 , OM 2 i = cos(θ) = x11 x12 + x21 x22

 
1 −→ x11
M2 OM 1 =
x21
x22
 
−→ x12
OM 2 =
x22
x21 M1
−→ −→
Norme : kOM 1 k = kOM 2 k = 1
θ
1
O x12 x11
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Coefficient de corrélation
• Rappel (coefficient de) corrélation de 2 variables :
n   
1 X xij − x¯j xik − x¯k
cor(Xj , Xk ) =
n σj σk
i=1

• C’est le produit scalaire des deux colonnes centrées-réduites


associées (à 1/n près) :

. (x1k − x̄k )/σk ↔ . (x1j − x̄j )/σj


 
. .

 . . . ↔ . . . 

 . . . ↔ . . . 
X = 

 . (xik − x̄k )/σk . ↔ . (xij − x̄j )/σj . 

 . . . ↔ . . . 
. (xnk − x̄k )/σk . ↔ . (xnj − x̄j )/σj .
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Interprétation
• X centrée-réduite ⇒ les colonnes ont même norme (≡ norme
1)
• Les p colonnes sont alors dans une (hyper)sphère (de rayon 1)
• L’angle formé par les vecteurs colonnes renseignent la
corrélation sur les variables

V3
cor(V1 , V2 ) ≈ 1

V2
cor(V1 , V4 ) ≈ cor(V2 , V4 ) ≈ −1
V1

cor(V1 , V3 ) ≈ cor(V2 , V3 ) ≈ cor(V4 , V3 ) ≈ 0

V4
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Interprétation
> cor(don[,1:12])["Janvier","Fevrier"]
[1] 0.9900015

> cor(don[,1:12])["Janvier","Juillet"]
[1] 0.5739173
10

25
5

20
Fevrier

Juillet
0

15
−5

−10 −5 0 5 10 −10 −5 0 5 10

Janvier Janvier
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Vers une représentation simplifiée

• Quelle est la meilleure projection ?

• La plus “grande” des deux

⇒ Séparer les points au maximum


Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Inertie

• L’inertie I des données est (à 1/n près) la somme des carrés


des cellules de X centrée-réduite
n p 
1 X X xij − x̄j 2

I=
n σj
i=1 j=1

• C’est la somme (à 1/n près) des carrés des distances au centre


de gravité pour tous les individus
• Quantification de l’information portée par les données

⇒ renseigne sur la “forme” du nuage des individus


Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Décomposition de l’inertie

• Idée : construction d’une suite de p axes permettant de


restituer la forme du nuage
• Construction itérative
• On en déduit des représentations planes simples à interpréter
• Principe de réduction de la dimension

• Basé sur la décomposition de l’inertie


Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Décomposition de l’inertie

• 1er axe : Axe principal de variabilité du nuage

• Direction de Rp qui maximise l’inertie projetée :


Pn 2
On cherche u~1 telle que i=1 GHi maximum

M1
Mn
~
u1
H2
H1
Mi H3
Hi M2
G

Hn M3
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Décomposition de l’inertie

• Projection orthogonale des points sur l’axe 1 :

−6 −4 −2 0 2 4 6

projection des individus sur l’axe 1

• On cherche ensuite un axe u


~2 , orthogonal à u~1 , qui maximise
l’inertie projetée
• C’est le second axe de variabilité du nuage
• Ce 2nd axe présente moins de variabilité que le précédent
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Décomposition de l’inertie
• On itère le procédé en cherchant u
~3 orthogonal au plan u~1 , u~2
qui maximise l’inertie projetée
• ...
• Jusqu’à obtenir p axes orthogonaux
• La part d’inertie projetée sur chaque axe donne la part de
variabilité restituée :
80
60
%age d’inertie
40
20
0

axes
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Plan factoriel
• On privilégie les représentations planes en projetant les
individus sur les plans formés par les axes
• La projection orthogonale sur le plan formé par u
~1 et u~2 est la
meilleure représentation plane du nuage des individus
• Il concentre 98% de l’inertie
4

1er plan factoriel

Moscou
Kiev
2

St. Petersbourg Budapest


Milan
Minsk Athenes
Cracovie Madrid
Prague
Helsinki Sofia
Sarajevo
Dim 2 (11.42%)

Oslo Geneve Rome Seville


Zurich Francfort
0

Stockholm Berlin Genes


Palerme
Copenhague Bordeaux Barcelone
Paris
Anvers Bruxelles
Amsterdam
Londres Lisbonne
−2

Edimbourg
Dublin
Reykjavik
−4

−6 −4 −2 0 2 4 6 8

Dim 1 (86.87%)
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Cercle des corrélations


• Les axes factoriels sont
• des combinaisons linéaires des colonnes de X
• sont des vecteurs de n R
• orthogonaux 2 à 2
• Les cercles de corrélations représentent les projections des
colonnes de X sur les plans formés par ces axes
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Aide à l’interprétation

Aucune interprétation
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Aide à l’interprétation

Non corrélation
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Aide à l’interprétation
Corrélation positive Corrélation négative
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Exemple : effet taille


• Toutes les variables sont corrélées positivement : effet taille
• ⇒ la plupart des villes sont ou chaudes ou froides toute l’année

1.0
0.5 Variables factor map (PCA)

Juin
Juillet
Dim 2 (11.42%)

Aout
Mai

Septembre
Avril
0.0

Octobre

Novembre
Mars

Fevrier
Decembre
−0.5

Janvier
−1.0

−1.0 −0.5 0.0 0.5 1.0


Dim 1 (86.87%)
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Aide à l’interprétation

Variables → Individus

Faibles valeurs de X3
Fortes valeurs de X4 et X5 Faibles valeurs de X3
faibles valeurs de X1 et X2

Fortes valeurs
Fortes valeurs de de X1 et X2 et faibles
X4 et X5 et faibles valeurs de X4 et X5
X5 X1 valeurs de X1 et X2

X2
X4

Fortes valeurs
de X1 et X2 et faibles
valeurs de X4 et X5
Fortes valeurs de X3

X3

Fortes valeurs de X3
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Package FactoMineR
> library(FactoMineR)
> res.pca <- PCA(don[,1:12])
1.0

5
0.5

Juillet Juin
Aout Moscou
Mai St. Petersbourg Kiev Budapest
Milan
Dim 2 (11.42%)

Dim 2 (11.42%)
Cracovie Sofia Athenes
Septembre Helsinki Minsk Prague
Francfort Madrid Rome Seville
Avril StockholmOslo Zurich Sarajevo Genes Palerme

0
Geneve
0.0

Berlin Paris
Copenhague Anvers Bordeaux Barcelone
Octobre Bruxelles
Londres Amsterdam Lisbonne
Novembre
Edimbourg
Mars
Decembre Reykjavik Dublin
Fevrier
−0.5

Janvier

−5
−1.0

−10

−1.0 −0.5 0.0 0.5 1.0 −6 −4 −2 0 2 4 6 8

Dim 1 (86.87%) Dim 1 (86.87%)


Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Données températures

• Le premier plan principal explique la (quasi)totalité de


l’information : 98.25%. Inutile d’analyser d’autres axes
• Typologie des variables
• Effet taille
• Axe 2 : opposition été/hiver
• Typologie des individus
• Villes chaudes toute l’année : Seville, Athènes,...
• Villes froides toute l’année : Helsinki, St-Petersbourg...
• Villes très froides l’hiver : Moscou, Kiev,...
• Villes particulièrement fraiches l’été : Reykjavic, Edimbourg...
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Individus supplémentaires (illustratifs)

• Ils ne servent pas à calculer les axes


• Ils sont représentés (projetés) après

• Exemple : centre de gravité d’un groupe d’individus


> summary(don[,"Region"])
Est Nord Ouest Sud
8 8 9 10
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Variables supplémentaires (illustratives)

• Elles ne servent pas à calculer les axes


• Elles sont représentées (projetées) après sur les cercles

• Exemples
• variables résultant des autres (moyennes...)
• variables aidant à l’interprétation
• en régression pour voir l’effet de variables explicatives sur une
variable à expliquer
> colnames(don)[-c(1:12,17)]
[1] "Moyenne" "Amplitude" "Latitude" "Longitude"
Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

1.0
Exemple températures

Amplitude

5
0.5

Longitude Juillet Juin


Aout Moscou Kiev
Mai St. PetersbourgBudapest Milan
Minsk
Dim 2 (11.42%)

Dim 2 (11.42%)
Septembre CracovieEst
PragueSofia Madrid Athenes
Helsinki Oslo Geneve SudGenes Seville
Francfort
Avril Stockholm Zurich Sarajevo Rome Palerme

0
0.0

Berlin ParisBordeaux Barcelone


Octobre Copenhague Ouest
Moyenne Anvers Bruxelles
Nord
Novembre Londres Amsterdam Lisbonne
Latitude Edimbourg
Mars
Fevrier Reykjavik Dublin
Decembre
−0.5

Janvier

−5
−1.0

−10

−1.0 −0.5 0.0 0.5 1.0 −6 −4 −2 0 2 4 6 8

Dim 1 (86.87%) Dim 1 (86.87%)


Introduction Nuages Np et Nn La méthode de l’ACP Interprétations

Ajouts aux interprétations

• Le premier axe est très corrélé à la température moyenne


• La latitude est très corrélée au le premier axe qui sépare les
villes chaudes (au sud) des villes froides (à l’est)
• L’amplitude corrélée au second axe de variabilité qui résulte
d’une oppsition été/hiver : séparation des villes de fortes
amplitudes (Moscou, St Petersbourg,..), des villes aux faibles
amplitudes (Reykjavic, Edimbourg, Dublin,...)

Vous aimerez peut-être aussi