近似贝叶斯计算和近似技术基于随机模拟模型中的样本计算近似似然值,在过去几年中引起了很多关注,因为它们有望为任何随机过程提供通用统计技术
一位同事向我询问我们在文章中讨论过的近似贝叶斯计算 MCMC (ABC-MCMC) 算法的简单示例。下面,我提供了一个最小的示例,类似于Metropolis-Hastings 。
# 假设数据是正态分布的10个样本
# 平均值为5.3,SD为2.7
data = rnorm
# 我们想用ABC来推断出所使用的参数。
# 我们从同一个模型中取样,用平均值和方差作为汇总统计。当我们接受ABC时,我们返回真,因为与数据的差异小于某个阈值
ABC <- function(pr){
# 先验避免负的标准偏差
if (par <= 0) return(F)
# 随机模型为给定的参数生成一个样本。
samples <- rnorm
# 与观察到的汇总统计数字的比较
if((difmean < 0.1) & (difsd < 0.2)) return(T) else return(F)
}
# 我们将其插入一个标准的metropolis Hastings MCMC中。
#用metropolis 的接受度来交换ABC的接受度
MCMCABC <- function(saue, itns){
for (i in 1:ieraos){
# 提议函数
prp = rnorm(2,mean = chain[i,], sd= c(0.7,0.7))
if(A_ance(prl)){
chn[i+1,] = prl
}else{
chn[i+1,] = cain[i,]
}
}
return(mcmc(cin))
}
plot(psor)
相关视频
**
拓端
,赞15
**
拓端
,赞26
**
拓端
,赞32
结果应该是这样的:
图:后验样本的轨迹图和边缘图。从右边的边缘图中,您可以看到我们正在近似检索原始参数值,即 5.3 和 2.7。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有