Proximal gradient method

Uses your system voice; voice and rate in settings.

Snapshot

≈ 3 min read

Names in other languages

No names in other languages are held for this entry yet.

Article bodies are English and are not machine-translated. A name in another language is not a translation of the article.

Proximal gradient methods are a generalized form of projection used to solve non-differentiable convex optimization problems. (in green). Many interesting problems can be formulated as convex optimization problems of the form \min_{\mathbf{x} \in \mathbb{R}^d} \sum_{i=1}^n f_i(\mathbf{x}) where f_i: \mathbb{R}^d \rightarrow \mathbb{R},\ i = 1, \dots, n are possibly non-differentiable convex functions. The lack of differentiability rules out conventional smooth optimization techniques like the steepest descent method and the conjugate gradient method, but proximal gradient methods can be used instead. Proximal gradient methods starts by a splitting step, in which the functions f_1, . . . , f_n are used individually so as to yield an easily implementable algorithm. They are called proximal because each non-differentiable function among f_1, . . . , f_n is involved via its proximity operator. Iterative shrinkage thresholding algorithm, projected Landweber, projected gradient, alternating projections, alternating-direction method of multipliers, alternating split Bregman are special instances of proximal algorithms. For the theory of proximal gradient methods from the perspective of and with applications to statistical learning theory, see proximal gradient methods for learning.

Proximal gradient methods are a generalized form of projection used to solve non-differentiable convex optimization problems. (in green). Many interesting problems can be formulated as convex optimization problems of the form \min_{\mathbf{x} \in \mathbb{R}^d} \sum_{i=1}^n f_i(\mathbf{x}) where f_i: \mathbb{R}^d \rightarrow \mathbb{R},\ i = 1, \dots, n are possibly non-differentiable convex functions. The lack of differentiability rules out conventional smooth optimization techniques like the steepest descent method and the conjugate gradient method, but proximal gradient methods can be used instead. Proximal gradient methods starts by a splitting step, in which the functions f_1, . . . , f_n are used individually so as to yield an easily implementable algorithm. They are called proximal because each non-differentiable function among f_1, . . . , f_n is involved via its proximity operator. Iterative shrinkage thresholding algorithm, projected Landweber, projected gradient, alternating projections, alternating-direction method of multipliers, alternating split Bregman are special instances of proximal algorithms. For the theory of proximal gradient methods from the perspective of and with applications to statistical learning theory, see proximal gradient methods for learning. x_{k+1} = P_{C_1} P_{C_2} \cdots P_{C_n} x_k However beyond such problems projection operators are not appropriate and more general operators are required to tackle them. Among the various generalizations of the notion of a convex projection operator that exist, proximal operators are best suited for other purposes.

External links

Stephen Boyd and Lieven Vandenberghe Book, Convex optimization EE364a: Convex Optimization I and EE364b: Convex Optimization II, Stanford course homepages EE227A: Lieven Vandenberghe Notes Lecture 18 ProximalOperators.jl: a Julia package implementing proximal operators. ProximalAlgorithms.jl: a Julia package implementing algorithms based on the proximal operator, including the proximal gradient method. Proximity Operator repository: a collection of proximity operators implemented in Matlab and Python.

Text derived from https://en.wikipedia.org/w/index.php?oldid=1296664511 under CC BY-SA 4.0; modifications have been made.

Sources cited in this revision

No external citation was extracted for this revision. That is a statement about the source, not a claim that none exists.