Skip to content

Latest commit

 

History

History
65 lines (52 loc) · 6.1 KB

Additional_NetREm_Parameters.md

File metadata and controls

65 lines (52 loc) · 6.1 KB

Additional Parameters for NetREm

Entire usage of the NetREm main function netrem()

NetREm fits a Network-constrained Lasso regression machine learning model with user-provided weights for the prior network. Here, netrem is the main function with the following usage:

netrem(
        edge_list,
        beta_net = 1,
        alpha_lasso = 0.01,
        default_edge_weight = 0.01,
        edge_vals_for_d = True,
        w_transform_for_d = "none",
        degree_threshold = 0.5,
        gene_expression_nodes = [],
        overlapped_nodes_only = False,
        standardize_X = True,
        standardize_y = True,
        center_y = False,
        y_intercept = False,
        view_network = False,
        model_type = "Lasso",
        lasso_selection = "cyclic",
        all_pos_coefs = False,
        tolerance = 1e-4,
        maxit = 10000,
        num_jobs = -1,
        num_cv_folds = 5,
        lassocv_eps = 1e-3,
        lassocv_n_alphas = 100,
        lassocv_alphas = None,
        verbose = False,
        hide_warnings = True
)

The above lists out all of the parameters input into our netrem function. We detail the additional parameters after lasso_selection below. Several of these parameters are based on utilizing Python's scikit-learn library. The main inputs are detailed on the NetREm Home Page.

Additional Inputs:

Parameter Definition
all_pos_coefs boolean, default = 'False'
Please note that this is the positive parameter found in the Lasso and LassoCV classes in sklearn.
• If all_pos_coefs = True, the model will be restricted to be fit with all regression coefficients as positive.
• If all_pos_coefs = False, the model will be fit with no restrictions on regression coefficients (can be positive or negative).
tolerance float, default = 1e-4
The tolerance sklearn would use for optimizing the NetREm model. (This is known as tol in by Python's sklearn). If the updates to the optiimzation are smaller than tolerance, then the optimization code will check the dual gap for optimizality and contine the optimization until that dual gap is smaller than tolerance.
maxit int, default = 10000
Please note that this is the max_iter parameter found in the Lasso and LassoCV classes in sklearn. This is the maximum number of iterations that NetREm will perform.
verbose boolean, default = False
If True, this will print additional lines and details of steps and initial results to the console when running netrem.
hide_warnings boolean, default = True
If True, this will display warnings generated by Python when running netrem.
  • Parameters if model_type = LassoCV are derived from the LassoCV class in sklearn:
Parameter Definition
lassocv_eps float, default = 1e-3
This corresponds to the eps epsilon parameter in LassoCV. It is the length of the path. Here, lassocv_eps = 1e-3 means that alpha_min / alpha_max = 1e-3.
lassocv_n_alphas int, default = 100
This corresponds to the n_alphas parameter in LassoCV. This is the number of alphas along the Lasso regularization path.
lassocv_alphas array-like, default = None
This corresponds to the alphas parameter in LassoCV. List of alphas where the models to be computed. If None then the alphas are set automatically.
num_cv_folds float, default = 5
By default, sklearn cross-validation is used. This specifies the number of folds for splitting the training data when fitting the NetREm model.
num_jobs int, default = -1
Number of computational jobs to run in parallel, which is used to determine burden, efficiency, and load (resource management). ⌛ None means 1 unless in a joblib.parallel_backend context. -1 means using all of the processors. This is similar to the n_jobs parameter in Python's sklearn.