🚀 用于AISHELL + wav2vec2(中文普通话)的Transformer
本仓库提供了在SpeechBrain中,基于在AISHELL + wav2vec2(中文普通话)上预训练的端到端系统进行自动语音识别所需的所有工具。为获得更好的体验,建议您进一步了解SpeechBrain。
该模型的性能如下:
版本发布日期 |
开发集字符错误率(CER) |
测试集字符错误率(CER) |
GPU 配置 |
完整结果 |
2021年3月5日 |
5.19 |
5.58 |
2xV100 32GB |
Google云端硬盘 |
🚀 快速开始
本自动语音识别(ASR)系统由两个不同但相互关联的模块组成:
- 分词器(unigram):将单词转换为子词单元,并使用LibriSpeech的训练转录数据进行训练。
- 声学模型:由wav2vec2编码器和结合了CTC + Transformer的联合解码器组成。因此,解码过程也会纳入CTC概率。
若要从头开始训练此系统,请查看我们的SpeechBrain配方。
该系统使用采样率为16kHz(单声道)的录音进行训练。调用transcribe_file
时,代码会根据需要自动对音频进行归一化处理(即重采样和选择单声道)。
✨ 主要特性
- 端到端系统:基于预训练的AISHELL + wav2vec2模型,实现自动语音识别。
- 性能优异:在开发集和测试集上均取得了较低的字符错误率。
- 灵活性高:支持GPU推理和批量并行推理。
- 易于训练:提供详细的训练步骤和代码示例。
📦 安装指南
首先,请使用以下命令安装SpeechBrain:
pip install speechbrain
建议您阅读我们的教程,进一步了解SpeechBrain。
💻 使用示例
基础用法
以下是转录您自己的音频文件(英文)的示例代码:
from speechbrain.inference.ASR import EncoderDecoderASR
asr_model = EncoderDecoderASR.from_hparams(source="speechbrain/asr-wav2vec2-transformer-aishell", savedir="pretrained_models/asr-wav2vec2-transformer-aishell")
asr_model.transcribe_file("speechbrain/asr-wav2vec2-transformer-aishell/example_mandarin.wav")
高级用法
若要在GPU上进行推理,请在调用from_hparams
方法时添加run_opts={"device":"cuda"}
:
from speechbrain.inference.ASR import EncoderDecoderASR
asr_model = EncoderDecoderASR.from_hparams(source="speechbrain/asr-wav2vec2-transformer-aishell", savedir="pretrained_models/asr-wav2vec2-transformer-aishell", run_opts={"device":"cuda"})
asr_model.transcribe_file("speechbrain/asr-wav2vec2-transformer-aishell/example_mandarin.wav")
批量并行推理
请查看此Colab笔记本,了解如何使用预训练模型对一批输入句子进行并行转录。
🔧 技术细节
训练步骤
该模型使用SpeechBrain进行训练(提交哈希:'480dde87')。若要从头开始训练,请按照以下步骤操作:
- 克隆SpeechBrain仓库:
git clone https://github.com/speechbrain/speechbrain/
- 安装依赖:
cd speechbrain
pip install -r requirements.txt
pip install -e .
- 运行训练脚本:
cd recipes/AISHELL-1/ASR/transformer/
python train.py hparams/train_ASR_transformer_with_wav2vect.yaml --data_folder=your_data_folder
您可以在此处找到我们的训练结果(模型、日志等)。
局限性
SpeechBrain团队不保证该模型在其他数据集上的性能。
📄 许可证
本项目采用Apache-2.0许可证。
关于SpeechBrain
- 官网:https://speechbrain.github.io/
- 代码仓库:https://github.com/speechbrain/speechbrain/
- HuggingFace页面:https://huggingface.co/speechbrain/
引用SpeechBrain
如果您在研究或业务中使用了SpeechBrain,请引用以下文献:
@misc{speechbrain,
title={{SpeechBrain}: A General-Purpose Speech Toolkit},
author={Mirco Ravanelli and Titouan Parcollet and Peter Plantinga and Aku Rouhe and Samuele Cornell and Loren Lugosch and Cem Subakan and Nauman Dawalatabad and Abdelwahab Heba and Jianyuan Zhong and Ju-Chieh Chou and Sung-Lin Yeh and Szu-Wei Fu and Chien-Feng Liao and Elena Rastorgueva and François Grondin and William Aris and Hwidong Na and Yan Gao and Renato De Mori and Yoshua Bengio},
year={2021},
eprint={2106.04624},
archivePrefix={arXiv},
primaryClass={eess.AS},
note={arXiv:2106.04624}
}