高斯过程在pytorch中的实现
gpytorch的Python项目详细描述
gpytorch(beta版)
新闻!
- 测试版现在已经发布了!请注意,需要pytorch>;=1.1
- 如果您需要安装alpha版本(我们建议您使用最新版本!),签出the alpha release。
GPyTorch是一个使用PyTorch实现的高斯进程库GPHTARP是为了方便地创建可扩展的、灵活的和模块化的高斯过程模型而设计的。
内部,GPHARCH与许多现有的GP推理方法不同,通过使用预处理共轭梯度的现代数值线性代数技术来执行所有推理操作。实现一个可伸缩的GP方法非常简单,通过提供一个矩阵乘法例程,它通过我们的接口,或者通过组合我们已有的多个。这不仅使流行的可伸缩gp技术易于实现,而且与基于cholesky分解的解算器相比,gpu计算的利用率通常也有显著提高。
GPyPr火炬提供(1)显著的GPU加速(通过基于MVM的推理);(2)最新的可扩展性和灵活性的算法进展(SKI/KISS-GP,stochastic Lanczos expansions,LOVE,SKIP,stochastic variationaldeep kernel learning,…);(3)与深度学习框架的容易集成。
示例和教程
关于如何在gpytorch中构造各种模型,请参见我们的众多examples and tutorials。我们的ReadTheDocs页面here也提供了这些示例笔记本和GPyTorch的介绍
安装
要求:
- python=3.6
- Pythorch=1.1个
n.b.gpytorch不会在pytorch 0.4.1或更早版本上运行。
首先确保使用here中的相应命令安装了PyTorch(>= 1.1
)
然后使用pip或conda安装gpytorch:
pip install gpytorch conda install gpytorch -c gpytorch
要全局使用包,但将GPyTorch安装为仅限用户的包,请使用上面的pip install --user
最新(不稳定)版本
要获取最新(不稳定)版本,请运行
pip install git+https://github.com/cornellius-gp/gpytorch.git
引用我们的话
如果您使用gpytorch,请引用以下文章:
@inproceedings{gardner2018gpytorch,
title={GPyTorch: Blackbox Matrix-Matrix Gaussian Process Inference with GPU Acceleration},
author={Gardner, Jacob R and Pleiss, Geoff and Bindel, David and Weinberger, Kilian Q and Wilson, Andrew Gordon},
booktitle={Advances in Neural Information Processing Systems},
year={2018}
}
文件
- 有关教程和示例,请查看the examples folder。
- 有关深入的文档,请查看我们的read the docs。
开发
运行单元测试:
python -m unittest
默认情况下,随机种子在某些测试中被锁定。 如果要在不锁定种子的情况下运行测试,请运行
UNLOCK_SEED=true python -m unittest
请用flake8
对代码进行lint操作。
pip install flake8 # if not already installed
flake8
团队
gpytorch主要由以下人员维护:
- Jake Gardner(超级人工智能实验室)
- Geoff Pleiss(康奈尔大学)
- Kilian Weinberger(康奈尔大学)
- Andrew Gordon Wilson(康奈尔大学)
- Max Balandat(Facebook)
致谢
gpytorch的开发由Bill and Melinda Gates Foundation、National Science Foundation和SAP提供资金支持。