In the package `MoMA`

, we support the following sparsity-inducing
penalty functions.

These functions specify the value of the `u_sparse,v_sparse`

arguments in the
`moma_*pca`

series of functions, and the `x_sparse,y_sparse`

arguments
in the `moma_*cca`

and `moma_*lda`

series of functions.

## Arguments

... |
Force users to specify arguments by names. |

lambda |
A vector containing penalty values |

select_scheme |
A char being either "b" (nested BIC search) or "g" (grid search).
MoMA provides a flexible framework for regularized multivariate analysis
with several tuning parameters for different forms of regularization.
To assist the user in selecting these parameters (`alpha_u` ,
`alpha_v` , `lambda_u` , `lambda_v` ), we provide
two selection modes: grid search ("g") and nested BIC search ("b").
Grid search means we solve the problem
for all combinations of parameter values provided by the user.
To explain nested BIC search, we need to look into how the algorithm runs.
To find an (approximate) solution to a penalized SVD (Singular Value Decomposition) problem is to solve two
penalized regression problems iteratively. Let's call them problem u and problem v, which give
improving estimates of the right singular vector, *u*, and the left singular vector, *v*, respectively.
For each regression problem, we can select the optimal parameters
based on BIC.
The nested BIC search is essentially two 2-D searches. We start from SVD solutions, and then find the optimal
parameters for problem u, given current estimate of *v*. Using the result from previous step, update
current estimate of *u*, and then do the same thing for problem v,
that is, to find the optimal parameters for problem v given current estimate of *u*. Repeat
the above until convergence or the maximal number of iterations has been reached.
Users are welcome to refer to section 3.1: Selection of Regularization Parameters
in the paper cited below. |

## Details

All functions
above share two common parameters: `lambda`

and `select_scheme`

, which are
described in the Arguments section.

## References

G. I. Allen and M. Weylandt, "Sparse and Functional Principal
Components Analysis," 2019 IEEE Data Science Workshop (DSW),
Minneapolis, MN, USA, 2019, pp. 11-16. doi: 10.1109/DSW.2019.8755778
.