Problème inverse d’EEG :
TP2 - Régularisation de Tikhonov et régularisation TV-L1
Master 2 SISEA (ISTIC)
Université de Rennes1
1 Introduction
Une approche populaire pour obtenir une solution au probleme inverse consiste a régulariser le problème en
résolvant le problème d’optimisation suivante :
min
s
||x − As||2
2 + λf (s).
(1)
Le premier terme assure que la solution reconstruit bien les données et le deuxième terme, appelé terme
de régularisation, inclut les hypotheses sur les sources. Le parametre de régularisation λ permet de gérer
l’équilibre entre les deux termes. La proposition de différents termes de régularisation a donné lieu à différents
algorithmes. Dans ce TP, nous nous concentrons sur des termes de régularisation de type norme L2 (f (s) =
||s||2
2 ; régularisation de Tikhonov), exploité dans l’algorithme MNE (minimum norm estimate), et de type
norme TV-L1 (f (s) = ||Ts||1 + α||s||1), utilisé par l’algorithme SISSY (source imaging based on structured
sparsity). Ici, T est un opérateur linéaire qui implémente le gradient sur la surface du maillage modélisant le
cortex. Les éléments Te,d de T, e = 1, . . . , E, d = 1, . . . , D, où E est le nombre des arêtes du maillage, sont
définis par :
Te,d =
si d = de,1
1
−1 si d = de,2
sinon
0
(2)
ou de,1 et de,2 sont les indices des dipôles partageant la e-ieme arête.
2 Préparation
L’objectif des méthodes de la localisation de sources (distribuées) en EEG consiste a résoudre le probleme
d’optimisation (1). Pour la plupart des termes de régularisation, comme, par exemple, pour la norme TV-L1,
ceci nécessite de recourir à un algorithme itératif. Par contre, pour la norme L2, une solution analytique peut
être déduite.
2.1 Algorithme MNE
Montrer que la solution analytique au problème de minimisation
peut s’écrire sous la forme :
min
s
Publicité
||x − As||2
2 + λ||s||2
2
s = AT(AAT + λI)−1x.
Remarque : utiliser le lemme d’inversion (BTR−1B + P−1)−1BTR−1 = PBT(BPBT + R)−1.
(3)
(4)
1
2.2 Algorithme SISSY
A partir du problème d’optimisation
min
s
||x − As||2
2 + λ(||z||1 + α||y||1)
s. t. z = Ts, y = s
(5)
montrer que les équations de mise à jour de l’algorithme ADMM pour les variables s, z, y et les multiplicateurs
de Lagrange u et v sont donnés par :
ATx + ρTTz(k) + TTu(k) + ρy(k) + v(k)(cid:17)
s(k+1) = (cid:0)ATA + ρ(TTT + I)(cid:1)−1 (cid:16)
(cid:19)
(cid:18)
z(k+1) = proxλ/ρ
y(k+1) = proxλα/ρ
(cid:16)
u(k+1) = u(k) + ρ
v(k+1) = v(k) + ρ
(cid:16)
(cid:18)
(cid:19)
u(k)
Ts(k+1) −
1
ρ
1
s(k+1) −
ρ
z(k+1) − Ts(k+1)(cid:17)
y(k+1) − s(k+1)(cid:17)
v(k)
(6)
(7)
(8)
Publicité
(9)
(10)
où proxβ(y) = minx
est connue :
1
2 ||x − y||2
2 + β||x||1 est l’opérateur proximal associé avec la norme L1 et dont la solution
xi =
yi − β si yi > β
yi + β si yi < −β
0
sinon
(11)
et ρ est un paramètre de pénalité (utiliser ρ = 1).
3 Manipulations
3.1 Implémentation de l’algorithme MNE
Ecrire une fonction MNE(x,A,lambda) qui implémente l’algorithme MNE. Tester l’algorithme pour λ = 1.
Visualiser la solution obtenue à l’aide de la fonction trisurf.
3.2 Etude de l’algorithme MNE
1. Faire varier le parametre de régularisation (entre 0.1 et 1000) et observer l’influence de ce parametre
sur le résultat de l’algorithme en comparant la solution inverse obtenue avec la configuration de source
originale.
2. Faire varier le RSB (entre 0.1 et 10) et faire varier le paramètre de régularisation (entre 1 et 1000).
Comparer les résultats. Que pouvez-vous conclure sur le choix du paramètre de régularisation adéquat
en fonction du RSB ?
3. Dans la littérature, on trouve plusieurs heuristiques qui sont utilisées pour fixer le paramètre de
régularisation. Par la suite, nous allons considérer trois de ces critères :
L-curve criterion Cette heuristique consiste à tracer l’erreur de reconstruction ||x−As||2 en fonction
de la norme L2 de la solution ||s||2 pour différents paramètres de régularisation sur une double échelle
logarithmique. La courbe ainsi obtenue est souvent en forme de L. Le paramètre de régularisation
est alors choisi de maniere a correspondre au pli du L.
Discrepancy principle Cette heuristique est basée sur l’idée que l’erreur de reconstruction est due
au bruit. Le paramètre de régularisation est alors choisie tel que la puissance de l’erreur de recons-
truction correspond a peu pres a la puissance du bruit, c’est-a-dire ||x − As||2
2. La puissance
du bruit doit, en pratique, être estimée préalablement à partir des données (mais elle est connue
pour notre exemple de données simulées).
2 ≈ ||n||2
2
Generalized cross-validation Cette heuristique est basée sur l’idée qu’un bon choix du paramètre
Publicité
de régularisation devrait permettre de bien prédire des observations exclues dans le calcul de la
solution inverse. Suivant le principe de validation croisée, le paramètre de régularisation est alors
choisi tel qu’il minimise la fonction suivante qui caractérise l’erreur de prédiction généralisée :
GCV(λ) =
||x − As||2
2
(trace{I − A(ATA + λI)−1AT})2 =
||x − As||2
2
(trace{I − AAT(AAT + λI)−1})2 .
Tester les trois heuristiques pour le choix du parametre de régularisation en fixant le RSB a 1 et
en faisant varier le paramètre de régularisation entre 1e-10 et 1e10. Conclure sur l’efficacité des trois
heuristiques dans le contexte du problème inverse en EEG.
3.3 Implémentation de l’algorithme SISSY
Ecrire une fonction SISSY(x,A,T,lambda,alpha) qui implémente l’algorithme ADMM pour résoudre le
probleme d’optimisation (5). La matrice T peut être calculé a l’aide de la fonction variation operator
(mesh,’face’). Pour diminuer la complexité numérique dans le calcul de la mise à jour du vecteur s,
une décomposition matricielle (décomposition de Cholesky) et un lemme d’inversion sont utilisés. De ce fait,
insérer les lignes suivantes au début du code (exécutées une fois au début de l’algorithme) :
P=sparse(rho(T.’T+speye(size(T,2))));
APi=A/P;
L=chol(eye(size(A,1))+APi*A.’,’lower’);
s1=A.’*x;
et inclure les lignes suivantes dans la boucle pour la mise a jour du vecteur s a chaque itération de l’ADMM :
b=s1+rho(T.’(z+u/rho)+y+v/rho);
s=P\b-APi’(L’\(L\(APib)));
Fixer le nombre d’itérations de l’ADMM à 60.
Tester l’algorithme pour RSB=10, λ = 1, α = 0.1.
3.4 Etude de l’algorithme SISSY
1. Faire varier le parametre de régularisation λ (entre 0.01 et 1000) et observer l’influence de ce parametre
sur le résultat de l’algorithme.
2. Choisir une valeur approprié pour le parametre λ et faire varier le parametre α de 0 à 1. Comparer la
solution inverse avec la configuration de sources originale.
3. Conclure sur l’influence des deux paramètres de régularisation sur la solution inverse et du choix
approprié de ces paramètres.
4. Pour choisir un parametre de régularisation approprié, trouver le parametre λ pour lequel la contrainte
f (s) = ||Ts||0 + α||s||0
que nous souhaitons réellement imposer (basée sur la norme L0 et non la norme L1) est minimale. Pour
calculer la norme L0, considérer que tous les éléments pour lesquels |sd| < 0.01 maxd∈{1,...,D}(|sd|) sont
zéros. Tester cette heuristique pour le choix de λ et comparer avec le résultat obtenu en utilisant le
discrepancy principle.
3