贝叶斯统计:初学指南(法力风暴初学指南任务怎么接)
cac55 2024-10-03 17:48 17 浏览 0 评论
什么是 Bayesian Statistics?
Bayesian statistics is a particular approach to applying probability to statistical problems。
在 statistical inference 上,主要有两派:频率学派和贝叶斯学派。
Frequentist statistics tries to eliminate uncertainty by providing estimates. Bayesian statistics tries to preserve and refine uncertainty by adjusting individual beliefs in light of new evidence.
贝叶斯推理的目标?
produce quantitative trading strategies based on Bayesian models.
在使用贝叶斯理论过程中,我们最基本的公式如下:
为了方便的计算后验概率,我们会采用共轭先验的方法来简化后验的计算。
举个简单例子,假设我们投掷一枚硬币,我们刚开始认为正面朝上的概率是服从一个 Beta 分布的,Beta 分布能产生一个 0-1 之间的随机数。
我们刚开始假设α = β = 1,则 Beta 分布退化为一个均匀分布,接着我们不断的投掷硬币,记录好每次投掷的结果,然后根据结果再来计算此时正面朝上的概率。
此时我们可以计算出 n 次中 k 次朝上的概率值为:
我们再来计算后验概率:
可以看到后验概率也是 Beta 分布,我们通过假设先验概率为 Beta 分布,能非常方便的计算出后验概率。
下面是一段实验代码:
产生的图如下:
随着实验结果的增加,我们越来越确信正面朝上概率为 0.5。
以上是一个简单的后验问题,如果遇到一些复杂的后验概率,我们就要使用 mcmc 来做了.
MCMC is a means of computing the posterior distribution when conjugate priors are not applicable.
我们再来看后验的计算公式:
此处要想计算出解析解,就必须知道 evidence P(D),其计算公式如下:
这里的问题就是我们一般很难求联合概率的积分,所以我们要通过数值逼近的方法来求 P(D)。其中有一大类算法是:Markov Chain Monte Carlo Algorithms,有 Metropolis Algorithm, Metropolis-Hastings, the Gibbs Sampler, Hamiltonian MCMC and the No-U-Turn Sampler (NUTS).
注:此处为什么积分困难,可以看为什么要使用 MCMC 方法?
MCMC 的应用是和 "维数灾难" 有关的。考虑一个 R 上的分布,如果我们要计算它的数学期望,采用题主所描述的 "等距计算",那么取 100 个点大致可以保证精度。然而考虑一个 R^50 的分布,这时候要采用 "等距计算" 就要在每个维度上取 100 个点,这样一来就要取 10^100 个点。作为对比,已知宇宙的基本粒子大约有 10^87 个。如果仔细观察 "等距计算" 的结果,就会发现绝大多数点算出的概率都很小,而少部分点的概率非常大。而如果我们忽略大多数概率小的点,只计算概率大的那小部分点,对最后数学期望的结果影响非常小。这是 MCMC 思路的直观部分。MCMC 应用的概率模型,其参数维数往往巨大,但每个参数的支撑集非常小。比如一些 NLP 问题的参数只取 {0,1},但维数往往达到几千甚至上万左右,这正说明了 MCMC 更适用这些问题。
下面介绍第一个算法:Metropolis 算法。
先介绍 mcmc 算法的一般套路:
先在参数空间中选择一个
在参数空间中提议一个新的位置
根据先验信息和观测数据决定接收或者拒绝
如果接收跳跃,则跳转到新的位置,并且返回到 step1
如果拒绝,则保持当前位置并返回到 step1
连续采用一系列点,最后返回接受的点集合
不同的 mcmc 算法的区别就在于:
how you jump as well as how you decide whether to jump.
Metropolis 使用正态分布来进行跳跃,正态分布的μ为当前位置的,然后σ是需要决定的。σ 是 Metropolis 算法的参数,不同的 σ 值决定了算法的收敛速度。如果 σ 值大,意味着 proposal width 宽,能够跳的更远,并且搜索更多的后验参数空间,但是容易跳过高概率的地方,但是过小的σ 值,又会使得 proposal width 过小,导致收敛过慢。
一旦新的位置被提议出来,下一步就是要决定是否要跳转了,我们计算两个位置的概率比值:
然后我们从 [0,1] 的均匀分布中采出一个值,如果在 [0,p] 之间就接受,否则拒绝。
下面我们来对上面过程举个例子来说明。
假设我们有一组观测数据,来自一个正态分布,我们假设参数μ的先验分布也是一个正态分布,公式描述如下:
μ~Normal(0,1) # 参数先验概率
x|μ~Normal(x;μ,1) # 似然
我们通过代码采样如下:
对于这个问题,我们为了对比 mcmc 的结果,该后验概率我们是可以直接计算出来的,具体的数学推导见:note
我们对照上面说的 mcmc 算法的一般套路,先采样:
挑选出新的值后,我们下一步就是要去衡量新的参数好不好,怎么定义好不好呢?就是看新的参数是否能更好的解释数据。
怎么去定义更好的解释数据呢?
可以用下面的公式
解释起来就是基于当前观测数据,哪个参数概率更大。
下面就是决定是否要接收新参数了:
然后不断重复上面的过程,我们就有了一系列的了。
完整的代码可以见 mcmc。
总结
本文主要介绍 mcmc,其解决了当后验概率太复杂时候,用采用的方法去近似后验分布,本文介绍了最简单的 Metropolis 算法,后面会继续学习其他算法,欢迎关注。
参考
Markov Chain Monte Carlo for Bayesian Inference - The Metropolis Algorithm
MCMC sampling for dummies
Bayesian Inference with PyMC3 - Part 1
你的鼓励是我继续写下去的动力,期待我们共同进步。
相关推荐
- 服务器用的CPU和个人电脑用的CPU有什么区别?一篇文章告诉你!
-
服务器cpu和普通cpu的区别你的电脑CPU是‘短跑健将’,服务器CPU却是‘铁人三项选手’——它不追求瞬间爆发力,而要7×24小时扛住千军万马的数据洪流!想知道为什么企业机房敢收天价服务费?答案全藏...
- “吃鸡”新版本第1天,玩家进入游戏点击“立即更新”,后悔了!
-
欢迎诸位小伙伴们来到天哥开讲的《和平精英》“精英小课堂”~每逢两三个月,这款游戏就会迎来一次大版本迭代更新,很多朋友会在第一时间更新版本,前往全新的主题模式里一探究竟。不过也有一些老玩家并不会立刻更新...
- 中关村在线·aigo存储杯《无畏契约》全国高校争霸赛招募启事
-
以青春之名,燃电竞之火1赛事背景与宗旨在金秋送爽的9月,芊芊学子们即将回归校园生活。为了给精彩的校园生活锦上添花,由中关村在线与aigo存储联合主办的《无畏契约》全国高校争霸赛正式启幕,旨在为全国高...
- 【生肖狗】9.7-9.10提醒:人算不如天算,转变即是转机
-
九月上旬的风,带着秋意的清爽,也带着几分不可捉摸的变数。对于生肖狗的朋友们来说,9月7日到9月10日这四天,格外需要留意“计划与变化”的碰撞——你们向来习惯提前规划,做事稳妥周全...
- 转转客服IM系统的WebSocket集群架构设计和部署方案
-
本文由转转技术李帅分享,原题“转转客服IM的WebSocket集群部署方案”,下文有修订和重新排版。1、引言转转作为国内头部的二手闲置交易平台,拥有上亿的用户。用户在使用转转app遇到问题时,一般可以...
- 上线3天Steam好评率86%,《时间旅者:重生曙光》开启生存恐怖新篇章
-
这里究竟发生了什么?末日降临,真正的故事悄然启幕。目前,生存恐怖类游戏《时间旅者:重生曙光(Cronos:TheNewDawn)》已在PC(Steam、EpicGamesStore)、P...
- 什么神仙洗衣机让我一天有28小时?拆开松下「大四洗」藏了啥秘密
-
说起家庭洗衣的烦恼,想必很多人都有过类似的经历:贴身内衣要单独洗,宝宝的口水巾得小心呵护,宠物玩具怕藏污纳垢,床单被套又体积庞大,把这些东西混在一起洗担心越洗越脏,分开洗又得反复操作,洗完烘、烘完再洗...
- 爆料人挖出GTA6注册的奇葩域名 延续经典讽刺风格
-
等待《侠盗猎车手6》的日子跨越了数个春秋,在游戏圈期盼着这部可能成为史上最重磅游戏的过程中,每过一段时间就会有些许消息浮出水面。最新线索来自数据挖掘者Tez2在GTA论坛的发现,他可能偶然发现了关于...
- 跟着故事去旅行——读《驼峰间:旅行、探险与征服》
-
作者:郭冰茹《驼峰间》记录了旅行家伊本·白图泰有生之年流传的一则寓言,说一对父子被关进了监狱,有一天儿子问父亲他们每天吃的都是些什么肉,父亲说有牛、羊和骆驼,并且详细地描述了每种动物的特点。但不管父亲...
- 前端工程师需要熟悉的Linux服务器(SSH 终端操作)指令
-
在Linux服务器管理中,SSH(SecureShell)是远程操作的核心工具。以下是SSH终端操作的常用命令和技巧,涵盖连接、文件操作、系统管理等场景:一、SSH连接服务器1.基本连接...
- 跳票6年后,「丝之歌」首发把Steam服务器干爆了 | 玩点好的
-
文丨果脯樱花隧道昨天晚上22点,「鸽」了6年的《空洞骑士:丝之歌》终于上线,算是了却不少玩家的执念。毕竟,这款游戏实在让人等了太多太多年,而且曾有过多次定档后跳票的「案底」,不知道把多少人都整出了P...
- 对标魔兽失败!腾讯版“魔兽”运营一年多后,宣布国际服凉凉
-
大家好,这里是正惊游戏,我是正惊小弟。有很多游戏都想干掉《魔兽世界》,但是大部分魔兽杀手都知道自己不是魔兽的对手,不过是想蹭一下人气而已。腾讯也有一款曾经想对标魔兽的大作,可是上线才一年半国际服就宣布...
- 408 Request Timeout:服务器等待客户端发送请求的时间过长。
-
408RequestTimeout是HTTP状态码之一,表示客户端在发送请求时,服务器等待的时间过长,最终放弃了处理该请求。此问题通常与网络延迟、客户端配置、服务器设置或者应用程序的性能有关...
- 梦幻西游:9.9维护解读,全新时间服锁定129级
-
梦幻西游:9.9维护解读,全新时间服锁定129级9月9日维护解读。1、教师节活动开启,一共7天。挂机,答题,收笔墨纸砚,收海马,搞起来。或者是提前收点家具,教师节期间体力珍贵,家具会涨价。又或者是教师...
- 只是拆掉一面墙,空间就立马大变样,这种设计思路,值得学习
-
你有没有过这样的经历?刚买的房子户型图看起来方方正正,装修完却发现——玄关鞋柜只能塞在角落,进门就撞墙;餐厅正好在过道中间,吃饭像走流程;明明有四个房间,却有一个空着没用,像块食之无味的鸡肋;客餐厅之...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- 服务器用的CPU和个人电脑用的CPU有什么区别?一篇文章告诉你!
- “吃鸡”新版本第1天,玩家进入游戏点击“立即更新”,后悔了!
- 中关村在线·aigo存储杯《无畏契约》全国高校争霸赛招募启事
- 【生肖狗】9.7-9.10提醒:人算不如天算,转变即是转机
- 转转客服IM系统的WebSocket集群架构设计和部署方案
- 上线3天Steam好评率86%,《时间旅者:重生曙光》开启生存恐怖新篇章
- 什么神仙洗衣机让我一天有28小时?拆开松下「大四洗」藏了啥秘密
- 爆料人挖出GTA6注册的奇葩域名 延续经典讽刺风格
- 跟着故事去旅行——读《驼峰间:旅行、探险与征服》
- 前端工程师需要熟悉的Linux服务器(SSH 终端操作)指令
- 标签列表
-
- 如何绘制折线图 (52)
- javaabstract (48)
- 新浪微博头像 (53)
- grub4dos (66)
- s扫描器 (51)
- httpfile dll (48)
- ps实例教程 (55)
- taskmgr (51)
- s spline (61)
- vnc远程控制 (47)
- 数据丢失 (47)
- wbem (57)
- flac文件 (72)
- 网页制作基础教程 (53)
- 镜像文件刻录 (61)
- ug5 0软件免费下载 (78)
- debian下载 (53)
- ubuntu10 04 (60)
- web qq登录 (59)
- 笔记本变成无线路由 (52)
- flash player 11 4 (50)
- 右键菜单清理 (78)
- cuteftp 注册码 (57)
- ospf协议 (53)
- ms17 010 下载 (60)