🚀 NVIDIA Conformer-Transducer X-Large (en-US)
该模型可将语音转录为小写英文文本,支持空格和撇号。它是Conformer - Transducer的“超大”版本模型(约6亿参数)。如需了解完整的架构细节,请参阅模型架构部分和NeMo文档。
🚀 快速开始
要训练、微调或使用该模型,你需要安装 NVIDIA NeMo。建议在安装最新版本的Pytorch之后再安装它。
pip install nemo_toolkit['all']
(如果出现错误):
pip install nemo_toolkit[all]
✨ 主要特性
- 可将语音转录为小写英文文本,支持空格和撇号。
- 属于Conformer - Transducer的“超大”版本模型,约6亿参数。
📦 安装指南
要训练、微调或使用该模型,你需要安装 NVIDIA NeMo。建议在安装最新版本的Pytorch之后再安装它。
pip install nemo_toolkit['all']
(如果出现错误):
pip install nemo_toolkit[all]
💻 使用示例
基础用法
自动实例化模型:
import nemo.collections.asr as nemo_asr
asr_model = nemo_asr.models.EncDecRNNTBPEModel.from_pretrained("nvidia/stt_en_conformer_transducer_xlarge")
高级用法
使用Python进行转录
首先,获取一个样本:
wget https://dldata-public.s3.us-east-2.amazonaws.com/2086-149220-0033.wav
然后简单执行以下操作:
output = asr_model.transcribe(['2086-149220-0033.wav'])
print(output[0].text)
转录多个音频文件
python [NEMO_GIT_FOLDER]/examples/asr/transcribe_speech.py
pretrained_name="nvidia/stt_en_conformer_transducer_xlarge"
audio_dir="<DIRECTORY CONTAINING AUDIO FILES>"
📚 详细文档
输入
该模型接受16000 KHz单声道音频(wav文件)作为输入。
输出
该模型为给定的音频样本提供转录后的语音字符串。
🔧 技术细节
模型架构
Conformer - Transducer模型是用于自动语音识别的Conformer模型[1]的自回归变体,它使用Transducer损失/解码而不是CTC损失。你可以在Conformer - Transducer模型中找到关于该模型细节的更多信息。
训练
使用NeMo工具包[3]对模型进行了数百个epoch的训练。这些模型使用示例脚本和基础配置进行训练。
这些模型的分词器是使用训练集的文本转录,通过脚本构建的。
数据集
此集合中的所有模型都在一个复合数据集(NeMo ASRSET)上进行训练,该数据集包含数千小时的英语语音:
- Librispeech:960小时的英语语音
- Fisher语料库
- Switchboard - 1数据集
- WSJ - 0和WSJ - 1
- 国家语音语料库(第1部分、第6部分)
- VCTK
- VoxPopuli(英语)
- Europarl - ASR(英语)
- 多语言Librispeech(MLS英语) - 2000小时子集
- Mozilla Common Voice(v8.0)
- People's Speech - 12000小时子集
注意:旧版本的模型可能在较小的数据集上进行训练。
性能
此集合中可用模型的列表如下表所示。ASR模型的性能以单词错误率(WER%)和贪心解码的方式报告。
版本 |
分词器 |
词汇量大小 |
LS test - other |
LS test - clean |
WSJ Eval92 |
WSJ Dev93 |
NSC Part 1 |
MLS Test |
MLS Dev |
MCV Test 8.0 |
训练数据集 |
1.10.0 |
SentencePiece Unigram |
1024 |
3.01 |
1.62 |
1.17 |
2.05 |
5.70 |
5.32 |
4.59 |
6.46 |
NeMo ASRSET 3.0 |
局限性
由于该模型是在公开可用的语音数据集上训练的,对于包含技术术语或模型未训练过的方言的语音,其性能可能会下降。该模型对于带口音的语音表现可能也会更差。
NVIDIA Riva:部署
NVIDIA Riva是一个加速语音AI SDK,可在本地、所有云、多云、混合云、边缘和嵌入式设备上部署。此外,Riva还提供:
- 针对最常见语言的世界级开箱即用准确率,其模型检查点在专有数据上进行了数十万GPU计算小时的训练。
- 具有运行时单词增强(例如品牌和产品名称)以及声学模型、语言模型和逆文本归一化定制功能的一流准确率。
- 流式语音识别、Kubernetes兼容扩展和企业级支持。
虽然该模型目前尚未得到Riva的支持,但支持的模型列表在此。你可以查看 Riva实时演示。
参考资料
[1] Conformer: Convolution - augmented Transformer for Speech Recognition
[2] Google Sentencepiece Tokenizer
[3] NVIDIA NeMo Toolkit
📄 许可证
使用此模型的许可受CC - BY - 4.0许可协议的约束。通过下载该模型的公开和发布版本,即表示你接受CC - BY - 4.0许可协议的条款和条件。