《贝叶斯方法:概率编程与贝叶斯推断》——1.3 概率分布

简介:

本节书摘来异步社区《贝叶斯方法:概率编程与贝叶斯推断》一书中的第1章,第1.3节,作者:【加】Cameron Davidson-Pilon(卡梅隆 戴维森-皮隆),更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.3 概率分布

首先定义以下希腊文字的发音:

α = alpha

β = beta

λ = lambda

µ = mu

σ = sigma

τ = tau

很好。接下来正式开始讲概率分布。首先快速地回忆一下什么是概率分布。设Z为一个随机变量,那么就存在一个跟Z相关的概率分布函数,给定Z任何取值,它都得到一个相应的概率值。

我们把随机变量分为3种类别。

Z为离散的。离散随机变量的取值只能是在特定的列表中。像货币、电影收视率、投票数都是离散随机变量。当我们将它与连续型随机变量对比时,这个概念就比较清楚了。
Z为连续的。连续型随机变量的值可以是任意精确数值。像温度、速度和时间都是连续型变量,因为对于这些数值你可以精确到任何程度。
Z为混合的。混合型随机变量的值可以为以上两种形式,即结合了以上两种随机变量的形式。

1.3.1 离散情况

如果Z是离散的,那么它的分布为概率质量函数,它度量的是当Z取值为k时的概率,用P(Z=k)表示。可以注意到,概率质量函数完完全全地描述了随机变量Z,即如果知道Z的概率质量方程,那么Z会怎么表现都是可知的。下面介绍一些经常会碰到的概率质量方程,学习它们是十分有必要的。第一个要介绍的概率质量方程十分重要,设Z服从于Poisson分布:

8b2b47502e9e1a140b49dd6f401c10c6d840c5c5

λ被称为此分布的一个参数,它决定了这个分布的形式。对于Poisson分布来说,λ可以为任意正数。随着λ的增大,得到大值的概率会增大;相反地,当λ减小时,得到小值的概率会增大。λ可以被称为Poisson分布的强度。

跟λ可以为任意正数不同,值k可以为任意非负整数,即k必须为0、1、2之类的值。这个是十分重要的,因为如果你要模拟人口分布,你是不可以假设有4.25个或是5.612个人的。

如果一个变量Z存在一个Poisson质量分布,我们可以表示为:

Z~Poi(λ)

Poisson分布的一个重要性质是:它的期望值等于它的参数。即:


E[Z|λ]=λ

这条性质以后经常会被用到,所以记住它是很有用的。在图1.3.1中,展示了不同λ取值下的概率质量分布。首先值得注意的是,增大λ的取值,k取大值的概率会增加。其次值得注意的是,虽然x轴在15的时候截止,但是分布并没有截止,它可以延伸到任意非负的整数。

figsize(12.5, 4)
 
import scipy.stats as stats
a = np.arange(16)
poi = stats.poisson
lambda_ = [1.5, 4.25]
colors = ["#348ABD", "#A60628"]
 
plt.bar(a, poi.pmf(a, lambda_[0]), color=colors[0],
       label="$\lambda = %.1f$" % lambda_[0], alpha=0.60,
       edgecolor=colors[0], lw="3")
 
plt.bar(a, poi.pmf(a, lambda_[1]), color=colors[1],
       label="$\lambda = %.1f$" % lambda_[1], alpha=0.60,
       edgecolor=colors[1], lw="3")
