YALL1-Group: A solver for group/joint sparse reconstruction

From Wikimization

(Difference between revisions)
Jump to: navigation, search
(Input Arguments)
(Input Arguments)
Line 26: Line 26:
*'''A''': an m-by-n matrix with m < n, or a structure with the following fields:
*'''A''': an m-by-n matrix with m < n, or a structure with the following fields:
-
: 1) A.times: a function handle for <math>A*x</math>;
+
:1) A.times(required): a function handle for <math>A*x</math>;
-
: 2) A.trans: a function handle for <math>A^T*x</math>;
+
:2) A.trans(required): a function handle for <math>A^T*x</math>;
-
: 3) A.invIpAAt: a function handle for <math>(\beta_1I_m+\beta_2AA^T)^{-1}*x</math>;
+
:3) A.invIpAAt: a function handle for <math>(\beta_1I_m+\beta_2AA^T)^{-1}*x</math>;
-
: 4) A.invAAt: a function handle for <math>(AA^T)^{-1}*x</math>
+
:4) A.invAAt: a function handle for <math>(AA^T)^{-1}*x</math>.
 +
 
 +
Note: A.invIpAAt is only required when (a) primal solver is to be used, and b) A is non-orthonormal, and (c) exact linear system solving is to be performed.
 +
A.invAAt is only required when (a) dual solver is to be used, and b) A is non-orthonormal, and (c) exact linear system solving is to be performed.
 +
 
 +
*'''b''': an m-vector for the group-sparse model or an m-by-l matrix for the joint sparse model.

Revision as of 16:36, 12 June 2011

YALL1-Group is a MATLAB software package for group/joint sparse reconstruction, written by Wei Deng, Wotao Yin and Yin Zhang at Rice University.


Model

(1) Group-sparse basis pursuit model:

                  Minimize     LaTeX: \|x\|_{w,2,1}:=\sum_{i=1}^s w_i\|x_{g_i}\|_2,
  
                  subject to   LaTeX: Ax=b,

where LaTeX: A\in \mathbb{R}^{m\times n}\,(m<n), LaTeX: b\in \mathbb{R}^m, LaTeX: g_i denotes the index set of the LaTeX: i-th group, and LaTeX: w_i\geq0 is the weight for the LaTeX: i-th group.

(2) Jointly-sparse basis pursuit model:

                  Minimize     LaTeX: \|X\|_{w,2,1}:=\sum_{i=1}^n w_i\|x^i\|_2,
                  subject to   LaTeX: AX=B,

where LaTeX: A\in \mathbb{R}^{m\times n}\,(m<n),\, B\in \mathbb{R}^{m\times l}, LaTeX: x^i denotes the LaTeX: i-th row of matrix LaTeX: X, and LaTeX: w_i\geq0 is the weight for the LaTeX: i-th row.

Syntax

[x,Out] = YALL1_group(A,b,groups,'param1',value1,'param2',value2,...);

Input Arguments

  • A: an m-by-n matrix with m < n, or a structure with the following fields:
1) A.times(required): a function handle for LaTeX: A*x;
2) A.trans(required): a function handle for LaTeX: A^T*x;
3) A.invIpAAt: a function handle for LaTeX: (\beta_1I_m+\beta_2AA^T)^{-1}*x;
4) A.invAAt: a function handle for LaTeX: (AA^T)^{-1}*x.

Note: A.invIpAAt is only required when (a) primal solver is to be used, and b) A is non-orthonormal, and (c) exact linear system solving is to be performed.

     A.invAAt is only required when (a) dual solver is to be used, and b) A is non-orthonormal, and (c) exact linear system solving is to be performed.
  • b: an m-vector for the group-sparse model or an m-by-l matrix for the joint sparse model.
Personal tools