Py之pymc:pymc的简介、安装、使用方法之详细攻略

这篇具有很好参考价值的文章主要介绍了Py之pymc:pymc的简介、安装、使用方法之详细攻略。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Py之pymc:pymc的简介、安装、使用方法之详细攻略

目录

pymc的简介

pymc的安装

pymc的使用方法

1、时序性任务

(1)、使用 Euler-Maruyama 方案推断 SDE 的参数


pymc的简介

       PyMC(以前称为PyMC3)是一个专注于高级马尔科夫链蒙特卡洛(MCMC)和变分推断(VI)算法的Python包,用于贝叶斯统计建模。其灵活性和可扩展性使其适用于各种问题。PyMC是一个功能强大的贝叶斯建模工具,提供了丰富的特性和算法,适用于各种统计建模和推断任务。包括(广义)线性模型和层次线性模型案例研究、因果推断、诊断和模型评估、高斯过程、ODE模型推断、马尔科夫链蒙特卡洛方法、混合模型、生存分析、时间序列、变分推断。其特点如下:
>> 直观的模型规范语法,例如,x ~ N(0,1) 可以翻译为 x = Normal('x',0,1)
>> 强大的采样算法,例如 No U-Turn Sampler,可以处理具有成千上万个参数的复杂模型,>> 而无需特殊的拟合算法知识。
>> 变分推断:提供快速近似后验估计的ADVI以及用于大型数据集的小批量ADVI。
>> 依赖于PyTensor提供:
>> 计算优化和动态的C或JAX编译
>> NumPy广播和高级索引
>> 线性代数运算符
>> 简单的可扩展性
>> 透明支持缺失值填充

GitHub链接:GitHub - pymc-devs/pymc: Bayesian Modeling in Python

文档:Introductory Overview of PyMC — PyMC dev documentation

pymc的安装

pip install pymc

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pymc

pymc3 安装,Python_Libraries,python,人工智能,机器学习pymc3 安装,Python_Libraries,python,人工智能,机器学习

 

 

pymc的使用方法

更多案例:PyMC Example Gallery — PyMC example gallery文章来源地址https://www.toymoban.com/news/detail-722305.html

1、时序性任务

(1)、使用 Euler-Maruyama 方案推断 SDE 的参数





%pylab inline
import arviz as az
import pymc as pm
import scipy
import theano.tensor as tt

from pymc.distributions.timeseries import EulerMaruyama

%config InlineBackend.figure_format = 'retina'
az.style.use("arviz-darkgrid")


# parameters
λ = -0.78
σ2 = 5e-3
N = 200
dt = 1e-1

# time series
x = 0.1
x_t = []

# simulate
for i in range(N):
    x += dt * λ * x + sqrt(dt) * σ2 * randn()
    x_t.append(x)

x_t = array(x_t)

# z_t noisy observation
z_t = x_t + randn(x_t.size) * 5e-3

figure(figsize=(10, 3))
subplot(121)
plot(x_t[:30], "k", label="$x(t)$", alpha=0.5), plot(z_t[:30], "r", label="$z(t)$", alpha=0.5)
title("Transient"), legend()
subplot(122)
plot(x_t[30:], "k", label="$x(t)$", alpha=0.5), plot(z_t[30:], "r", label="$z(t)$", alpha=0.5)
title("All time")
tight_layout()



def lin_sde(x, lam):
    return lam * x, σ2
with pm.Model() as model:

    # uniform prior, but we know it must be negative
    lam = pm.Flat("lam")

    # "hidden states" following a linear SDE distribution
    # parametrized by time step (det. variable) and lam (random variable)
    xh = EulerMaruyama("xh", dt, lin_sde, (lam,), shape=N, testval=x_t)

    # predicted observation
    zh = pm.Normal("zh", mu=xh, sigma=5e-3, observed=z_t)

with model:
    trace = pm.sample(2000, tune=1000)

figure(figsize=(10, 3))
subplot(121)
plot(percentile(trace[xh], [2.5, 97.5], axis=0).T, "k", label=r"$\hat{x}_{95\%}(t)$")
plot(x_t, "r", label="$x(t)$")
legend()

subplot(122)
hist(trace[lam], 30, label=r"$\hat{\lambda}$", alpha=0.5)
axvline(λ, color="r", label=r"$\lambda$", alpha=0.5)
legend();

# generate trace from posterior
ppc_trace = pm.sample_posterior_predictive(trace, model=model)

# plot with data
figure(figsize=(10, 3))
plot(percentile(ppc_trace["zh"], [2.5, 97.5], axis=0).T, "k", label=r"$z_{95\% PP}(t)$")
plot(z_t, "r", label="$z(t)$")
legend()

