Introduction au Compressed sensing,
Algorithmes proximaux1
Guillaume Lecu´e2
esum´e
1 Introduction
Le probl`eme du Basis Pursuit est une proc´edure de minimisation d’une fonction convexe sous
contrainte affine :
min
tKf(t) (BP)
o`u f(t) = ktk1o`u K={tRN:At =y}.
On a vu dans les deux chapitres pr´ec´edents qu’il ´etait possible de r´e´ecrire (BP) comme un
probl`eme de programmation lin´eaire. Il existe aussi des algorithmes qui permettent d’impl´ementer
des probl`emes du type (BP) sous des contraintes assez faibles.
Dans ce chapitre nous pr´esentons quelques exemples de ces algorithmes qui peuvent ˆetre utilis´e
dans de nombreux autres probl`emes d’optimisation au del`a du Basis Pursuit. Cet expos´e donne
l’occasion de rappeler quelques notions en optimisation convexe, comme le sous-gradient et les
op´erateurs proximaux.
2 L’algorithme Forward-Backward
Dans le chapitre pr´ec´edent, nous avons vu que la m´ethode de descente de gradient est un
algorithme it´eratif de la forme
xk+1 =xkηkf(xk)
qui a pour but de chercher le minimum d’une fonction convexe fpour un probl`eme d’optimisation
sans contrainte.
Dans le cas d’un probl`eme de minimisation sous contraintes, une variante de la m´ethode de
descente de gradient est de chercher des directions de descentes tout en s’assurant que les it´er´es
successifs sont bien dans l’ensemble de contraintes. La m´ethode s’´ecrit alors
xk+1 =xk+pk
o`u
pkargmin
pf(xk), p+1
2ηkkpk2
2:xk+pK.
1. Notes du cours du 26 janvier 2016
2. CNRS, CREST, ENSAE. Bureau E31, 3 avenue Pierre Larousse. 92 245 Malakof. Email :
1
La contrainte ”xk+pK est ici pour assurer que l’it´eration suivante xkreste bien dans K.
Une autre id´ee est de consid´erer une it´er´ee de la m´ethode de descente de gradient comme
si le probl`eme n’´etait pas contraint et, ensuite, de projeter cette it´eration sur la contrainte.
L’algorithme s’´ecrit alors :
1. ´etape de descente :
yk+1 =xkηkf(xk)
2. ´etape de projection :
xk+1 = projK(yk+1)
o`u projK(·) est l’op´erateur de projection sur Kd´efini par projK(y)argminzKkyzk2.
Cet algorithme est appel´ee algorithme du gradient projet´e.
Pour les deux algorithmes pr´ec´edant la fonction objectif doit ˆetre diff´erentiable. Ce n’est pas le
cas du Basis Pursuit. On va alors consid´erer d’autres proc´edures. Mais avant cela on va introduire
les notions de sous-gradient et de fonction proximale.
Une mani`ere de voir la m´ethode du gradient projet´e est d’´ecrire
xk+1 argmin
uKku(xkηkf(xk))k2= argmin
uRN1
2ku(xkηkf(xk))k2
2+iK(u)
o`u iK(u) est la fonction indicatrice de Kd´efinie par
iK(u) = +quand u /K
0 quand uK.
Ainsi, si on d´efinit la fonction
proxiK(z)argmin
u1
2kuzk2
2+iK(u)(2.1)
on peut r´e´ecrire l’algorithme du gradient projet´e comme
xk+1 = proxiK(xkηkf(xk)).
On peut ´etendre la d´efinition de l’op´erateur introduit dans 2.1 `a toute fonction convexe.
D´efinition 2.1. Soit f:RNRune fonction convexe. L’op´erateur proximal de fest la
fonction d´efinie pour tout zRNpar
proxf(z)argmin
u1
2kuzk2
2+f(u).
Exemple 2.2. [Fonction proximale de la norme `1] L’op´erateur proximal de `1:x
kxk1est l’op´erateur de seuillage doux. En effet, on voit que la fonction `a optimiser d´efinissant
l’op´erateur proximal de γ`1(pour γ > 0) est d´ecomposable : pour tout uRN,
1
2kuzk2
2+γkuk1=
N
X
j=1 1
2(ujzj)2+γ|uj|.
Il suffit alors de minimiser chaque terme de cette somme. On est donc amen´e `a trouver une
solution au probl`eme (`a une variable) : pour tout sR,
argmin
tR1
2(st)2+γ|t|.
2
Pour obtenir ce minimum, on ´etudie ϕ(t) = (st)2/2 + γ|t|sur (−∞,0),{0}et (0,+). On
voit que ϕatteint son minimum en sγsur (0,)quand sγ0et que ce minimum est plus
petit que ϕ(0) sous cette condition. De mˆeme, quand s≤ −γ,ϕatteint son minimum en s+γ
sur (−∞,0) et est plus petit qu’en z´ero. Finalement, quand γsγ, on voit que le minimum
de ϕest atteint en 0. On a donc
argmin
tR1
2(st)2+γ|t|=
sγsi sγ
0si γsγ
s+γsi s≤ −γ
= sgn(s)|s| − γ+
qui est l’op´erateur de seuillage doux pour un seuil ´egal `a γ. L’op´erateur de seuillage dur ´etant
ssI(|s| ≥ γ)qui peut ˆetre obtenu comme l’op´erateur proximal de l’indicatrice de 0:
argmin
tR1
2(st)2+γ2
2I(t6= 0)=sI(|s| ≥ γ)
o`u I(t6= 0) vaut 1quand t6= 0 et 0sinon. On a donc pour tout zRN,
proxγk·k1(z) = sgn(zj)(|zj| − γ)+N
j=1 (2.2)
qui est l’op´erateur de seuillage doux par coordonn´ees et
prox(γ2/2)k·k0(z) = zjI(|zj| ≥ γ)N
j=1 (2.3)
qui est l’op´erateur de seuillage dur par coordonn´ees.
On peut g´en´eraliser la m´ethode du gradient projet´e `a n’importe quel probl`eme de la forme
min
xf(x) + g(x)
o`u fet gsont convexes et fest, de plus, diff´erentiable. On obtient alors la m´ethode du gradient
proximal aussi appel´e forward backward splitting algorithm (FBS) :
xk+1 = proxγkg(xkγkf(xk))
o`u (ηk)kest la suite donn´ee des step sizes.
Il est parfois utile de voir les algorithmes it´eratifs comme des algorithmes de point fixe. L’id´ee
est que si xest solution d’un probl`eme si et seulement xest solution d’un probl`eme de point
fixe du type x=F(x) alors une mani`ere naturelle d’approcher xest de consid´erer les it´erations
xk+1 =F(xk).
On va donc r´ecrire FBS comme un algorithme de point fixe. Cela expliquera pourquoi le step
size ηkdans la phase forward (explicite) de la descente de gradient est pris ici ´egal au param`etre
ηkapparaissant dans la phase backward (implicite) de la ”projection” par l’op´erateur proximal
proxγkg. Pour cela, on introduit une notion qui g´en´eralise la notion de d´eriv´ee dans le cas des
fonctions convexes.
D´efinition 2.3. Soit f:RNRune fonction convexe. On d´efinit la sous-diff´erentielle de f
en xpar
f(x) = gRN:f(x+h)f(x) + g, hpour tout hRN.
Les ´el´ements de la sous-diff´erentielle sont appel´es sous-gradients.
3
On peut voir que si fest une fonction convexe diff´erentiable en xalors
f(x) = {∇f(x)}
c`ad, la sous-diff´erentielle de fen xest r´eduite au singleton f(x). En effet, la condition du
premier ordre1: pour tout h
f(x+h)f(x) + f(x), h
montre que f(x) est un sous-gradient de fen x. De plus, pour tout hRN, on a quand 0,
f(x+h)f(x)
f(x), h.
En particulier, si gRNest un sous-gradient de fen x, on aura par passage `a la limite quand
0 dans
f(x+h)f(x)
g, h
que f(x), hg, het ceci pour tout hdonc g=f(x). Autrement dit f(x) est l’unique
sous-gradient de fen xquand fest diff´erentiable en x.
On a aussi les propri´et´es suivantes pour toutes fonctions convexes fet get tout γ0 :
(γf)(x) = γf(x) et (f+g)(x) = f(x) + g(x).
Exemple 2.4. [Sous-diff´erentielle de l’indicatrice d’un espace affine] Soit ARm×Net
yRm. On consid`ere l’espace affine des solutions K={xRN:Ax =y}et l’indicatrice iKde
K. On a pour tout xRN
(iK)(x) = (Im(A>)si xK
si x /K
En effet, si xRNon aura iK(x+h)=+d`es que x+h /Ket donc iK(x+h)iK(x)+g, h
pour tout gRN. Si x+hKalors iK(x+h)=1et donc (iK)(x) = si iK(x)=+c`ad
quand x /Ksinon g(iK)(x)si et seulement si 0g, hpour tout htel que x+hK.
Or quand xK, on a x+hKsi et seulement si Ah = 0. On a donc, pour tout xK,
(iK)(x) = {g:g, h0pour tout hKer(A)}.
On conclut avec Ker(A) = Im(A>).
Exemple 2.5. [Sous-diff´erentielle d’une norme] Soit k·k une norme sur RN, en particu-
lier, c’est une fonction convexe admettant donc une sous-diff´erentielle. Pour calculer la sous-
diff´erentielle de k·k, il est utile d’introduire la norme duale de k·k : pour tout gRN,
kzk= sup
kxk≤1z, x.
On note par Bla boule unit´e de la norme duale et par Ssa sph`ere unit´e. On a
k·k(x) = gS:g, x=kxk.
1. On obtient cette condition en remarquant que pour une fonction convexe f,f(x+th)tf(x+h)+(1t)f(x)
pour tout 0 < t 1 et donc f(x+h)f(x) + (g(t)g(0))/t o`u g(t) = f(x+th) et g0(0) = f(x), h. Alors, en
passant `a la limite quand t0, on obtient la propri´et´e de premier ordre.
4
En effet, si gSest normant pour xalors pour tout hRN,
kx+hk−kxk ≥ g, x +hg, x=g, h
donc gk·k(x). R´eciproquement, soit gRNtel que pour tout hRN
kx+hk−kxk ≥ g, h.
En particulier, khk ≥ g, hpour tout het donc kgk1. De plus pour h=x, on a g, x≥ kxk
donc kgk1. On en d´eduit que kgk= 1 et que kxk=g, x.
Un exemple classique est celui de la norme `1, pour laquelle on a
k·k1(x) = gSN1
:gi= sgn(xi),iI={gRN:gi= sgn(xi),iIet |gi| ≤ 1,i /I}
o`u I= supp(x).
Proposition 2.6. Soit f:RNRune fonction convexe. Il y a ´equivalence entre :
1. xest solution de minxf(x)
2. 0f(x)
D´emonstration. Si xminimise fsur RNalors pour tout hRN,f(x+h)f(x) et donc 0 est
une sous-gradient de fen x.
R´eciproquement, si 0 est un sous-gradient de fen xalors par d´efinition, pour tout h, on a
f(x+h)f(x) et donc fatteint bien son minimum sur RNen x.
Proposition 2.7. Soit f:RNRune fonction convexe diff´erentiable et g:RNRune
fonction convexe. Soit γ > 0, il y a ´equivalence entre :
1. xest solution du probl`eme minxf(x) + g(x)
2. x= proxγg(xγf(x)).
D´emonstration. On remarque que pour tout zRN, on a
u= proxγg(z)zuγg(u).(2.4)
En effet, d’apr`es la Proposition 2.7,uest solution du probl`eme proximal associ´e `a γg si et
seulement si 0 est un sous-gradient de u→ kuzk2
2/2 + γg(u) qui est ´equivalent `a zu
γg(u).
On en d´eduit la suite d’´equivalences ci-dessous :
x= proxγg(xγf(x)) xγf(x)xγg(x)
⇔ −γf(x)γg(x)
0(f+g)(x)
xest solution au probl`eme min
xf(x) + g(x).
On peut donc maintenant r´e´ecrire l’algorithme FBS comme un algorithme de point fixe xk+1 =
F(xk) pour la fonction F(x) = proxγg (xγf(x)).
5
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !