贝叶斯估计实验(matlab)

article/2025/10/8 13:34:31

1、实验内容

由于生活中很多参数如测量误差、产品质量指标等几乎都服从或近似服从正态分布,所以可以用对单变量正态分布中的贝叶斯估计进行分析并编写相应的Matlab程序,分析样本大小对贝叶斯估计误差的影响,进而验证贝叶斯估计的有效性。

2、实验原理

1、了解贝叶斯估计原理,以单变量正态分布为例,设XN={X1,X2,…,XN}z是取自正态分布N(μ,σ2)的样本集。假设其中的总体方差σ2已知:μ是未知的随机参数,为带估计量,且已有先验分布N(μ0,σ20),要求使用贝叶斯估计方法求出估计量μ^,使得最终的贝叶斯风险最小。
2、利用Matlab中得函数生成一定数量得总体分布密度服从正态分布得样本数据。
3、由单变量正态分布得到的贝叶斯估计值计算公式:μ^ = N*σ2mN/(Nσ202)+σ2μ0/(Nσ202)
4、以上叙述生成的样本为基础,继续添加服从同样的正态分布的样本数据集,探索贝叶斯估计值和样本大小的关系。

实验方法集程序

1、假定p(μ) ~ N(2.8,0.62),展示数据

>> u = 2.4;%总体分布概率的均值
>> sigma = 3.6;%总体分布概率的标准差
>> #假设某一样本:
>> u0 = 2.8;%未知参数分布的均值
>> sigma0 = 0.6;%未知参数分布的标准差
>> num=200;%样本个数
>> XN = normrnd(u,sigma,1,num);
>> mN = sun(XN)/num;%样本均值

未知参数的分布:
在这里插入图片描述
2、利用贝叶斯估计对其进行估计:

>> 贝叶斯估计值
>> u1 = num*sigma0^2*mN/(num*sigma0^2+sigma^2)+sigma^2*u0/(num*sigma0^2+sigma^2);
>> 计算相对误差
>> abs(u1-u)/u*100
>ans =19.25

u1的值:
在这里插入图片描述
3、以上述200个数据为基础,继续添加服从正态分布N(2.8,0.62)的样本数据,探索贝叶斯估计值和样本大小的关系:

for num =1:3000u = 2.4;%总体分布概率的均值sigma = 3.6;%总体分布概率的标准差R = normrnd(u,sigma,1,1);%产生一个和前面样本分布一样的样本数据sigma0 = 0.6;%未知参数分布的标准差u0 = 2.8;%未知参数分布的均值XN = [XN,R];%XN的前200个值为上个程序已经产生的样本数据mN = sum(XN)/(num+100);u1(num)=(num+100)*sigma0^2*mN/((num+100)*sigma0^2+sigma^2+sigma^2*u0/((num+100)*sigma0^2+sigma^2));%画出相对误差plot(abs(u1-u)/u);xlabel("增大样本数");ylabel('相对误差')grid on;hold on;
end
>> plot(u1);
>> xlabel("增大样本数");
>> ylabel('贝叶斯估计值');

在这里插入图片描述

在这里插入图片描述

实验结果与分析

1、实验一:可以看出贝叶斯的估计值为19.25%,与真实值的误差值较大,这是由于样本数量较少,导致先验信息不够,最终估计值与真实值存在较大的误差。
2、实验二:可以看出,贝叶斯估计值在样本数较少时距离真实值较远,误差较大,随着样本数的增加首先呈现下降趋势,然后慢慢的平稳下来靠近真实值。说明贝叶斯估计值的误差大小与样本数有关系,当样本数足够大时,贝叶斯估计和被估计的真实值之间的误差将控制在合理的范围。


http://chatgpt.dhexx.cn/article/HoiE6sae.shtml

相关文章

参数估计:贝叶斯思想和贝叶斯参数估计

http://blog.csdn.net/pipisorry/article/details/51471222 贝叶斯与频率派思想 频率派思想 长久以来,人们对一件事情发生或不发生,只有固定的0和1,即要么发生,要么不发生,从来不会去考虑某件事情发生的概率有多大&a…

贝叶斯估计及其python实现

文章目录 1.贝叶斯估计的思想2.正态总体参数贝叶斯估计的推导3.代码实现3.1.抽取样本3.2.估计参数 4.总结参考文献 1.贝叶斯估计的思想 在统计学中有两大学派:频率学派和贝叶斯学派。针对参数估计的方法也分成两派。其中以极大似然估计为代表的频率学派和以贝叶斯估…

贝叶斯估计和极大似然估计到底有何区别

前言:原创不易,转载请告知并注明出处!微信搜索【机器学习与自然语言处理】公众号,定期发布知识图谱,自然语言处理、机器学习等知识,添加微信号【17865190919】进讨论群,加好友时备注来自CSDN。 …

【数学基础】参数估计之贝叶斯估计

从统计推断讲起 统计推断是根据样本信息对总体分布或总体的特征数进行推断,事实上,这经典学派对统计推断的规定,这里的统计推断使用到两种信息:总体信息和样本信息;而贝叶斯学派认为,除了上述两种信息以外…

贝叶斯估计与贝叶斯学习的区别

