Skip to content

summer intern feedback and open issues #8

@Solosneros

Description

@Solosneros

I just copied his notes from a file on slack to discuss them here (similar to https://github.com/lacerbi/pyvbmc/issues/28).

Things to investigate:

The diagnostics computed in slice sampling differ slightly from what is in pymc, what is the cause of this?
- original MATLAB split slice sample chain into 4 parts for whatever reason, in gpyreg and pymc the split is to 2
- pymc and gpyreg/original MATLAB have slightly different formula

Improvements:

  • Docstrings of slice sampling might need editing for terminology, e.g. use of "stochastic parameters"
    • this was not originally written by me, but terminology from pymc
  • Posterior object is slgithly unnecessary looking

Issues:

  • Test for bayesian quadrature with noise fails sometimes after latest bugfix, look into that a bit
  • Calling predict without giving hyperparameters crashes the library, implement an exception for this
  • Calling quad also crashes without hyperparameters, and no data GP as well
  • We can call update with too large (or too small I think) hyperparameter array, causing silent bugs

OpenBLAS:

  • OpenBLAS needs to have threading set to 1 for it to function well.
  • export OPENBLAS_NUM_THREADS=1 fixes the problem though it restricts parallelism a bit
  • this can be done by the user, or within the program as well I believe
  • another way to solve this is to use another BLAS library such as Intel MKL, which is the default for Anaconda
  • however, Intel MKL has another issue, namely than on machines with an AMD processor performance tanks
  • this can currently be fixed on AMD machines by export MKL_DEBUG_CPU_TYPE=5
  • however, there is no guarantee that this fix will work since it is based on undocumented features that are subject to change

Metadata

Metadata

Assignees

Labels

questionFurther information is requested

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions