Prerequisites:
- Matlab 2015a or later
- Matlab Toolboxes: Statistics and Machine Learning, Parallel Computing
- Nvidia CUDA capable GPU (multiple GPUs are supported)
- Choose a SABL-Project - download the .zip archive, and extract the directory contained inside it.
- Switch to the directory that was just extracted and start Matlab
- Execute: run.m
Download SABL (Installation instructions are contained in the archive .zip file.)
This is the original release of SABL (Sequentially Adaptive Bayesian Learning) resulting from Australian Research Council Grant DP130103356 (Massively parallel algorithms for Bayesian inference and decision making). Details of the research project and the original team are here.
The aim of this site is simple:
To collect real-use examples of SABL from all application domains for the benefit of new users
These examples supplement the original guide written by Professor John Geweke in 2015. A new SABL user (with a moderate Matlab programming background) can then learn by example, taking code snippets that will be useful in their own application for such tasks as:
- Setting up the Matlab global variables required by SABL
- Importing .CSV data
- Setting locations to store results from SABL, including saving the posterior sampling distribution of model parameters to .CSV
- Leaving a randomly selected held-out sample from the estimation
- Applying adjustments to data
- Setting up simple prior distributions of model parameters
- Calculating log-likelihood using n-dimensional (tensor) arrays and arithmetic. See also this presentation.
- Generating summary tables and plots
- Trading off execution time in return for lower memory usage
- Setting up the Matlab global variables required by SABL
- Setting up simple prior distributions of model parameters
Download | Installation |
---|---|
Link | Expand the .zip, then from the extracted directory, start Matlab and execute run.m |
All items listed above
Download | Installation |
---|---|
Link | Expand the .zip contents to a new subdirectory under the "Projects" directory of your SABL installation. |
An early implementation of quantum computing is underway thanks to D-Wave. Where SABL performs unconstrained optimisation on GPUs for real-valued problems, D-Wave performs unconstrained optimisation on qubit hardware for (quadratic) integer-valued problems. Future SABL projects will look to bridge these two through the qbsolv software released by D-Wave.
Please submit your thoughts and suggestions as Issues at this GitHub site.