umeding / BayesDB

A Bayesian database for querying the probable implications of data as easily as SQL databases query the data itself

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BayesDB

BayesDB, a Bayesian database, lets users query the probable implications of their data as easily as a SQL database lets them query the data itself. Using the built-in Bayesian Query Language (BQL), users with no statistics training can solve basic data science problems, such as detecting predictive relationships between variables, inferring missing values, simulating probable observations, and identifying statistically similar database entries.

BayesDB is suitable for analyzing complex, heterogeneous data tables with up to tens of thousands of rows and hundreds of variables. No preprocessing or parameter adjustment is required, though experts can override BayesDB's default assumptions when appropriate.

BayesDB's inferences are based in part on CrossCat, a new, nonparametric Bayesian machine learning method, that automatically estimates the full joint distribution behind arbitrary data tables.

Installation

VM

We provide a VirtualBox VM (VM_README) for small scale testing of BayesDB.

Note: The VM is only meant to provide an out-of-the-box usable system setup. Its resources are limited and large jobs will fail due to memory errors. To run larger jobs, increase the VM resources or install directly to your system.

Local (Ubuntu)

BayesDB depends on CrossCat, so first install CrossCat by following its local installation instructions here.

BayesDB can be installed locally on Ubuntu systems with

git clone https://github.com/mit-probabilistic-computing-project/BayesDB.git
sudo bash BayesDB/install/install.sh
cd BayesDB && PYTHONPATH=$PYTHONPATH:$(pwd)

Don't forget to add BayesDB to your python path. For bash, this can be accomplished with

cd BayesDB
cat -- >> ~/.bashrc <<EOF
export PYTHONPATH=\$PYTHONPATH:$(pwd)
EOF

Documentation

Website

Documentation

Example

run_dha_example.py (github) is a basic example of analysis using BayesDB. For a first test, run the following from inside the top level BayesDB dir

python examples/dha/run_dha_example.py

License

Apache License, Version 2.0

About

A Bayesian database for querying the probable implications of data as easily as SQL databases query the data itself

License:Apache License 2.0