Sparse approximation

Sparse approximation (also known as sparse representation) theory deals with sparse solutions for systems of linear equations. Techniques for finding these solutions and exploiting them in applications have found wide use in image processing, signal processing, machine learning, medical imaging, and more.

## Contents

* 1 Sparse decomposition
* 1.1 Noiseless observations
* 1.2 Noisy observations
* 2 Variations
* 3 Algorithms
* 4 Applications
* 5 See also
* 6 References

## Sparse decomposition

### Noiseless observations

Consider a linear system of equations x=Dα, where D is an underdetermined m×p matrix (m<p) and x∈ℝm,α∈ℝp. The matrix D (typically assumed to be full-rank) is referred to as the dictionary, and x is a signal of interest. The core sparse representation problem is defined as the quest for the sparsest possible representation α satisfying x=Dα. Due to the underdetermined nature of D, this linear system admits in general infinitely many possible solutions, and among these we seek the one with the fewest non-zeros. Put formally, we solve

minα∈ℝp‖α‖0 subject to x=Dα,

where ‖α‖0=#{i:αi≠0,i=1,…,p} is the ℓ0 pseudo-norm, which counts the number of non-zero components of α. This problem is known to be NP-hard with a reduction to NP-complete subset selection problems in combinatorial optimization.

Sparsity of α implies that only a few (k≪m<p) components in it are non-zero. The underlying motivation for such a sparse decomposition is the desire to provide the simplest possible explanation of x as a linear combination of as few as possible columns from D, also referred to as atoms. As such, the signal x can be viewed as a molecule composed of a few fundamental elements taken from D.

While the above posed problem is indeed NP-Hard, its solution can often be found using approximation algorithms. One such option is a convex relaxation of the problem, obtained by using the ℓ1-norm instead of ℓ0, where ‖α‖1 simply sums the absolute values of the entries in α. This is known as the basis pursuit (BP) algorithm, which can be handled using any linear programming solver. An alternative approximation method is a greedy technique, such as the matching pursuit (MP), which finds the location of the non-zeros one at a time.

Surprisingly, under mild conditions on D (using the spark (mathematics), the mutual coherence or the restricted isometry property) and the level of sparsity in the solution, k, the sparse representation problem can be shown to have a unique solution, and BP and MP are guaranteed to find it perfectly.[1] [2] [3]

### Noisy observations

Often the observed signal x is noisy. By relaxing the equality constraint and imposing an ℓ2-norm on the data-fitting term, the sparse decomposition problem becomes

minα∈ℝp‖α‖0 subject to ‖x−Dα‖22≤ϵ2,

or put in a Lagrangian form,

minα∈ℝpλ‖α‖0+12‖x−Dα‖22,

where λ is replacing the ϵ.

Just as in the noiseless case, these two problems are NP-Hard in general, but can be approximated using pursuit algorithms. More specifically, changing the ℓ0 to an ℓ1-norm, we obtain

minα∈ℝpλ‖α‖1+12‖x−Dα‖22,

which is known as the basis pursuit denoising. Similarly, matching pursuit can be used for approximating the solution of the above problems, finding the locations of the non-zeros one at a time until the error threshold is met. Here as well, theoretical guarantees suggest that BP and MP lead to nearly optimal solutions depending on the properties of D and the cardinality of the solution k. [4] [5] [6] Another interesting theoretical result refers to the case in which D is a unitary matrix. Under this assumption, the problems posed above (with either ℓ0 or ℓ1) admit closed-form solutions in the form of non-linear shrinkage.[4]

## Variations

There are several variations to the basic sparse approximation problem.

Structured sparsity: In the original version of the problem, any of the atoms in the dictionary can be picked. In the structured (block) sparsity model, instead of picking atoms individually, groups of them are to be picked. These groups can be overlapping and of varying size. The objective is to represent x such that it is sparse while forcing this block-structure.[7]

Collaborative (joint) sparse coding: The original version of the problem is defined for a single signal x. In the collaborative (joint) sparse coding model, a set of signals is available, each believed to emerge from (nearly) the same set of atoms from D. In this case, the pursuit task aims to recover a set of sparse representations that best describe the data while forcing them to share the same (or close-by) support.[8]

