The sbl-sandbox sources are a nice padded area in which we are safe to play around with methods in sparse Bayesian learning. They are essentially a set of lightweight solvers paired with some python code that generates problem instances of the "k spikes measured with or without noise by an i.i.d. Gaussian random matrix" variety.
These sources support the following manuscript:
Worley, B., Scalable mean-field sparse Bayesian learning, IEEE Transactions on Signal Processing, 2019, 67(24): 6314--6326.
Bear with me, compilation is a bit non-standard.
To compile a source file, a problem instance, e.g. src/instdef.hh, is paired with the core instance header src/inst.hh and a solver, e.g. src/gs.cc. Compiling would go a bit something like this:
g++ -std=c++14 -O3 -I. -I/path/to/eigen3 \ -include src/instdef.hh -include src/inst.hh \ src/gs.cc -o gsNormally, manual compilation isn't necessary. The compilations needed to perform all experiments are managed by make.py using doit.
The following commands are needed before running make.py on EC2:
sudo yum -y groupinstall "Development Tools" sudo amazon-linux-extras install python3 sudo pip3 install --upgrade pip sudo pip3 install doitThen, clone this repository and run:
git clone git@github.com:geekysuavo/sbl-sandbox.git cd sbl-sandbox ./make.py -n 96All sources in this repository are released under the MIT license. See the LICENSE.md file for the complete license terms.