xGPR


NamexGPR JSON
Version 0.4.5 PyPI version JSON
download
home_pageNone
SummaryEfficient approximate Bayesian machine learning
upload_time2024-07-11 18:22:17
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseMIT License Copyright (c) 2022 JParkinson Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
keywords xgpr gaussian process gaussian process gaussian process regression random fourier features approximate gp gp machine learning bayesian ml random features
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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](https://xgpr.readthedocs.io/en/latest/) for important
information about installation and requirements.


### Documentation

[The documentation](https://xgpr.readthedocs.io/en/latest/) 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](https://arxiv.org/abs/2302.03294)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "xGPR",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "xGPR, gaussian process, Gaussian process, Gaussian process regression, random Fourier features, approximate GP, GP, machine learning, Bayesian ML, random features",
    "author": null,
    "author_email": "Jonathan Parkinson <jlparkinson1@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/1b/e0/92019646acdc25ae035594b1a088b7af4995f32af8f2bcf11593606851c7/xgpr-0.4.5.tar.gz",
    "platform": null,
    "description": "# xGPR\n\nxGPR is a library for fitting approximate Gaussian process regression\nmodels to datasets ranging in size from hundreds to millions of datapoints.\nIt uses an efficient implementation of the random features approximation\n(aka random Fourier features). It is designed to run on either CPU or GPU\n(GPU strongly preferred), to model tabular data, sequence & time series\ndata and graph data, and to fit datasets too large to load into memory\nin a straightforward way.\n\nUnlike exact Gaussian processes, which exhibit O(N^2) scaling\nand are completely impractical for large datasets, xGPR can scale easily;\nit is fairly straightforward to fit a few million datapoints\non a GPU. Notably, xGPR is able to do this while providing\naccuracy competitive with deep learning models (*unlike* variational\nGP approximations). Unlike other libraries for Gaussian processes,\nwhich only provide kernels for fixed-vector data (tabular data),\nxGPR provides powerful convolution kernels for variable-length time series,\nsequences and graphs.\n\n### What's new in v0.4.5\nStarting with version 0.4.5, xGPR is available as a precompiled binary / wheel\nfor 64 bit Linux and as a source distribution for other platforms, so that\nin most cases, installation should typically be as simple as:\n```\npip install xGPR\n```\nSee [the documentation](https://xgpr.readthedocs.io/en/latest/) for important\ninformation about installation and requirements.\n\n\n### Documentation\n\n[The documentation](https://xgpr.readthedocs.io/en/latest/) covers a variety of use cases, including tabular data,\nsequences and graphs, installation requirements and much more.\n\n### Citations\n\nIf using xGPR for research intended for publication, please cite either:\n\n\nLinear-Scaling Kernels for Protein Sequences and Small Molecules Outperform Deep Learning While Providing Uncertainty Quantitation and Improved Interpretability\nJonathan Parkinson and Wei Wang\nJournal of Chemical Information and Modeling 2023 63 (15), 4589-4601\nDOI: 10.1021/acs.jcim.3c00601 \n\nor the preprint at:\n\nJonathan Parkinson, & Wei Wang. (2023). Linear Scaling Kernels for Protein Sequences and Small Molecules Outperform\nDeep Learning while Providing Uncertainty Quantitation and Improved Interpretability\n[https://arxiv.org/abs/2302.03294](https://arxiv.org/abs/2302.03294)\n",
    "bugtrack_url": null,
    "license": "MIT License  Copyright (c) 2022 JParkinson  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.  THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
    "summary": "Efficient approximate Bayesian machine learning",
    "version": "0.4.5",
    "project_urls": {
        "Documentation": "https://xgpr.readthedocs.io/en/latest/",
        "Homepage": "https://github.com/jlparki/xGPR"
    },
    "split_keywords": [
        "xgpr",
        " gaussian process",
        " gaussian process",
        " gaussian process regression",
        " random fourier features",
        " approximate gp",
        " gp",
        " machine learning",
        " bayesian ml",
        " random features"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8801d1b198dd61b8974b543f61c54253844ac01398db6ca9fdbfee6c2a825c89",
                "md5": "62a3411b971ba370ae75c109689922d9",
                "sha256": "1edb5d97a1062c1ebe507c90bb4801c00be6b92081a27bfea4f7e48f95f45d2b"
            },
            "downloads": -1,
            "filename": "xgpr-0.4.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "62a3411b971ba370ae75c109689922d9",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 696241,
            "upload_time": "2024-07-11T18:22:06",
            "upload_time_iso_8601": "2024-07-11T18:22:06.143770Z",
            "url": "https://files.pythonhosted.org/packages/88/01/d1b198dd61b8974b543f61c54253844ac01398db6ca9fdbfee6c2a825c89/xgpr-0.4.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "65f9fb8754ab5b75ac1a3a97fb34ec91a072496bdeb9645a42426ccd4cd46185",
                "md5": "ba22c9433dc47b16fcd741ad25028f2a",
                "sha256": "f52f30f015c3520523304235ddf03574f3deb616ef5c7ca305791e25ccf19ebd"
            },
            "downloads": -1,
            "filename": "xgpr-0.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ba22c9433dc47b16fcd741ad25028f2a",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 695910,
            "upload_time": "2024-07-11T18:22:08",
            "upload_time_iso_8601": "2024-07-11T18:22:08.402723Z",
            "url": "https://files.pythonhosted.org/packages/65/f9/fb8754ab5b75ac1a3a97fb34ec91a072496bdeb9645a42426ccd4cd46185/xgpr-0.4.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9570bea7b24cc7b72311a9451c1b62ca74ddd80e1ab1efdfa95d5a180c1bcc81",
                "md5": "806e236a543b78b96db14ecd3276ced8",
                "sha256": "7909c9c2a4cba0681701ddeef363d2593c2d28765447626432eabe05947397df"
            },
            "downloads": -1,
            "filename": "xgpr-0.4.5-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "806e236a543b78b96db14ecd3276ced8",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 694359,
            "upload_time": "2024-07-11T18:22:10",
            "upload_time_iso_8601": "2024-07-11T18:22:10.877673Z",
            "url": "https://files.pythonhosted.org/packages/95/70/bea7b24cc7b72311a9451c1b62ca74ddd80e1ab1efdfa95d5a180c1bcc81/xgpr-0.4.5-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "39364f9441a7c64e218dc919bd629495177c9a6d75c504f5bf42d50edb17d254",
                "md5": "20471729c2eb55acfb8a3d408d5f2db7",
                "sha256": "da879df3b20cbcdd8792553a07103435d0a12dfa5eba3417d3769fa62adff034"
            },
            "downloads": -1,
            "filename": "xgpr-0.4.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "20471729c2eb55acfb8a3d408d5f2db7",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 696342,
            "upload_time": "2024-07-11T18:22:13",
            "upload_time_iso_8601": "2024-07-11T18:22:13.562092Z",
            "url": "https://files.pythonhosted.org/packages/39/36/4f9441a7c64e218dc919bd629495177c9a6d75c504f5bf42d50edb17d254/xgpr-0.4.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1be092019646acdc25ae035594b1a088b7af4995f32af8f2bcf11593606851c7",
                "md5": "be7f2ad730ff61e9ceb3bf8751f53c70",
                "sha256": "b5321e88164284567e50e9d22fda39198d8f8846dedcb4a1f3f97962352017d9"
            },
            "downloads": -1,
            "filename": "xgpr-0.4.5.tar.gz",
            "has_sig": false,
            "md5_digest": "be7f2ad730ff61e9ceb3bf8751f53c70",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 2534710,
            "upload_time": "2024-07-11T18:22:17",
            "upload_time_iso_8601": "2024-07-11T18:22:17.522472Z",
            "url": "https://files.pythonhosted.org/packages/1b/e0/92019646acdc25ae035594b1a088b7af4995f32af8f2bcf11593606851c7/xgpr-0.4.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-11 18:22:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jlparki",
    "github_project": "xGPR",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "xgpr"
}
        
Elapsed time: 0.30141s