首页 > 其他分享 >贝叶斯与卡尔曼滤波(1)--三大概率

贝叶斯与卡尔曼滤波(1)--三大概率

时间:2023-02-21 21:12:09浏览次数:55  
标签:似然 10 10.3 概率 frac -- 卡尔曼滤波 随机 三大

贝叶斯与卡尔曼滤波(1)--三大概率

贝叶斯滤波主要是通过概率统计的方法,主要是贝叶斯公式,对随机信号进行处理,减小不确定度

贝叶斯滤波处理的随机变量主要是一个随机过程。\(x_1, x_2, x_3 ...\),互不独立

与之对应的就是一个确定过程,比如:自由落体\(v = g*t\),就是一个确定的过程

我们之前所学的大部分都是一些要求相对独立的数学,比如大数定律,中心极限定理,数理统计三大分布都需要独立同分布。

随机过程的难度相比于确定过程要高很多,最大的不同在于随机过程无法做随机试验了。

那么问题来了,随机试验是干什么的?随机试验最大的作用是为了给概率赋值的,比如抛硬币。为啥那么抛硬币正反的概率都是0.5呢?这就涉及到两种学说,主观概率学说以及大数定律学说(随机试验为基础)。

随机试验的条件:

  • 在相同条件下,实验可以重复进行 (这其实就是随机实验之间的独立性)
  • 一次实验,结果不确定,所有可能的结果已知
  • 实验之前,实验结果预先未知

在抛硬币这个实验中,实验可以多次重复进行,由大数定律,设\(n\)为试验次数,\(\mu\)为正面朝上的次数

那么根据大数定律,在\(n\)次独立的实验中,对于任意正数\(\varepsilon\),有

\[\lim_{n \to \infty} P(|\frac{\mu}{n} - P_1| < \varepsilon) = 1 \]

当\(n \to \infty\)时, \(\frac{\mu}{n}\)依概率收敛于\(P_1\).

经过大量的实验测试,这个概率在0.5上下波动,因此就定义为0.5

那么问题来了,对于一个随机过程来说,\(x_1, x_2, x_3 ...\)互不独立,那么如何给这个概率赋值呢?

举个例子,股票。相对股票做随机试验,那么必须会时光倒流,这显示是不可能的。除了股票,像分子的扩散,气温的变化都是无法做随机试验的。一般来说与时间有关的东西,都是无法做随机试验的。

随机过程,\(x_1, x_2, x_3 ...\)不独立,那么可以有以下推断

\[x_k = f(x_{k-1}) \]

\[P(x_k) = f(P(x_{k-1})) \]

这就体现了不独立性。那么有了这个信息,我们是否可以研究随机过程呢?答案也是不可以的,因为你只找到了他们的关系,但是必须要给随机过程的起点\(P(x_1)\)赋予初值,初值的选取是很重要的。

但是上面说过由于不独立性,我们无法通过大数定律赋予\(P(x_1)\)初值。

实际上,有的初值是可以做随机试验的额,比如随机游走\(x_k = x_{k-1} +D\),$D $为位移

\[P(D=1) = 0.5 \]

\[P(D=-1) = 0.5 \]

初值\(P(x_0 = 0) = 1\)。

但是更多情况下,初值是不可以做随机试验的,只能使用主观概率,也就是猜一个概率出来。

以上面的例子来看,抛硬币正面朝上的概率0.5这个事情来看,两种说法,主观概率与大数定律学说都存在不严谨的地方。主观概率就不说了,肯定是不严谨了,但是大数定律看似严谨,实际上独立性这个属性是无法保证,同时也是无法证明这个独立性的。一般来说判断独立性都是通过经验的,因此大数定律也是存在一定的主观性的。有人会说,证明独立性只需要说明\(P(A)=P(B)\)就可以了,但是要证明这个等式,必须要对两个概率赋值,而要对概率赋值,必须使用大数定律,这就成了一个鸡生蛋还是蛋生鸡的问题。因此在无法做随机试验的情况下,使用主观概率也是比较科学的做法

这就是概率论的两大学派,支持主观概率的也叫贝叶斯学派,支持大数定律的也叫频率学派,目前以频率学派占主导地位。

回到主观概率上,随机过程\(x_1, x_2, x_3 ...\)互不独立,那么\(P(x_1)\)该如何给呢?对于一些比较简单的随机过程,比如抛硬币,我们可以给一个0.5,但是对于一些比较复杂的过程,比如股票,每个人看法不一, 导致主观概率的选取不通用,那么不同的主观概率会导致不同的结果,这显示不是我们想要的。气温的变化,分子的扩散,本质上还是一个客观的过程,我们希望尽可能削弱主观的差异,那么应该怎么做呢,我们主要说贝叶斯滤波的方法。

我们需要引入外部观测,比如对于股票来说,每个人对涨跌的看法都是不一样,但是如果加上一个外部观测,比如得到消息,某公司老板卷钱跑路了,那么几乎所有人都会下调对该股票的收益预期。

