Default options for CMF

Share:

Description

A helper function that creates a list of options to be passed to CMF. To run the code with other option values, first run this function and then directly modify the entries before passing the list to CMF.

Usage

1

Details

Most of the parameters are for controlling the optimization, but some will alter the model itself. In particular, useBias is used for turning the bias terms on and off, and method will change the prior for U.

The default choice for method is "gCMF", providing the group-wise sparse CMF that identifies both shared and private factors (see Klami et al. (2013) for details). The value "CMF" turns off the group-wise sparsity, providing a CMF solution that attempts to learn only factors shared by all matrices. Finally, method="GFA" implements the group factor analysis (GFA) method, by fixing the variance of U[[1]] to one and forcing useBias=FALSE. Then U[[1]] can be interpreted as latent variables with unit variance and zero mean, as assumed by GFA and CCA (special case of GFA with M=2). Note that as a multi-view learning method "GFA" requires all matrices to share the same rows, the very first entity set.

Value

Returns a list of:

init.tau

Initial value for the noise precisions. Only matters for Gaussian likelihood.

init.alpha

Initial value for the automatic relevance determination (ARD) prior precisions.

grad.reg

The regularization parameter for the under-relaxed Newton iterations. 0=no regularization, larger values provide inncreasing regularization. The value must be below 1.

gradIter

How many gradient steps for updating the projections are performed during each iteration of the whole algorithm. Default is one.

grad.max

Maximum absolute change for the elements of the projection matrices during one gradient step. Small values help to prevent over-shooting, wheres inf results to no constraints. Default is inf.

iter.max

Number of iterations for the whole algorithm.

computeCost

Should the cost function values be computed or not. Defaults to TRUE.

verbose

0 = supress all printing, 1 = print current iteration and test RMSE every now and then, 2 = in addition to level 1 print also the current gradient norm.

useBias

Set this to FALSE to exclude the row and column bias terms. The default is TRUE.

method

Default value of "gCMF" computes the CMF with group-sparsity. The other possible values are "CMF" for turning off the group-sparsity prior, and "GFA" for implementing group factor analysis (and canonical correlation analysis when M=2).

prior.alpha_0

Hyperprior values for the gamma prior for ARD.

prior.alpha_0t

Hyperprior values for the gamma prior for tau.

Author(s)

Arto Klami and Lauri Väre

References

Arto Klami, Guillaume Bouchard, and Abhishek Tripathi. Group-sparse embeddings in collective matrix factorization. arXiv:1312.5921, 2013.

Seppo Virtanen, Arto Klami, Suleiman A. Khan, and Samuel Kaski. Bayesian group factor analysis. In Proceedings of the 15th International Conference on Artificial Intelligence and Statistics, volume 22 of JMLR:W&CP, pages 1269-1277, 2012.

See Also

'CMF'

Examples

1
2
3
4
CMF_options = getCMFopts()
CMF_options$iter.max = 500	#Change the number of iterations from default of 200 to 500.
CMF_options$useBias = FALSE	#Don't take row and column means into consideration.
#These options will be in effect when CMF_options is passed on to CMF.