Skip to content

Bayesian Program Learning toolkit in Python

License

Notifications You must be signed in to change notification settings

bionicles/PyBPL

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyBPL

Code Climate Join the chat at https://gitter.im/MaxwellRebo/PyBPL Bayesian Program Learning toolkit in Python

###Purpose This project is intended to build BPL into highly reusable Python modules, for the purpose of expiermentation and eventual use in production systems.

The idea is to encourage discussion and experimentation around BPL and BPL-inspired variants, and to explore this class of models in production settings.

Please see the wiki for details.

What PyBPL is: A framework for developing BPL variants from a generalized form of the BPL algortithm. See this wiki entry for more info.

What PyBPL is not: A faithful implementation of the BPL as applied to the handwriting use case. To run the Matlab tests for handwriting, get the original repository and run the code as described there.

###Dependencies numpy nose

Do:

pip install -r requirements.txt

The following system packages are are also required (the command below should work on Ubuntu/Linux):

sudo apt-get install g++ python-dev liblapack-dev gfortran

###Testing

Do:

nosetests

###Original Repo & Paper The original BPL Matlab repo is here: https://github.com/brendenlake/BPL

The original BPL paper can be found on Science:

Lake, B. M., Salakhutdinov, R., and Tenenbaum, J. B. (2015). Human-level concept learning through probabilistic program induction. Science, 350(6266), 1332-1338.

###TODOs -Base BPL class, with tests

-Base parser class (for learning primitives), with tests

-Tests for base class

-Data formatters (text, time series, etc)

-Helper methods and utility classes as needed

About

Bayesian Program Learning toolkit in Python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%