引入外部观测,可以尽可能地减弱主观概率的影响

flowchart LR A[主观概率]-->B[外部观测] B-->C[相对客观的概率: 后验概率]

主观概率也叫做先验概率,主观概率和先验概率是存在一定区别的,但是我们可以把两者当作是一个东西,目前涉及的知识面,可以忽略两者的区别。

先验概率通过贝叶斯公式转化为后验概率。

先说一下符号

\(X, Y\),大写为随机变量,\(x, y\),小写为随机变量的取值,代表随机试验的一个可能的结果

离散变量:\(P(X=x) = P_x\), 例如:

\[P(X=k) = e^{-\lambda}\frac{\lambda^{k}}{k!} \]

连续变量:

\[P(X < x) = \int_{-\infty}^{x}\frac{1}{\sqrt{2\pi}}e^{-\frac{t^2}{2}}dt \]

条件概率:

  • 离散

\[P(X=x|Y=y) = \frac{P(X=x, Y=y)}{P(Y=y)} \]

  • 连续

\[P(X=x|Y=y) =\int_{-\infty}^{x} \frac{f(x, y)}{f(y)}dy \]

下面以一个温度例子来学习贝叶斯滤波

首先,给出先验概率分布:此处以一个离散变量表示,如果是连续变量,那么需要给出概率密度函数。

\[\begin{cases} P(T=10)=0.8\\ P(T=11)=0.2 \end{cases} \]

其次,给出温度计的测量温度\(T_m\)(m:measure,测量的意思)。问题来了,既然有了温度计的值了,还要贝叶斯干什么,还整这么复杂干什么?问题在于,任何传感器都是有误差的。温度计测量到的温度,不一定是准确的。假设$T_m = 10.3 $

最后,使用贝叶斯公式,求得后验概率分布

\[P(T=10|T_m=10.3)=\frac{P(T_m=10.3|T=10)P(T=10)}{P(T_m=10.3)} \]

\[P(T=11|T_m=10.3)=\frac{P(T_m=10.3|T=11)P(T=11)}{P(T_m=10.3)} \]

其中:

  • \(P(T=10|T_m=10.3)\)就是后验概率
  • \(P(T_m=10.3)\)就是先验概率
  • \(P(T_m=10.3|T=10)\)就是似然概率

似然概率:代表观测的准确度

\(P(T_m=10.3|T=10)\)当真实温度为10的时候,温度计测的温度为10.3的概率,代表传感器的精度。

问题来了,先验概率分布需要给出所有可能的分布,概率和必须为1。那么似然概率需不需要写成一个概率分布,概率和为1呢?答案是不需要的。\(P(T_m=10.3|T=10)\)与\(P(T_m=10.3|T=11)\)是对两个不同的真实值下的测量概率,可以说是两个随机试验,他们两个的概率没有任何关系。似然概率是用来衡量传感器的不确定性的,不确定性不受测量的真实值的影响的。比如传感器的精度是±1,那么测量一个冰水与沸水,传感器的误差都是±1,它是传感器本身的性质。

后验概率的概率和为1。

那么还有一个概率,\(P(T_m=10.3)\)是什么呢?

很多教材里面,直接说\(P(T_m=10.3)\)与T无关,所以\(P(T=10|T_m=10.3) = \eta P(T_m=10.3|T=10)P(T=10)\)

那么,为什么\(P(T_m=10.3)\)与T无关呢?很多人都会有一个困惑,\(T_m = 10.3\)是一个已经发生的事件,所以\(P(T_m=10.3)=1\)。这就是搞混了随机变量的取值与随机变量的概率,这两者是完全不同的概念。比如抛硬币,一次随机试验中发生了正面朝上,那么正面朝上的概率依然是0.5,本次结果为正面朝上并不影响正面朝上的概率。\(T_m=10.3\)只是一次随机试验的结果而已,不能只看到一次结果,就把这个事件发生的概率定为1。随机试验的结果不影响分布律。

根据全概率公式:

\[P(T_m=10.3)=P(T_m=10.3|T=10)P(T=10)+P(T_m=10.3|T=11)P(T=11) \]

可以看到,\(P(T_m=10.3)\)与T有关的,那为什么很多教材上说\(P(T_m=10.3)\)与T无关呢?因为**\(P(T_m=10.3)\)**与T的取值无关,与T的分布律是有关的。

在上面的公式中可以看到,\(P(T_m=10.3|T=10)\)是似然概率,\(P(T=10)\)是先验概率。而似然概率是传感器本身的性质,因此在某种长度上,也可以说**\(P(T_m=10.3)\)**与T的取值无关。

继续进行计算:

\[P(T=10|T_m=10.3)=\frac{P(T_m=10.3|T=10)P(T=10)}{P(T_m=10.3)}=\eta P(T_m=10.3|T=10)P(T=10) \]

