基于核的隐马尔可夫模型(Kernel Hidden Markov Model, KHMM)的变分推断与序列分类过程
题目描述
在传统隐马尔可夫模型(HMM)中,观测变量通常被假设服从简单的参数化分布(如高斯分布),这在处理复杂的非线性观测数据时存在局限性。基于核的隐马尔可夫模型(KHMM)通过引入核技巧,将观测数据隐式映射到高维特征空间,使得模型能够捕捉数据中的非线性依赖关系,从而增强对复杂序列数据的建模能力。请你详细讲解KHMM的基本原理,重点阐述如何将核技巧融入HMM的观测模型中,并解释其变分推断(Variational Inference, VI)的参数估计过程,以及如何利用训练好的模型进行序列分类。
解题过程
1. 问题背景与动机
传统的HMM假设观测序列 \(O = \{o_1, o_2, ..., o_T\}\) 由隐状态序列 \(S = \{s_1, s_2, ..., s_T\}\) 生成,且给定隐状态 \(s_t\) 时,观测 \(o_t\) 服从某个参数化分布(如 \(o_t | s_t = i \sim \mathcal{N}(\mu_i, \Sigma_i)\))。这种假设在面对复杂、高维、非高斯分布的观测数据(如图像、语音、生物序列等)时,建模能力不足。
核技巧的引入:核技巧通过一个非线性映射函数 \(\phi: \mathcal{O} \rightarrow \mathcal{H}\),将原始观测空间 \(\mathcal{O}\) 映射到高维(可能无限维)的再生核希尔伯特空间(RKHS)\(\mathcal{H}\),并在 \(\mathcal{H}\) 中构造线性模型。其核心优势在于,我们无需显式地知道 \(\phi\) 的具体形式,只需要定义核函数 \(k(o, o') = \langle \phi(o), \phi(o') \rangle_{\mathcal{H}}\),就能在高维空间中进行内积计算。
KHMM的核心思想:在KHMM中,我们假设在特征空间 \(\mathcal{H}\) 中,给定隐状态 \(s_t = i\),映射后的观测向量 \(\phi(o_t)\) 服从一个参数化的分布(通常是高斯分布)。这样,模型能够利用高维特征空间的线性可分性来描述原始空间中的非线性观测模式。
2. KHMM的生成模型
一个标准的KHMM包含以下要素:
- 隐状态:离散随机变量 \(s_t \in \{1, 2, ..., N\}\),满足马尔可夫性质:\(P(s_t | s_{1:t-1}) = P(s_t | s_{t-1})\)。
- 初始状态分布:\(\pi_i = P(s_1 = i)\)。
- 状态转移矩阵:\(A = [a_{ij}]\),其中 \(a_{ij} = P(s_t = j | s_{t-1} = i)\)。
- 观测模型(在特征空间中):对于隐状态 \(i\),我们假设 \(\phi(o_t) | s_t = i\) 服从高斯分布,其均值为 \(\boldsymbol{\mu}_i \in \mathcal{H}\),协方差为 \(\Sigma_i\)(在 \(\mathcal{H}\) 中)。由于 \(\mathcal{H}\) 可能无限维,我们通常假设协方差具有简单的形式,例如 \(\Sigma_i = \sigma_i^2 I\)(单位矩阵乘以标量方差)。这被称为“核观测模型”。
难点:\(\boldsymbol{\mu}_i\) 位于高维甚至无限维的RKHS中,无法直接参数化。解决方案是使用“表示定理”(Representer Theorem),将 \(\boldsymbol{\mu}_i\) 表示为训练数据映射的线性组合:
\[\boldsymbol{\mu}_i = \sum_{m=1}^{M} \alpha_{im} \phi(o^{(m)}) \]
其中 \(\{o^{(1)}, ..., o^{(M)}\}\) 是某个参考数据集(通常是训练集),\(\alpha_{im}\) 是待学习的系数。这样,我们就用有限维向量 \(\boldsymbol{\alpha}_i = [\alpha_{i1}, ..., \alpha_{iM}]^\top\) 来参数化每个隐状态对应的观测分布均值。
3. 观测概率的计算
给定隐状态 \(s_t = i\),观测 \(o_t\) 的(对数)概率密度在特征空间中计算。利用高斯分布的公式和核技巧,可以推导出:
\[\log P(\phi(o_t) | s_t=i) \propto -\frac{1}{2\sigma_i^2} \left( k(o_t, o_t) - 2 \sum_{m=1}^M \alpha_{im} k(o_t, o^{(m)}) + \sum_{m,n=1}^M \alpha_{im} \alpha_{in} k(o^{(m)}, o^{(n)}) \right) \]
其中 \(k(\cdot, \cdot)\) 是选择的核函数,如高斯核 \(k(o, o') = \exp(-\gamma \|o - o'\|^2)\)。
解释:
- \(k(o_t, o_t)\) 是观测自身的核内积,可以预先计算或视为常数(对于某些核,如高斯核,它是一个常数)。
- \(\sum_{m} \alpha_{im} k(o_t, o^{(m)})\) 是观测 \(o_t\) 与所有参考数据点核函数的加权和,衡量了 \(o_t\) 与隐状态 \(i\) 的典型模式之间的相似性。
- 二次项 \(\sum_{m,n} \alpha_{im} \alpha_{in} k(o^{(m)}, o^{(n)})\) 是常数,与 \(o_t\) 无关,但依赖于参数 \(\boldsymbol{\alpha}_i\)。
因此,观测概率取决于观测与参考数据点的核相似性加权和,权重 \(\boldsymbol{\alpha}_i\) 刻画了隐状态 \(i\) 对应的典型观测模式。
4. 模型参数与变分推断
KHMM的模型参数包括:
- 初始分布参数:\(\boldsymbol{\pi}\)。
- 转移矩阵参数:\(\mathbf{A}\)。
- 观测模型参数:对于每个隐状态 \(i\),有系数向量 \(\boldsymbol{\alpha}_i\) 和方差 \(\sigma_i^2\)(或协方差参数)。
由于模型包含隐变量(状态序列 \(S\))和参数,直接进行最大似然估计是困难的。我们采用变分推断(VI)来近似后验分布并进行参数估计。
变分推断框架:
- 设定变分分布:我们引入一个变分分布 \(q(S, \Theta)\) 来近似真实后验 \(P(S, \Theta | O)\),其中 \(\Theta = \{\boldsymbol{\pi}, \mathbf{A}, \{ \boldsymbol{\alpha}_i, \sigma_i^2 \} \}\)。通常假设变分分布可分解为 \(q(S, \Theta) = q(S) q(\Theta)\)(平均场近似)。
- 优化目标:最大化证据下界(ELBO):
\[ \mathcal{L}(q) = \mathbb{E}_{q(S)q(\Theta)}[\log P(O, S, \Theta)] - \mathbb{E}_{q(S)}[\log q(S)] - \mathbb{E}_{q(\Theta)}[\log q(\Theta)] \]
- 交替优化:
- E步(更新 \(q(S)\)):固定 \(q(\Theta)\),优化 \(q(S)\)。由于 \(S\) 是一个序列,\(q(S)\) 通常取为另一个HMM,其观测概率由当前 \(q(\Theta)\) 的期望给出。可以使用前向-后向算法来计算 \(q(S)\) 的边缘分布 \(\gamma_t(i) = q(s_t = i)\) 和两点分布 \(\xi_t(i, j) = q(s_t=i, s_{t+1}=j)\)。
- M步(更新 \(q(\Theta)\) ):固定 \(q(S)\),优化 \(q(\Theta)\)。假设 \(q(\Theta)\) 进一步分解为各个参数的独立分布(如Dirichlet分布用于 \(\boldsymbol{\pi}\) 和 \(\mathbf{A}\) 的行,高斯分布用于 \(\boldsymbol{\alpha}_i\),Gamma分布用于 \(\sigma_i^{-2}\))。通过最大化ELBO,我们可以得到 \(q(\Theta)\) 各参数分布的超参数更新方程。这些更新方程依赖于从 \(q(S)\) 计算得到的期望统计量(如 \(\mathbb{E}_{q(S)}[\mathbb{I}(s_t=i)] = \gamma_t(i)\))。
关键步骤:在M步中更新观测模型参数 \(\boldsymbol{\alpha}_i\) 和 \(\sigma_i^2\) 时,需要最大化以下期望:
\[\mathbb{E}_{q(S)q(\Theta)} \left[ \sum_{t=1}^T \log P(\phi(o_t) | s_t, \boldsymbol{\alpha}_{s_t}, \sigma_{s_t}^2) \right] \]
代入观测概率的对数形式,这会导致一个关于 \(\boldsymbol{\alpha}_i\) 的二次型优化问题,其解可以通过求解一个线性方程组得到(涉及核矩阵 \(K = [k(o^{(m)}, o^{(n)})]_{m,n}\) 和加权统计量)。\(\sigma_i^2\) 的更新则依赖于残差的期望。
5. 序列分类
训练完成后,我们得到了变分后验 \(q(\Theta)\)。对于一个新的观测序列 \(O^{new} = \{o_1^{new}, ..., o_T^{new}\}\),我们想要预测其类别标签(假设每个类别对应一个KHMM,即“每个类一个HMM”的模式,常用于分类任务)。
分类过程:
- 对于每个类别 \(c\),使用对应的训练好的KHMM(其参数后验为 \(q_c(\Theta)\)),计算新序列的对数边际似然的近似值(即ELBO在训练集上达到的值可作为模型证据的近似,但对于新序列,我们通常计算其“预测概率”的近似)。
- 具体而言,我们可以对 \(q_c(\Theta)\) 采样得到一组参数 \(\Theta^{(l)}\),然后计算在该参数下序列 \(O^{new}\) 的概率 \(P(O^{new} | \Theta^{(l)})\)(通过前向算法)。对多次采样取平均,得到近似的预测概率。
- 选择使近似预测概率最大的类别作为预测结果。
简化方法:在实际中,为了效率,我们通常使用 \(q_c(\Theta)\) 的期望参数(如 \(\mathbb{E}[\boldsymbol{\alpha}_i]\) 和 \(\mathbb{E}[\sigma_i^2]\))作为点估计,然后像标准HMM一样运行前向算法计算 \(P(O^{new} | \hat{\Theta})\)。尽管这不完全是贝叶斯预测,但通常是有效的近似。
总结
基于核的隐马尔可夫模型(KHMM)通过核技巧将非线性观测映射到高维特征空间,并在该空间中用线性高斯模型描述观测分布,从而增强了传统HMM对复杂数据的建模能力。其核心是用参考数据的线性组合来参数化每个隐状态的均值向量。模型的参数学习和推断可以通过变分推断高效实现,将复杂的后验近似分解为隐状态序列和模型参数两部分进行交替优化。最终,训练好的KHMM可以用于序列分类等任务。整个过程的难点在于将核技巧融入概率图模型的框架,并设计有效的变分更新规则。