Exploration de données scientifiques multi-échelles

publicité
Exploration de données
scientifiques multi-échelles
École thématique RISC-E, Nicolas Brodu, 11 octobre 2016
Données Scientifiques
Le Big Data en sciences ?
– Résolution et multiplicité des capteurs (e.g. images multispectrales)
– Volume d’images de grandes tailles (e.g. photos de manips)
– Nature des données multi-physique (e.g. ultrasons, voltage, photos, etc)
– Dimensionalité élevée (e.g. paramètres d’une simulation)
– Taille des enregistrements (e.g. séries mesurées sur plusieurs années)
Conséquence : Difficile pour un humain « non aidé » de
percevoir des relations ou motifs récurrents dans les données,
de les modéliser, de tester des hypothèses, etc.
Pas seulement pour l’analyse de données : informatisation à tous les
niveaux de la boucle méthodologique
Modélisation
Mesures
Prédictions
Validation
Données Scientifiques
Comparatif avec le “Big Data” commercial
Google / Facebook / Amazon / etc…
Votre manip / terrain / mesures physio /…
Finalité = gagner des sous
Finalité = comprendre ce qui se passe
Moyens disponibles
Moyens disponibles
– Données mesurées = toutes vos traces
– Modèles comportementaux
robustes ⇒ profilage utilisateur
– Demandes des investisseurs/clients
à prendre en compte
– Services rendus attractifs ⇒ publicité
– Jeu d’entraînement, validation
« illimités »
– Puissance de calcul « illimitée »
– Données mesurée selon hypothèses/modèle
ou question scientifique précise
– Connaissances disciplinaires à prendre en
compte : physique, biologie, etc.
– Faire mieux que l’état de l’art, dose d'inconnu
– Publications
– Mesures de référence
= votre temps / argent du labo
– Votre laptop, un PC ou le cluster du labo
Objectifs très variés mais, de façon générale, il est utile de :
- Trouver les points intéressants
- Aux échelles intéressantes
- Et modéliser leur dynamique
(statistiques ≠ bruit de fond, anomalies ou pas)
(pas forcément celle d'acquisition)
(différents formalismes, pas tous appropriés)
Extraction de caractéristiques
Caractéristiques ?
– Espace de valeurs à fort potentiel, mesurées ou calculées sur les données brutes
– D’intérêt disciplinaire, souvent en lien avec une hypothèse / un modèle
– E.g.: Indice de végétation calculé à partir de bandes spectrales, tenseur des
contraintes calculé à partir de forces microscopiques, etc.
= Espace de recherche des points intéressants
En quoi des points sont-ils « intéressants » ?
– Critères statistiques : ce qui diffère du reste (erreurs/outliers ? phénomène rare ?)
– Critères dynamiques : perturbation, changement d’attracteur
– Critères informatifs : points porteurs de l’information
Analyse guidée (proche de l’apprentissage supervisé)
– Partant d’exemples connus, on cherche des points similaires
Fouille exploratoire (proche de l’apprentissage non supervisé)
– Extraction automatique de groupes (clustering), de modèle de la dynamique, etc.
De différentes natures
Données hétérogènes
Sources multiples, de natures différentes
Échelles d’acquisition multiples
Sources multiples, de natures différentes
Pas l’objet principal de cette présentation
En général, pour ces données, éviter les modèles linéaires (dont SVM simples):
a*x1 + b*x2 + c*x3 … ≷ seuil ? N'est généralement pas homogène !
Préférer par exemple les modèles ensemblistes, où chaque feature est traitée
séparément, puis les décisions sont combinées de façon probabiliste sur
l'ensemble des classificateurs (e.g. forêts d'arbres de décisions aléatoires).
Ou encore les méthodes "à noyau", où des fonctions projettent chaque feature
dans un espace de Hilbert, et où on peut travailler dans l'espace produit.
f(x1, ·) ⊗ f(x2, ·) ⊗ f(x3, ·) …
À différentes échelles
Slide précédente ⇒ piocher dans des outils « classiques » :
– Traitement du signal/image, Machine learning, Théorie des systèmes dynamiques…
Problème
– Processus physiques ⇒ échelles (temps/espace) pas forcément connues (e.g. trouver
une longueur de corrélation ou un temps caractéristique partant de données mesurées)
– Échelles pertinentes inconnues ⇒ Données acquises à la plus haute fréquence possible
⇒ trouver les échelles « intéressantes » où sont définis les points « intéressants »
Méthode 1 : Identifier des échelles puis analyser le signal à ces échelles
– Exemple : analyse temps fréquence + filtrage
– Problème : les valeurs « intéressantes » peuvent dépendre de l’échelle de calcul
Méthode 2 : Caractéristiques intrinsèquement multi-échelles
– La dynamique d’un signal, sa régularité
– Les mesures d'information
– L’orientation de la normale à une surface rugueuse
– Les bords / frontières / transitions dans une image
Noir « voit » la dynamique
Rouge = rien ne bouge
Puissance / bande de fréquences
Intuition : « intéressant » = effet du travail d’un processus physique
– Travail = dissipation d’énergie / temps
– Postulat : travail effectué ≈ à l’échelle caractéristique du processus
⇒ Calcul de la puissance par bande de fréquences
X = Fourier(x) ⇒ W = |X|²/T où T est la durée d’intégration
Fréquence (0 à 30 Hz)
E.g. EEG
4,5 Hz et 8 Hz => somnolence, mémorisation
8,5 Hz et 12 Hz => conscience au repos
12 Hz et 45 Hz => concentration, anxiété
Activité cortex moteur
Processus localisé en espace (région du
cerveau), en temps (activité
temporaire), et détecté par sa puissance
émise à une échelle caractéristique.
Temps
⇒ Feature pour apprentissage machine,
système de reconnaissance BCI
Autre approche: échelle⇔info
Intuition physique:
– Au lieu de s’intéresser l’énergie dépensée, on regarde l’information produite.
– Question ouverte : Plus proche du mode de fonctionnement des systèmes horséquilibres (ouverts, dissipatifs), capables de maintenir et perpétuer des structures au
cours du temps ? Ces structures sont prédominantes en biologie, en environnement…
– Dans tous les cas, approche pragmatique : l’échelle de production/contenu
d’information est tout aussi intéressante que l’échelle de dissipation d’énergie dans
une optique de fouille de données ⇒ bons descripteurs.
Information:
– Approche descriptive (e.g. Shannon, Fisher)
⇒ H(X) = Ex [-log P(X=x)] information = le minimum pour discriminer chaque x∈X
– Approche générative (e.g. Kolmogorov-Chaitin)
⇒ KC(X) = min|prog p|( exec(p) = X) information = le minimum pour générer X
⇒ mais aussi, cf slides suivants, comment reconstruire un jeu de données.
– Approche prédictive : information = ce qui permet de prédire le comportement futur
⇒ e.g. paramètres d’un modèle + équations, approche statistique (cf ci-après)
– Approche décisionnelle : information = ce qui est utile pour prendre une décision
⇒ critique implicite des journaux télévisés
Problème: comment étendre au multi-échelle (e.g. Entropie multi-échelle ?)
Information ⇔ reconstruction
1. Trouver des points sensés porter l’information. Quelques approches:
– Détection de « bords » (changement d'intensité, de texture…)
– Signal représenté dans une base minimisant le nombre de coefficients non nuls
→ toute une famille de méthodes depuis ≈ 2005 et le « compressed sensing »,
et autres méthodes exploitant des contraintes de sparsité (E. Candès, T. Tao)
– Analyse temps/fréquence par wavelets pour localiser l'information
Développements récents : Dual-Tree - Complex Wavelet Transform
= robustes aux décalages du filtre par translation.
2. Supprimer les points négligeables
– On peut compresser l’image / le signal très fortement à ce stade
3. Reconstruire le signal à partir des points informatifs
– Formule de reconstruction dépendant de l’espace initial (e.g. ondelettes)
4. Comparaison avec l’original : différence = quantité d’information perdue
– Typiquement, erreur = ∑ |original-reconstruit|² et information ∝ - log(erreur/max)
Méthode perso multi-échelles
Ex. d'analyse aux échelles d'un processus naturel
Méthode = Similarité de chemins
aléatoires parcourant le voisinage
de chaque côté de chaque pixel
Températures de surface
Données MODIS 8-day
bleu=-1.2°C
rouge=31.5°C
noir = continents
Taille chemins = Échelle spatiale λ
Sensibilité = Échelle des données κ
Original
λ=3, κ=1
Analyse à l’échelle des
courants océaniques
λ≈75km
κ≈1°C
⇒ structures porteuses
d'information
λ=1, κ=256
λ=3, κ=256
λ en pixels,
κ en niveaux de gris
Exemple: Analyse d’images
Cameraman
Lena
Barbara
House
Sea star
Et s’il y à invariance d’échelle ?
Exemple: Température de surface des océans
Aucune échelle caractéristique ne se dégage
Ligne noire : T ∝ λ^5/3
Cascade Kolmogorov ?
Turbulence océanique
Limites actuelles:
- méthode restreinte aux
petits voisinages
- peu précis à λ<2 pixels
Échelle spatiale λ
⇒ Fit de la transition
Différences de températures κ
Fit de lois de puissances locales
Principe général
– Considérons un voisinage V(x, r) autour d’un point x (espace, temps) à une échelle r
– On regarde une statistique sur V(x,r), par exemple |V| sa taille effective (e.g. nombre
de boites de taille élémentaires pour recouvrir V)
– Puis une estime une loi invariante d’échelle, e.g. |V| ∝ rD(x), locale au point x
– Dans cet exemple, D est la dimension « fractale » (de Hausdorff, détails cf wikipedia)
Exposants de Hölder, spectres multifractals
– Loi de puissance locale = liée au degré de régularité d’un polynôme qui approxime le
signal f(x) autour de x₀. Maths:
∃ P : |f(x)−P(x−x₀)| ≤ C|x−x₀|α avec P un polynome de degré maximal floor(α)
H(x₀) = sup { α : ∃ P … condition précédente OK }
– On peut alors calculer la dimension de Hausdorff D(iso(h)) de l’ensemble des points
qui ont le même exposant de Hölder : iso(h) = { x : H(x) = h }.
– Le « spectre » multifractal = l’ensemble de ces dimensions {D(h)}, renseigne sur les
degrés de régularité d’un signal f. Localement, h(x₀) renseigne sur la régularité en x₀.
⇒ Points singuliers = points avec le plus petit h, et D(h) = s'il y en a « beaucoup»
– Différentes méthodes de calculs : la directe (ci-dessus) est peu précise / difficile à
estimer en pratique. Plus subtil : O.Pont, A.Turiel, H.Yahia. J of Comp. Math. 10(1), 2012
Exemple
Hypothèse: Cascade dans le cas de la turbulence ⇒ lois de puissance
Contrairement à l’exemple précédent, pas d’analyse à une échelle donnée, mais fait
ressortir au contraire la diversité des tailles de courants.
Température de surface des océans
Exposants de singularité
H. Yahia, J. Sudre, V. Garçon, C. Pottier, “High-resolution ocean dynamics from microcanonical formulations
in non linear complex signal analysis”
European Geosciences Union General Assembly (EGU), Vienna, Austria, April 22-27, 2012
https://geostat.bordeaux.inria.fr/index.php/agu.html
Autres approches
Décomposer le voisinage V(x,r)
– Sur une base de fonctions locales (e.g. ondelettes radiales) : V(x,r) = ∑ α i(x,r) bi(r)
– Feature = comment évolue αi(x,r) en fonction de r
– Intérêts : - moins de coefficients, représentation « sparse » des données
- construction de dictionnaires
Statistiques sur V à chaque échelle, puis feature en faisant varier r
– Exemple : dimensionalité locale pour caractériser végétation, sédiments, etc.
Info ⇒ réduction de dimension
Principe
– « Projeter » les données dans un sous-espace (projection linéaire) ou sur un manifold
(transformation non-linéaire) de sorte que la projection retienne le maximum
d’information.
– Travailler dans l’espace réduit (machine learning, reconstruction de la dynamique…)
Exemple classique : Analyse en Composantes Principales
– Calcul de l’axe de variance principale ⇒ vecteur de base
– Projection dans l’hyper-plan normal, itération ⇒ autres vecteurs de base
– Résultat = transformation linéaire des données.
Axe de variance principal
Axe n°2
Option: normalisation
Info ⇒ réduction de dimension
Méthode:
– On garde N composantes principales, par ex. tel que 95% de la variance est capturée
– Le signal projeté sur ces N composantes est conservé, le reste éliminé
– Les vecteurs de base B
sont eux-même informatifs
Exemple:
hauteur du
géopotentiel
à 500 hPa
– X = tous les 2.5° de
longitude/latitude,
mesures journalières
sur 15 ans.
B1
B2
– On voit ici que le
signal est projeté
sur les grandes
tendances d’anticyclones, B3
dépressions.
⇒ séries interprétables
Problèmes
Erreur de reconstruction
Bien souvent pas de coupure nette pour N:
Variable 1
Variable 2
Nombre N de vecteurs de base
Autres méthodes de réduction
Linéaires
– Analyse en composantes indépendantes : maximise l’indépendance statistique au lieu
de la variance.
– Projection sur les sous-espaces de séparabilité maximale
chaque axe sépart au mieux les données dans
l’hyperplan restant
Non-linéaires
– Dynamic Mode Decomposition : pour des séries
temporelles, la « projection » minimise les distances
entre mesures successives
– Diffusion Maps : un noyau k(x,y) est utilisé, qui représente une probabilité de
transition entre x et y. Les données sont transformées non-linéairement pour
respecter au mieux ces distances localement.
– Plus généralement « metric learning » : Essaie de trouver une métrique empirique
de séparation des données dans l’espace X (e.g. distance entre voisins les plus
proches), puis trouve un espace Euclidien qui respecte au mieux cette métrique
Partie II: Dynamique d'un signal
Par l'approche « systèmes dynamiques » de modélisation d'un processus :
Vecteur d’état X(t)
Équations différentielles pour la dynamique de X
Attracteur
de Lorenz
X=(x,y,z)
Postulat sur les données observées
Y(t)
=
f (X,t)
+
ε(t)
Données
Vue partielle / transformation
Bruit
Images : Sauer, Scholarpedia
Théorème de Takens
Prémisses (Whitney, 1936) : plongement de manifold
2N+1 observables indépendantes
⇒ Espace des phases de dimension N déterminé
Généralisation (Takens, 1981)
Observables indépendantes → Une seule observable !
Obtention d’un attracteur reconstruit avec la même dynamique ( ⚠ au bruit…)
Délai τ, dimension N
Série observée s
Attracteur reconstruit ^X
Original
Reconstruit
Échelle de reconstruction ?
Formule de reconstruction ⇒ échelle de sous-échantillonnage implicite
X = ( s(t), s(t-τ), … , s(t-Nτ) )
et τ exprimé en pas d'échantillonnage :
τ=λp
⇒ Échelle pertinente = celle où la dynamique est « la mieux » reconstruite ?
Exemple : Dynamique EEG de rat (Freeman, 1998)
Rat normal
Épilepsie
Déterminer N, τ : qualité de reconstruction ? données suffisantes?
Avancées récentes ⇒ séparation des échelles
– Petites échelles : λ>0
petits détails chaotiques
– Grandes échelles : λ<0
grandes tendances stables
(e.g. Falasco et al 2014)
Stabilité ou non d’un système
0
0
En pratique…
Estimer les exposants de Lyapunov est difficile
- Besoin de données proches (x,y) avec hypothèse y = x + ε
·y
·x
– Problème si x et y apparaissent proches, mais sont
en fait projettés (faux voisins)
⇒ importance de l’estimation de τ, N
Et dépend de l’échelle considérée : λ macro ≠ λ micro
– Il n’y a aucune raison que la fréquence d’échantillonnage E soit la meilleure
⇒ Sous-échantillonner + filtre passe-bas éventuellement
Avancées récentes, mécanique statistique = processus macro vs micro
– Physique Statistique, Chaos et approches multiéchelles. ISBN 9782701146065, 2008
– Physica A: Stat. Mech. and its Applications 418, 94-104 (arXiv:1405.2823), 2014
→ Séparation des échelles, lien λ macro, λ micro et utilité de l’ergodicité ou non
– Dynamical Processes on Complex Networks (livre, processus sur réseaux), 2009
Repenser États et Dynamique
(ou paramètres)
Espace
Vision de la méthode précédente :
… Passé
X(t-1)
Vecteur d’état = « univers » entier
X(t)
X(t+1)
Futur …
Temps
⇒ Transmission instantanée de l’information !
Repenser États et Dynamique
État en F dépend de I (accessible) et de O (inaccessible)
(ou paramètres)
Espace
O
I
F
… Passé
Futur …
X(t)
Temps
⇒Perte du déterminisme : distribution P(Futur|Passé)
Approche Statistique
Refs : J. Crutchfield, C.R. Shalizi
Principe : classes d’équivalence
Cônes passés A ayant la même influence sur les futurs F, ∀F
σ(A) = { B : P(F|B) = P(F|A) }
⇒
P(F|A) = P( F | σ(A) )
Impossible de distinguer ces cônes par de nouvelles observations !
États Causaux
σ(A) = granularité
la plus fine possible
pour décrire/prédire
le système
A
Observation
P = P1 dans A et P2 dans B
= Information nouvelle
F
Automate Markovien
Cas discret
= Information nouvelle
Observation
Discrétisation
A
F
Symbole s ∊  alphabet
⇒ Cône C ∊ * chaînes
Graphe de transition = ε-machine
p(a|σ1)
σ1
σ2
 = {a,b}
p(a
|σ
3)
)
|σ 1
|σ
3)
b
p(
p(
b
p(a|σ2)
σ3
)
2
σ
|
b
p(
– Graphe Markovien par définition
– Contrainte sur états internes
≠ chaîne Markov
– Même état = même prédictions
Dynamique reconstruite statistiquement
≠ attracteur du chaos déterministe
Mesure de Complexité
Données très régulières
P(F|A) unique
⇒ Une seule classe
Données complètement aléatoires
P(F|A) également unique
⇒ Une seule classe aussi !
≠ complexité Kolmogorov
« Complexité Statistique »
C=-
∑
σ
p(σ) log p(σ) entropie des états causaux Quantité d’information à retenir
du passé pour prédire de façon
statistique optimale le futur
Maximale pour des systèmes entre ordre et désordre total
⇒ Structure interne
Ex 1 : Automates cellulaires
Automate « élémentaires »
1D, binaire, voisinage proche
Configuration précédente
Nouvelle configuration
Règles
d’évolution
Cônes bien
identifiés
Refs : filtres complexité : Shalizi et al
image ci-dessous reconstruite avec algo perso.
Résultat
σ1
Temps
Temps
Espace
σ2
Brut
Filtré
Ex 2 : Circulation Atmosphérique
Jänicke et al., 2007
Vitesse des vents
Zones où la difficulté
de prédire les vents
est maximale
Champ de complexité local
C(A) = C(σ(A)) = – log(p(σ)) pour le cône A
Complexité globale = moyenne sur tous les σ
Problèmes
Passage à l'échelle
→ Variables macroscopiques idéales
= meilleur pouvoir prédictif
|σ
3)
3)
)
|σ 1
– Liens avec la mécanique statistique ?
p(
b
σ2
b
p(
= Clusters entre états [cf C.R.Shalizi, 2001]
p(a|σ1)
σ1
p(a
|σ
– Donne ici des sous-automates
p(a|σ2)
σ3
p(
)
2
σ
b|
Difficile à calculer/estimer en pratique
Mais avancées algorithmiques / pratiques en clustering et pour la comparaison de
distributions de probabilités
⇒ Work in progress.
Je les mentionne ici car la notion de complexité obtenue est très
utile pour définir des points d’intérêts dans une optique de fouille
de données scientifiques.
Complexité / Entropie
Complexité (C) ⇒ structure. Nombreuses définitions de C.
Entropie (H) ⇒ ordre/désordre (ou information, cf ci-après).
Les deux ensemble ⇒ Sépare structures chaotiques de données aléatoires
Exemple
Séries de températures mesurées dans le
goufre Tarissan, volcan de la Soufrière,
à différents niveaux de profondeurs.
(données D. Gibert, analyse perso).
0.5
0.4
Complexity (MPR)
Cf. O.A.Rosso, H.A.Larrondo, M.T.Martin, A.Plastino, “Generalized Statistical Complexity
Measure: A New Tool for Dynamical Systems”, Proceedings Net-Works, pp1-6, 2008.
Structured
Admissible
values
Processed data
Resolution = 10s
⇒ structure
Chaque triangle est le résultat de l’analyse 0.3
Entropie / Complexité d’une série.
Raw data
– Données brutes :
0.2
Échantillons manquants
– Interpolation :
Processed data
· Même processus = superposition
Temporal resolution = 2s
0.1
· À échelle=2s, pas de structure
⇒ no structure at this scale
– Sous-échantillonnage :
Ordered
Entropy (permutation)
· À échelle = 10s, la structure apparaît
0
⇒ remontée des fumées dans la colone !
0
0.2
0.4
0.6
Random
0.8
1
Conclusion
Méthodes multi-échelles d'analyse de données
– Processus sous-jacents (possiblement plusieurs)
⇒ échelles caractéristiques, ou relations multi-échelles (e.g. lois de puissances)
– Aucune raison que la fréquence d'échantillonnage soit la meilleure
– Classique : Méthodes basées sur l'énergie dissipée / bandes de fréquence
– Systèmes ouverts : Mesures d'information / ordre tout aussi pertinentes ? (hyp. perso.)
– Différentes méthodes d'analyse → échelles caractéristiques ⇒ éventuellement fusion
Problèmes:
– Difficulté de créer des caractéristiques vraiment multi-échelles
Reconstruction de la dynamique du système
– Même problème de l'échelle pertinente à laquelle le reconstruire
– Systèmes dynamiques ⇒ séparabilité petites / grandes échelles, pas les mêmes λ
– Méthode statistique ⇒ dynamique empirique + mesure de complexité = feature locale
Téléchargement