状态对齐是连接 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 会根据这些概率值,结合状态转移概率,选择置信度最高的状态路径------ 这就是最终的语音识别结果。
相关推荐
袋鼠云数栈2 小时前
媒体专访丨袋鼠云 CEO 宁海元:Agent元年之后,产业需回到“数据+智能”的长期结构
大数据·人工智能
TF男孩2 小时前
一堆3D点,神经网络是怎么判断它是椅子的?
人工智能·神经网络
AI即插即用2 小时前
即插即用系列 | CVPR 2024 RMT:既要全局感受野,又要 CNN 的局部性?一种拥有显式空间先验的线性 Transformer
人工智能·深度学习·神经网络·目标检测·计算机视觉·cnn·transformer
changuncle2 小时前
Polyglot Notebooks环境安装及注册Python Kernel
人工智能
roman_日积跬步-终至千里2 小时前
【人工智能导论】04-推理-推理方法:从符号推理到不确定性推理
人工智能·人工智能导论
渡我白衣2 小时前
导论:什么是机器学习?——破除迷思,建立全景地图
人工智能·深度学习·神经网络·目标检测·microsoft·机器学习·自然语言处理
GodGump2 小时前
从 Yann LeCun 访谈看 AGI 幻觉:为什么大模型 ≠ 通用智能
人工智能·agi
gorgeous(๑>؂<๑)2 小时前
【南开大学-程明明组-AAAI26】一种用于多模态遥感目标检测的统一模型
人工智能·目标检测·计算机视觉
smile_Iris2 小时前
Day 45 简单CNN
人工智能·深度学习·cnn