MATLAB Bayesian regression software updated


We have updated bayesreg, a MATLAB toolbox that implements Bayesian linear and logistic regression with sparsity-inducing priors, to version 1.6. The package now handles logistic regression without the need for mex files, but big speed-ups can be obtained when using compiled code, so this is recommended. To compile the C++ code, run compile.m from the bayesreg directory within MATLAB. Alternatively, for convenience, the pre-compiled MEX files (MATLAB R2017a) for Windows, Linux and Mac OSX can be downloaded from here. To use these, all you need to do is download them and unzip into the “bayesreg” folder.

Version 1.6 includes the following changes:

  • Implemented block sampling of betas for data with large numbers of predictors (options ‘blocksample’ and ‘blocksize’)
  • Display the Widely Applicable Akaike’s Information Criterion (WAIC) instead of DIC in summary output
  • Implemented alternative priors for tau2
  • Added an example to demonstrate block sampling and alternative priors for tau2 (see examples\br_example13.m)

Version 1.5 includes the following changes:

  • Written a new parallelised C++ implementation of sampling code for logistic regression
  • efficient MATLAB implementation of logistic regression sampling included; works even when MEX files are not available but not as fast

Version 1.4 includes the following changes:

  • Added option ‘groups’ which allows grouping of variables into potentially overlapping groups
  • Groups work with HS, HS+ and lasso priors
  • Fixed a regression bug with g priors and logistic models
  • Updated examples

Version 1.3 includes the following changes:

  • Tidied up the summary display to switch between scientific and normal notation depending
    on size of numbers in table
  • Fixed the summary banner to adjust to the size of the table
  • Added support for MATLAB tables
    • Code now accepts either X/y as matrix/vector, or table/string name of variable to use as table
  • Added support for categorical predictors
    • These are now either specified using ‘catvars’ option for matrix inputs, or automatically determined from the contents of the table
  • Removed the dependency of br_summary() on X and y
  • Consolidated all likelihood functions into a single br_regnlike() function that is vectorized using bsxfun
  • Added a br_predict function to produce predictions over data given design matrices
    • Checks input design matrix/table against structure of training data
    • Automatically handles categorical expansions as required
    • Produces credible intervals if requested
    • Produces prediction statistics if targets are supplied
  • Updated and improved the example scripts
  • Added initial internal code structures required for grouping variables and variable expansions
  • Fix bug in computation of R2

Comments are closed.