ASR主流模型

ASR技术经历了从传统混合模型到端到端深度学习的演进,涌现出多种优秀的模型架构。

预计阅读时间:45分钟·难度:中级

传统架构

传统ASR系统由多个独立模块组成,每个模块单独训练和优化。

模块组成

声学模型(AM)

HMM-DNN结构,预测每个音频帧对应的音素状态。早期使用GMM,后来被DNN取代。

发音词典

定义词汇到音素序列的映射,需要语言学专家维护。新词需要人工添加发音。

语言模型(LM)

评估文本序列的概率,常用N-gram或神经网络LM(如LSTM-LM)。

解码器

在搜索空间中找到最优词序列,通常使用Viterbi算法或束搜索。

优缺点分析

优点缺点
各模块可独立优化模块间误差累积
可解释性好需要专业标注数据
可灵活替换组件部署复杂度高
领域适应能力强新词扩展困难

端到端模型

端到端模型直接从音频到文本,简化了训练和部署流程,是当前的主流方向。

主要模型架构

模型架构特点
WhisperTransformer多语言、鲁棒性强、开源
ConformerCNN+Attention工业级应用广泛、效果好
TransducerRNN-T流式识别友好、延迟可控
Paraformer非自回归速度快、精度高、中文优化
WeNetConformer+Transducer开源生产级、双流解码

Whisper详解

模型概述

OpenAI发布的多语言语音识别模型,在68万小时的多语言数据上训练。支持99种语言的转录和翻译。

模型规格
模型参数量速度
tiny39M最快
base74M
small244M中等
medium769M
large-v31550M最慢
核心特点
  • 多语言支持:支持99种语言转录,支持翻译为英语
  • 鲁棒性强:对噪声、口音、背景音乐适应性好
  • 多任务:支持识别、翻译、语言检测、VAD
  • 开源可用:模型权重完全开源

Paraformer详解

模型概述

阿里达摩院提出的非自回归端到端语音识别模型,中文识别效果优异,推理速度快。

核心创新
  • 非自回归解码:并行生成所有token,速度快
  • 连续积分发放:解决长度预测问题
  • GLM语言模型:增强语言模型能力
  • 中文优化:针对中文场景特别优化

自监督模型

自监督学习利用大量无标注音频进行预训练,显著降低标注数据需求。

主要模型

Wav2Vec 2.0

Meta提出的自监督语音预训练模型。通过对比学习预训练音频编码器,将未标注音频转化为有用的语音表示。

HuBERT

使用聚类目标进行预训练。先将音频聚类为离散单元,然后预测这些单元,效果优于Wav2Vec 2.0。

WavLM

微软提出的模型,在HuBERT基础上增加了去噪目标,提高噪声鲁棒性。

BEST-RQ

基于向量量化的预训练方法,Google提出,在大规模数据上效果好。

预训练-微调范式

  1. 1. 预训练阶段:在大规模无标注音频上学习通用语音表示
  2. 2. 微调阶段:在有标注数据上针对具体任务微调
  3. 3. 效果:只需少量标注数据即可达到好效果

模型对比

性能对比

模型中文WER英文WER流式支持开源
Whisper large-v3~5%~4%
Paraformer-large~3%~5%
Conformer~4%~4%
Wav2Vec 2.0~6%~5%

速度对比

模型RTF (GPU)RTF (CPU)显存占用
Whisper large-v30.1-0.22-3~4GB
Whisper base0.02-0.050.3-0.5~1GB
Paraformer0.05-0.10.5-1~2GB
WeNet streaming0.020.2~1GB

选型指南

按场景选择

离线转写

推荐Whisper large或Paraformer。追求质量选Whisper,中文场景选Paraformer。

实时识别

推荐WeNet、Conformer Streaming或RNN-T。需要流式支持和低延迟。

多语言场景

推荐Whisper,支持99种语言,且效果稳定。

低资源语言

推荐Wav2Vec 2.0或HuBERT微调,利用自监督预训练降低标注需求。

边缘部署

推荐Whisper tiny/base或WeNet streaming,模型小、速度快。

开源项目推荐

项目特点适合场景
WeNet生产级、双流解码工业部署
FunASRParaformer官方中文识别
faster-whisperWhisper加速版批量转写
whisper.cppC++实现边缘部署
----