• Aucun résultat trouvé

Mod`eles convexes et algorithmes d’optimisation en imagerie.

N/A
N/A
Protected

Academic year: 2022

Partager "Mod`eles convexes et algorithmes d’optimisation en imagerie."

Copied!
43
0
0

Texte intégral

(1)

Mod` eles convexes et algorithmes d’optimisation en imagerie.

Pierre Weiss.

April 21, 2011

(2)

III.1/ Th´eorie de la complexit´e en optimisation convexe.

Applications ` a l’imagerie.

(3)

Plan de la partie

1. El´ ements d’analyse convexe dans

Rn

.

2. Quelques r´ esultats en th´ eorie de la complexit´ e.

3. Algorithmes efficaces optimaux dans le cas diff´ erentiable et

non diff´ erentiable.

(4)

Quelques r´ ef´ erences

1. T. Rockafellar Convex Analysis 1970.

2. B. Polyak Introduction to optimization, 1987.

3. D. Bertsekas Nonlinear Programming, 1999.

4. Y. Nesterov Introductory lectures on optimization, 2003.

5. A. Juditsky, cours en ligne optimisation, (ENSIMAG).

6. Bonnans, Gilbert, Lemar´ echal, Sagastiz` abal, Numerical

optimization, 2006.

(5)

Elements d’analyse convexe

Notations :

On travaille dans

Rn

, n ∈

N

avec :

Un produit scalaire h·, ·i. A moins que ce ne soit sp´ ecifi´ e, il correspond au produit scalaire usuel.

On munit l’espace d’une norme : kxk =

p

hx, xi.

(6)

Elements d’analyse convexe

Dans tout l’expos´ e, nous nous int´ eressons ` a des fonctions : f :

Rn

R

∪ {+∞}.

D´ efinition (domaine d’une fonction) :

dom(f ) := {x ∈

Rn

, f (x) < +∞}.

On suppose syst´ ematiquement que dom(f ) 6= ∅.

Int´ erˆ et (l’un d’eux) :

x∈

inf

Rn

f (x) = inf

x∈dom(f)

f (x)

Les probl` emes contraints s’´ ecrivent indiff´ eremment des

probl` emes non contraints.

(7)

Elements d’analyse convexe

D´ efinition (fonction convexe) : f est dite convexe si :

1. dom(f) est convexe.

2. f est convexe sur dom(f), ∀(x

1

, x

2

) ∈

Rn

×

Rn

, ∀α ∈ [0, 1], f(αx

1

+ (1 − α)x

2

) ≤ αf(x

1

) + (1 − α)f (x

2

).

Th´ eor` eme :

Toute fonction f convexe en dimension finie est continue sur

int(dom(f)).

(8)

Elements d’analyse convexe

D´ efinition (´ epigraphe) :

epi(f) = {(x, t) ∈ dom(f ) ×

R, t

≥ f (x)}.

Th´ eor` eme :

f est convexe si et seulement si son ´ epigraphe est convexe.

(Sch´ ema ?)

(9)

Elements d’analyse convexe

