晟辉智能制造

语音识别技术系统结构的核心是什么?

一个完整的语音识别系统通常可以划分为几个核心模块,虽然不同公司和系统的具体实现细节(如模型架构、优化方法)可能有所不同,但其基本结构和流程是相似的。

语音识别技术系统结构的核心是什么?-图1
(图片来源网络,侵删)

我们可以将整个系统从宏观上分为两个主要部分:离线训练阶段在线识别阶段


整体架构概览

用一个简化的流程图来展示整个识别过程:

[语音信号] -> [前端处理] -> [声学模型] -> [发音词典] -> [语言模型] -> [解码器] -> [识别文本]
       ↑                      ↑                      ↑
       |                      |                      |
       +---- [特征提取] ------+                      |
                      |                              |
                      +---- [声学模型训练] <----------+
                      |
                      +---- [语言模型训练] <----------+

下面我们分阶段详细拆解每个模块。


离线训练阶段

这个阶段的目标是利用海量的标注语音数据和文本数据,训练出核心的模型,这是一个计算密集型且耗时的过程,通常在强大的服务器集群上完成。

语音识别技术系统结构的核心是什么?-图2
(图片来源网络,侵删)

数据准备与处理

  • 语音数据收集与标注:收集大量的语音数据(通常是几万到几百万小时),并由人工进行标注,将语音内容转换为对应的文本。"你好世界" 对应的音频波形。
  • 文本语料收集:收集海量的文本数据,如新闻、书籍、网页、社交媒体帖子等,用于训练语言模型。

特征提取

虽然这是识别阶段的第一步,但其提取的特征(如MFCC)的定义和参数也是在训练阶段确定的。

  • 目的:将原始的、非结构化的音频波形信号,转换为计算机更容易处理的、包含关键语音信息的特征向量序列。
  • 常用特征
    • 梅尔频率倒谱系数:这是最经典和广泛使用的特征,它模拟了人耳的听觉特性,对语音的共振峰等关键信息有很好的表征能力。
    • 滤波器组特征:比MFCC更简单,计算量更小,在端到端模型中非常流行。
    • 谱图:直接将音频波形转换为二维的时频图,可以被深度学习模型(如CNN)直接处理。

声学模型训练

  • 目的:学习语音信号和发音单元之间的映射关系,听到一段声音,知道它最可能对应哪个音素/字/词”。
  • 核心单元
    • 传统方法:通常以音素作为基本单元,音素是语言中最小的声音单位,例如中文的 "sh", "eng", "a"。
    • 现代端到端方法:直接以字符作为基本单元,简化了流程。
  • 模型架构演进
    • GMM-HMM (高斯混合模型-隐马尔可夫模型):早期经典方法,HMM建模音素的时序变化,GMM对每个状态下的特征概率进行建模。
    • DNN-HMM (深度神经网络-隐马尔可夫模型):里程碑式的进步,用DNN替代GMM来计算HMM每个状态的输出概率,极大地提升了识别准确率。
    • 端到端模型:这是当前的主流,它将声学模型、发音词典和语言模型统一到一个神经网络中进行优化,简化了流程,性能也更强。
      • CTC (Connectionist Temporal Classification):允许模型输出不定长的序列,通过引入一个“空白”符号来对齐,解决了训练时输入和输出长度不一致的问题。
      • Attention-based Models (基于注意力机制的模型):类似于机器翻译中的Seq2Seq模型,通过一个“注意力”动态地关注输入音频的不同部分来生成输出文本。
      • RNN-Transducer (RNN-T):结合了CTC和Attention的优点,是一个流式的、统一的端到端模型,非常适合实时语音识别。

语言模型训练

  • 目的:学习语言的统计规律,判断一个句子或词序列出现的可能性。"今天天气很好" 是一个合理的句子,而 "今天天气很好天气" 就不合理,语言模型会赋予前者更高的概率。
  • 核心作用:在识别时,如果有多个候选词("zhōng" 可能对应 "中"、"钟"、"终"),语言模型会根据上下文选择最通顺、最合理的那一个,起到“纠错”和“平滑”的作用。
  • 模型类型
    • N-gram 模型:最经典和常用的统计模型,它基于一个假设:一个词出现的概率只与它前面的 N-1 个词有关,在三元文法中,P(w3|w1, w2)。
    • 神经网络语言模型:使用神经网络(如RNN, LSTM, Transformer)来建模更复杂的、长距离的依赖关系,通常比N-gram模型性能更好,但计算成本也更高。