\[P(T=11|T_m=10.3)=\frac{P(T_m=10.3|T=11)P(T=11)}{P(T_m=10.3)}=\eta P(T_m=10.3|T=11)P(T=11) \]

可以近似于:

\[后验概率=\eta×似然概率×先验概率 \]

那么\(\eta\)怎么计算呢?其实很简单,因为所有的后验概率相加为1,所以

\[\sum 后验概率 = \eta \sum 似然概率 × 先验概率 \]

\[\eta = \frac{1}{ \sum 似然概率 × 先验概率} \]

为什么叫似然概率呢?

似然:likelihood,可能性。源于最大似然估计。他表示那个原因最有可能导致了结果。

比如A班有99男1女,B班有1男99女。那么随机数抽取一个班,再随机抽一个人进行观测,结果是女,那么最有可能是从B班抽出来的。

\[P(状态|观测)=\eta P(观测|状态)P(状态) \]

状态为因,观测为果。后验概率为由果推因,似然概率是由因推果

如果两个随机变量存在一定的函数关系,他们是不是一定不独立?
答:不一定。

等价命题:如果两个随机变量相互独立,他们是不是一定没有函数关系?
答:不一定。

独立未必没有函数关系,虽然听起来匪夷所思,但这是事实。

举个例子,一个必然事件,\(Y = X+1\),\(P(X=1)=1\),\(P(Y=2)=1\),\(P(X=1, Y=2)=1\),两者有函数关系,但是他们是独立的。

这个例子看起来没有太多说服力,那么说一个非必然事件的例子

设有一个正态概率分布\(N(\mu, \sigma^2)\),\((\mu, \sigma)\)未知,从此分布中,抽取\(n\)个独立的样本,\(X_1, X_2,X_3,...,X_n\)独立同分布,则下面两个随机变量相互独立。

\[\overline{X}=\frac{X_1+X_2+...+X_n}{n} \]

\[S^2 = \frac{1}{n}\sum_{i=1}^{n}(X_i - \overline X)^2 \]

均值和方差相互独立只有再正态分布中才有。显然,他们两个是存在函数关系的。

关于样本均值与样本方差的独立性证明,可以参考这个视频

标签:似然,10,10.3,概率,frac,--,卡尔曼滤波,随机,三大
From: https://www.cnblogs.com/chenxyy/p/17142440.html

相关文章

  • 分支定界法(不是分支限界法)
    运筹我们最先接触分支定界算法,也就是由LandDoig和Dakin在20实世纪60年代初提出的branchandbound算法,用在整数规划(全部决策变量是整数)中。其实用在混合整数规划(部分决策......
  • 反射概述
    反射概述及动态代理Author:MsuenbDate:2023-02-21Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于ReflectionAPI取得任何类的内部信息,并能......
  • 2023年2月21日(软件工程日报)
    今天进行Androidstudio的初步使用,首先新建一个空文件  此处可以转换文件展示样式  此处为基本的文件  运行调试需要虚拟机或者直接连接手机手机需打开......
  • Linux学习-DAY11
    7.2LVM逻辑卷管理器LVM是Linux系统用于对硬盘分区进行管理的一种机制,理论性较强,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对传统的硬盘分区进......
  • 10分钟学会使用 Loki 日志聚合系统
    Loki是一个由GrafanaLabs开发的开源日志聚合系统,旨在为云原生架构提供高效的日志处理解决方案。Loki通过使用类似Prometheus的标签索引机制来存储和查询日志数据,这使......
  • 前后端分离项目解决跨域的终极方法
    目录前后端分离项目解决跨域的终极方法一、在终端下载模块二、在配置文件注册APP三、中间件添加该配置四、在配置文件里添加以下配置前后端分离项目解决跨域的终极方法前......
  • Django学习笔记记录(整理了B站武老师的讲课课件,供大家学习)
    day1、初识DjangoPython知识点:函数、面向对象。前端开发:HTML、CSS、JavaScript、jQuery、BootStrap。MySQL数据库。Python的Web框架:Flask,自身短小精悍+第三方组......
  • 银白色有色金属,熔点低,质地软,密度小,强度高。单质空气中形成致密氧化膜:\(4Al+3O_2=2Al_2O_3\)与酸\(2Al+6H^+=2Al^{3+}+3H_2\uparrow\)与碱铝和水反应生成氢氧化......
  • [Java基础]自动装箱与自动拆箱--为什么整型比较必须用equals?
    偶然在项目里看到了下面这行代码,大家觉得这个if判断会存在什么问题吗?if(129==StatusEnum.OK.getCode()){//其中OK是Integercode=129System.out.println("ok");......
  • PAT Basic 1002. 写出这个数
    PATBasic1002.写出这个数1.题目描述:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。2.输入格式:每个测试输入包含1个测试用例,即给出自然数......