Un probl` eme :

Bien qu’une fonction convexe soit continue sur int(dom(f )), elle peut avoir un comportement complexe sur le bord.

Exemple :

f (x, y) =

0 si x

2

+ y

2

< 1 φ(x, y) ≥ 0 si x

2

+ y

2

= 1 +∞ si x

2

+ y

2

> 1

Minimisation : On suppose g continue sur

R2

et on veut trouver :

(x,y)∈

min

R2

f (x, y) + g(x, y)

Si g n’atteint pas son minimum sur le disque, il n’y a pas

d’autre choix que d’explorer exhaustivement l’ensemble

{(x, y) ∈

R2

, x

2

+ y

2

= 1} !

(10)

Elements d’analyse convexe

D´ efinition (fonction convexe ferm´ ee) :

Une fonction convexe est dite ferm´ ee ou semi-continue inf´ erieurement (s.c.i.) si epi(f ) est ferm´ e.

Exemples 1D :

Voir tableau...

(11)

Elements d’analyse convexe

D´ efinition (sous-diff´ erentiel) : Soit f :

Rn

R

∪ {+∞}

convexe s.c.i. Le sous-diff´ erentiel de f en x ∈ dom(f ) est d´ efini par :

∂f(x) = {η ∈

Rn

, ∀y ∈

Rn

, f (y) ≥ f (x) + hη, y − xi}.

Figure: Sous-diff´erentiel.

(12)

Elements d’analyse convexe

Propri´ et´ e 1 : Si f est diff´ erentiable en x

0

, alors

∂f(x

0

) = {∇f(x

0

)}.

Propri´ et´ e 2 : Le sous-diff´ erentiel est non vide, convexe, ferm´ e sur int(dom(f )).

Mais il peut ˆ etre vide sur le bord du domaine.

Exemple :

f (x) = − √ x est convexe s.c.i. sur [0, +∞[.

Et on a lim

x→0+

f

0

(x) = −∞ et −∞ ∈ /

R

!

(13)

Elements d’analyse convexe

On consid` ere le probl` eme :

Trouver x

∈ Arg min

x∈Rn

f (x) o` u f est convexe s.c.i.

Th´ eor` eme (fondamental) :

x

est minimiseur de f si et seulement si 0 ∈ ∂f(x

).

Une r` egle de calcul utile :

Soit g(x) = f (Ax) o` u A est un op´ erateur lin´ eaire, alors :

∂g(x) = A

∂f(Ax)

o` u A

est l’op´ erateur adjoint de A.

(14)

Algorithme : descente de sous-gradient (Polyak ∼ 1980)

Probl` eme :

Trouver x

∈ Arg min

x∈X

f (x)

f : X →

R

est convexe, s.c.i.

X est un ensemble convexe ferm´ e.

Algorithme :

1. Choisir x

0

∈ X et une suite r´ eelle de pas (h

k

)

k∈N

telle que :

• hk≥0, ∀k∈N.

• limk→+∞hk = 0.

• P+∞

k=0hk = +∞.

2.

x

k+1

= Π

X

x

k

− h

k

η(x

k

) kη(x

k

)k

, η(x

k

) ∈ ∂f(x

k

)

(15)

Algorithme : descente de sous-gradient (Polyak ∼ 1980)

R´ esultat :

Si f est L-Lipschitz sur B = {x ∈

Rn

, kx

0

− x

k ≤ R}, alors : f

k

− f

≤ L R

2

+

Pk

i=0

h

2k

2

Pk

i=0

h

k

En particulier, si h

k

=

R

k+1

(optimal) : f

k

− f

≤ LR

√ k + 1 avec : f

k

= min(f(x

0

), f (x

1

), ...f(x

k

)).

Ce taux est ajust´ e.

(16)

Algorithme : descente de sous-gradient

Note importante :

En supposant L = R = 1, et si on souhaite : f

k

− f

≤ 10

−3

Dans un sc´ enario au pire des cas, il faut 10

6

it´ erations ! Conclusion :

Les descentes de sous-gradient avec pas d´ ecroissant ne doivent pas ˆ etre utilis´ ees en g´ en´ eral.

Elles peuvent pr´ esenter un int´ erˆ et pour coder rapidement des approximations grossi` eres des solutions avec des pas pr´ ecalcul´ es (10-20 it´ erations).

Note : les constantes L et R peuvent d´ ependre

implicitement de la dimension n !

(17)

Optimisation convexe non diff´ erentiable : complexit´ e

Soit M l’ensemble des m´ ethodes de sous-gradient de la forme : x

k+1

∈ x

0

+ vect(η(x

0

), ..., η(x

k

)), o` u η(x

i

) ∈ ∂f(x

i

).

Th´ eor` eme : Pour tout k ≤ n − 1, pour toute m´ ethode m ∈ M, il existe une fonction f :

Rn

R

convexe ferm´ ee.

L-Lipschitz sur une boule de rayon R autour d’un minimiseur x

.

telle que :

f(x

k

) − f

