Helper to define list of parameters to control the PLN fit. All arguments have defaults.

```
PLNnetwork_param(
backend = "nlopt",
trace = 1,
n_penalties = 30,
min_ratio = 0.1,
penalize_diagonal = TRUE,
penalty_weights = NULL,
config_optim = list(),
inception = NULL
)
```

- backend
optimization back used, either "nlopt" or "torch". Default is "nlopt"

- trace
a integer for verbosity.

- n_penalties
an integer that specifies the number of values for the penalty grid when internally generated. Ignored when penalties is non

`NULL`

- min_ratio
the penalty grid ranges from the minimal value that produces a sparse to this value multiplied by

`min_ratio`

. Default is 0.1.- penalize_diagonal
boolean: should the diagonal terms be penalized in the graphical-Lasso? Default is

`TRUE`

- penalty_weights
either a single or a list of p x p matrix of weights (default filled with 1) to adapt the amount of shrinkage to each pairs of node. Must be symmetric with positive values.

- config_optim
a list for controlling the optimizer (either "nlopt" or "torch" backend). See details

- inception
Set up the parameters initialization: by default, the model is initialized with a multivariate linear model applied on log-transformed data, and with the same formula as the one provided by the user. However, the user can provide a PLNfit (typically obtained from a previous fit), which sometimes speeds up the inference.

list of parameters configuring the fit.

The list of parameters `config_optim`

controls the optimizers. When "nlopt" is chosen the following entries are relevant

"algorithm" the optimization method used by NLOPT among LD type, e.g. "CCSAQ", "MMA", "LBFGS". See NLOPT documentation for further details. Default is "CCSAQ".

"maxeval" stop when the number of iteration exceeds maxeval. Default is 10000

"ftol_rel" stop when an optimization step changes the objective function by less than ftol multiplied by the absolute value of the parameter. Default is 1e-8

"xtol_rel" stop when an optimization step changes every parameters by less than xtol multiplied by the absolute value of the parameter. Default is 1e-6

"ftol_out" outer solver stops when an optimization step changes the objective function by less than xtol multiply by the absolute value of the parameter. Default is 1e-6

"maxit_out" outer solver stops when the number of iteration exceeds out.maxit. Default is 50

"ftol_abs" stop when an optimization step changes the objective function by less than ftol_abs. Default is 0.0 (disabled)

"xtol_abs" stop when an optimization step changes every parameters by less than xtol_abs. Default is 0.0 (disabled)

"maxtime" stop when the optimization time (in seconds) exceeds maxtime. Default is -1 (disabled)

When "torch" backend is used, with the following entries are relevant:

"maxeval" stop when the number of iteration exceeds maxeval. Default is 10000

"ftol_out" outer solver stops when an optimization step changes the objective function by less than xtol multiply by the absolute value of the parameter. Default is 1e-6

"maxit_out" outer solver stops when the number of iteration exceeds out.maxit. Default is 50

"ftol_rel" stop when an optimization step changes the objective function by less than ftol multiplied by the absolute value of the parameter. Default is 1e-8

"xtol_rel" stop when an optimization step changes every parameters by less than xtol multiplied by the absolute value of the parameter. Default is 1e-6