发音词典

  • 目的:建立文字到发音的桥梁,它是一个字典,记录了每个词(或字)的标准发音,由一系列音素组成。
  • 作用:在传统方法中,它连接了声学模型(输出音素)和语言模型(输入文字),在端到端模型中,这个角色被网络内部的结构所取代,但其概念仍然存在。

在线识别阶段

这个阶段是用户实际使用语音识别服务时,系统运行的过程,目标是实时或近实时地将用户的语音转换为文本。

前端处理

  • 目的:对输入的原始音频进行预处理,去除噪声和干扰,并进行分帧。
  • 主要步骤
    • 降噪:使用各种算法(如谱减法、维纳滤波)去除背景噪声。
    • 语音活动检测:判断哪些时间段包含有效语音,哪些是静音或噪声,这样可以静音时不进行识别,节省计算资源。
    • 分帧与加窗:将连续的音频流切分成一个个短小的帧(通常每帧20-40毫秒),并在帧两端加上窗函数(如汉明窗),以减少频谱泄露。

特征提取

与训练阶段使用相同的算法和参数,将实时音频帧转换为特征向量序列。

解码

这是识别阶段的核心,也是最复杂的部分,解码器的作用是:

语音识别技术系统结构的核心是什么?-图3
(图片来源网络,侵删)
  • 结合声学模型的输出(每个时间点对应各个发音单元的概率)。

  • 结合语言模型的输出(各个词序列的概率)。

  • 通过发音词典(在传统方法中)或端到端模型的结构,寻找一条总的概率最大的路径,即最可能的文本输出。

  • 解码算法

    • 维特比算法:在HMM-based系统中,用于找到最可能的状态序列。
    • 束搜索:在端到端模型中常用的一种启发式搜索算法,它不像暴力搜索那样遍历所有可能性,而是在每一步只保留概率最高的几个候选路径(形成一个“束”),从而在保证一定质量的前提下,大大降低计算复杂度,实现实时解码。

后处理

  • 目的:对解码器输出的原始文本进行优化和格式化,使其更符合人类的使用习惯。
  • 常见操作
    • 数字和单位格式化:将 "yi ling ling er" 转换为 "2025"。
    • 标点符号恢复:自动添加逗号、句号等。
    • 专有名词识别:根据特定领域知识,对地名、人名等进行修正。
    • 结果平滑:对一些识别结果进行微调,使其更通顺。

现代端到端系统的简化视图

随着深度学习的发展,特别是Transformer架构的兴起,现代语音识别系统越来越趋向于“端到端”,这种架构极大地简化了传统流程:

[语音信号] -> [前端处理] -> [特征提取] -> [统一的端到端模型] -> [识别文本]

这个统一的模型(如RNN-Transducer或基于Transformer的模型)内部已经隐式地学习了声学信息、发音规则和语言规律,训练时,只需要将音频和对应的文本直接喂给模型进行监督学习即可,不再需要分别训练和组合多个独立的模块。

阶段 核心模块 主要任务 关键技术/模型
离线训练 数据处理 准备和标注海量数据 人工标注、爬虫
特征提取 定义语音特征 MFCC, Fbank
声学模型 学习声音到文字的映射 HMM, DNN-HMM, CTC, Attention, RNN-T
语言模型 学习语言统计规律 N-gram, NNLM, Transformer
发音词典 建立文字到发音的映射 文本-音素对齐
在线识别 前端处理 音频预处理 降噪, VAD, 分帧
特征提取 实时特征转换 与训练阶段相同
解码 寻找最优文本路径 束搜索, 维特比算法
后处理 结果优化与格式化 数字格式化, 标点恢复

理解这个系统结构,有助于我们明白语音识别技术为何能取得今天的成就,以及未来可能的发展方向(如更强大的上下文理解、多模态融合等)。

分享:
扫描分享到社交APP
上一篇
下一篇