Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Sciences des données
Un voyage initiatique
Cécile C APPONI, Rémi E YRAUD, Hachem K ADRI
LIS, Aix-Marseille Université, CNRS
Equipe Q ARMA
M1 Informatique
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
https://www.quora.com/
What- is- the- difference- between- data- science- machine- learning- and- artificial- intelligence
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Une science récente : explosion des données numériques
De quelles données parlons-nous ?
Données d’observation, issues d’individus ou de phénomènes, anciennes ou
actuelles, brutes ou travaillées, supposées marquées par des régularités.
Réseaux sociaux, personnelles
Objects connectés (bracelet EMG, caméra surveillance, etc.)
Sciences (astrophysique, biologie, SHS, santé, météo, etc.)
Commerce (transactions, production, client, bitcoin, etc.), Web
Robots (ouvrier, drone, transports, etc.)
A l’intersection de plusieurs champs disciplinaires
Cette U.E.
9h cours, 18h TD/TP
Seulement quelques aspects
Cas pratiques
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Qu’est-ce qu’une donnée ?
Que voyez-vous ?
Un chat, un félin, un animal
Des poils noir, des yeux jaunes
Un malheur à venir
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Qu’est-ce qu’une donnée ?
Que voit l’ordinateur ?
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Qu’est-ce qu’une donnée ?
Que voit l’ordinateur ?
Qualification des données
Qualitatives versus quantitatives
Catégorielles, discrètes, continues, séquentielles, vectorielles, etc.
Positionnées dans des taxonomies, ou pas
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Qu’est-ce qu’un ensemble de données ?
Entrepôt de données : stockage
Obtention de jeu de données
Extraction à partir d’un entrepôt (ou web)
Intégration des données
Acquisition dédiée (protocole)
Nécessité de nettoyage des données
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Que faire avec des données ?
Extraction de connaissances à partir d’un jeu de données
Les structurer, les stocker (big data, cloud...)
En extraire des connaissances
en extraire des tendances
reconnaı̂tre des concepts
les analyser, les comprendre
Aspects sociétaux : explosion des données numériques
Droit des données, accessibilité
Sécurité, confidentialité
Aspects éthiques
Problématique des biais
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Objectifs de ce cours (27h)
Ce que nous ne traiterons pas : big data
Ce que nous aborderons : traitement d’un jeu de données
Analyse préalable des
données
Visualisation des données
Classification
Régression
Regroupement
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Représentations presque brutes
La feuille excel pour représenter un jeu de données (e.g. open data)
Le jeu de données Titanic
Colonnes typées (booléen, symbolique, réel,etc.)
Autres types de données pour les colonnes (ou groupes de colonnes)
Texte = (longue) chaı̂ne de caractères
Image = tableau de pixels à trois couleurs
Signal = amplitude selon le temps
Graphe = noeuds et arcs, matrice d’adjacence
Ensemble de données (dataset)
Un tableau de données
Cas d’une représentation vectorielle des données : S = {xi }ni=1 , xi ∈ Rd
Distributions de probabilité pour chaque colonne, distributions jointes
P(A1 ), P(A2 ), · · · P(Ad ), P(A1 , A2 , · · · , Ad ) où les Aj sont des variables
aléatoires
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Du titanic aux réseaux d’interactions biologiques
Dataset Titanic – Hétérogénéité des colonnes
Objectif : expliquer colonne survie par les autres colonnes
Qualité du jeu de données
Colonnes Sex ou Ticket
Nécessité de plus d’exemples
Données manquantes
Cas d’un jeu de données étiquetées S = {(xi , yi )}ni=1 , xi ∈ X , yi ∈ Y
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Du titanic aux réseaux d’interactions biologiques
Texte à traduire = une donnée
Chaque exemple du dataset (ligne) est un document
Si notre système d’enseignement supérieur ne sait pas former et attirer assez de techniciens,
d’ingénieurs, de docteurs pour alimenter le développement des laboratoires et des entreprises en
France, pour garder aussi ses talents dans la formation des nouvelles générations , nous ne
parviendrons pas à consolider cette conquête d’un horizon nouveau. C’est pourquoi nous
doublerons le nombre d’étudiants formés à l’intelligence artificielle, depuis la licence jusqu’au
doctorat en passant par les formations professionnelles courtes, et prévoirons les financements qui
correspondent à ce doublement.
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Du titanic aux réseaux d’interactions biologiques
Image = une donnée
Dataset = tableau d’images (ex. scanners cérébraux)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Du titanic aux réseaux d’interactions biologiques
Signal et son spectre = une donnée
Dataset = tableau de signaux (ex. playlist musicale)
(source : tangenteX.com)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Du titanic aux réseaux d’interactions biologiques
une donnée = une interaction entre deux protéines
Dataset = Un graphe d’interactions entre protéines
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Un Graal pour traiter les données : la représentation vectorielle
Fondements mathématiques
Bases éprouvées, riches et solides
Distances et similarités entre deux vecteurs
Transformations linéaires ou non, dérivées
Algèbre linéaire, statistiques, topologie
Propriétés algorithmiques (parcimonie, arithmétique, etc.)
Alternatives algorithmiques
Séquences, sacs, arbres, automates, graphes
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Exemples d’échantillons statistiques (jeu de données)
Echantillon à une seule variable
Echantillon à deux variables : variable facteur et variable à expliquer
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Statistiques descriptives simples (1)
Estimation de propriétés statistiques simples
Propriétés fondées sur des distributions de probabilités
Nous ne disposons que d’un échantillon : distribution inconnue
Estimateurs de ces propriétés, notion de biais
Utilité pour avoir un aperçu statistique de l’échantillon et des variables
Sur échantillon avec une seule variable x
Echantillon de variables numériques S = {xi }ni=1 , xi ∈ R (série statistique)
Moyenne de x sur S : µS (x) = x̄ = n1 ni=1 xi
P
Variance de x sur S : VS (x) = n1 ni=1 (xi − x̄)2 (indicateur de dispersion).
P
p
Ecart-type de x sur S : σS (x) = VS (x)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Statistiques descriptives simples (2)
Sur échantillon avec deux variables x, y : S = {(xi , yi )}ni=1 , (xi , yi ) ∈ R2
Covariance des variables dans S pour quantifier les écarts conjoints de
x et y par rapport
P à leurs moyennes respectives :
covS (x, y ) = n1 ni=1 (xi − x̄)(yi − ȳ )
Coefficient de corrélation de S pour mesurer l’intensité d’une relation
cov (x,y )
entre x et y, estimateur de Bravais-Pearson : rp (x, y ) = σxSσy
Fonction expliquant y par x (facteur) dans S : y = f (x) (en régression
linéaire : y = ax + b)
CoefficientPde détermination de S par f :
n
(y −f (xi ))2
R2 = 1 − i=1 i
nVS (y )
= rp2 (f (x), y )
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Statistiques descriptives simples (3)
Avec m > 2 variables : Statistiques multi-variées
S = {(xi,1 , xi,2 , · · · , xi,d )}ni=1 , avec xi,j ∈ R
Vin Bel. N.L. RFA Ita. UK Sui. USA Can.
CHMP 7069 3786 12578 8037 13556 9664 10386 206
MOS1 2436 586 2006 30 1217 471 997 51
MOS2 3066 290 10439 1413 7214 112 3788 330
ALSA 2422 1999 17183 57 1127 600 408 241
GIRO 22986 22183 21023 56 30025 6544 13114 3447
BOJO 17465 19840 72977 2364 39919 17327 17487 2346
BORG 3784 2339 4828 98 7885 3191 11791 1188
n = 7, d = 8, x2,5 = 1217
La matrice de covariance mesure, pour chaque couple de variables
différentes, leur propension à varier ensemble dans le jeu de données.
(http://www.info.univ-angers.fr/˜gh/Datasets/vins.htm)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
La matrice de covariance C de S = {xi }
Définition
Matrice X = (xi,j ) la description du jeu de données S, de taille n × d
C = X T X est sa matrice de covariance, de taille d × d : variance de
chaque variable sur la diagonale, covariances des variables 2 à 2 ailleurs
covariance entre variables normalisées : a et b = 0 si a et b varient
indépendamment, 1 (ou −1) si variables proportionnelles (colinéaires)
Xj,iT = Xi,j , C est symétrique, donc diagonalisable
C inversible sauf si deux colonnes sont colinéaires
x1,1 x1,2 · · · x1,d x1,1 x2,1 · · · xn,1
x2,1 x2,2 · · · x2,d T
x1,2 x2,2 · · · xn,2
X = X =
··· ··· ··· ··· ··· ··· ··· ···
xn,1 xn,2 · · · xn,d x1,d x2,d · · · xn,d
Pn 2 Pn Pn
i=1 (xi,1 ) i=1 xi,1 xi,2 ··· i=1 xi,1 xi,d
P n P n 2 P n
i=1 xi,2 xi,1 i=1 (xi,2 ) ··· i=1 xi,2 xi,d
C = XTX =
··· ··· ··· ···
Pn Pn Pn 2
i=1 xi,d xi,1 i=1 xi,d xi,2 ··· i=1 (xi,d )
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Disgression : ne pas confondre corrélation et causalité
Cum hoc ergo propter hoc
Si A et B sont corrélés
1 A est la cause de B ?
2 B est la cause de A ?
3 Autorenforcement du système (1 ET 2)
4 Il existe un troisième facteur (inconnu) étant la cause commune de A et B
5 Une coı̈ncidence
Du pastafarisme aux corrélations fallacieuses
tylervigen.com/spurious-correlations
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Exercice : calcul de ces stats descriptives élémentaires sur un exemple
simple
http://www.info.univ-angers.fr/˜gh/Datasets/bumpus.htm,
caractéristiques physiologiques d’oiseaux échoués. Extrait :
LOT AIL TET HUM BRE
156 245 31.6 18.5 20.5
154 240 30.4 17.9 19.6
153 240 31.0 18.4 20.6
153 236 30.9 17.7 20.2
155 243 31.5 18.6 20.3
163 247 32.0 19.0 20.9
157 238 30.9 18.4 20.2
1 Estimer moyenne, variance et écart-type de chaque variable
2 Calculer la matrice de covariance : quels sont les couples de variables
les plus covariantes ?
3 Régression LOT = f (HUM) (intuitivement, graphiquement) : existe-t-il
une corrélation linéaire, et si oui quelle est approximativement son
équation ?
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Correction, avec du python !
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Limites des analyses statistiques de base
Le quartet d’Anscombe [E. Tufte]
Fonction 1 Fonction 2 Fonction 3 Fonction 4
(x, y ) (x, y ) (x, y ) (x, y )
(10.0, 8.04) (10.0, 9.14) (10.0, 7.46) (8.0, 6.58)
(8.0, 6.95) (8.0, 8.14) (8.0, 6.77) (8.0, 5.76)
··· ··· ··· ···
(7.0, 4.82) (7.0, 7.26) (7.0, 6.42) (8.0, 7.91)
(5.0, 5.68) (5.0, 4.74) (5.0, 5.73) (8.0, 6.89)
4 jeux de données aux mêmes propriétés statistiques simples
données très différentes
Moyenne x et y 9.0 et 7.5
Variance x et y 10 et 3.75
Corrélation x et y 0.816
Eq. droite régression y = 12 x + 3
Coeff de dt́ermination 0.67
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Un peu de python
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Les différents diagrammes de visualisation
Le SWD Challenge une visualisation raconte une histoire
Nombre et provenance des immigrés
aux USA, depuis 1800 (un cercle
concentrique par décennie) source : http:
//www.storytellingwithdata.com)
Bases = Couleurs, barres, camembert, intervalles de confiance, etc.
Diificultés : rendu correct d’une analyse, importance de la perception
humaine, difficultés d’appréhension, précision, etc.
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Les différents diagrammes de visualisation
Le SWD Challenge une visualisation raconte une histoire
L’Europe vue par ses territoires
géographiques perdus et gagnés :
évolution depuis 1957 jusqu’au Brexit
source : http://www.storytellingwithdata.com)
Bases = Couleurs, barres, camembert, intervalles de confiance, etc.
Diificultés : rendu correct d’une analyse, importance de la perception
humaine, difficultés d’appréhension, précision, etc.
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Visualisation effectifs/fréquences (1)
Données qualitatives : barres et camembert
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outils Python (bruts et affinés)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outils Python (bruts et affinés)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Visualisation effectifs/fréquences (2)
Données quantitatives
Diagrammes en bâtons (un bâton par valeur discrète), ou histogramme
lorsque les données sont classées (ou avec intervalle de valeurs)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Médiane et quartiles
Pour un échantillon S, une seule variable x, estimateurs de distributions de
probabilités
La médiane de S et les 3 quartiles
Médiane = valeur mS de x telle qu’il y a autant d’individus dans S pour
lesquels x < mS que d’individus avec x > mS
Quartile : même principe, mais division en 4 des valeurs prises par S :
même quantité d’individus dans chaque partie définit par les quartiles.
Une quartile est une valeur de x. Il existe donc 3 quartiles : Q1, Q2
(médiane), Q3
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Les percentiles
Les percentiles
Un percentile est un pourcentage d’individus dans S en dessous d’une
certaine valeur de x
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Diagramme de Tukey : visualisation de ces distributions
Pour un échantillon S, une seule variable x
Une boı̂te à moustache !
Indication de la médiane (et parfois la moyenne), des deux autres
quartiles, valeurs maximum et minimum
Représentation graphique respectant les écarts entre ces valeurs (et
non pas la proportion d’individus)
Dérives : on y note parfois certains percentiles
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Diagramme de Tukey : visualisation de ces distributions
Pour un échantillon S, une seule variable x
Une boı̂te à moustache !
Indication de la médiane (et parfois la moyenne), des deux autres
quartiles, valeurs maximum et minimum
Représentation graphique respectant les écarts entre ces valeurs (et
non pas la proportion d’individus)
Dérives : on y note parfois certains percentiles
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Visualisation brute d’un ensemble de données 1D : exemples
(source : enseeiht)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Visualisation brute d’un ensemble de données 2D, 3D : exemples
(source : N. Cheifetz, 2009)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Visualisation d’un ensemble de données 4D : exemples
(source : STHDA)
Au delà de 4D : difficile !
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Représentation vectorielle d’une donnée image : exemple
Du tableau de pixels à des représentations spécifiques
Histogramme : observation statistique d’un seul critère (ici, le niveau de gris)
(source : B. Perret)
Limites de l’histogramme
(source : B. Perret)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Représentation vectorielle d’une donnée texte : exemple
Notion de dictionnaire : espace vectoriel
Sac de mots = représentation d’un texte par les mots qui le composent,
sans ordre
Vecteur : chaque mot du dictionnaire est une composante de l’espace
Valeur d’une composant : présence/absence, nombre d’occurrences,
fréquences, etc.
Alternatives nombreuses : n-grams, word embeddings, etc.
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Extension des sacs de mots aux images
Dictionnaire de mots visuels = espace vectoriel
Toujours une histoire d’histogrammes
(source : Gil’s CV blog)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Visualisation d’un jeu de données au delà de 4D
Une réalité
S = {xi }ni=1 , avec xi ∈ Rd
Iris dataset, n = 150, d = 4
Animal with Attributes, n = 30K , d de 3 × 256 = de 768 (HOC) à 4000
(BOW), selon espace vectoriel de description
Titanic, n = 500, d = 15
Réduction de dimensions pour un aperçu plus synthétique
Projection sur deux ou trois variables d’intérêt, lesquelles ?
Analyse en composantes principales, pour dégager des combinaisons
informatives de composantes
Analyse discriminante en cas de supervision : données appartenant à
des groupes identifiés : S = {(xi , yi )}ni=1 , avec yi ∈ {1, 2, · · · , k }
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Analyse en composantes principales : introduction
Plus d’un siècle d’existence (Pearson, 1901)
Statistique multivariée, analyse factorielle
Transformation de composantes (axes, variables) corrélées entre elles
(ex. d3 = ad1 + bd2 + c) en nouvelles composantes décorrélées
(=composantes principales)
Réduction de dimensions, élimination de redondances, débruitage, donc
visualisation et pré-traitement
Compression des données
(source : A.M. Chérif)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Travail sur un nuage de points à d dimensions
Cas de d = 2, visualisation des axes principaux, et projection
(source : In Depth Tutorial)
Cas de d = 3, réduction vers d = 2
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
L’Analyse en Composantes Principales : matrice de données
Matrice d’entrées
X matrice de taille n × d (32*12), à valeurs réelles (pour l’instant). Un
individu (=donnée) par ligne, une variable par colonne
xi,j est la valeur de la j ème variable pour le i ème individu
Comparaison de deux lignes = comparaison de deux individus dans
l’espace des variables Rd
Comparaison de deux colonnes = comparaison de deux variables dans
l’espace des individus Rn
Comparaisons = distances (ressemblances), dépendances (relations)
sauce covariance
Exemple
x sport sommeil lecture internet repas ··· ménage
x1 0.04 0.27 0.09 0.11 0.03 ··· 0.08
x2 0.11 0.21 0.01 0.08 0.09 ··· 0.11
x3 0.03 0.26 0.08 0.12 0.02 ··· 0.07
··· ··· ··· ··· ··· ··· ··· ···
xn 0.01 0.31 0.13 0.13 0.08 ··· 0.02
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Comparaisons entre individus
Distance entre deux individus
Ici, distance euclidienne : deux points sont d’autant plus voisins que leurs
coordonnées (activités quotidiennes) sont proches.
d
X 2
d 2 (x1 , x2 ) = x1,j − x2,j
j=1
Projection des points sur une droite (D)
Obtenir une meilleure image approchée du nuage de points
Refléter la dispersion des points sur cette droite (inertie)
Minimiser la distance entre chaque point et son projeté
axe principal = D telle que
n X
n
X
dD2 (xi , xi 0 )
argmax
D i=1 i 0 =1
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
A la recherche des axes principaux
Principe de l’ACP
Chercher une représentation alternative des n individus dans un
sous-espace vectoriel (Fk ) de dimension k , avec k petit (2 ou 3 pour la
visualisation)
= définition de k nouvelles variables qui sont des combinaisons linéaires
des d variables initiales, en perdant le moins d’information possible
Définitions
composantes principales : les nouvelles variables
axes principaux : les axes que les composantes déterminent (dans Fk )
facteurs principaux : les formes linéaires associées
Perdre le moins d’informations possibles
Fk s’ajuste au nuage des individus
le nuage (=individus) projeté sur Fk a une grande dispersion
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
La dispersion mesurée par l’inertie
Inertie d’un nuage de points
n
1X 2
Ig = d (xi , g) où g est le centre de gravité
n
i=1
Soit pi le projeté orthogonal de la variable xi sur le sous-espace F
d 2 (xi , g) = d 2 (xi , pi ) + d 2 (pi , g)
On cherche F tel que
n
X
d 2 (xi , pi ) soit minimale
i=1
donc par Pythagore
n
X
variance d 2 (pi , g) maximale
i=1
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Axes principaux, vecteurs et valeurs propres
Les d axes principaux d’inertie
Axes de direction des vecteurs propres de la matrice de covariance, normés
à 1
1 Premier axe u1 = (u1,1 , u1,2 . . . u1,d ) : vecteur associé à la plus grande
valeur propre λ1 (sa variance)
2 axe u2 : celui associé à la deuxième plus grande valeur propre λ2
3 etc.
A chaque axe principal : une composante principale
Une variable obtenue par combinaison linéaire des variables initiales
c1 = u1,1 d1 + u1,2 d2 + · · · u1,d dd
1 Composante c1 : vecteur portant les coordonnées des projections desxi
sur l’axe u1
2 c2 : vecteur portant les coordonnées des projections desxi sur l’axe u2
3 etc.
Non corrélation des composantes principales
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Représentation des individus
c1,j
c2,j
Soit cj la jième composante principale : cj = . = coordonnées des m
..
cn,j
individus projetés sur l’axe principal j : pi = hci,1 , ci,2 , · · · , ci,d i
Pour obtenir une représentation humainement visible, plane, on ne garde que
les deux premières composantes
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Un algorithme pour calculer les premières composantes principales ?
Evidemment ! Les q premières CP...
Soit S l’échantillon de données (matrice X ), n individus, d variables
1 Centrer et réduire les données : pour chaque variable k de chaque
individu i dans S, on recalcule X
xik − x̄ k
xik ←
σk
2 Calculer C la matrice de covariance de X centrée-réduite
3 Calculer les valeurs propres de X et leurs vecteurs associés
4 Prenez les q plus grandes valeurs propres λ, et les q plus grands axes
principaux
5 Calculer M la nouvelle représentation matricielle de S dans cette
nouvelle représentation
Oui, mais, comment obtient-on les valeurs propres ?
Inversion de la matrice pour calculer son déterminant
Tirer partie des propriétés de la matrice de covariance (diago ?)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
A la recherche des valeurs propres de la matrice de covariance C
Rappels : définition simplifiée des valeurs et vecteurs propres
Soit une transformation linéaire f : Rd 7→ Rd de matrice carrée A
Transformée du vecteur ~a vers le vecteur ~b : ~b = A~a
Lorsqu’il existe ~a, λ, ~b = A~a tels que ~b = λ~a (a et son transformé b
colinéaires : même direction), alors λ est une valeur propre, et ~a est un
vecteur propre de A : λ~a = A~a
Caractériser les (λ, ~a) pour lesquels A est une simple homothétie
(étirement sans rotation)
det(A − λI) = 0
(équation polynomiale de degré d)
Rappels : propriété dans le cas des matrices symétriques
Une matrice carrée M est symétrique ssi M = M T
ses valeurs propres λ sont toutes réelles
ses vecteurs propres issus des différentes λ sont orthogonaux, et
forment une base orthonormée dans laquelle l’application f représentée
par M admet une matrice diagonale (théorème spectral)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Exercice de (re-)découverte
Soit l’application linéaire f : R2 7→ R2 représentée par la matrice
√
0
√ − 3
A=
− 3 −2
En partant du vecteur ~v = (0, 1), et de l’ensemble vide Λ
~t = A~v
1 calculer v
2 est-ce que ~v et v~t sont colinéaires, et si oui, rajouter λ dans Λ tel que
v~t = λ~v
3 ~v ← rot(~v , 30) (rotation dans le sens trigonométrique)
4 recommencer en (1) une quinzaine de fois
Quels sont les valeurs propres et les vecteurs propres de A ? Quelle est la
matrice diagonale de f dans la nouvelle base orthonormée ?
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Et en python ?
Learn english
Visualisation
https://python-graph-gallery.com/ et matplotbib
Statistiques descriptives élémentaires
https://docs.scipy.org/doc/scipy/reference/stats.html
ACP
http://scikit-learn.org/stable/modules/generated/
sklearn.decomposition.PCA.html
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Outline
1 Introduction
Sciences des données, késako ?
2 Représentation et visualisation
Représentations numériques des données
Des statistiques descriptives aux modes de visualisation
Quelques modes classiques de visualisation
Représentation et visualisation des données vectorielles
3 Analyse en composantes principales (ACP – PCA)
Introduction
ACP : principes
Pour aller plus loin
4 Et après
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
En continuant dans cette science
Dans les chapitres suivants
Dans les prochains chapitres :
Algorithmes simples d’apprentissage pour
la classification supervisée
la régression
le regroupement (clustering)
Protocoles généraux d’expérimentation
Mesures de performances
Et en TD/TP
Python par la pratique (alternative demandée par employeurs = R,
parfois Java)
Librairies utiles
Participation à un challenge par équipes de 2 à 4
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Au delà ce cours (pour aller plus loin)
Introduction à l’apprentissage automatique (M1 – S2)
Master IAAA (M2) à Marseille !
Stages de pratique recommandés (chez Qarma ou ailleurs)
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Ecosystème Python pour la Data Science
Tout au long de ce cours, nous utiliserons principalement
NumPy : multidimensional array package
SciPy : scientific computing package
Matplotlib : plotting library for visualization
pandas : data analysis library
scikit-learn : machine learning library
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Installer Python et les packages Data Science
Anaconda Python distribution
Anaconda est une distribution libre et open source du langage de
programmation Python appliqué au développement d’applications dédiées à
la science des données et à l’apprentissage automatique (traitement de
données à grande échelle, analyse prédictive, calcul scientifique), qui vise à
simplifier la gestion des paquets et de déploiement.
Anaconda installer
https://www.anaconda.com/download/
Anaconda quick-start guide
https://conda.io/docs/user-guide/getting-started.html
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Jupyter Notebooks
Environment interactif de calcul
Peut rassembler, dans le même document, du texte, des images, des
formules mathématiques et du code informatique exécutable.
Installé par défaut avec la distribution Anaconda
Pour lancer Jupyter notebook, exécutez la commande suivante sur le terminal :
$ jupyter notebook
Introduction Représentation et visualisation Analyse en composantes principales (ACP – PCA) Et après
Colaboratory
Un outil google offrant un environnement Jupyter Notebook qui s’exécute
dans le cloud et stocke ses Notebooks sur Google Drive.
https://colab.research.google.com/