Giter Club home page Giter Club logo

xgpr's Introduction

xGPR

xGPR is a library for fitting approximate Gaussian process regression models to datasets ranging in size from hundreds to millions of datapoints. It uses an efficient implementation of the random features approximation (aka random Fourier features). It is designed to run on either CPU or GPU (GPU strongly preferred), to model tabular data, sequence & time series data and graph data, and to fit datasets too large to load into memory in a straightforward way.

Unlike exact Gaussian processes, which exhibit O(N^2) scaling and are completely impractical for large datasets, xGPR can scale easily; it is fairly straightforward to fit a few million datapoints on a GPU. Notably, xGPR is able to do this while providing accuracy competitive with deep learning models (unlike variational GP approximations). Unlike other libraries for Gaussian processes, which only provide kernels for fixed-vector data (tabular data), xGPR provides powerful convolution kernels for variable-length time series, sequences and graphs.

What's new in v0.4.5

Starting with version 0.4.5, xGPR is available as a precompiled binary / wheel for 64 bit Linux and as a source distribution for other platforms, so that in most cases, installation should typically be as simple as:

pip install xGPR

See the documentation for important information about installation and requirements.

Documentation

The documentation covers a variety of use cases, including tabular data, sequences and graphs, installation requirements and much more.

Citations

If using xGPR for research intended for publication, please cite either:

Linear-Scaling Kernels for Protein Sequences and Small Molecules Outperform Deep Learning While Providing Uncertainty Quantitation and Improved Interpretability Jonathan Parkinson and Wei Wang Journal of Chemical Information and Modeling 2023 63 (15), 4589-4601 DOI: 10.1021/acs.jcim.3c00601

or the preprint at:

Jonathan Parkinson, & Wei Wang. (2023). Linear Scaling Kernels for Protein Sequences and Small Molecules Outperform Deep Learning while Providing Uncertainty Quantitation and Improved Interpretability https://arxiv.org/abs/2302.03294

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.