slides 03 gradient
TRANSCRIPT
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 1/25
Introduction à l’optimisation
Stéphane Canu
ASI 4 - Optimisation sans contraintes
November 30, 2011
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 2/25
Plan
problème : minx∈IR
nJ (x)
1 Optimisation sans contraintesMéthodes de descenteDeux approchesMéthodes de recherche linéaireDirection de descente et descente de gradientGradient conjuguéMéthode de Newton
Solution : trouver x∗ ∈ IRn tel que J (x∗) = 0
n équations à n inconnues ... c’est une condition nécessaire et suffisantepour J convexe !
Stéphane Canu (INSA Rouen - ASI) Optimisation sans contraintes November 30, 2011 2 / 24
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 3/25
Exemples de problème d’optimisation sans contr.
linéaire : minx∈IRn
J (x) = bx → pas de solution
quadratique convexe (moindres carrés)
minx∈IRn
J q (x) =1
2xAx− bx A définie positive
quadratique non convexe
non quadratique convexe : expx 1+3x 2−1/10 + expx 1−x 2−1/10 + exp−x 1−1/10
quadratique convexe quadratique non convexe non quadratique convexe
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 4/25
Illustration 2d
J (x) =1
2xAx− bx
lignes d’iso cout : {x ∈ IR2 | J (x) = Cte }
une direction de descente d doit vérifier : d(Ax− b J (x)
) < 0
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 5/25
Illustration 2d
J (x) =1
2xAx− bx
lignes d’iso cout : {x ∈ IR2 | J (x) = Cte }
une direction de descente d doit vérifier : d(Ax− b J (x)
) < 0
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 6/25
deux approches itératives classiques
problème : minx∈IRn
J (x)
Solution : partir d’un point x0 ∈ IRn
et construire une suite x (1), x (2), . . . x (k ), . . . k ∈ INqui converge vers la solution x∗ telle que J (x∗) = 0
deux approches itératives classiques
recherche linéaire (line search) x(k +1) = x(k ) + ρk d(k )
minρ∈IR
J (x(k ) + ρd(k )) d(k ) étant une direction de descente
région de confiance (trust region) x(k +1) = x(k ) + d(k )
mind∈R (x)
M (x + d) R (x) étant une région de confiance autour de x
avec le modèle M : M (x+ d) = J (x) + dJ (x) + 12dB (x)d et R (x ) =
x+ p
p ≤ ∆
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 7/25
Méthodes de recherche linéaire
x(new) = x(old)+ρ d, x, d ∈ IRd
initialisation x(0)
direction d ∈ IRn
pas ρ ∈ IR
Fonction x ← min(J , x)Tant que (on a pas convergé)faire
d ← trouve une directionρ ←calcul le pas(x, d, J )x ← x + ρd
Fait
suite minimisante : x(k ), ρk , d(k ), k ∈ INconvergente : x(k ) −→ x∗ et J (x(k )) −→ 0
arrêt (on a convergé) : minimum atteint : J ≤ , le cout ne diminue plus
|J (x(new))− J (x(old))| ≤ ε
ou on dépasse un nombre d’itération maximum fixé : k ≥ k max
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 8/25
Direction de descente
Definition (Direction de descente)
d est une direction de descente s’il existe ρ0 > 0 tel que ∀ρ ≤ ρ0
J (x(new)) < J (x(old))
Theorem
Toute direction d telle que J d < 0 est une direction de descente
Elément de démonstration : J (x + ρd) = J (x) + ρJ d + o (ρ2)
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 9/25
Direction de descente du gradient et autre
Theorem (Descente de gradient)
L’opposé du gradient est une direction de descente : d = −J (x)
Elément de démonstration : pour d = −J (x ) et ρ suffisamment petit
J (
x − ρ
J ) =
J (
x )− ρ
J
2
+ ρ
2
/2 J H
J
H définie positive<
J (
x )
Autres méthodes
Quasi Newton d = −B J
Newton d = −H −1J
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 10/25
Choix du pas de descente
ρ = c pas fixe
x(k +1) = x(k ) + ρd(k ), d(k ) ∈ ∂ J (x(k))
ρk pas variable
x(k +1) = x(k ) +ρk
d(k )d(k ), d(k ) ∈ ∂ J (x(k))
ρk pas optimal
ρk = argminγ ∈IR
J (x(k ) + γ d(k ))
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 11/25
Pas variable : règle d’Armijo
x(k +1) = x(k ) +ρk
d(k )
d(k ), d(k ) ∈ ∂ J (x(k))
règle d’Armijo
on commence avec un pas ρ = ρ0
si J (x(k +1)) < J (x(k )) alors ρk +1 = αρk α = 1, 15sinon ρk +1 = βρk β = 0, 5
tant que le cout n’a pas diminué, on diminue le pas
de nombreuses variantes... (e.g recherche par backtracking entre 0 et ρ0)
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 12/25
Gradient à pas optimal
gradient à pas optimal
ρ = argminγ ∈IR
J (x + γ d)
Exemple : le cas quadratique
J (x) = 1
2xAx− bx
J (x + γ d) = 1
2(x + γ d)A(x + γ d)− b(x + γ d)
dJ (x + γ d)
d γ
= dAx + γ dAd− bd
dJ (x + γ d)
d γ = 0 ⇔ γ = −
d(Ax− b)
dAd= −
dx J
dH d
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 13/25
Choix du pas de descente : illustration
J (x 1, x 2) = expx 1+3x 2−1/10 + expx 1−x 2−1/10 + exp−x 1−1/10
Recherche par backtracking pas optimal
cf convex optimization p 471, Stephen Boyd and Lieven Vandenberghe
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 14/25
Descente de gradient
Theorem
si J est convexe, continue et sous différentiable en tout point, et si
∞k =1
ρk = +∞ et limk →∞
ρk = 0
alors limk →∞ J (x(k )) = J (xmin) avec xmin le minimum global de J.
Sous certaines conditions la méthode de gradient à pas optimalconverge
d’autres preuves de convergences existent
arrêt : les variations relatives du gradient sont petites ou la norme dugradient est petite
méthode simple, robuste mais lente
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 15/25
Plan
problème : minx∈IR
nJ (x)
1 Optimisation sans contraintesMéthodes de descenteDeux approches
Méthodes de recherche linéaireDirection de descente et descente de gradientGradient conjuguéMéthode de Newton
Solution : trouver x∗ ∈ IRn tel que J (x∗) = 0
n équations à n inconnues ... c’est une condition nécessaire et suffisantepour J convexe !
Stéphane Canu (INSA Rouen - ASI) Optimisation sans contraintes November 30, 2011 14 / 24
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 16/25
La méthode du Gradient conjugué
Ax = b ⇔ minx
12
xAx− xb
xJ (x) = Ax− b r = −xJ (x)
Nous allons nous appuyer sur un système générateur dk , k = 1, n dedirections conjuguées
Definition
deux vecteurs x = y sont dit A-conjugués pour une matrice définie positive
A sixAy = 0
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 17/25
Directions conjuguées et découplage
Soit une famille de vecteurs dk , k = 1, n un système générateur de IRn :
∀x ∈ IRn,∃ρk ∈ IR, k = 1, n tel que x =
nk =1
ρk dk
Supposons que les directions dk , k = 1, n soient 2 à 2 A-conjuguées :
d
i Ad j = δij =
0 si i = j
1 si i = j
Theorem (Découplage d’une forme quadratique)
minx
1
2xAx− xb = min
ρ
1
2
n
k =1ρk dk
A
n
k =1ρk dk
−
n
k =1ρk dk
b
= minρ
1
2
nk =1
nk =1
ρk ρk dk Adk −n
k =1
ρk d
k b
= minρ
n
k =11
2ρ2k d
k Adk − ρk d
k b
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 18/25
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 19/25
L’algorithme du gradient conjugué : principe
général
Le système est alors découplé et chaque ρk peut être réglé indépendamment
minρk
1
2ρ2
k dk Adk − ρk d
k b ⇔ ρk =
dk b
dk
Adk
Definition
Soit {d1, . . . , dn} une famille de vecteur A-conjugués. La méthode dugradient conjugué s’écrit
x0 donnéxk = xk −1 + ρk dk
où ρk est calculé de manière optimale.
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 20/25
Remarques :Si on raisonne de manière constructive on a xk −1 =
k −1
i =1ρi di
rk −1 = b− Axk −1 = b− A
k −1i =1
ρi di = b−k −1i =1
ρi Adi
et donc
dk rk −1 = dk b
de plus on peut aussi écrire que
rk = b− Axk
= b− (Axk −1 + ρk dk )= rk −1 + ρk Adk
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 21/25
Il reste a construire les directions dk . Une idée consiste à partir du vecteurdes résidus qui est aussi le vecteur du gradient (et donc une diredction dedescente) et de le corriger pour le rendre A-conjugué. Ainsi on pose :
dk +1 = rk − βk dk −k −1
i =1
γ i di
On peut montrer (corrolaire 10.2.4 GVL p 526) que les γ i = 0. Pour avoirdk Adk +1 = 0 on doit prendre
βk =dk Ark
dk Adk
L’ l ith d di t j é
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 22/25
L’algorithme du gradient congujué
x0 = 0;r0 = bd0 = r0; k = 0;Tant que (maxk |rk | > ε) faire
ρk =
rk dk
dk
Adk
xk +1 = xk + ρk dk
rk +1 = rk − ρk Adk
βk =rk +1
rk +1
rk rk
dk +1 = rk +1 + βk dk
Fait
M d l di t j é
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 23/25
Mon code pour le gradient conjugué
function a = Mon_Grad_Conj(A,b)
a = 0*b;r = b - A * a ;
d = r; k=0;nbitemax=100;beta=0;r2 = r’*r;
while (k<=nbitemax)
Ad = A*d;
r2_old = r2;
pas = r2/(d’*Ad); % pas = (r’*d)/(d’*Ad);
a = a + p a s * d ;
r = r - pas *Ad; % r = b - A*a;
r2 =r’*r;beta = r2/r2_old; % beta = -(r’*Ad)/(d’*Ad);
d = r + beta*d; % D = [D d];
if (r2) < 10^-4, k = nbitemax+1 ; else, k = k+1; end ;
endStéphane Canu (INSA Rouen - ASI) Optimisation sans contraintes November 30, 2011 22 / 24
L Méth d d N t
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 24/25
La Méthode de Newton
Propriété : développement de Taylor au second ordre
J (x + d) = J (x) + DJ x(x)d +1
2 d
D 2
J x(x)d + o (d2
)
que l’on cherche à minimiser par rapport à d. si on a
G (d) = J (x) + DJ x(x)d +1
2
dD 2J x(x)d + o (d2)
DG d(d) = 0 ⇔ d = −D 2J x(x)−1DJ x(x)
soit si J est le vecteur gradient en x et H la matrice hessienne
d = −H −1J
on peut chercher d... par la méthode du gradient conjugué
on peut aussi rechercher le pas optimal
x(new) = x(old) + ρ d, d ∈ IRd
conclusion
5/16/2018 Slides 03 Gradient - slidepdf.com
http://slidepdf.com/reader/full/slides-03-gradient 25/25
conclusion
O(n) Gradient
pas fixe
pas optimal heuristique (règle d’Armijo)
O(n2) Gradient conjugué quasi newton approximation d = H −1J Levenberg Marquart
O(n3) Newton
méthode direction de descente temps de calcul convergence
gradient d = −J O(n) lineairequasi Newton d = −B J O(n2) super linéaire
Newton d = −H −1J O(n3) quadratic
le temps de calcul du pas optimal peut aussi varier