🚀 wav2vec 2.0 with CTC 在 CommonVoice 西班牙语数据集上训练的模型(无语言模型)
本仓库提供了在 SpeechBrain 中基于在 CommonVoice(西班牙语)上预训练的端到端系统进行自动语音识别所需的所有工具。为获得更好的使用体验,建议您进一步了解 SpeechBrain。
属性 |
详情 |
模型类型 |
自动语音识别 |
标签 |
CTC、pytorch、speechbrain、Transformer |
许可证 |
apache - 2.0 |
训练数据集 |
CommonVoice 14.0 |
评估指标 |
wer、cer |
模型在测试集上的表现如下:
发布日期 |
测试字符错误率 (CER) |
测试词错误率 (WER) |
GPU 配置 |
2023 年 8 月 15 日 |
3.80 |
13.28 |
1 块 V100 32GB GPU |
🚀 快速开始
本自动语音识别(ASR)系统由两个不同但相互关联的模块组成:
- 分词器(unigram):将单词转换为 unigram,并使用 CommonVoice(西班牙语)的训练转录文件(train.tsv)进行训练。
- 声学模型(wav2vec2.0 + CTC):一个预训练的 wav2vec 2.0 模型(wav2vec2 - large - xlsr - 53)与两个深度神经网络(DNN)层相结合,并在 CommonVoice 西班牙语数据集上进行微调。最终得到的声学表示将输入到 CTC 解码器中。
该系统使用采样率为 16kHz 的单声道录音进行训练。当调用 transcribe_file
时,代码会自动对音频进行归一化处理(即重采样和单声道选择)。
📦 安装指南
首先,请使用以下命令安装 transformers
和 SpeechBrain
:
pip install speechbrain transformers
建议您阅读我们的教程,进一步了解 SpeechBrain。
💻 使用示例
基础用法
对自己的西班牙语音频文件进行转录:
from speechbrain.inference.ASR import EncoderASR
asr_model = EncoderASR.from_hparams(source="speechbrain/asr-wav2vec2-commonvoice-14-es", savedir="pretrained_models/asr-wav2vec2-commonvoice-14-es")
asr_model.transcribe_file("speechbrain/asr-wav2vec2-commonvoice-14-es/example_es.wav")
高级用法
在 GPU 上进行推理:
在调用 from_hparams
方法时,添加 run_opts={"device":"cuda"}
即可在 GPU 上进行推理。
批量并行推理
请参考 此 Colab 笔记本,了解如何使用预训练模型对一批输入语句进行并行转录。
模型训练
该模型使用 SpeechBrain 进行训练。要从头开始训练该模型,请按照以下步骤操作:
- 克隆 SpeechBrain 仓库:
git clone https://github.com/speechbrain/speechbrain/
- 安装依赖:
cd speechbrain
pip install -r requirements.txt
pip install -e .
- 运行训练脚本:
cd recipes/CommonVoice/ASR/CTC/
python train_with_wav2vec.py hparams/train_es_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}
}