≥ M R 1 + √

k + 1

Corollaire : Les m´ ethodes de sous-gradient avec pas en O

1 k

sont optimales.

(18)

Optimisation convexe non diff´ erentiable : complexit´ e

Id´ ee :

La fonction f

k

: x 7→ max

1≤i≤k

x(k) + 1

2 kxk

2

est difficile ` a minimiser pour toutes les m´ ethodes de sous-gradient.

El´ ements de preuve :

La descente de sous-gradient avec x

0

= 0, assure que : x

k

Rk,n

:= {x ∈

Rn

, x(i) = 0, ∀i > k}

(on ajoute qu’une coordonn´ ee ` a chaque it´ eration).

On a de plus :

x∈

min

Rk,n

f (x) − f

≥ O

1

√ k

.

(19)

Optimisation convexe diff´ erentiable : complexit´ e

La classe des fonctions convexes non diff´ erentiables est trop vaste pour esp´ erer avoir des sch´ emas g´ en´ eriques efficaces.

Complexit´ e de la classe des fonctions convexes diff´ erentiables.

Soit C, la classe des fonctions f telles que :

f est convexe, diff´ erentiable.

∇f est L-Lipschitz (r´ egularit´ e indispensable).

Classe de m´ ethodes :

On consid` ere les m´ ethodes qui g´ en` erent des it´ er´ ees du type x

k+1

∈ x

0

+ vect(∇f (x

0

), ..., ∇f(x

k

)).

Exemples : descentes de gradient, gradient conjugu´ e.

(20)

Optimisation convexe diff´ erentiable : complexit´ e

Th´ eor` eme : Pour tout k ≤

n−12

et x

0

Rn

il existe une fonction f ∈ C telle que :

f (x

k

) − f

≥ 3Lkx

0

− x

k

2

32(k + 1)

2

et

kx

k

− x

k

2

≥ 1

8 kx

0

− x

k

2

. Cons´ equence :

En g´ en´ eral, on ne peut rien dire sur la distance au minimiseur !

Les taux de convergence lin´ eaires (vus en cours)

(kx

k

− x

k ≤ α

k

kx

0

− x

k, α < 1) sont hors de port´ ee en g´ en´ eral.

Le taux en O

k12

n’est pas si d´ ecourageant.

(21)

Optimisation convexe diff´ erentiable : complexit´ e

El´ ements de preuve : on exhibe la fonction la pire au monde :

f

k

(x) = L

4 (hA

k

x, xi − x(1)) o` u :

A

k

=

2 −1 0 0 . . . 0

n−k,1

−1 2 −1 0 . . . 0

n−k,1

0 −1 2 −1 . . . 0

n−k,1

.. . .. . .. . .. . .. . .. . 0 0 0 . . . 2 0

n−k,1

0

k,n−k

0

n−k,n−k

Probl` eme : Discr´ etisation d’un laplacien tronqu´ e en 1D : ce

n’est rien d’autre qu’une r´ egularisation H

1

!

(22)

Optimisation convexe diff´ erentiable : complexit´ e

El´ ements de preuve : 1. On pose x

0

= 0.

2. On remarque que ∇f (x

k

) ∈

Rk,n

. 3. D’o` u x

k

Rk,n

.

4. Pour x ∈

Rk,n

, on montre :

• f(x)−f≥OLkx

0−xk2 k2

et

• kx−xk218kx0−xk2.

(23)

Optimisation convexe diff´ erentiable : descente de gradient

On consid` ere :

x∈

min

Rn

f (x), o` u ∇f est L − Lipschitz.

Et la descente de gradient :

x

k+1

= x

k

− τ ∇f (x

k

) Preuve de convergence :

On a ∀(x, y) ∈

Rn

×

Rn

(in´ egalit´ e boom boom !):

f (y) ≤ f (x) + h∇f(x), y − xi + L

2 ky − xk

2

| {z }

ψ(y,x)

(1)

= f (x) + L 2 ky −

x − ∇f (x) L

k

2

− k∇f (x)k

2

2L (2)

