Feng, Jean, and Noah Simon. 2018. “Gradient-Based Regularization Parameter Selection for Problems With Nonsmooth Penalty Functions.” Journal of Computational and Graphical Statistics: A Joint Publication of American Statistical Association, Institute of Mathematical Statistics, Interface Foundation of North America 27 (2): 426–35. https://doi.org/10.1080/10618600.2017.1390470.
External packages needed:
- CVXPY is required for all scripts
- Install Spearmint https://github.com/JasperSnoek/spearmint
- Biopython is required to run the colitis data analysis. Also need to download
- the geneset data from Molecular Signatures Database
- GDS1615 from the Gene Expression Omnibus database
Create folders:
- In this directory, create
- spearmint_descent directory
- results directory
- For each example, it will need its own results folder:
- e.g. results/matrix_completion_groups/tmp
- To run the Colitis data example, create a realdata directory and put the downloaded data into this directory
Section 3 results were generated as follows:
- Elastic Net: python elasticnet_eval.py
- Sparse group lasso: python sgl_eval.py
- Sparse Additive models: python sparse_add_models_eval.py
Section 4 results were generated as follows: python realdata_eval.py
By default, the code solves the joint optimization problem via gradient descent. Specify different solvers (grid search, Spearmint, and nelder-mead) and problem settings via command options.