到了这里,关于Py之pymc:pymc的简介、安装、使用方法之详细攻略的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Py之py2neo:py2neo的简介、安装、使用方法之详细攻略

    CV之DL之YOLOv8:YOLOv8的简介、安装和使用方法、案例应用之详细攻略 目录 YOLOv8的简介 1、Yolov8的概述 2、YOLOv8对比前身YOLOv5 YOLOv8的安装和使用方法 1、安装和使用 T1、采用yolov8安装和使用 第1步,安装YOLOv8 第2步,使用YOLOv8 T1、采用CLI T2、采用Python T2、采用ultralytics安装和使用

    2024年02月13日
    浏览(46)
  • Py之imbalanced-ensemble:imbalanced-ensemble库的简介、安装、使用方法之详细攻略

    Py之imbalanced-ensemble:imbalanced-ensemble库的简介、安装、使用方法之详细攻略 目录 imbalanced-ensemble库的简介 imbalanced-ensemble库的安装 imbalanced-ensemble库的使用方法 1、基础用法       imbalanced-ensemble是一个用于处理不平衡数据集的 Python 库,它提供了一系列的机器学习方法和工具来

    2024年02月03日
    浏览(37)
  • 测试新手百科:Postman简介、安装、入门使用方法详细攻略!

    本文:Postman基础 目录 一、Postman背景介绍 二、Postman的操作环境 三、Postman下载安装 四、Postman的基础功能 五、接口请求流程 六、管理用例—Collections 七、身份验证Authentication  用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请

    2024年02月11日
    浏览(57)
  • LLMs之Code:SQLCoder的简介、安装、使用方法之详细攻略

    LLMs之Code:SQLCoder的简介、安装、使用方法之详细攻略 目录 SQLCoder的简介 1、结果 2、按问题类别的结果 SQLCoder的安装 1、硬件要求 2、下载模型权重 3、使用SQLCoder 4、Colab中运行SQLCoder 第一步,配置环境 第二步,测试 第三步,下载模型 第四步,设置问题和提示并进行标记化

    2024年02月11日
    浏览(56)
  • Computer:IPFS(星际文件系统)的简介、安装、使用方法之详细攻略

    Computer:IPFS(星际文件系统)的简介、安装、使用方法之详细攻略 目录 IPFS的简介 1、IPFS的应用 IPFS的安装 IPFS的使用方法 1、下载文件 第一步,启动IPFS节点 第二步,获取文件的CID 第三步,下载文件          星际文件系统是一个旨在创建持久且分布式存储和共享文件的网络传

    2024年02月07日
    浏览(84)
  • LLMs之Code:Code Llama的简介、安装、使用方法之详细攻略

    LLMs之Code:Code Llama的简介(衍生模型如Phind-CodeLlama/WizardCoder)、安装、使用方法之详细攻略 导读 :2023年08月25日(北京时间),Meta发布了Code Llama,一个可以使用 文本提示生成代码 的大型语言模型(LLM)。Code Llama是最先进的公开可用的LLM代码任务,并有潜力 使工作流程更快 ,更有

    2024年02月10日
    浏览(229)
  • AI之Suno:Suno V3的简介、安装和使用方法、案例应用之详细攻略

    AI之Suno:Suno V3的简介、安装和使用方法、案例应用之详细攻略 目录 Suno AI的简介 1、特点与改进: Suno AI的安装和使用方法 1、第一步,让国产大模型—ChatGLM4帮我写一个提示词 2、第二步,将提示词交给Suno v3,让Suno v3生成一首歌曲 Suno AI的案例应用 Suno是一款基于文本生成音

    2024年04月09日
    浏览(54)
  • LLMs之Llama3:Llama 3的简介、安装和使用方法、案例应用之详细攻略

    LLMs之Llama3:Llama 3的简介、安装和使用方法、案例应用之详细攻略 导读 :2024年4月18日,Meta 重磅推出了Meta Llama 3,本文章主要介绍了Meta推出的新的开源大语言模型Meta Llama 3。模型架构 Llama 3 是一种 自回归 语言模型,采用了优化的 Transformer 架构。调优版本使用了 监督微调(

    2024年04月22日
    浏览(52)
  • AI:ModelScope(一站式开源的模型即服务共享平台)的简介、安装、使用方法之详细攻略

    AI:ModelScope(一站式开源的模型即服务共享平台)的简介、安装、使用方法之详细攻略 导读 :ModelScope旨在打造下一代 开源 的 模型即服务 共享 平台, 汇集 了行业 领先的预训练模型 ,减少了开发者的 重复研发 成本。个人认为,相比于AI公司经常卖一款软件产品或者卖一个算

    2024年02月03日
    浏览(45)
  • LLM之LangChain:LangChain 0.1.0 版本发布的简介、安装和使用方法、案例应用之详细攻略

    LLM之LangChain:LangChain 0.1.0 版本发布的简介、安装和使用方法、案例应用之详细攻略 导读 :2024年1月8日,今天,我们很高兴宣布 发布 langchain 0.1.0 ,这是我们的 第一个稳定版本 。它完全 向后兼容 ,提供了 Python 和 JavaScript 两个版本,并通过功能和文档的双重改进来提高焦点

    2024年01月19日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包