BenchOpt is a package to simplify and make more transparent and reproducible the comparisons of optimization algorithms. The Non-Negative Least Square consists in solving the following program:
\min_{w \geq 0} \frac{1}{2} \|y - Xw\|^2_2 + \frac{\lambda}{2} \|w\|_2^2
where n (or n_samples) stands for the number of samples, p (or n_features) stands for the number of features and
y \in \mathbb{R}^n, X = [x_1^\top, \dots, x_n^\top]^\top \in \mathbb{R}^{n \times p}
This benchmark can be run using the following commands:
$ pip install -U benchopt $ git clone https://github.com/agramfort/benchmark_ridge_positive $ benchopt run benchmark_ridge_positive
Apart from the problem, options can be passed to benchopt run, to restrict the benchmarks to some solvers or datasets, e.g.:
$ benchopt run benchmark_ridge_positive -d simulated --n-repetitions 1
Use benchopt run -h for more details about these options, or visit https://benchopt.github.io/api.html.