Proximal operator
In mathematical optimization, the proximal operator is an operator associated with a proper, lower semi-continuous convex function from a Hilbert space to , and is defined by: [1]
For any function in this class, the minimizer of the right-hand side above is unique, hence making the proximal operator well-defined. The of a function enjoys several useful properties for optimization, enumerated below. Note that all of these items require to be proper (i.e. not identically , and never take a value of ), convex, and lower semi-continuous.
A function is said to be firmly non-expansive if . Fixed points of are minimizers of : .
Global convergence to a minimizer is defined as follows: If , then for any initial point , the recursion yields convergence as . This convergence may be weak if is infinite dimensional.[2]
It is frequently used in optimization algorithms associated with non-differentiable optimization problems such as total variation denoising.
If is the 0- indicator function of a nonempty, closed, convex set, then it is lower semi-continuous, proper, and convex and is the orthogonal projector onto that set.
See also
References
- Neal Parikh and Stephen Boyd (2013). "Proximal Algorithms" (PDF). Foundations and Trends in Optimization. 1 (3): 123–231. Retrieved 2019-01-29.
- Bauschke, Heinz H.; Combettes, Patrick L. (2017). Convex Analysis and Monotone Operator Theory in Hilbert Spaces. CMS Books in Mathematics. New York: Springer. doi:10.1007/978-3-319-48311-5. ISBN 978-3-319-48310-8.
External links
- The Proximity Operator repository: a collection of proximity operators implemented in Matlab and Python.
- ProximalOperators.jl: a Julia package implementing proximal operators.
- ODL: a Python library for inverse problems that utilizes proximal operators.