plt.xticks(a + 0.4, a)
plt.legend()
plt.ylabel("Probability of $k$")
plt.xlabel("$k$")
plt.title("Probability mass function of a Poisson random variable,\
         differing \$\lambda$ values");```

<div style="text-align: center"><img src="https://yqfile.alicdn.com/bda0b55b12995a2210bdb73d9fc98aa077ca0113.png" width="" height="">
</div>

####1.3.2 连续情况
对应于离散情况下的概率质量函数,连续情况下概率分布函数被称为概率密度函数。虽然在命名上作这样的区分看起来是没有必要的,但是概率质量函数和概率密度函数有着本质的不同。举一个连续型随机变量的例子:指数密度。指数随机变量的密度函数如下式:
<div style="text-align: center">

fZ(z|λ)=λe-λz,z≥0

</div>

类似于Poisson随机变量,指数随机变量只可以取非负值。但是和Poisson分布不同的是,这里的指数可以取任意非负值,包括非整数,例如4.25或是5.612401。这个性质使得计数数据(必须为整数)在这里不太适用;而对于类似时间数据、温度数据(当然是以开氏温标计量)或其他任意对精度有要求的正数数据,它是一种不错的选择。图1.3.2展示了λ取不同值时的概率密度函数。

当随机变量Z拥有参数为λ的指数分布时,我们称Z服从于指数分布,并记为:
<div style="text-align: center">

Z~Exp(λ)

</div>

对指定的参数λ,指数型随机变量的期望值为λ的逆,即
<div style="text-align: center">

E[Z|λ]=1/λ

</div>

a = np.linspace(0, 4, 100)
expo = stats.expon
lambda_ = [0.5, 1]
 
for l, c in zip(lambda_, colors):
plt.plot(a, expo.pdf(a, scale=1./l), lw=3,

          color=c, label="$\lambda = %.1f$" % l)

plt.fill_between(a, expo.pdf(a, scale=1./l), color=c, alpha=.33)
 
plt.legend()
plt.ylabel("Probability density function at $z$")
plt.xlabel("$z$")
plt.ylim(0,1.2)
plt.title("Probability density function of an exponential random\

     variable, differing $\lambda$ values");```

5b3f09853a5ff6ee8168e78b2f70f21dc0c674b6

这里值得注意的是,概率密度方程在某一点的值并不等于它在这一点的概率。

1.3.3 什么是λ

这个问题可以理解为统计的动机是什么。在现实世界,我们并不知道λ的存在,我们只能直观地感受到变量Z,如果确定参数λ的话,那就一定要深入到整个事件的背景中去。这个问题其实很难,因为并不存在Z到λ的一一对应关系。对于λ的估计有很多的设计好的方法,但因为λ不是一个可以真实观察到的东西,谁都不能说哪种方式一定是最好的。

贝叶斯推断围绕着对λ取值的估计。与其不断猜测λ的精确取值,不如用一个概率分布来描述λ的可能取值。

起初这看起来或许有些奇怪。毕竟,λ是一个定值,它不一定是随机的!我们怎么可能对一个非随机变量值赋予一个概率呢?不,这样的考虑是老旧的频率派思考方式。如果我们把它们理解为估计值的话,在贝叶斯的哲学体系下,它们是可以被赋予概率的。因此对参数λ估计是完全可以接受的。

相关文章
|
2月前
|
人工智能 算法
变分推断和贝叶斯方法
变分推断和贝叶斯方法
|
5月前
|
算法
t-GARCH 模型的贝叶斯推断理论
t-GARCH 模型的贝叶斯推断理论
|
5月前
|
存储 数据可视化
R语言中的Stan概率编程MCMC采样的贝叶斯模型
R语言中的Stan概率编程MCMC采样的贝叶斯模型
|
机器学习/深度学习 人工智能 资源调度
【机器学习】线性回归——最小二乘法的概率解释高斯噪声(理论+图解+公式推导)
【机器学习】线性回归——最小二乘法的概率解释高斯噪声(理论+图解+公式推导)
289 0
【机器学习】线性回归——最小二乘法的概率解释高斯噪声(理论+图解+公式推导)
|
算法 Python 数据可视化
多元线性回归的模型解释、假设检验、特征选择(二)
多元线性回归的模型解释、假设检验、特征选择(二)
304 0
多元线性回归的模型解释、假设检验、特征选择(二)
|
机器学习/深度学习 数据可视化 Python
多元线性回归的模型解释、假设检验、特征选择(一)
多元线性回归的模型解释、假设检验、特征选择(一)
243 0
多元线性回归的模型解释、假设检验、特征选择(一)
|
Python 算法 机器学习/深度学习
《贝叶斯方法:概率编程与贝叶斯推断》一导读
贝叶斯方法是一种常用的推断方法,然而对读者来说它通常隐藏在乏味的数学分析章节背后。关于贝叶斯推断的书通常包含两到三章关于概率论的内容,然后才会阐述什么是贝叶斯推断。不幸的是,由于大多数贝叶斯模型在数学上难以处理,这些书只会为读者展示简单、人造的例子。
2278 0
下一篇
无影云桌面