关于算法:Python用PyMC3实现贝叶斯线性回归模型

原文链接:http://tecdat.cn/?p=5263

在本文中,咱们将在贝叶斯框架中引入回归建模,并应用PyMC3 MCMC库进行推理。

咱们将首先回顾经典频率论的多重线性回归办法。而后探讨贝叶斯如何思考线性回归。

用PyMC3进行贝叶斯线性回归

在本节中,咱们将对统计实例进行一种经典的办法,即模仿一些咱们晓得的属性的数据,而后拟合一个模型来推算这些原始属性。

什么是狭义线性模型?

在咱们开始探讨贝叶斯线性回归之前,我想简要地概述狭义线性模型(GLM)的概念,因为咱们将应用它们来在PyMC3中建设咱们的模型。

狭义线性模型是将一般线性回归扩大到更个别模式的回归的灵便办法,包含逻辑回归(分类)和泊松回归(用于计数数据)以及线性回归自身。

GLM容许具备除正态分布以外的误差散布的因变量

用PyMC3模仿数据并拟合模型

在咱们应用PyMC3来指定和采样贝叶斯模型之前,咱们须要模仿一些噪声线性数据。

输入如下图所示:

通过Numpy,pandas和seaborn模仿噪声线性数据

当初咱们曾经进行了模仿,咱们想要对数据拟合贝叶斯线性回归。这是glm办法。

而后咱们将找到MCMC采样器的最大后验概率(MAP)估计值。最初,咱们将应用No-U-Turn Sampler(NUTS)来进行理论推理,而后绘制模型的曲线,将前500个样本抛弃为“burn in”预烧过程。

traceplot如下图所示:

应用PyMC3将贝叶斯GLM线性回归模型拟合到模仿数据

首先咱们应用seaborn lmplot办法,fit_reg参数设置False,不绘制频数回归曲线。而后咱们绘制100个采样的后验预测回归线。最初,咱们绘制应用原始的“实在”回归线和β1=2的参数。

咱们能够在下图中看到回归线的抽样范畴:

有问题欢送分割咱们!


最受欢迎的见解

1.matlab应用贝叶斯优化的深度学习

2.matlab贝叶斯隐马尔可夫hmm模型实现

3.R语言Gibbs抽样的贝叶斯简略线性回归仿真

4.R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归

5.R语言中的Stan概率编程MCMC采样的贝叶斯模型

6.Python用PyMC3实现贝叶斯线性回归模型

7.R语言应用贝叶斯 层次模型进行空间数据分析

8.R语言随机搜寻变量抉择SSVS预计贝叶斯向量自回归(BVAR)模型

9.matlab贝叶斯隐马尔可夫hmm模型实现

【腾讯云】轻量 2核2G4M,首年65元

阿里云限时活动-云数据库 RDS MySQL  1核2G配置 1.88/月 速抢

本文由乐趣区整理发布,转载请注明出处,谢谢。

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据