粒子滤波-从重要性到序列重要性再到序列重要性重采样

  • 时间:
  • 浏览:
  • 来源:互联网

Basic Monte Carlo Sampling

Fig 1

应用场所

粒子滤波:针对非线性、非高斯分布的模型,用采到的样本表示概率分布(target PDF),求解 p ( z t ∣ x 1 : t ) p(z_t | x_{1:t}) p(ztx1:t)(根据1到t时刻的观测变量x求解t时刻隐变量z)

重要性采样(IS)

  • 目标:计算服从于target PDF分布的函数 f ( z ) f(z) f(z)的期望,通过应用Monte Carlo方法在概率分布中抽取N个样本,则
    p ( y ) = E [ f ( z ) ] ≈ 1 N ∑ i = 1 N f ( z i ) p(\mathbf{y})=E[f(z)] \approx\frac{1}{N}\sum_{i=1}^{N}f(z_i) p(y)=E[f(z)]N1i=1Nf(zi)
    但如果概率分布比较复杂,则可以通过q(z)(proposal distribution)作为桥梁(importance sampling):
    E [ f ( z ) ] = ∫ z f ( z ) p ( z ) d z = ∫ z f ( x ) p ( z ) q ( z ) d z = ∑ i = 1 N f ( z i ) p ( z i ) q ( z i ) E[f(z)] = \int_zf(z)p(z)dz = \int_zf(x)\frac{p(z)}{q(z)}dz = \sum_{i=1}^Nf(z_i)\frac{p(z_i)}{q(z_i)} E[f(z)]=zf(z)p(z)dz=zf(x)q(z)p(z)dz=i=1Nf(zi)q(zi)p(zi)
    直接采样,然后对每个样本应用权重得到期望的近似估计,最后进行权重归一化。

  • 在滤波问题求解 p ( z t ∣ x 1 : t ) p(z_t | x_{1:t}) p(ztx1:t)时,权重表达式:
    w t i = p ( z t i ∣ x 1 : t ) q ( z t i ∣ x 1 : t ) w_t^i = \frac{p(z_{t}^i | x_{1:t})}{q(z_{t}^i| x_{1:t})} wti=q(ztix1:t)p(ztix1:t)

  • 例子
    在这里插入图片描述
    先从q分布得到L个样本 y ~ ( ℓ ) \tilde{\mathbf{y}}^{(\ell)} y~(),然后计算权重 w ( ℓ ) w^{(\ell)} w(),最后进行权重归一化得到每个样本对应的权重 w ~ ( ℓ ) \tilde{w}^{(\ell)} w~()

序列重要性采样(SIS)

  • 求解 p ( z 1 : t ∣ x 1 : t ) p(z_{1:t} | x_{1:t}) p(z1:tx1:t)
    w t i ∝ p ( z 1 : t ∣ x 1 : t ) q ( z 1 : t ∣ x 1 : t ) w_t^i \propto \frac{p(z_{1:t} | x_{1:t})}{q(z_{1:t}| x_{1:t})} wtiq(z1:tx1:t)p(z1:tx1:t)

p ( z 1 : t ∣ x 1 : t ) ∝ p ( x 1 : t , z 1 : t ) = p ( x t ∣ z 1 : t , x 1 : t − 1 ) p ( z 1 : t , x 1 : t − 1 ) = p ( x t ∣ z t ) p ( z t ∣ z 1 : t − 1 , x 1 : t − 1 ) p ( z 1 : t − 1 , x 1 : t − 1 ) = p ( x t ∣ z t ) p ( z t ∣ z t − 1 ) p ( z 1 : t − 1 , x 1 : t − 1 ) ∝ p ( x t ∣ z t ) p ( z t ∣ z t − 1 ) p ( z 1 : t − 1 ∣ x 1 : t − 1 ) p(z_{1:t} | x_{1:t}) \propto p(x_{1:t}, z_{1:t}) =p(x_t |z_{1:t},x_{1:t-1})p(z_{1:t}, x_{1:t-1}) \\=p(x_t | z_t)p(z_t|z_{1:t-1},x_{1:t-1})p(z_{1:t-1},x_{1:t-1}) \\=p(x_t | z_t)p(z_t|z_{t-1})p(z_{1:t-1},x_{1:t-1}) \\ \propto p(x_t | z_t)p(z_t|z_{t-1})p(z_{1:t-1}|x_{1:t-1}) p(z1:tx1:t)p(x1:t,z1:t)=p(xtz1:t,x1:t1)p(z1:t,x1:t1)=p(xtzt)p(ztz1:t1,x1:t1)p(z1:t1,x1:t1)=p(xtzt)p(ztzt1)p(z1:t1,x1:t1)p(xtzt)p(ztzt1)p(z1:t1x1:t1)

指定 q ( z 1 : t ∣ x 1 : t ) = q ( z t ∣ z 1 : t − 1 , x 1 : t ) q ( z 1 : t − 1 ∣ x 1 : t − 1 ) q(z_{1:t}| x_{1:t})=q(z_{t}|z_{1:t-1}, x_{1:t})q(z_{1:t-1}|x_{1:t-1}) q(z1:tx1:t)=q(ztz1:t1,x1:t)q(z1:t1x1:t1)
得到:
w t i ∝ p ( z 1 : t ∣ x 1 : t ) q ( z 1 : t ∣ x 1 : t ) ∝ p ( x t ∣ z t ) p ( z t ∣ z t − 1 ) p ( z 1 : t − 1 ∣ x 1 : t − 1 ) q ( z t ∣ z 1 : t − 1 x 1 : t ) q ( z 1 : t − 1 ∣ x 1 : t − 1 ) = p ( x t ∣ z t ) p ( z t ∣ z t − 1 ) q ( z t ∣ z 1 : t − 1 x 1 : t ) w t − 1 i w_t^i \propto \frac{p(z_{1:t} | x_{1:t})}{q(z_{1:t}| x_{1:t})} \propto \frac{p(x_t | z_t)p(z_t|z_{t-1})p(z_{1:t-1}|x_{1:t-1})}{q(z_{t}|z_{1:t-1} x_{1:t})q(z_{1:t-1}|x_{1:t-1})} = \frac{p(x_t | z_t)p(z_t|z_{t-1})}{q(z_{t}|z_{1:t-1} x_{1:t})} w_{t-1}^i wtiq(z1:tx1:t)p(z1:tx1:t)q(ztz1:t1x1:t)q(z1:t1x1:t1)p(xtzt)p(ztzt1)p(z1:t1x1:t1)=q(ztz1:t1x1:t)p(xtzt)p(ztzt1)wt1i

  • 在t-1时刻采样并计算权重
  • t时刻根据 q ( z t ∣ z 1 : t − 1 x 1 : t ) q(z_{t}|z_{1:t-1} x_{1:t}) q(ztz1:t1x1:t)采样得到N个样本 z t i z_t^i zti,并计算得到N个权重
  • 权重归一化

SIS 存在的问题及改善(SMC)

  • 问题:权重退化
    一段时间后,大部分样本的权重会逼近0
    -解决方法:
    重采样(Sequential Monte Carlo(SMC): Sequential importance resampling(SIR) or
    Sequential importance sampling and resampling(SIS/R)):
    思路是将权重作为概率分布,得到累计概率密度函数(CDF),然后在CDF上取点。

本文链接http://www.dzjqx.cn/news/show-617302.html