Bregman method

From testwiki
Revision as of 10:21, 1 February 2024 by imported>Mersenne56 (Added link to Rudin-Osher-Fatemi)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Template:Short description Template:Multiple issues

The Bregman method is an iterative algorithm to solve certain convex optimization problems involving regularization.[1] The original version is due to Lev M. Bregman, who published it in 1967.[2]

The algorithm is a row-action method accessing constraint functions one by one and the method is particularly suited for large optimization problems where constraints can be efficiently enumeratedTemplate:Citation needed. The algorithm works particularly well for regularizers such as the 1 norm, where it converges very quickly because of an error-cancellation effect.[3]

Algorithm

In order to be able to use the Bregman method, one must frame the problem of interest as finding minuJ(u)+f(u), where J is a regularizing function such as 1.[3]

The Bregman distance is defined as Dp(u,v):=J(u)(J(v)+p,uv) where p belongs to the subdifferential of J at u (which we denoted J(u)).[3][4] One performs the iteration uk+1:=minu(αD(u,uk)+f(u)), with α a constant to be chosen by the user (and the minimization performed by an ordinary convex optimization algorithm),[3] or uk+1:=minu(Dpk(u,uk)+f(u)), with pk chosen each time to be a member of J(uk).[4]

The algorithm starts with a pair of primal and dual variables. Then, for each constraint a generalized projection onto its feasible set is performed, updating both the constraint's dual variable and all primal variables for which there are non-zero coefficients in the constraint functions gradient. In case the objective is strictly convex and all constraint functions are convex, the limit of this iterative projection converges to the optimal primal dual pair.Template:Citation needed

In the case of a basis pursuit-type problem minx:Ax=b(|x|1+12α|x|22), the Bregman method is equivalent to ordinary gradient descent on the dual problem miny(bty+α2|AtyProj[1,1]n(Aty)|2).[5] An exact regularization-type effect also occurs in this case; if α exceeds a certain threshold, the optimum value of x is precisely the optimum solution of minx:Ax=b|x|1.[3][5]

Applications

The Bregman method or its generalizations can be applied to:

Generalizations and drawbacks

The method has links to the method of multipliers and dual ascent method (through the so-called Bregman alternating direction method of multipliers,[10][7] generalizing the alternating direction method of multipliers[8]) and multiple generalizations exist.

One drawback of the method is that it is only provably convergent if the objective function is strictly convex. In case this can not be ensured, as for linear programs or non-strictly convex quadratic programs, additional methods such as proximal gradient methods have been developed.Template:Citation needed In the case of the Rudin-Osher-Fatemi model of image denoisingTemplate:Clarify, the Bregman method provably converges.[11]

Some generalizations of the Bregman method include:

Linearized Bregman

In the Linearized Bregman method, one linearizes the intermediate objective functions Dp(u,uk)+f(u) by replacing the second term with f(uk)+f(uk),uuk (which approximates the second term near uk) and adding the penalty term 12δ|uuk|22 for a constant δ. The result is much more computationally tractable, especially in basis pursuit-type problems.[4][5] In the case of a generic basis pursuit problem minμ|u|1+12|Auf|22, one can express the iteration as vk+1:=vk+At(fAuk),uk+1,i:=δshrink(vk,i,μ) for each component i, where we define shrink(y,a):={ya,y(a,)0,y[a,a]y+a,y(,a).[4]

Sometimes, when running the Linearized Bregman method, there are periods of "stagnation" where the residualTemplate:Clarify is almost constant. To alleviate this issue, one can use the Linearized Bregman method with kicking, where one essentially detects the beginning of a stagnation period, then predicts and skips to the end of it.[4][5]

Since Linearized Bregman is mathematically equivalent to gradient descent, it can be accelerated with methods to accelerate gradient descent, such as line search, L-BGFS, Barzilai-Borwein steps, or the Nesterov method; the last has been proposed as the accelerated linearized Bregman method.[5][9]

Split Bregman

The Split Bregman method solves problems of the form minu|Φ(u)|1+H(u), where Φ and H are both convex,[4] particularly problems of the form minu|Φu|1+|Kuf|2.[6] We start by rewriting it as the constrained optimization problem minu:d=Φ(u)|d|1+H(u), then relax it into minu,d|d|1+H(u)+λ2|dΦ(u)|22 where λ is a constant. By defining J(u,d):=|d|+H(u), one reduces the problem to one that can be solved with the ordinary Bregman algorithm.[4][6]

The Split Bregman method has been generalized to optimization over complex numbers using Wirtinger derivatives.[1]

References

Template:Reflist

  1. 1.0 1.1 1.2 1.3 Template:Cite journal
  2. Bregman L. "A Relaxation Method of Finding a Common Point of Convex Sets and its Application to Problems of Optimization". Dokl. Akad. Nauk SSSR, v. 171, No. 5, 1966, p.p. 1019-1022. (English translation: Soviet Math. Dokl., v. 7, 1966, p.p. 1578-1581)
  3. 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 Template:Cite web
  4. 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Template:Cite web
  5. 5.0 5.1 5.2 5.3 5.4 5.5 Template:Cite journal
  6. 6.0 6.1 6.2 Template:Cite journal
  7. 7.0 7.1 Template:Cite web
  8. 8.0 8.1 8.2 8.3 Template:Cite journal
  9. 9.0 9.1 Template:Cite journal
  10. Template:Cite journal
  11. Template:Cite journal