状态对齐是连接 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,0][1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0][1,0,0,0,0,0,0,0,0,0,0](第 1 个位置对应 "/æ/ 起始状态",概率为 1;其他状态概率为 0)
    • 实际训练中,输出是近似值,比如:[0.92,0.03,0.01,...,0.001][0.92, 0.03, 0.01, ..., 0.001][0.92,0.03,0.01,...,0.001]("/æ/ 起始状态" 的后验概率最高,其他状态概率极低)
  1. 训练时:后验概率是 "预测值",HMM 状态是 "真实标签"
  • DNN 的任务是最小化预测概率和真实标签的差距(比如用交叉熵损失)。
  • 对每帧特征,只有对齐的那个 HMM 状态是 "正样本",DNN 要让它的后验概率尽可能接近 1;其他所有 HMM 状态都是 "负样本",后验概率尽可能接近 0。
  1. 解码时:后验概率是 "HMM 状态的置信度"
  • 训练好的 DNN,输入任意一帧语音特征,都会输出所有 HMM 状态的后验概率。
  • HMM 会根据这些概率值,结合状态转移概率,选择置信度最高的状态路径------ 这就是最终的语音识别结果。
相关推荐
雅欣鱼子酱3 小时前
USB Type-C PD取电(诱骗,诱电,SINK),筋膜枪专用取电芯片
网络·人工智能·芯片·电子元器件
kisshuan123968 小时前
【深度学习】使用RetinaNet+X101-32x4d_FPN_GHM模型实现茶芽检测与识别_1
人工智能·深度学习
Learn Beyond Limits8 小时前
解构语义:从词向量到神经分类|Decoding Semantics: Word Vectors and Neural Classification
人工智能·算法·机器学习·ai·分类·数据挖掘·nlp
崔庆才丨静觅9 小时前
0代码生成4K高清图!ACE Data Platform × SeeDream 专属方案:小白/商家闭眼冲
人工智能·api
qq_356448379 小时前
机器学习基本概念与梯度下降
人工智能
水如烟10 小时前
孤能子视角:关系性学习,“喂饭“的小孩认知
人工智能
徐_长卿10 小时前
2025保姆级微信AI群聊机器人教程:教你如何本地打造私人和群聊机器人
人工智能·机器人
XyX——10 小时前
【福利教程】一键解锁 ChatGPT / Gemini / Spotify 教育权益!TG 机器人全自动验证攻略
人工智能·chatgpt·机器人
十二AI编程11 小时前
Anthropic 封杀 OpenCode,OpenAI 闪电接盘:AI 编程生态的 48 小时闪电战
人工智能·chatgpt