语音识别(ASR)
自动语音识别(Automatic Speech Recognition,ASR)是将人类语音信号自动转换为文字的技术,是语音 AI 的核心任务之一。从电话客服到实时字幕,从语音助手到会议记录,ASR 技术渗透到现代数字生活的方方面面。
任务定义
ASR 的核心任务是:
输入:音频波形(时域信号,采样率通常 16kHz 或 44.1kHz)
输出:对应的文字序列
技术挑战主要来自:
- 说话人差异:不同人的音色、发音习惯、语速差异巨大
- 噪声环境:背景噪音、混响、多人说话同时进行
- 语言多样性:方言、口音、语码混用(中英混说)
- 领域专业词汇:医疗、法律、科技等专业术语发音与普通词汇相似但语义完全不同
- 自发语音:日常对话中充满停顿、口误、重复,与朗读语音差异显著
传统方法:HMM + GMM
在深度学习之前,主流 ASR 系统采用**隐马尔可夫模型(HMM)+ 高斯混合模型(GMM)**的框架:
- HMM 对语音的时序结构建模:将发音过程视为从一个状态(音素)转移到另一个状态的马尔可夫过程
- GMM 对每个 HMM 状态的声学特征(MFCC 梅尔频率倒谱系数)分布建模
- 语言模型(N-gram):约束合法的词序列,减少解码空间
传统系统还需要发音词典(Lexicon)将词映射到音素序列。整个系统由多个独立模块拼接而成,各模块单独优化,难以端到端训练,错误会在模块间累积传播。
深度学习时代
DNN-HMM(2012)
用深度神经网络(DNN)替换 GMM 对声学模型建模,显著提升了识别精度,但仍保留 HMM 时序框架。
RNN + CTC(2014)
CTC(Connectionist Temporal Classification) 是声学序列建模的重要突破:
- 允许模型直接输出字符序列,无需帧级别的对齐标注
- 引入空白符(blank token)处理时序不对齐问题
- 结合 LSTM 等 RNN 捕获语音的长期依赖
CTC 极大简化了 ASR 系统的训练流程,使端到端训练成为可能。
注意力 Encoder-Decoder
受机器翻译中 Seq2Seq + Attention 启发,ASR 可以建模为将音频序列"翻译"为文字序列的问题:
- 编码器:将音频特征序列编码为高维表示
- 解码器:逐个生成输出字符/词,通过注意力机制关注输入的相关部分
Listen, Attend and Spell(LAS) 是这一方向的代表工作。
Transformer ASR
Transformer 架构在 NLP 的成功迅速被迁移到 ASR 领域:
- Conformer(2020):结合 Transformer 的全局注意力和 CNN 的局部特征提取,成为业界主流声学编码器
- Wav2Vec 2.0(Facebook,2020):自监督预训练 ASR 模型,在有标注数据极少的情况下取得接近有监督系统的效果
- HuBERT(Facebook,2021):进一步提升自监督语音表示学习效果
Whisper:端到端多语言 ASR 的标杆
OpenAI 于 2022 年发布的 Whisper 成为当前开源 ASR 的最强基线,详见 Whisper 详解 章节。
商业 ASR API 对比
| 服务商 | 产品 | 中文效果 | 实时支持 | 方言支持 | 特色 |
|---|---|---|---|---|---|
| 微软 Azure | Speech-to-Text | 优秀 | 支持 | 普通话 | 企业级稳定性 |
| Google Cloud | Speech-to-Text v2 | 良好 | 支持 | 普通话 | 多语言自动检测 |
| 阿里云 | 智能语音交互 | 优秀 | 支持 | 多方言 | 中文领域最优之一 |
| 科大讯飞 | 语音听写 | 极佳 | 支持 | 多方言/粤语 | 国内中文 ASR 标杆 |
| AssemblyAI | - | 一般 | 支持 | 有限 | 自动摘要/分析集成 |
| Deepgram | Nova-2 | 一般 | 支持 | 有限 | 超低延迟,英文最佳之一 |
中文 ASR 的特殊挑战
中文语音识别面临独特的难点:
方言多样性
中国拥有数百种方言,粤语、闽南语、客家话、吴语(上海话)等与普通话在语音系统上差异巨大。大多数 ASR 系统仅针对普通话优化,方言识别仍是难题。科大讯飞在粤语等方言识别上投入较多。
多音字与同音字
"机器"和"饥饿"、"制造"和"治造"等大量同音词,在无语境的情况下仅凭声学信号难以区分,需要强语言模型辅助消歧。
中英混说(Code-Switching)
"我今天开了一个 meeting 然后 review 了几个 PR"这类中英文混用在现代职场非常普遍,对 ASR 系统的多语言能力提出挑战。
特殊语音
- 电话信道:8kHz 采样率、信道噪声
- 远场语音:会议室麦克风阵列场景,需要波束成形预处理
- 儿童语音:音高高、发音不标准,通用模型效果差
实时 ASR vs 离线 ASR
| 维度 | 实时 ASR(流式) | 离线 ASR(批量) |
|---|---|---|
| 延迟 | 极低(<300ms) | 可接受高延迟 |
| 精度 | 稍低(无法利用右侧上下文) | 更高(双向上下文) |
| 适用场景 | 语音助手、实时字幕、电话客服 | 会议录音转写、视频字幕生成 |
| 技术实现 | 流式 Conformer + CTC/RNN-T | 批量 Transformer Encoder-Decoder |
流式 ASR 通常采用分块处理(Chunk-based),每积累一小段音频就输出中间结果,并在后续音频到来时进行修正(如腾讯会议的实时字幕)。
WER 评测指标
WER(Word Error Rate,词错误率) 是 ASR 的标准评测指标:
WER = (插入错误数 + 删除错误数 + 替换错误数) / 真实词总数 × 100%
- WER 越低越好,0% 表示完美识别
- 中文场景通常用**字错误率(CER,Character Error Rate)**代替 WER
- 在 LibriSpeech 干净语音测试集上,Whisper Large-v3 的 WER 约为 2-3%
- 自发口语、嘈杂环境下 WER 通常在 10-30%
行业应用中,一般认为 WER < 5% 可满足绝大多数商用场景需求,WER < 10% 可作为辅助工具使用。