|
| 1 | +# 线性动态系统 |
| 2 | + |
| 3 | +HMM 模型适用于隐变量是离散的值的时候,对于连续隐变量的 HMM,常用线性动态系统描述线性高斯模型的态变量,使用粒子滤波来表述非高斯非线性的态变量。 |
| 4 | + |
| 5 | +LDS 又叫卡尔曼滤波,其中,线性体现在上一时刻和这一时刻的隐变量以及隐变量和观测之间: |
| 6 | +$$ |
| 7 | +\begin{align} |
| 8 | +z_t&=A\cdot z_{t-1}+B+\varepsilon\\ |
| 9 | +x_t&=C\cdot z_t+D+\delta\\ |
| 10 | +\varepsilon&\sim\mathcal{N}(0,Q)\\ |
| 11 | +\delta&\sim\mathcal{N}(0,R) |
| 12 | +\end{align} |
| 13 | +$$ |
| 14 | +类比 HMM 中的几个参数: |
| 15 | +$$ |
| 16 | +\begin{align} |
| 17 | +p(z_t|z_{t-1})&\sim\mathcal{N}(A\cdot z_{t-1}+B,Q)\\ |
| 18 | +p(x_t|z_t)&\sim\mathcal{N}(C\cdot z_t+D,R)\\ |
| 19 | +z_1&\sim\mathcal{N}(\mu_1,\Sigma_1) |
| 20 | +\end{align} |
| 21 | +$$ |
| 22 | +在含时的概率图中,除了对参数估计的学习问题外,在推断任务中,包括译码,证据概率,滤波,平滑,预测问题,LDS 更关心滤波这个问题:$p(z_t|x_1,x_2,\cdots,x_t)$。类似 HMM 中的前向算法,我们需要找到一个递推关系。 |
| 23 | +$$ |
| 24 | +p(z_t|x_{1:t})=p(x_{1:t},z_t)/p(x_{1:t})=Cp(x_{1:t},z_t) |
| 25 | +$$ |
| 26 | +对于 $p(x_{1:t},z_t)$: |
| 27 | +$$ |
| 28 | +\begin{align}p(x_{1:t},z_t)&=p(x_t|x_{1:t-1},z_t)p(x_{1:t-1},z_t)=p(x_t|z_t)p(x_{1:t-1},z_t)\nonumber\\ |
| 29 | +&=p(x_t|z_t)p(z_t|x_{1:t-1})p(x_{1:t-1})=Cp(x_t|z_t)p(z_t|x_{1:t-1})\\ |
| 30 | +\end{align} |
| 31 | +$$ |
| 32 | +我们看到,右边除了只和观测相关的常数项,还有一项是预测任务需要的概率。对这个值: |
| 33 | +$$ |
| 34 | +\begin{align} |
| 35 | +p(z_t|x_{1:t-1})&=\int_{z_{t-1}}p(z_t,z_{t-1}|x_{1:t-1})dz_{t-1}\nonumber\\ |
| 36 | +&=\int_{z_{t-1}}p(z_t|z_{t-1},x_{1:t-1})p(z_{t-1}|x_{1:t-1})dz_{t-1}\nonumber\\ |
| 37 | +&=\int_{z_{t-1}}p(z_t|z_{t-1})p(z_{t-1}|x_{1:t-1})dz_{t-1} |
| 38 | +\end{align} |
| 39 | +$$ |
| 40 | +我们看到,这又化成了一个滤波问题。于是我们得到了一个递推公式: |
| 41 | + |
| 42 | +1. $t=1$,$p(z_1|x_1)$,称为 update 过程,然后计算 $p(z_2|x_1)$,通过上面的积分进行,称为 prediction 过程。 |
| 43 | +2. $t=2$,$p(z_2|x_2,x_1)$ 和 $p(z_3|x_1,x_2)$ |
| 44 | + |
| 45 | +我们看到,这个过程是一个 Online 的过程,对于我们的线性高斯假设,这个计算过程都可以得到解析解。 |
| 46 | + |
| 47 | +1. Prediction: |
| 48 | + $$ |
| 49 | + p(z_t|x_{1:t-1})=\int_{z_{t-1}}p(z_t|z_{t-1})p(z_{t-1}|x_{1:t-1})dz_{t-1}=\int_{z_{t-1}}\mathcal{N}(Az_{t-1}+B,Q)\mathcal{N}(\mu_{t-1},\Sigma_{t-1})dz_{t-1} |
| 50 | + $$ |
| 51 | + 其中第二个高斯分布是上一步的 Update 过程,所以根据线性高斯模型,直接可以写出这个积分: |
| 52 | + $$ |
| 53 | + p(z_t|x_{1:t-1})=\mathcal{N}(A\mu_{t-1}+B,Q+A\Sigma_{t-1}A^T) |
| 54 | + $$ |
| 55 | + |
| 56 | +2. Update: |
| 57 | + $$ |
| 58 | + p(z_t|x_{1:t})\propto p(x_t|z_t)p(z_t|x_{1:t-1}) |
| 59 | + $$ |
| 60 | + 同样利用线性高斯模型,也可以直接写出这个高斯分布。 |
0 commit comments