🚀 基于CommonVoice英文数据集(无语言模型)训练的带CTC的wav2vec 2.0
本仓库提供了在SpeechBrain中使用基于CommonVoice(英语)预训练的端到端系统进行自动语音识别所需的所有工具。为获得更好的体验,我们建议您进一步了解 SpeechBrain。
该模型的性能如下:
发布时间 |
测试集字错率(WER) |
GPU 配置 |
2021年6月3日 |
15.69 |
2xV100 32GB |
🚀 快速开始
本仓库提供了在SpeechBrain中使用基于CommonVoice(英语)预训练的端到端系统进行自动语音识别所需的所有工具。为获得更好的体验,我们建议您进一步了解 SpeechBrain。
✨ 主要特性
此自动语音识别(ASR)系统由两个不同但相互关联的模块组成:
- 分词器(unigram):将单词转换为子词单元,并使用CommonVoice(英语)的训练转录文件(train.tsv)进行训练。
- 声学模型(wav2vec2.0 + CTC):将预训练的wav2vec 2.0模型(wav2vec2-lv60-large)与两个深度神经网络(DNN)层相结合,并在CommonVoice英语数据集上进行微调。最终得到的声学表示将输入到CTC解码器中。
该系统使用采样率为16kHz(单声道)的录音进行训练。在调用 transcribe_file
时,如果需要,代码将自动对音频进行归一化处理(即重采样和单声道选择)。
📦 安装指南
首先,请使用以下命令安装 transformers
和 SpeechBrain
:
pip install speechbrain transformers
请注意,我们建议您阅读我们的教程并进一步了解 SpeechBrain。
💻 使用示例
基础用法
对您自己的英文音频文件进行转录:
from speechbrain.inference.ASR import EncoderDecoderASR
asr_model = EncoderDecoderASR.from_hparams(source="speechbrain/asr-wav2vec2-commonvoice-en", savedir="pretrained_models/asr-wav2vec2-commonvoice-en")
asr_model.transcribe_file("speechbrain/asr-wav2vec2-commonvoice-en/example.wav")
高级用法
在GPU上进行推理
若要在GPU上进行推理,可在调用 from_hparams
方法时添加 run_opts={"device":"cuda"}
:
from speechbrain.inference.ASR import EncoderDecoderASR
asr_model = EncoderDecoderASR.from_hparams(source="speechbrain/asr-wav2vec2-commonvoice-en", savedir="pretrained_models/asr-wav2vec2-commonvoice-en", run_opts={"device":"cuda"})
asr_model.transcribe_file("speechbrain/asr-wav2vec2-commonvoice-en/example.wav")
批量并行推理
请参考 此Colab笔记本 以了解如何使用预训练模型对一批输入语句进行并行转录。
模型训练
该模型使用SpeechBrain进行训练。若要从头开始训练,请按照以下步骤操作:
- 克隆SpeechBrain仓库:
git clone https://github.com/speechbrain/speechbrain/
- 安装依赖:
cd speechbrain
pip install -r requirements.txt
pip install -e .
- 运行训练脚本:
cd recipes/CommonVoice/ASR/seq2seq
python train.py hparams/train_en_with_wav2vec.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}
}