Other structures: More broadly, the sparse approximation problem can be cast while forcing a specific desired structure on the pattern of non-zero locations in α. Two cases of interest that have been extensively studied are tree-based structure, and more generally, a Boltzmann distributed support.[9]

## Algorithms

As already mentioned above, there are various approximation (also referred to as pursuit) algorithms that have been developed for addressing the sparse representation problem:

minα∈ℝp‖α‖0 subject to ‖x−Dα‖22≤ϵ2.

We mention below a few of these main methods.

* Matching pursuit is a greedy iterative algorithm for approximately solving the above problem. It works by gradually finding the locations of the non-zeros in α one at a time. The core idea is to find in each step the column (atom) in D that best correlates with the current residual (initialized to x), and then updating this residual to take the new atom and its coefficient into account. Matching pursuit might pick the same atom multiple times.
* Orthogonal matching pursuit is very similar to matching pursuit, with one major difference: in each of the algorithm's step, all the non-zero coefficients are updated by a least squares. As a consequence, the residual is orthogonal to the already chosen atoms, and thus an atom cannot be picked more than once.
* Stage-wise greedy methods: Improved variations over the above are algorithms that operate greedily while adding two critical features: (i) the ability to add groups of non-zeros at a time (instead of one non-zero per round); and (ii) including a pruning step in each round in which several of the atoms are discarded from the support. Representatives of this approach are the Subspace-Pursuit algorithm and the CoSaMP.[10]

* Basis pursuit solves a convex relaxed version of the problem by replacing the ℓ0 by an ℓ1-norm. Note that this only defines a new objective, while leaving open the question of the algorithm to use for getting the desired solution. Commonly considered such algorithms are the IRLS, LARS, and iterative soft-shrinkage methods.[11]

* There are several other methods for solving sparse decomposition problems: homotopy method, coordinate descent, iterative hard-thresholding, first order proximal methods, which are related to the above-mentioned iterative soft-shrinkage algorithms, and Dantzig selector.

## Applications

Sparse approximation ideas and algorithms have been extensively used in signal processing, image processing, machine learning, medical imaging, array processing, data mining, and more. In most of these applications, the unknown signal of interest is modeled as a sparse combination of a few atoms from a given dictionary, and this is used as the regularization of the problem. These problems are typically accompanied by a dictionary learning mechanism that aims to fit D to best match the model to the given data. The use of sparsity-inspired models has led to state-of-the-art results in a wide set of applications.[12][13][14] Recent work suggests that there is a tight connection between sparse representation modeling and deep-learning.[15]

## See also

* Compressed sensing
* Sparse dictionary learning
* K-SVD
* Lasso (statistics)
* Regularization (mathematics) and inverse problems

## References

