CmdStan的Python接口
项目描述
CmdStanPy
CmdStanPy是一个轻量级的纯Python接口,用于CmdStan,它提供了访问Stan编译器和所有推理算法的接口。它支持开发和生产工作流程。由于模型开发和测试可能需要多次迭代,默认设置优先考虑开发模式,因此输出文件存储在临时文件系统上。非默认选项允许指定运行的各个方面,以便可以使用脚本在节点和机器之间分布式分析作业。
CmdStanPy通过PyPi分发:https://pypi.ac.cn/project/cmdstanpy/
或 Conda Forge: https://anaconda.org/conda-forge/cmdstanpy
目标
-
为Stan服务提供干净的接口,以便CmdStanPy能够与Stan版本保持同步。
-
提供对所有CmdStan推理方法的访问。
-
易于安装,
- 最小的Python库依赖:numpy,pandas
- Python代码不直接与C++接口,仅调用编译后的可执行文件
-
模块化 - CmdStanPy从后验分布生成MCMC样本(或点估计);其他包进行分析和可视化。
-
内存开销低 - 默认情况下,使用的内存量仅比CmdStanPy所需的内存量多;对象运行CmdStan程序并跟踪CmdStan输入和输出文件。
源代码库
CmdStanPy和CmdStan可在GitHub上获取: https://github.com/stan-dev/cmdstanpy 和 https://github.com/stan-dev/cmdstan
文档
最新发布版本的文档托管在 https://mc-stan.org/cmdstanpy,较旧版本可在readthedocs上获取: https://cmdstanpy.readthedocs.io
许可
CmdStanPy、CmdStan和核心Stan C++代码均采用新的BSD许可。
示例
import os
from cmdstanpy import cmdstan_path, CmdStanModel
# specify locations of Stan program file and data
stan_file = os.path.join(cmdstan_path(), 'examples', 'bernoulli', 'bernoulli.stan')
data_file = os.path.join(cmdstan_path(), 'examples', 'bernoulli', 'bernoulli.data.json')
# instantiate a model; compiles the Stan program by default
model = CmdStanModel(stan_file=stan_file)
# obtain a posterior sample from the model conditioned on the data
fit = model.sample(chains=4, data=data_file)
# summarize the results (wraps CmdStan `bin/stansummary`):
fit.summary()
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源代码分发
构建分发
cmdstanpy-1.2.4.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ad586be0b9f4c654ecbdc4af4541f4d282f99175956cda88cc5eb873719356cc |
|
MD5 | 74d31cdf7cc225089ebf3b4817852fe2 |
|
BLAKE2b-256 | 26cc42b48308bc95c6387d81da7b96aaa6c0030b6a1bc7fbcd32de9062d5ab5f |
cmdstanpy-1.2.4-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ad60f8ca17050216ab7140e13aa493628d88af8a689f17253a5ad294a9826c78 |
|
MD5 | e578735ab2b1ca04e53c67b46041e26c |
|
BLAKE2b-256 | 5d126522f3de83ca690aa52f4b8c88a1e203abb1e2d75c31669dc004949143cd |