概述: 贝叶斯估计:贝叶斯估计是把待估计的参数看作具有先验分布密度p()的随机变量,其取值与样本D有关,用训练样本D估计出最优的,记为。 贝叶斯学习 :把贝叶斯估计的原理用于直接从数据对概率密度函数进行…

vue3页面刷新

整理工作中用到的页面刷新方式&#xff1a; 1.provide/inject 2.router.go(0) 3.provide,inject 一、使用provide和inject 控制<router-view>的显示隐藏 默认<router-view v-if"isRouterAlive" /> isRouterAlive是true&#xff0c;在需要刷新的时候把这…

js 页面刷新

刷新为新的页面 获得当前页面的url,即浏览器显示的地址: window.location.href; 按下enter,页面刷新为百度 刷新为当前页面 1,history.go(0)2,location.reload() 3,location=location 4,location.assign(location) 5,document.execcommand(‘refresh‘) 6,window.na…

Web页面自刷新

简单介绍两种&#xff1a; 第一种Ajax Ajax Asynchronous JavaScript and XML&#xff08;异步的 JavaScript 和 XML&#xff09;&#xff0c;ajax就是基于浏览器提供的XMLHttpRequest对象来实现的 什么叫异步&#xff1f; 异步&#xff0c;不同的意思&#xff0c;这里也就…

页面刷新技术-------AJAX

一、前提步骤&#xff08;先把静态网页写出来&#xff09; 1、首先先要配置文件 2、然后去后端建立服务器&#xff0c;把该下载的模块下载好 var httprequire("http") var fsrequire("fs") var urlrequire("url") var querystringrequire(&quo…

页面刷新和vue页面刷新

history.go(0) location.reload() locationlocation location.assign(location) document.execCommand(Refresh) window.navigate(location) location.replace(location) document.URLlocation.href这几个都可以刷新&#xff1a; window.location.reload();刷新 window.locatio…

vue关于页面刷新的几个方式

在写项目的时候会遇到需要刷新页面重新获取数据&#xff0c;浅浅总结了一下几种方案。 1.this.$router.go(0) 强制刷新页面&#xff0c;会出现一瞬间的白屏&#xff0c;用户体验感不好。 2.location.reload() 也是强制刷新页面&#xff0c;和第一种方法一样&#xff0c;会造成…

HTML页面刷新及其应用例子

HTML页面刷新及其应用例子 刷新一般指重新载入当前页面。本文先给出html页面刷新重载方法汇总&#xff0c;再给出示例。 html页面刷新重载方法汇总 一、javascript页面刷新重载的方法&#xff1a; <a href"javascript:location.reload();">点击重新载入页面…

vue页面刷新

vue页面刷新 首先我们都知道vue属于单页面应用&#xff0c;默认境况下是不会触发刷新页面操作的&#xff0c;所以这个时候就需要我们通过事件来触发reload()来达到刷新操作 接下来我就为大家介绍三种刷新页面的方法 1. wiindow.location.reload([bForceGet])该方法强迫浏览…

hadoop 学习路线

Posted: Sep 6, 2013 Tags: Hadoophadoop familyroadmap Comments: 40 Comments Hadoop家族学习路线图 Hadoop家族系列文章&#xff0c;主要介绍Hadoop家族产品&#xff0c;常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa&am…

Hadoop 学习路线图

主要介绍Hadoop家族产品&#xff0c;常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa&#xff0c;新增加的项目包括&#xff0c;YARN, Hcatalog, Oozie, Cassandra, Hama, Whirr, Flume, Bigtop, Crunch, Hue等。 从2011年开始&…

Hadoop学习路线

Hadoop基础 Hadoop是一个能够对大量数据进行分布式处理的软件框架&#xff0c;它是一种技术的实现&#xff0c;是云计算技术中重要的组成部分&#xff0c;云计算的概念更广泛且偏向业务而不是必须拘泥于某项具体技术&#xff0c;云计算的存在只是一种新的商业计算模型和服务模…

第11期:Hadoop零基础学习路线

大家好&#xff0c;我是你们的老朋友老王随聊&#xff0c;今天和大家讨论的话题——Hadoop零基础应该怎么学&#xff1f; 通过这段时间和群里同学们交流&#xff0c;发现很多大学生甚至职场小白对Hadoop学习路线不是很清晰&#xff0c;所以我花了一些时间给大家整理了一张Hadoo…

hadoop学习路线图

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下&#xff0c;开发分布式程序。充分利用集群的威力进行高速运算和存储。而对于hadoop的学习是大数据学习中的重要一个环节&#xff0c;于是乎有很多人想要知道hadoop学习路线图。…

Python的基础编程

1. python的基本语法 Python是一个结合了解释性、编译性、互动性和面向对象的高级程序设计语言&#xff0c;结构简单&#xff0c;语法定义清晰&#xff1b; Python最具特色的就是使用缩进来表示代码块&#xff0c;不需要使用大括号{}&#xff0c;但每一个模块内的语句必须包含…

【Java编程指南】语法基础

目录 一、前言 二、关键字 三、数据类型 1.存储单元 2.存储范围 3.类型转换 四、常量 五、变量 六、标识符 七、注释 一、前言 学习目标 1&#xff1a;熟悉Java的关键字、数据类型&#xff08;包括范围&#xff09;、常量与变量的区别 学习目标 2&#xff1a;类型转…