(24)

Optimisation convexe diff´ erentiable : descente de gradient

En posant :

x

k+1

= arg min

x∈Rn

ψ(x, x

k

) (3)

= x

k

− ∇f (x

k

)

L , (4)

on assure que :

f (x

k+1

) ≤ f (x

k

) − k∇f (x

k

)k

2

2L .

On peut ensuite sommer ces in´ egalit´ es de k = 0 ` a N : f (x

N

) − f (x

0

) ≤ −

N

X

k=0

k∇f (x

k

)k

2

2L (5)

≤ − N 2L min

1≤k≤N

k∇f (x

k

)k

2

(6)

(25)

Optimisation convexe diff´ erentiable : descente de gradient

On a donc :

1≤k≤N

min k∇f(x

k

)k

2

≤ 2L

N · (f (x

0

) − f

)

En utilisant de plus la convexit´ e de f (in´ egalit´ e boom boom 2 !):

f(x

) ≥ f (x

k

) + h∇f (x

k

), x

k

− x

i et donc :

f (x

k

) − f (x

) ≤ k∇f (x

k

)k · kx

k

− x

k

(26)

Optimisation convexe diff´ erentiable : descente de gradient

R´ esultat de convergence (relaxation):

Si f a un gradient L-Lipschitz, la descente de gradient assure que :

1≤k≤N

min k∇f(x

k

)k

2

≤ 2L

N · (f (x

0

) − f

) si de plus f est convexe :

f(x

k

) − f

≤ O

Lkx

0

− x

k

2

k

Ce taux de convergence est ajust´ e.

La m´ ethode de gradient est sous-optimale !

(27)

Optimisation convexe diff´ erentiable : m´ ethodes optimales

M´ ethodes optimales : propos´ ees en 1983 par Y. Nesterov.

Id´ ee g´ en´ erale.

Les m´ ethodes d’optimisation ` a un pas ne permettent pas d’obtenir des taux de convergence optimaux ! Il faut aller au del` a des principes de relaxation.

Utiliser vect ({∇f (x

0

), ∇f (x

1

), ..., ∇f (x

k

)}) pour calculer x

k+1

.

Si f est convexe, ∇f apporte une information sur la topologie globale de f !

Imp´ eratif informatique : ne pas stocker tous les gradients.

(28)

Optimisation convexe diff´ erentiable : m´ ethodes optimales

Figure: Sous-diff´erentiel.

(29)

Optimisation convexe diff´ erentiable : m´ ethodes optimales

Ancˆ etres : les m´ ethodes “heavy-ball” (B. Polyak).

Descente de gradient oscillantes : ajouter de l’inertie ! R´ esoudre l’´ equation diff´ erentielle :

¨

x + a x ˙ + b∇f (x) = 0

(Solide soumis ` a une force de gravit´ e et de friction) Discr´ etisation :

−x

k+1

+ 2x

k

− x

k−1

∆t + a (x

k+1

− x

k

)

∆t + b∇f (x

k

) = 0 Soit encore :

x

k+1

= x

k

− a

k

∇f(x

k

) + b

k

(x

k

− x

k−1

)

