状态对齐是连接 GMM-HMM 和 DNN-HMM 的核心桥梁

状态对齐是连接 GMM-HMM 和 DNN-HMM 的核心桥梁

先明确两个前提:

  1. 语音是连续的时序信号,会被切分成一帧一帧的特征(比如每 20ms 一帧,对应一个 MFCC 向量)。
  2. HMM 的状态**对应音素的 "发音阶段"------ 比如音素 /a/ 可以拆成 3 个状态:起始→稳态→结束,每个状态对应几帧语音特征。

例子:识别单词 "apple"(简化为音素序列 /æ/ → /p/ → /l/

假设我们已经提取了 "apple" 的语音特征,共 15 帧(每帧对应一个 MFCC 向量)。

1. 没有状态对齐时的问题

DNN 需要知道 "哪几帧对应哪个音素的哪个状态",才能学习 "特征→状态后验概率" 的映射。但直接看 15 帧特征,我们完全不知道:

  • 第 1-5 帧是 /æ/ 的起始 / 稳态 / 结束?
  • 第 6-8 帧是 /p/ 的哪个状态?

这时候 DNN 就是 "无的放矢",没法训练。

2. GMM-HMM 做状态对齐的过程

GMM-HMM 的核心能力,就是通过 EM 算法训练,给每帧特征分配一个明确的 HMM 状态标签 ,这个过程就是状态对齐

步骤拆解:

① 先定义 HMM 结构:每个音素设 3 个状态,单词 "apple" 的音素序列对应 3×3=93\times3=93×3=9 个 HMM 状态,再加上 "开始" 和 "结束" 状态,共 11 个状态。

② 用 GMM-HMM 模型对 15 帧特征进行解码 ,计算 "每帧特征属于每个 HMM 状态的概率"。

③ 找到概率最大的状态路径,完成对齐,最终得到这样的结果:

帧序号 1-3 4-5 6-7 8-9 10-12 13-15
对齐的 HMM 状态 /æ/ 起始 /æ/ 稳态 /æ/ 结束 /p/ 起始 /p/ 稳态 /l/ 全状态

3. 对齐结果就是 DNN 的训练标签!

  • DNN 的输入:15 帧 MFCC 特征(每帧一个向量)。
  • DNN 的输出目标:每帧对应的 HMM 状态(比如第 1 帧的目标是 "/æ/ 起始状态")。
  • DNN 训练的目标:学习 "输入特征→输出对应状态后验概率" 的映射关系。

GMM-HMM 状态对齐,就是给连续的语音帧 "贴标签"------ 告诉 DNN "这几帧对应哪个音素的哪个发音阶段",没有这个标签,DNN 就不知道该学什么;有了这个标签,DNN 才能精准训练,最终替代 GMM 完成更优的概率建模。

4. 后验概率和HMM 状态是 "预测结果" 和 "预测目标" 的对应关系

  • 对齐标签(目标):GMM-HMM 给第 1 帧贴的标签是 "/æ/ 起始状态"
  • DNN 的输入:第 1 帧的 MFCC 特征向量。
  • DNN 的输出:一个概率向量,向量长度 = 所有 HMM 状态的总数(比如例子里的 11 个状态),每个位置对应一个 HMM 状态的后验概率。
    • 理想情况下,DNN 输出的概率向量应该是:1,0,0,0,0,0,0,0,0,0,01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 01,0,0,0,0,0,0,0,0,0,0(第 1 个位置对应 "/æ/ 起始状态",概率为 1;其他状态概率为 0)
    • 实际训练中,输出是近似值,比如:0.92,0.03,0.01,...,0.0010.92, 0.03, 0.01, ..., 0.0010.92,0.03,0.01,...,0.001("/æ/ 起始状态" 的后验概率最高,其他状态概率极低)
  1. 训练时:后验概率是 "预测值",HMM 状态是 "真实标签"
  • DNN 的任务是最小化预测概率和真实标签的差距(比如用交叉熵损失)。
  • 对每帧特征,只有对齐的那个 HMM 状态是 "正样本",DNN 要让它的后验概率尽可能接近 1;其他所有 HMM 状态都是 "负样本",后验概率尽可能接近 0。
  1. 解码时:后验概率是 "HMM 状态的置信度"
  • 训练好的 DNN,输入任意一帧语音特征,都会输出所有 HMM 状态的后验概率。
  • HMM 会根据这些概率值,结合状态转移概率,选择置信度最高的状态路径------ 这就是最终的语音识别结果。
相关推荐
深小乐13 小时前
我在 Anthropic ELI5 上加了5样东西,做成了更好用的 ELI5+
人工智能
东风破_13 小时前
《LangGraph Memory:为什么 Agent 需要 Checkpointer?》
人工智能
锋行天下13 小时前
LangGraph 同级节点之间修改数据先后问题
人工智能
u13013013 小时前
AI 日报(2026年9月12日)
人工智能
东风破_14 小时前
《LangGraph Human-in-the-loop:Interrupt 如何让 Agent 等待人工确认》
人工智能
2601_9622186114 小时前
万象生鲜系统业财一体化底层打通技术自动生成经营账单
大数据·数据库·人工智能·python·算法
智塑未来14 小时前
中文短剧出海翻译工具横评:VMEG AI、鬼手、Vozo AI、ElevenLabs怎么选?
人工智能
东风破_14 小时前
《LangGraph 条件路由与循环:如何让 Agent 自己决定下一步?》
人工智能
我爱吃土豆114 小时前
AI 编程工具远程开发指南:Codex 桌面版与 WorkBuddy 通过 SSH 连接云服务器实践
服务器·人工智能·ssh
袁俪14 小时前
推理成本门槛
人工智能