This repository contains matlab interface to use proximal algorithms and different variants for composite funtions containing convex and non-convex functions.
Non convex and non smooth probelms have been observed widely in the field of signal processing and machine learning. Solving non convex non smooth problems is a big challenge involving saddle point localization, non differentialibilty, escape from saddle point and others. Proximal algorithms and its variants provides a good framework for non convex problems.Here a non convex for proximal algorithms have been built.
Given a composite function
The non convex class tries to solve the optimization probelm given the proximal operator and the gradient of the convex function.
The algorithms present are:
- Proximal gradient method
- Accelerated proximal gradient method
- Monotonic accelerated proximal gradient method
- Monotonic non convex proximal gradient method
- Nonmonotonic non convex proximal gradient method
The references for the algorithms stated above are provided in the reference below
Clone or download the repository. Various inputs are needed to the non convex class which are explained as follows. f - convex function
g - non-convex function
grad_f - gradient of convex function
prox - proximal operator
init_x - initialization
A constructor is also present for the class and the cronological order is as mentioned above.
Matlab 2010 or higher
The test_non_APG.m contains a random system. With the objective of a lasso with l1 regularization.
- Sandeep Banik - Projects
Proximal algorithm by Neal Parikh and Stephen Boyd
Fast Gradient-Based Algorithms for Constrained Total Variation Image Denoising and Deblurring Problems by Amir Beck and Marc Teboulle
Accelerated Proximal Gradient Methods for Nonconvex Programming by Huan Li and Zhouchen Lin