Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

basinet

Basinet provides a super-simple framework for Monte Carlo sampling in Mathematica, on a single machine. It's really for sampling neural net training runs given a fixed net topology and dataset, where only the initial weights vary (the clue is in the name).

  • Ideal sample computation time is a few seconds upwards.
  • Multiple 'columns' can be stored from each sample, the sample function returns an association <|"x" -> value, "y" -> value, ...|>.
  • Results are stored on disk, one file per column per sample, using a value-dependent format.
  • A unique random seed is used for each sample to make it reproducible, and the seed is used as the file name under which the sample's results are stored.
  • With BasinetRunScriptAsync, multiple slave kernels will be used, $BasinetKernelID indexes them, so NetTrain[..., TargetDevice -> {"GPU", $BasinetKernelID}] is the obvious thing when you have a multi-GPU machine.
  • Outputs of all kernels are logged to a separate "_logs" directory.
  • Sentinel file to gracefully stop early.
  • It's unlikely, but partial results could be written in the event of a crash. Might revisit this in future if it ever happens, but dealing with it manually is pretty trivial.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages