Beta 分布_f分布与beta分布

Beta 分布_f分布与beta分布相信大家学过统计学的都对正态分布二项分布均匀分布等等很熟悉了,但是却鲜少有人去介绍beta分布的。用一句话来说,beta分布可以看作一个概率的概率分布,当你不知道一个东西的具体概率是多少时,它可以给出了所有概率出现的可能性大小。举一个简单的例子,熟悉棒球运动的都知道有一个指标就是棒球击球率(b

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

#beta分布介绍
相信大家学过统计学的都对 正态分布 二项分布 均匀分布 等等很熟悉了,但是却鲜少有人去介绍beta分布的。

用一句话来说,beta分布可以看作一个概率的概率分布,当你不知道一个东西的具体概率是多少时,它可以给出了所有概率出现的可能性大小。

举一个简单的例子,熟悉棒球运动的都知道有一个指标就是棒球击球率(batting average),就是用一个运动员击中的球数除以击球的总数,我们一般认为0.266是正常水平的击球率,而如果击球率高达0.3就被认为是非常优秀的。

现在有一个棒球运动员,我们希望能够预测他在这一赛季中的棒球击球率是多少。你可能就会直接计算棒球击球率,用击中的数除以击球数,但是如果这个棒球运动员只打了一次,而且还命中了,那么他就击球率就是100%了,这显然是不合理的,因为根据棒球的历史信息,我们知道这个击球率应该是0.215到0.36之间才对啊。

对于这个问题,我们可以用一个二项分布表示(一系列成功或失败),一个最好的方法来表示这些经验(在统计中称为先验信息)就是用beta分布,这表示在我们没有看到这个运动员打球之前,我们就有了一个大概的范围。beta分布的定义域是(0,1)这就跟概率的范围是一样的。

接下来我们将这些先验信息转换为beta分布的参数,我们知道一个击球率应该是平均0.27左右,而他的范围是0.21到0.35,那么根据这个信息,我们可以取 α = 81 , β = 219 \alpha=81 ,\beta=219 α=81,β=219

在这里插入图片描述

之所以取这两个参数是因为:

  • beta分布的均值是 α α + β = 81 81 + 219 = 0.27 \frac{\alpha}{\alpha+\beta}=\frac{81}{81+219}=0.27 α+βα=81+21981=0.27
  • 从图中可以看到这个分布主要落在了(0.2,0.35)间,这是从经验中得出的合理的范围。

在这个例子里,我们的x轴就表示各个击球率的取值,x对应的y值就是这个击球率所对应的概率。也就是说beta分布可以看作一个概率的概率分布。

那么有了先验信息后,现在我们考虑一个运动员只打一次球,那么他现在的数据就是”1中;1击”。这时候我们就可以更新我们的分布了,让这个曲线做一些移动去适应我们的新信息。beta分布在数学上就给我们提供了这一性质,他与二项分布是共轭先验的(Conjugate_prior)。所谓共轭先验就是先验分布是beta分布,而后验分布同样是beta分布。结果很简单:
B e t a ( α 0 + h i t s , β 0 + m i s s e s ) Beta(\alpha_0+hits, \beta_0+misses) Beta(α0+hits,β0+misses)

其中 α 0 \alpha_0 α0 β 0 \beta_0 β0是一开始的参数,在这里是81和219。所以在这一例子里, α \alpha α增加了1(击中了一次)。 β \beta β没有增加(没有漏球)。这就是我们的新的beta分布 B e t a ( 81 + 1 , 219 ) Beta(81+1, 219) Beta(81+1,219),我们跟原来的比较一下:

在这里插入图片描述

可以看到这个分布其实没多大变化,这是因为只打了1次球并不能说明什么问题。但是如果我们得到了更多的数据,假设一共打了300次,其中击中了100次,200次没击中,那么这一新分布就是:
B e t a ( 81 + 100 , 219 + 200 ) Beta(81+100, 219+200) Beta(81+100,219+200)

在这里插入图片描述

注意到这个曲线变得更加尖,并且平移到了一个右边的位置,表示比平均水平要高。

一个有趣的事情是,根据这个新的beta分布,我们可以得出他的数学期望为: α α + β = 82 + 100 82 + 100 + 219 + 200 = . 303 \frac{\alpha}{\alpha+\beta}=\frac{82+100}{82+100+219+200}=.303 α+βα=82+100+219+20082+100=.303 ,这一结果要比直接的估计要小 100 100 + 200 = . 333 \frac{100}{100+200}=.333 100+200100=.333 。你可能已经意识到,我们事实上就是在这个运动员在击球之前可以理解为他已经成功了81次,失败了219次这样一个先验信息。

因此,对于一个我们不知道概率是什么,而又有一些合理的猜测时,beta分布能很好的作为一个表示概率的概率分布。

#beta分布与二项分布的共轭先验性质
##二项分布
二项分布即重复n次独立的伯努利试验。在每次试验中只有两种可能的结果,而且两种结果发生与否互相对立,并且相互独立,与其它各次试验结果无关,事件发生与否的概率在每一次独立试验中都保持不变,则这一系列试验总称为n重伯努利实验,当试验次数为1时,二项分布服从0-1分布

二项分布的似然函数:
P ( d a t a ∣ θ ) ∝ θ z ( 1 − θ ) N − z z = ∑ i = 1 N X i P(data|\theta) \propto \theta^z(1-\theta)^{N-z} \\ z=\sum_{i=1}^NX_i P(dataθ)θz(1θ)Nzz=i=1NXi

##beta分布
B e t a ( a , b ) = θ a − 1 ( 1 − θ ) b − 1 B ( a , b ) ∝ θ a − 1 ( 1 − θ ) b − 1 Beta(a,b)=\frac{\theta^{a-1}(1-\theta)^{b-1}}{B(a,b)}\propto \theta^{a-1}(1-\theta)^{b-1} Beta(a,b)=B(a,b)θa1(1θ)b1θa1(1θ)b1
在beta分布中,B函数是一个标准化函数,它只是为了使得这个分布的概率密度积分等于1才加上的。
##贝叶斯估计
我们做贝叶斯估计的目的就是要在给定数据的情况下求出 θ \theta θ的值,所以我们的目的是求解如下后验概率:
P ( θ ∣ d a t a ) = P ( d a t a ∣ θ ) P ( θ ) P ( d a t a ) ∝ P ( d a t a ∣ θ ) P ( θ ) P(\theta |data)=\frac{P(data|\theta)P(\theta)}{P(data)}\propto P(data|\theta)P(\theta) P(θdata)=P(data)P(dataθ)P(θ)P(dataθ)P(θ)
注意到因为P(data)与我们所需要估计的 θ \theta θ是独立的,因此我们可以不考虑它。

我们称 P ( d a t a ∣ θ ) P(data|\theta) P(dataθ)为似然函数, P ( θ ) P(\theta) P(θ)为先验分布

##共轭先验
现在我们有了二项分布的似然函数和beta分布,现在我们将beta分布代进贝叶斯估计中的 P ( θ ) P(\theta) P(θ)中,将二项分布的似然函数代入 P ( d a t a ∣ θ ) P(data|\theta) P(dataθ)中,可以得到:
P ( θ ∣ d a t a ) ∝ θ z ( 1 − θ ) N − z ∗ θ a − 1 ( 1 − θ ) b − 1 ∝ θ a + z − 1 ( 1 − θ ) b + N − z − 1 P(\theta |data) \propto \theta^z(1-\theta)^{N-z}*\theta^{a-1}(1-\theta)^{b-1} \\ \propto \theta^{a+z-1}(1-\theta)^{b+N-z-1} P(θdata)θz(1θ)Nzθa1(1θ)b1θa+z1(1θ)b+Nz1
我们设 a ′ = a + z , b ′ = b + N − z a’=a+z,b’=b+N-z a=a+z,b=b+Nz
最后我们发现这个贝叶斯估计服从Beta(a’,b’)分布的,我们只要用B函数将它标准化就得到我们的后验概率:
P ( θ ∣ d a t a ) = θ a ′ − 1 ( 1 − θ ) b ′ − 1 B ( a ′ , b ′ ) P(\theta |data)=\frac{\theta^{a’-1}(1-\theta)^{b’-1}}{B(a’,b’)} P(θdata)=B(a,b)θa1(1θ)b1

#参考资料:
1.Understanding the beta distribution (using baseball statistics)
2.20 – Beta conjugate prior to Binomial and Bernoulli likelihoods

作为分享主义者(sharism),本人所有互联网发布的图文均遵从CC版权,转载请保留作者信息并注明作者a358463121专栏:http://blog.csdn.net/a358463121,如果涉及源代码请注明GitHub地址:https://github.com/358463121/。商业使用请联系作者。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/198360.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • eXtremeDB_5noobs

    eXtremeDB_5noobseXtremeDB™ 3.1fromMcObject®ReleaseNotesTargetOS:HP-UX11forPA-RISC,ItaniumHostOS:HP-UX11.xBYUSINGTHISSOFTWAREYOUAGREETOMcObject’s LICENSEAGREEMENT

    2022年10月14日
  • Java爬虫系列一:写在开始前[通俗易懂]

    最近在研究Java爬虫,小有收获,打算一边学一边跟大家分享下,在干货开始前想先跟大家啰嗦几句。一、首先说下为什么要研究Java爬虫Python已经火了很久了,它功能强大,其中很擅长的一个就是写爬虫

  • Android ListView那些事

    Android ListView那些事ListView是我们在开发Android程序时用得比较多的一种widget,通常用来展示多条数据,这里,我对ListView的一些功能点作一个简单介绍。1. Cachecolorhint默认情况下,Android中的View的背景都是透明的,这是一个合理的设计,但是,当渲染到屏幕上时,这会引入许多的计算,因为所有的child的背景是透明的,这就意味着当ListView绘制它的chil

  • 六大排序算法:插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序「建议收藏」

    六大排序算法:插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序「建议收藏」文章目录:1.插入排序2.希尔排序1.插入排序步骤:1.从第一个元素开始,该元素可以认为已经被排序2.取下一个元素tem,从已排序的元素序列从后往前扫描3.如果该元素大于tem,则将该元素移到下一位4.重复步骤3,直到找到已排序元素中小于等于tem的元素5.tem插入到该元素的后面,如果已排序所有元素都大于tem,则将tem插入到下标为0的位置6.重复步骤2~5动图演示如下:思路:  在待排序的元素中,假设前n-1个元素已有序,现将第n个元素插入到前面已经排好的序列中,使得前n个

  • vsftp搭建_安装vsftpd

    vsftp搭建_安装vsftpd2016-05-29回答首先在client上建立publickey和privatekey,需要使用ssh-keygen命令[root@localhost.ssh]#ssh-keygen–trsageneratingpublic/privatersakeypair.enterfileinwhichtosavethekey(/root/.ssh/id_rsa…

  • mybatiscodehelperpro2.9.6激活(JetBrains全家桶)

    (mybatiscodehelperpro2.9.6激活)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容https://javaforall.cn/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~00OE5RWT28-eyJsaWNlb…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号