(Preuve dans le cas fortement convexe ` a venir...)

(30)

Optimisation convexe diff´ erentiable : m´ ethodes optimales

Id´ ee g´ en´ erale Outils :

Une suite minimisante (x

k

).

Une suite de coefficients A

0

= 0, A

k+1

= A

k

+ a

k

, avec a

k

> 0.

Une suite de fonctions (ψ

k

) approchant A

k

f de la forme : ψ

k

(x) =

k

X

i=1

a

i

(f (x

i

) + h∇f (x

i

), x − x

i

i) + 1

2 kx − x

0

k

2

(31)

Optimisation convexe diff´ erentiable : m´ ethodes optimales

Maintenir les in´ egalit´ es :

A

k

f (x

k

) ≤ min

x∈Rn

ψ

k

(x)

ψ

k

(x) ≤ A

k

f (x) +

12

kx − x

0

k

2

∀x ∈

Rn

Ainsi, en prenant x = x

, on obtient :

f (x

k

) − f(x

) ≤ kx

− x

0

k

2

A

k

La rapidit´ e de croissance de (A

k

) d´ etermine la rapidit´ e de convergence du sch´ ema.

Non trivial !

(32)

Optimisation convexe diff´ erentiable : m´ ethodes

optimales

(33)

Sch´ ema multi-pas [Nesterov 83].

In: Nombre d’ it´ erations N , point initial x

0

Rn

.

Out: x

N

une estim´ ee de x

.

Init: Poser t

1

= 1, y

1

= x

0

. Pour k allant de 0 ` a N :

Poser x

k

= y

k

∇f(yLk)

.

Calculer t

k+1

=

1+

1+4t2k

2

.

Poser y

k+1

= x

k

+

tk−1 tk+1

(x

k

− x

k−1

).

(34)

Sch´ ema multi-pas [Nesterov 83].

R´ esultat de convergence L’algorithme assure que :

f(x

k

) − f (x

) ≤ L||x

0

− x

||

2

k

2

C’est un taux de convergence optimal !

(35)

Distance au minimiseur.

Impossible d’obtenir des certificats sur la distance au minimiseur sous la seule hypoth` ese de convexit´ e.

D´ efinition (forte convexit´ e).

Une fonction f est dite fortement convexe si elle est convexe et qu’il existe µ > 0 tel que :

∀(x, y) ∈ dom(f )

2

, ∀η ∈ ∂f (x), f (y) ≥ f (x)+hη, y−xi+ µ

2 ky−xk

2

Distance au minimiseur. Une fonction fortement convexe admet un unique minimiseur x

et

f (x) ≥ f (x

) + µ

2 kx − x

k

2

Proposition. Une fonction C

2

est µ-fortement convexe ssi

λ

min

(H

f

(x)) ≥ µ, ∀x ∈ dom(f ).

(36)

Forte convexit´ e et conditionnement.

Propri´ et´ e. Soient f et g deux fonctions fortement convexes de param` etre µ

1

≥ 0 et µ

2

≥ 0, alors :

∀(α, β) ∈

R2+

, x 7→ αf(x) + βg(x) est fortement convexe de module αµ

1

+ βµ

2

. G´ en´ eralisation du conditionnement.

Soit f (x) =

12

kAx − bk

2

Ainsi : ∇f (x) = A

(Ax − b).

Constante de Lipschitz du gradient L = λ

max

(A

A).

Param` etre de forte convexit´ e µ = λ

min

(A

A).

Le conditionnement du syst` eme lin´ eaire est : κ(A

A) = λ

max

λ

min

= L

µ = κ(f).

(37)

Forte convexit´ e.

Quelques exemples de fonctions fortement convexes

f (x) =

12

kx − x

0

k

2

(µ = 1).

f (x) = g(x) +

12

kx − x

0

k

2

o` u g est convexe (µ = 1).

f (x) =

12

kAx − bk

2

, (µ = λ

min

(A

A)).

• Adoit ˆetre de rang plein.

Notes :

• La notion peut-ˆetre ´etendue `a un cadre non hilbertien.

• Il peut ˆetre int´eressant de changer les m´etriques pour faire varier ces constantes (pr´econditionnement).

(38)

Convergence des m´ ethodes de gradient dans le cas fortement convexe.

Soit f une fonction µ-fortement convexe, ` a gradient L-Lipschitz et κ =

Lµ

.

Th´ eor` eme 1 : La descente de gradient x

k+1

= x

k

µ+L2

∇f (x

k

) assure que :

kx

k

− x

k ≤

κ − 1 κ + 1

k

kx

0

− x

k.

(Arguments de point fixe).

Th´ eor` eme 2 : Les sch´ emas multi-pas avec une modification mineure du calcul des coefficients a

k

assurent que :

kx

k

− x

k ≤ √

κ − 1

√ κ + 1

k

kx

0

− x

k.

L’acc´ el´ eration est automatique pour les sch´ emas simples !

(39)

Preuve de convergence.

Descente de gradient (contraction).

On a :

kx − τ ∇f (x) − (y − τ ∇f (y))k

= k(I − τ ∇f )(x − y)k

≤ k

Z 1

t=0

(I − τ ∇

2

f (x + t(y − x)))(y − x)k

| {z }

f0(x)−f0(y)=Rx y f00(t)dt

≤ sup

z∈Rn

|||I − τ ∇

2

f (z)||| · kx − yk

| {z }

T h.Ch.G.N.

Or

sp(I − τ ∇

2

f (z)) = 1 − τ sp(∇

2

f (z))

⇒ sup

z∈Rn

|||I − τ ∇

2

f (z)||| = max(|1 − τ µ|, |1 − τ L|)

(40)

Preuve de convergence.

Descente de gradient.

En prenant

τ = min

τ

max(|1 − τ µ|, |1 − τ L|) = 2 µ + L , on obtient :

k(I − τ ∇f )(x − y)k ≤

κ − 1 κ + 1

kx − yk

Ainsi :

kx

k+1

− x

k

= kx

k

− τ ∇f(x

k

) − (x

− τ ∇f(x

))k

κ − 1 κ + 1

kx

k

− x

k

(41)

Preuve de convergence sch´ ema acc´ el´ er´ e.

Id´ ee : ´ etudier kx

k+1

− x

k

2

+ kx

k

− x

k

2

x

k+1

− x

x

k

− x

=

x

k

− α

k

∇f(x

k

) + β

k

(x

k

− x

k−1

) − x

x

k

− x

=

(1 + β

k

)I −β

k

I

I 0

x

k

− x

x

k−1

− x

− α

k

∇f(x

k

) 0

≤ sup

z∈Rn

(1 + β

k

)I − α

k

2

f (z) −β

k

I

I 0

·

x

k

− x

x

k−1

− x

Puis on r´ esout :

α

min

kk

sup

z∈Rn

(1 + β

k

)I − α

k

2

f (z) −β

k

I

I 0

(7)

(42)

Preuve de convergence sch´ ema acc´ el´ er´ e.

En posant :

β

k

= max(|1 −

p

α

k

l|, |1 −

p

α

k

L|)

2

, et

α

k

= 4

( √ L + √

l)

2

. On obtient :

sup

z∈Rn

(1 + β

k

)I − α

k

2

f(z) −β

k

I

I 0

≤ √

κ − 1

√ κ + 1

.

(43)

Preuve de convergence sch´ ema acc´ el´ er´ e.

Conclusion cas fortement convexe :

Si κ >> 1, alors :

κ − 1 κ + 1

' 1 − 2 κ . √

κ − 1

√ κ + 1

' 1 − 2

√ κ .

Si κ >> 1, alors les taux polynomiaux ` a l’origine sont plus importants que les taux lin´ eaires asymptotiques.

Ne pas oublier de modifier les param` etres de l’algorithme !

Références

Documents relatifs

[r]

(Choquet p.39) (Re-) d´ emontrer qu’un produit de deux espaces topo- logiques compacts est compact. Indications (en utilisant l’exercice pr´

Comme les pˆ ates sont plong´ ees dans l’eau quand celle-ci est en ´ ebullition, elles sont plong´ ees dans un fluide ` a plus basse temp´ erature et devront donc y rester

(b) (0.5pt×4+0.5pt dessin) D´ eterminer les 4 points critiques de premi` ere esp` ece ainsi que les multiplicateurs de Lagrange associ´ es.. Ils sont tous sur la

On veut utiliser un mod`ele d’Ising (avec la convention, potentiel de valeur 0 quand les deux sites voisins sont de mˆeme classe et β quand les deux sites voisins sont dans des

[r]

Montrer que la boule circonscrite est unique (on pourra raisonner par

Ce r´ esultat est un cas particulier du th´ eor` eme de Riesz qui dit que la boule unit´ e ferm´ ee d’un espace vectoriel norm de dimension infinie n’est jamais compacte.. Exercice