今天有些知识点忘记了,特地过来回顾一下,于是就做了这些笔记。
为了方便能够在手机上更直观的看笔记,写下这篇文章,有错误请各位大佬指出。
一、 概率基础概念
1.1. 概率密度函数(PDF)
概率密度函数用于描述连续随机变量在某一取值处的概率密度。在SLAM算法中,用于表示测量噪声和状态估计的不确定性。
- 概率密度的直观解释:在某个特定值x处的概率密度值 f(x)越大,意味着X在x附近取值的可能性越大。
- 定义:若X是一个连续随机变量,其概率密度函数为f(x),则在区间[a, b]内,X取值落在[a, b]的概率为:
P ( a ≤ X ≤ b ) = ∫ a b f ( x ) d x P(a \leq X \leq b) = \int_a^b f(x) \, dx P(a≤X≤b)=∫abf(x)dx
1.2. 条件概率
条件概率描述事件A在事件B已经发生的条件下发生的概率,记为P(A|B)。联合概率表示两个事件共同发生的概率。A与B的联合概率表示为P(A∩B)或者P(A,B)或者P(AB)。
- 定义:
P ( A ∣ B ) = P ( A ∩ B ) P ( B ) P(A|B) = \frac{P(A \cap B)}{P(B)} P(A∣B)=P(B)P(A∩B)
,前提是P(B) > 0。
1.3. 全概率公式
全概率公式用于计算一个事件的总概率。
- 定义:如果事件B1, B2, …, Bn构成一个完备事件组(即这些事件两两互斥且它们的并集是全集),那么对于任意事件A,有:
P ( A ) = ∑ i = 1 n P ( A ∣ B i ) P ( B i ) P(A)=\sum_{i=1}^{n} P(A|B_i) P(B_i) P(A)=i=1∑nP(A∣Bi)P(Bi)
1.4. 贝叶斯公式
贝叶斯公式用于计算条件概率,特别是在SLAM中用于更新机器人状态的概率分布。
-
定义:
P ( A ∣ B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B) = \frac{P(B|A) P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)P(A)
其中:- P(A|B)是在事件 B已发生的条件下,事件 A发生的条件概率,称为后验概率。
- P(B|A)是在事件 A已发生的条件下,事件 B 发生的条件概率,称为似然。
- P(A)是事件 A发生的概率,称为先验概率(边缘概率),后验概率=先验概率*似然度
- P(B)是事件 B发生的概率,称为边际概率。
- P(B|A)/P(B),称为似然度
-
贝叶斯法则的直观理解
贝叶斯法则告诉我们如何根据新的证据 B 更新对事件 A发生概率的信念。可以把它看作一个更新过程:
- 先验概率 P(A)是在没有任何额外信息时,对事件 A 的初始信念。
- 似然 P(B|A)是在事件 A 发生的条件下,观察到证据 B 的可能性。
- 边际概率 P(B)是证据 B 发生的总概率,可以通过所有可能导致 B 发生的事件求和得到。
- 后验概率P(A|B)是在观察到证据 B 后,对事件 A 的更新信念。
二、 随机变量与分布
2.1. 离散和连续随机变量
- 离散随机变量:取值为有限或可数的集合,例如抛硬币的结果。
- 连续随机变量:取值为一个区间,例如测量长度。
2.2. 常见分布
-
均匀分布
-
定义:
-
离散均匀分布:一个离散随机变量X在有限个可能值上均匀分布。
- 例子:掷一个公平的骰子,X的可能取值为1到6,每个值的概率均为 1/6。
-
连续均匀分布:一个连续随机变量X在区间 [a,b]上均匀分布。
- PDF:
f ( x ) = 1 b − a f(x) = \frac{1}{b - a} f(x)=b−a1
对于 x在[a,b] 范围内。
- 例子:在一个长度为L的杆上随机选择一点,选择点的位置均匀分布在 [0,L] 上。
-
-
应用:
- 均匀分布常用于表示完全未知或没有偏好的情况,例如传感器数据初始化时假设在某个范围内均匀分布。
-
-
指数分布
-
定义
-
指数分布是连续概率分布,用于描述某个事件发生的时间间隔。
-
PDF:
f ( x ) = λ e − λ x f(x) = \lambda e^{-\lambda x} f(x)=λe−λx
对于 x≥0. -
参数 λ是速率参数,其倒数 1/λ 是平均时间间隔。
-
-
-
应用
指数分布常用于建模事件之间的时间间隔,例如传感器数据的到达时间间隔,或机器人在环境中移动的步长。
-
-
泊松分布
-
定义
-
泊松分布描述在固定时间间隔内事件发生的次数。
-
PMF:
P ( X = k ) = λ k e − λ k ! P(X = k) = \frac{\lambda^k e^{-\lambda}}{k!} P(X=k)=k!λke−λ
对于 k=0,1,2,…。 -
参数 λ是给定时间间隔内期望的事件发生次数。
-
-
-
应用
泊松分布常用于建模在单位时间内或单位空间内事件的发生次数,例如在某段时间内传感器检测到障碍物的次数。
-
-
二项分布
-
定义
-
二项分布描述n次独立试验中成功的次数。
-
PMF:
P ( X = k ) = ( n k ) p k ( 1 − p ) n − k P(X = k) = \binom{n}{k} p^k (1-p)^{n-k} P(X=k)=(kn)pk(1−p)n−k
对于 k=0,1,2,…,n。 -
参数 n是试验次数,p 是每次试验成功的概率。
-
-
-
应用
二项分布常用于建模一系列独立试验的结果,例如机器人传感器在多次测量中检测到目标的次数。
-
-
伽马分布
-
定义
-
伽玛分布是指数分布的广义形式,用于描述多个事件发生的时间。
-
PDF:
f ( x ) = β α x α − 1 e − β x Γ ( α ) f(x) = \frac{\beta^\alpha x^{\alpha-1} e^{-\beta x}}{\Gamma(\alpha)} f(x)=Γ(α)βαxα−1e−βx
对于 x≥0。 -
参数 α和 β是形状参数和速率参数,Γ(α) 是伽玛函数。
-
-
-
应用
伽玛分布用于描述多个独立事件发生的时间总和,例如机器人在多个任务中的总时间。
-
-
高斯分布(正态分布):在SLAM中广泛应用,描述测量噪声和状态估计。
-
概率密度函数PDF:对于均值为μ,方差为σ²的高斯分布,概率密度函数为:
f ( x ) = 1 2 π σ 2 exp ( − ( x − μ ) 2 2 σ 2 ) f(x) = \frac{1}{\sqrt{2 \pi \sigma^2}} \exp\left(-\frac{(x - \mu)^2}{2 \sigma^2}\right) f(x)=2πσ21exp(−2σ2(x−μ)2)-
这个函数在均值 μ附近达到最大值,表示随机变量X在均值附近取值的概率密度最大。
-
随着离均值越远,概率密度函数值逐渐减小,表示取这些值的可能性降低。
-
-
在SLAM算法中,概率密度函数常用于表示测量噪声和机器人位置的不确定性。
-
通过高斯分布等概率密度函数,可以对测量数据进行建模,从而在同时定位与地图构建过程中进行状态估计。
-
-
多项式分布:用于描述多种可能结果中的一种出现的概率。
三、 协方差矩阵
3.1 协方差
-
方差
方差能比较好的表达一组数据离散的程度,方差大,这组数据分散的就比较大;方差小,这组数据分散的就比较小。
方差(variance)的表达公式为:
方差是协方差的特殊表现形式,即X=Y的时候。
-
什么是协方差
协方差是一个用来衡量两个随机变量之间线性关系的统计量。它反映了这两个变量如何一起变化。如果两个变量的变化趋势一致(即一个变量增加,另一个变量也增加,或一个变量减少,另一个变量也减少),它们的协方差为正;如果一个变量增加而另一个变量减少,它们的协方差为负;如果两个变量之间没有明显的线性关系,它们的协方差接近零。
-
协方差的定义
对于两个随机变量 X 和 Y,它们的协方差定义为:
C o v ( X , Y ) = E [ ( X − E [ X ] ) ( Y − E [ Y ] ) ] Cov(X,Y)=E[(X−E[X])(Y−E[Y])] Cov(X,Y)=E[(X−E[X])(Y−E[Y])]
其中:-
E[X]和 E[Y]分别是随机变量 X和 Y的期望(即均值)。
-
(X−E[X])和 (Y−E[Y])分别是随机变量 X和 Y的偏差。
-
-
如果我们有 n对样本数据 (x1,y1),(x2,y2),…,(xn,yn),它们的协方差可以通过以下公式计算:
C o v ( X , Y ) = 1 n ∑ i = 1 n ( x i − x ˉ ) ( y i − y ˉ ) Cov(X,Y)= \frac{1}{n} \sum_{i=1}^n (x_i - \bar{x})(y_i - \bar{y}) Cov(X,Y)=n1i=1∑n(xi−xˉ)(yi−yˉ)$$
其中:\bar{x}和\bar{y}分别是样本数据 X 和 Y 的均值。方差是协方差的特殊表现形式,即X=Y的时候。
$$
3.2 协方差矩阵
当我们有多个(不止两个)随机变量时,我们可以计算每一对变量之间的协方差,结果可以组织成一个矩阵,这就是协方差矩阵。
假设我们有三个随机变量 X,Y,Z,它们的协方差矩阵 Σ可以表示为:
Σ = [ V a r ( X ) C o v ( X , Y ) C o v ( X , Z ) C o v ( Y , X ) V a r ( Y ) C o v ( Y , Z ) C o v ( Z , X ) C o v ( Z , Y ) V a r ( Z ) ] \Sigma = \begin{bmatrix} \mathrm{Var}(X) & \mathrm{Cov}(X, Y) & \mathrm{Cov}(X, Z) \\ \mathrm{Cov}(Y, X) & \mathrm{Var}(Y) & \mathrm{Cov}(Y, Z) \\ \mathrm{Cov}(Z, X) & \mathrm{Cov}(Z, Y) & \mathrm{Var}(Z) \end{bmatrix} Σ= Var(X)Cov(Y,X)Cov(Z,X)Cov(X,Y)Var(Y)Cov(Z,Y)Cov(X,Z)Cov(Y,Z)Var(Z)
对角线上的元素是每个变量的方差。非对角线上的元素是不同变量之间的协方差**。
-
协方差矩阵的定义
假设我们有一个n维随机向量
X = [ X 1 , X 2 , … , X n ] T \mathbf{X} = [X_1, X_2, \ldots, X_n]^T X=[X1,X2,…,Xn]T
其均值向量为
μ = [ μ 1 , μ 2 , … , μ n ] T \mathbf{\mu} = [\mu_1, \mu_2, \ldots, \mu_n]^T μ=[μ1,μ2,…,μn]T
协方差矩阵 Σ定义为:
Σ = C o v ( X ) = E [ ( X − μ ) ( X − μ ) T ] \Sigma = \mathrm{Cov}(\mathbf{X}) = E[(\mathbf{X} - \mathbf{\mu})(\mathbf{X} - \mathbf{\mu})^T] Σ=Cov(X)=E[(X−μ)(X−μ)T]
其中 E[⋅]表示期望(平均值)操作,(X−μ)是随机向量 X与其均值向量 μ 之差。 -
协方差矩阵的元素
协方差矩阵的元素 Σij表示随机变量 Xi 和 Xj 的协方差:
Σ i j = C o v ( X i , X j ) = E [ ( X i − μ i ) ( X j − μ j ) ] \Sigma_{ij} = \mathrm{Cov}(X_i, X_j) = E[(X_i - \mu_i)(X_j - \mu_j)] Σij=Cov(Xi,Xj)=E[(Xi−μi)(Xj−μj)]
其中:当 i=j时,
Σ i i = V a r ( X i ) \Sigma_{ii} = \mathrm{Var}(X_i) Σii=Var(Xi)
表示随机变量 Xi 的方差。当 i≠j时,
Σ i j = C o v ( X i , X j ) \Sigma_{ij} = \mathrm{Cov}(X_i, X_j) Σij=Cov(Xi,Xj)
表示随机变量 Xi和 Xj的协方差。
四、最大似然估计(MLE)
最大似然估计(Maximum Likelihood Estimation, MLE)是一种统计方法,用于估计模型参数,使得观察到的数据在给定模型下的似然最大化。简而言之,它的目标是找到使得观察数据最有可能出现的参数值。
-
定义
在统计建模中,我们通常有一个参数化的概率模型 P(X|θ),其中 X是我们观察到的数据,θ是模型的参数。最大似然估计的目标是找到参数 θ 的值,使得在这个参数值下,观察到的数据的概率(或似然)最大。
4.1 似然函数
似然函数 L(θ) 是给定数据 X 和参数 θ 时,数据出现的概率。
对于独立同分布的数据点 x1,x2,…,xn,似然函数定义为:
L ( θ ) = P ( X = x 1 , x 2 , … , x n ∣ θ ) = ∏ i = 1 n P ( x i ∣ θ ) L(\theta) = P(X = x_1, x_2, \ldots, x_n | \theta) = \prod_{i=1}^n P(x_i | \theta) L(θ)=P(X=x1,x2,…,xn∣θ)=i=1∏nP(xi∣θ)
最大似然估计的目标是找到使得似然函数最大的参数 θ:
θ ^ = arg max θ L ( θ ) \hat{\theta} = \arg\max_{\theta} L(\theta) θ^=argθmaxL(θ)
由于似然函数通常涉及乘法,为了简化计算,我们通常使用对数似然函数,它的形式是对似然函数取对数:
ℓ ( θ ) = log L ( θ ) = log ( ∏ i = 1 n P ( x i ∣ θ ) ) = ∑ i = 1 n log P ( x i ∣ θ ) \ell(\theta) = \log L(\theta) = \log \left( \prod_{i=1}^n P(x_i | \theta) \right) = \sum_{i=1}^n \log P(x_i | \theta) ℓ(θ)=logL(θ)=log(i=1∏nP(xi∣θ))=i=1∑nlogP(xi∣θ)
因此,最大似然估计可以转化为:
θ ^ = arg max θ ℓ ( θ ) \hat{\theta} = \arg\max_{\theta} \ell(\theta) θ^=argθmaxℓ(θ)
4.2最大似然估计的步骤
1.定义似然函数:根据数据和模型,写出似然函数 L(θ)。
2.对数化似然函数:计算对数似然函数 ℓ(θ)。
3.求解最优参数:对对数似然函数进行优化,找到参数 θ的最大值。
4.3 举例说明
假设我们有一组独立的观测数据 x1,x2,…,xn,它们服从正态分布 N(μ,σ2),其中 μ和 σ2 是未知参数。我们的目标是估计这两个参数。
- 似然函数
正态分布的概率密度函数是:
P ( x i ∣ μ , σ 2 ) = 1 2 π σ 2 exp ( − ( x i − μ ) 2 2 σ 2 ) P(x_i | \mu, \sigma^2) = \frac{1}{\sqrt{2 \pi \sigma^2}} \exp \left( -\frac{(x_i - \mu)^2}{2 \sigma^2} \right) P(xi∣μ,σ2)=2πσ21exp(−2σ2(xi−μ)2)
因此,似然函数是:
L ( μ , σ 2 ) = ∏ i = 1 n 1 2 π σ 2 exp ( − ( x i − μ ) 2 2 σ 2 ) L(\mu, \sigma^2) = \prod_{i=1}^n \frac{1}{\sqrt{2 \pi \sigma^2}} \exp \left( -\frac{(x_i - \mu)^2}{2 \sigma^2} \right) L(μ,σ2)=i=1∏n2πσ21exp(−2σ2(xi−μ)2)
- 对数化似然函数
对数似然函数为:
ℓ ( μ , σ 2 ) = log L ( μ , σ 2 ) = − n 2 log ( 2 π σ 2 ) − 1 2 σ 2 ∑ i = 1 n ( x i − μ ) 2 \ell(\mu, \sigma^2) = \log L(\mu, \sigma^2) = -\frac{n}{2} \log (2 \pi \sigma^2) - \frac{1}{2 \sigma^2} \sum_{i=1}^n (x_i - \mu)^2 ℓ(μ,σ2)=logL(μ,σ2)=−2nlog(2πσ2)−2σ21i=1∑n(xi−μ)2
- 求解最优参数
对 μ和 σ2 分别进行优化,求出使对数似然函数最大化的 μ 和 σ2 的值。这可以通过设置对数似然函数的偏导数为零并求解得到。
五、最小二乘估计(LSE)
最小二乘估计(Least Squares Estimation, LSE)是一种用于数据拟合和参数估计的方法,广泛应用于回归分析中。它的目标是找到一组参数,使得模型预测值与实际观测值之间的差异平方和最小化。
-
定义
在回归分析中,我们通常有一组观测数据点 (x1,y1),(x2,y2),…,(xn,yn),希望找到一个模型 f(x) 来拟合这些数据。最小二乘估计通过最小化预测值 f(xi)与实际观测值 yi之间的差异平方和来确定模型参数。
对于线性回归模型 y=β0+β1x,其中 β0和 β1 是需要估计的参数,最小二乘估计的目标是找到 β0 和 β1 使得以下目标函数最小化:
SSE = ∑ i = 1 n ( y i − ( β 0 + β 1 x i ) ) 2 \text{SSE} = \sum_{i=1}^n (y_i - (\beta_0 + \beta_1 x_i))^2 SSE=i=1∑n(yi−(β0+β1xi))2
其中,SSE 表示误差平方和(Sum of Squared Errors)。
5.1 最小二乘估计的步骤
1.定义模型:假设一个模型形式(如线性模型)。
2.构建误差平方和:根据模型和数据,构建误差平方和目标函数。
3.求解最优参数:通过求导并设置导数为零,找到使目标函数最小化的参数。
5.2 线性回归中的最小二乘估计
在线性回归中,模型形式为 y=β0+β1xy = \beta_0 + \beta_1 xy=β0+β1x。我们希望通过最小化误差平方和来找到参数 β0\beta_0β0 和 β1\beta_1β1。
- 1.构建误差平方和
SSE = ∑ i = 1 n ( y i − ( β 0 + β 1 x i ) ) 2 \text{SSE} = \sum_{i=1}^n (y_i - (\beta_0 + \beta_1 x_i))^2 SSE=i=1∑n(yi−(β0+β1xi))2
- 2.求导数并设置为零
对 β0 和 β1分别求偏导数,并设置为零,得到方程组:
∂ SSE ∂ β 0 = − 2 ∑ i = 1 n ( y i − ( β 0 + β 1 x i ) ) = 0 \frac{\partial \text{SSE}}{\partial \beta_0} = -2 \sum_{i=1}^n (y_i - (\beta_0 + \beta_1 x_i)) = 0 ∂β0∂SSE=−2i=1∑n(yi−(β0+β1xi))=0
∂ SSE ∂ β 1 = − 2 ∑ i = 1 n x i ( y i − ( β 0 + β 1 x i ) ) = 0 \frac{\partial \text{SSE}}{\partial \beta_1} = -2 \sum_{i=1}^n x_i (y_i - (\beta_0 + \beta_1 x_i)) = 0 ∂β1∂SSE=−2i=1∑nxi(yi−(β0+β1xi))=0
- 3.解方程组
通过解上述方程组,可以得到参数 β0和 β1的闭式解:
β 1 = n ∑ i = 1 n x i y i − ∑ i = 1 n x i ∑ i = 1 n y i n ∑ i = 1 n x i 2 − ( ∑ i = 1 n x i ) 2 \beta_1 = \frac{n \sum_{i=1}^n x_i y_i - \sum_{i=1}^n x_i \sum_{i=1}^n y_i}{n \sum_{i=1}^n x_i^2 - (\sum_{i=1}^n x_i)^2} β1=n∑i=1nxi2−(∑i=1nxi)2n∑i=1nxiyi−∑i=1nxi∑i=1nyi
β 0 = 1 n ∑ i = 1 n y i − β 1 1 n ∑ i = 1 n x i \beta_0 = \frac{1}{n} \sum_{i=1}^n y_i - \beta_1 \frac{1}{n} \sum_{i=1}^n x_i β0=n1i=1∑nyi−β1n1i=1∑nxi
5.3 举例说明
举例说明
假设我们有以下数据点:
{(1,2),(2,3),(3,5),(4,7)}
我们希望拟合一个线性模型 y=β0+β1x
1.计算数据的均值:
x ˉ = 1 + 2 + 3 + 44 = 2.5 xˉ=1+2+3+44=2.5 xˉ=1+2+3+44=2.5
y ˉ = 2 + 3 + 5 + 74 = 4.25 yˉ=2+3+5+74=4.25 yˉ=2+3+5+74=4.25
2.计算 β1:
β 1 = 4 ( 1 ⋅ 2 + 2 ⋅ 3 + 3 ⋅ 5 + 4 ⋅ 7 ) − ( 1 + 2 + 3 + 4 ) ( 2 + 3 + 5 + 7 ) 4 ( 1 2 + 2 2 + 3 2 + 4 2 ) − ( 1 + 2 + 3 + 4 ) 2 = 4 ( 54 ) − 10 ( 17 ) 4 ( 30 ) − 100 = 1.6 \beta_1 = \frac{4(1 \cdot 2 + 2 \cdot 3 + 3 \cdot 5 + 4 \cdot 7) - (1 + 2 + 3 + 4)(2 + 3 + 5 + 7)}{4(1^2 + 2^2 + 3^2 + 4^2) - (1 + 2 + 3 + 4)^2} = \frac{4(54) - 10(17)}{4(30) - 100} = 1.6 β1=4(12+22+32+42)−(1+2+3+4)24(1⋅2+2⋅3+3⋅5+4⋅7)−(1+2+3+4)(2+3+5+7)=4(30)−1004(54)−10(17)=1.6
3.计算 β0:
β 0 = y ˉ − β 1 x ˉ = 4.25 − 1.6 ⋅ 2.5 = 0.25 \beta_0 = \bar{y} - \beta_1 \bar{x} = 4.25 - 1.6 \cdot 2.5 = 0.25 β0=yˉ−β1xˉ=4.25−1.6⋅2.5=0.25
因此,拟合的线性模型为:
y=0.25+1.6x