1. ↑ Donoho, D.L. and Elad, M. (2003). "Optimally sparse representation in general (nonorthogonal) dictionaries via L1 minimization". Proceedings of the National Academy of Sciences 100 (5): 2197–2202. doi:10.1073/pnas.0437847100. PMID 16576749. PMC 153464. Bibcode: 2003PNAS..100.2197D. https://www.cs.technion.ac.il/~elad/publications/journals/2003/15_New_Sparseness_IT.pdf.
2. ↑ Tropp, J.A. (2004). "Greed is good: Algorithmic results for sparse approximation". IEEE Transactions on Information Theory 50 (10): 2231–2242. doi:10.1109/TIT.2004.834793. https://authors.library.caltech.edu/9035/1/TROieeetit04a.pdf.
3. ↑ Donoho, D.L. (2006). "For most large underdetermined systems of linear equations the minimal l1-norm solution is also the sparsest solution". Communications on Pure and Applied Mathematics 56 (6): 797–829. doi:10.1002/cpa.20132. http://www-stat.stanford.edu/~donoho/Reports/2004/l1l0approx.pdf.
4. ↑ 4.0 4.1 Elad, M. (2010). Sparse and Redundant Representations: From Theory to Applications in Signal and Image Processing. Springer. doi:10.1007/978-1-4419-7011-4. ISBN 978-1441970107.
5. ↑ Donoho, D.L., Elad, M. and Templyakov, V. (2006). "Stable recovery of sparse overcomplete representations in the presence of noise". IEEE Transactions on Information Theory 52 (1): 6–18. doi:10.1109/TIT.2005.860430. https://www.cs.technion.ac.il/~elad/publications/journals/2004/23_Stability_IEEE_TIT.pdf.
6. ↑ Tropp, J.A. (2006). "Just relax: Convex programming methods for identifying sparse signals in noise". IEEE Transactions on Information Theory 52 (3): 1030–1051. doi:10.1109/TIT.2005.864420. https://authors.library.caltech.edu/9040/1/TROieeetit06.pdf.
7. ↑ Eldar, Y.C, Kuppinger, P. and Bolcskei, H. (2009). "Block-sparse signals: Uncertainty relations and efficient recovery". IEEE Transactions on Signal Processing 58 (6): 3042–3054. doi:10.1109/TSP.2010.2044837. Bibcode: 2010ITSP...58.3042E.
8. ↑ Tropp, J.A., Gilbert, A.C. and Strauss, M.J. (2006). "Algorithms for simultaneous sparse approximation. Part I: Greedy pursuit". Signal Processing 86 (3): 572–588. doi:10.1016/j.sigpro.2005.05.030.
9. ↑ Peleg, T. Eldar, Y.C. and Elad, M. (2012). "Exploiting Statistical Dependencies in Sparse Representations for Signal Recovery". IEEE Transactions on Signal Processing 60 (5): 2286–2303. doi:10.1109/TSP.2012.2188520. Bibcode: 2012ITSP...60.2286P.
10. ↑ Needell, D. and Tropp, J.A. (2009). "CoSaMP: Iterative signal recovery from incomplete and inaccurate samples". Applied and Computational Harmonic Analysis 26 (3): 301–321. doi:10.1016/j.acha.2008.07.002.
11. ↑ Zibulevsky, M. and Elad, M. (2010). "L1-L2 optimization in signal and image processing". IEEE Signal Processing Magazine 27 (3): 76–88. doi:10.1109/MSP.2010.936023. Bibcode: 2010ISPM...27...76Z. https://www.cs.technion.ac.il/~elad/publications/journals/2010/L1L2_IEEE_SPM_2010.pdf.
12. ↑ Baraniuk, R.G. Candes, E. Elad, M. and Ma, Y. (2010). "Applications of sparse representation and compressive sensing". Proceedings of the IEEE 98 (6): 906–909. doi:10.1109/JPROC.2010.2047424.
13. ↑ Elad, M. Figueiredo, M.A.T., and Ma, Y. (2010). "On the role of sparse and redundant representations in image processing". Proceedings of the IEEE 98 (6): 972–982. doi:10.1109/JPROC.2009.2037655. https://pdfs.semanticscholar.org/5393/46f7f35f83875d9e86851010ee35d1a47e69.pdf.
14. ↑ Plumbley, M.D. Blumensath, T. Daudet, L. Gribonval, R. and Davies, M.E. (2010). "Sparse representations in audio and music: From coding to source separation". Proceedings of the IEEE 98 (6): 995–1005. doi:10.1109/JPROC.2009.2030345.
15. ↑ Papyan, V. Romano, Y. and Elad, M. (2017). "Convolutional Neural Networks Analyzed via Convolutional Sparse Coding". Journal of Machine Learning Research 18 (83): 1–52. Bibcode: 2016arXiv160708194P. http://jmlr.org/papers/volume18/16-505/16-505.pdf.

* v
* t
* e

Numerical linear algebra

Key concepts|

* Floating point
* Numerical stability

Problems|

* System of linear equations
* Matrix decompositions
* Matrix multiplication (algorithms)
* Matrix splitting
* Sparse problems

Hardware|

* CPU cache
* TLB
* Cache-oblivious algorithm
* SIMD
* Multiprocessing

Software|

* MATLAB
* Basic Linear Algebra Subprograms (BLAS)
* LAPACK
* Specialized libraries
* General purpose software

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/Sparse approximation. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=Sparse_approximation&oldid=199469"
*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template