核心要点

  • 能解释 HMM 五元组:状态、观测、转移、发射、初始分布

  • 熟悉 Viterbi 解码与 Baum-Welch 训练

  • 举出 POS 标注、语音识别等序列标注应用

  • 知道被 CRF、BiLSTM-CRF、Transformer 替代的趋势

标准回答

模型结构:隐状态序列 $S$(不可见)→ 观测序列 $O$(可见)。马尔可夫假设:$P(s_t|s_{1:t-1})=P(s_t|s_{t-1})$。发射假设:$P(o_t|s_{1:t},o_{1:t-1})=P(o_t|s_t)$。

三大经典问题

  1. 评估:Forward 算法算 $P(O|\lambda)$
  2. 解码:Viterbi 求最可能状态序列(如 POS 标签链)
  3. 学习:Baum-Welch(EM)估计转移/发射概率

NLP 应用

  • 词性标注:状态=词性,观测=词
  • 语音识别:状态=音素/HMM 状态,观测=声学特征
  • 简单分词(部分中文方案)

优缺点

  • ✅ 推理快、理论成熟、小数据可用
  • ❌ 观测独立假设过强;难建模长距离依赖;特征工程受限

现代序列标注多用 CRF(全局归一化)或 BiLSTM-CRF / Transformer,但 HMM 仍是理解生成式序列模型的基础。详见 NLP 序列标注

常见误区

⚠️ 常见踩坑

混淆 HMM 与 RNN;说不清隐状态与观测的区别;声称 HMM 是当前 SOTA POS 方案。

追问

追问 1HMM 和 CRF 有何区别?

HMM 是生成式:建模 P(O,S);CRF 是判别式:直接建模 P(S|O),可灵活引入任意特征且全局归一化,避免标签偏见问题。CRF 通常在 POS/NER 上优于 HMM。

追问 2Viterbi 算法时间复杂度?

O(T·N²),T 为序列长度,N 为状态数。每个时刻对每个状态保留最优前驱,比暴力枚举指数级快得多。

追问 3HMM 在语音识别中的角色?

经典 GMM-HMM 用 HMM 建模音素状态转移,GMM 建模发射分布;后被 DNN-HMM、端到端 CTC/Attention 替代,但 HMM 对齐思想仍影响强制对齐工具。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。