Skip to content

Library for training Gaussian Processes on Molecules

License

Notifications You must be signed in to change notification settings

JuliusSchwartz/FlowMO

 
 

Repository files navigation

FlowMO

License

Library for training Gaussian Processes on Molecules

Install

We recommend using a conda environment.

conda create -n gp_molecule python==3.7

conda install -c conda-forge rdkit
conda install matplotlib pytest scikit-learn pandas pytorch
pip install git+https://github.com/GPflow/GPflow.git@develop#egg=gpflow
pip3 install jupyter

cd Theano-master
python setup.py install

Examples

See the examples folder for a bare minimum required to fit Tanimoto and string kernel GPs on training molecules and evaluate on a heldout test set.

Representations

The library currently supports SMILES and ECFP6 Fingerprints (pictured below) as well as RDKit fragment features

Uncertainty Calibration

An illustration of the uncertainty calibration of models: string kernel GP (SSK GP), Tanimoto GP (TK GP), Black Box Alpha Divergence Minimisation Bayesian Neural Network (BNN), Attentive Neural Process (ANP) on the Photoswitch Dataset.

Citing

If you find FlowMO useful for your research we would greatly appreciate if you would consider citing the following article!

@misc{moss2020gaussian,
      title={Gaussian Process Molecule Property Prediction with FlowMO}, 
      author={Henry B. Moss and Ryan-Rhys Griffiths},
      year={2020},
      eprint={2010.01118},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}

About

Library for training Gaussian Processes on Molecules

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 89.8%
  • Cuda 2.6%
  • C++ 2.3%
  • Jupyter Notebook 2.1%
  • C 1.7%
  • TeX 1.1%
  • Other 0.4%