-  3.41.0
matfaust::factparams::ParamsPalm4MSA Class Reference

The class is to set input parameters for the Palm4MSA algorithm. More...

Public Member Functions

function ParamsPalm4MSA (constraints, stop_crit, varargin)
 Constructor. More...
- Public Member Functions inherited from matfaust::factparams::ParamsFact
function ParamsFact (num_facts, constraints, varargin)

Additional Inherited Members

- Static Public Member Functions inherited from matfaust::factparams::ParamsFact
static function factor_format_str2int (factor_format)
static function parse_opt_args (cell_args, opt_arg_names, opt_arg_map)
static function get_constraints (constraints)
 Returns a cell array of constraints from constraints which is a ConstraintList or cell array that can be a mix of pyfaust.factparams.ConstraintGeneric or pyfaust.proj.proj_gen. If projs is a ConstraintList then the function just returns the same object as is. More...
- Public Attributes inherited from matfaust::factparams::ParamsFact
Property step_size
Property constant_step_size
Property factor_format
Property packing_RL
Property norm2_max_iter
Property norm2_threshold
Property use_MHTP
Property no_normalization
Property no_lambda
- Protected Attributes inherited from matfaust::factparams::ParamsFact
Constant Property DEFAULT_STEP_SIZE = 10
Constant Property DEFAULT_VERBOSITY = false
Constant Property DEFAULT_CONSTANT_STEP_SIZE = false
Constant Property DEFAULT_INIT_LAMBDA = 1.0
Constant Property DEFAULT_IS_UPDATE_WAY_R2L = false
Constant Property DEFAULT_PACKING_RL = true
Constant Property DEFAULT_FACTOR_FORMAT = 'dynamic'
Constant Property DEFAULT_NO_NORMALIZATION = false
Constant Property DEFAULT_NO_LAMBDA = false
Constant Property DEFAULT_NORM2_MAX_ITER = 0
Constant Property DEFAULT_NORM2_THRESHOLD = 0
Constant Property IDX_FACTOR_FORMAT = 9
Constant Property IDX_PACKING_RL = 10
Constant Property IDX_NO_NORMALIZATION = 11
Constant Property IDX_NO_LAMBDA = 12

Detailed Description

The class is to set input parameters for the Palm4MSA algorithm.

Constructor & Destructor Documentation

◆ ParamsPalm4MSA()

function matfaust::factparams::ParamsPalm4MSA::ParamsPalm4MSA ( constraints  ,
stop_crit  ,


constraintsa ConstraintList object or a cell array of matfaust.proj.proj_gen objects to define the constraints of the factors.
stop_crita matfaust.factparams.StoppingCriterion instance which defines the algorithm stopping criterion.
'init_facts',cellarray of matrices (optional) if defined, matfaust.fact.palm4msa will initialize the factors with init_facts (by default the first factor to be updated is initialized to zero and the others to identity. Note that the so called first factor can be the rightmost or the leftmost depending on the is_update_way_R2L argument).
'is_update_way_R2L',bool(optional) if true matfaust.fact.palm4msa will update factors from the right to the left, otherwise it's done in reverse order.
'init_lambda',real(optional) the scale scalar initial value (by default the value is one).
'step_size',real(optional) the initial step of the PALM descent.
'constant_step_size',realif true the step_size keeps constant along the algorithm iterations otherwise it is updated before every factor update.
'is_verbose',bool(optional) True to enable the verbose mode. parameter is experimental, its value shouldn't be changed.
'norm2_max_iter',real(optional) maximum number of iterations of power iteration algorithm. Used for computing 2-norm.
'norm2_threshold',real(optional) power iteration algorithm threshold (default to 1e-6). Used for computing 2-norm.
'grad_calc_opt_mode',int(optional) the mode used for computing the PALM gradient. It can be one value among matfaust.factparams.ParamsFact.EXTERNAL_OPT, matfaust.factparams.ParamsFact.INTERNAL_OPT or matfaust.factparams.ParamsFact.DISABLED_OPT. This
'factor_format',str(optional) 'dynamic' (by default), 'dense', or 'sparse'. If 'dense' or 'sparse' then all factors will be respectively full arrays or sparse matrices. If 'dynamic' is used then the algorithm determines the format of each factor automatically in order to decrease the memory footprint of the Faust. This option is available only on the 2020 backend matfaust.fact.palm4msa, matfaust.fact.hierarchical or matfaust.fact.palm4msa_mhtp, matfaust.fact.hierarchical_mhtp.
'packing_RL',booltrue (by default) to pre-compute R and L products (only available with 2020 backend of pyfaust.fact.palm4msa).
'no_normalization',boolFalse (by default), if True it disables the normalization of prox output matrix in PALM4MSA algorithm. Note that this option is experimental (only available with 2020 backend of pyfaust.fact.palm4msa).
'no_lambda',boolfalse (by default), if true it disables the lambda scalar factor in the PALM4MSA algorithm which consists basically to set it always to one (it also lowers the algorithm cost).

The documentation for this class was generated from the following file: