🚀 越南语端到端语音识别(使用wav2vec 2.0)
本项目利用wav2vec 2.0技术实现越南语端到端语音识别,可有效处理越南语语音数据,在多个公开数据集上取得了良好的识别效果。
🚀 快速开始
当使用该模型时,请确保语音输入采样率为16Khz,且音频长度短于10秒。点击下面的Colab链接,使用CTC - wav2vec和4-gram语言模型的组合:

✨ 主要特性
📦 安装指南
文档未提供具体安装步骤,暂不展示。
💻 使用示例
基础用法
from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
from datasets import load_dataset
import soundfile as sf
import torch
processor = Wav2Vec2Processor.from_pretrained("nguyenvulebinh/wav2vec2-base-vietnamese-250h")
model = Wav2Vec2ForCTC.from_pretrained("nguyenvulebinh/wav2vec2-base-vietnamese-250h")
def map_to_array(batch):
speech, _ = sf.read(batch["file"])
batch["speech"] = speech
return batch
ds = map_to_array({
"file": 'audio-test/t1_0001-00010.wav'
})
input_values = processor(ds["speech"], return_tensors="pt", padding="longest").input_values
logits = model(input_values).logits
predicted_ids = torch.argmax(logits, dim=-1)
transcription = processor.batch_decode(predicted_ids)
📚 详细文档
模型描述
我们的模型在13000小时的越南语YouTube音频(无标签数据)上进行预训练,并在250小时标注的VLSP ASR数据集上进行微调,语音音频采样率为16kHz。
我们使用wav2vec2架构作为预训练模型。根据wav2vec2论文所述:
首次证明了仅从语音音频中学习强大的表示,然后在转录语音上进行微调,能够在概念上更简单的同时,超越最佳的半监督方法。
在微调阶段,wav2vec2使用连接主义时间分类(CTC)进行微调。CTC是一种用于训练神经网络解决序列到序列问题的算法,主要应用于自动语音识别和手写识别。
模型 |
参数数量 |
预训练数据 |
微调数据 |
基础模型 |
95M |
13000小时 |
250小时 |
在正式的ASR系统中,需要两个组件:声学模型和语言模型。这里经过微调的ctc - wav2vec模型作为声学模型。对于语言模型,我们提供了一个在2GB口语文本上训练的4-gram语言模型。
关于训练和微调过程的详细信息,读者可以参考fairseq github和huggingface博客。
基准字错率(WER)结果
模型参数许可证
ASR模型参数仅可用于非商业用途,遵循知识共享署名 - 非商业性使用4.0国际许可协议(CC BY - NC 4.0)。详细信息请见:https://creativecommons.org/licenses/by-nc/4.0/legalcode
引用
如果本仓库被用于帮助产生已发表的研究结果或被整合到其他软件中,请引用我们的仓库:
@misc{Thai_Binh_Nguyen_wav2vec2_vi_2021,
author = {Thai Binh Nguyen},
doi = {10.5281/zenodo.5356039},
month = {09},
title = {{Vietnamese end-to-end speech recognition using wav2vec 2.0}},
url = {https://github.com/vietai/ASR},
year = {2021}
}
🔧 技术细节
本项目使用wav2vec2架构进行预训练,该架构能够从原始语音音频中学习强大的表示。在微调阶段,采用连接主义时间分类(CTC)算法,该算法适用于序列到序列问题,在自动语音识别中表现出色。同时,为了提高识别效果,还提供了基于2GB口语文本训练的4-gram语言模型。
📄 许可证
本项目遵循知识共享署名 - 非商业性使用4.0国际许可协议(CC BY - NC 4.0)。
联系我们
如有任何问题,请通过以下方式联系我们:
- 邮箱:nguyenvulebinh@gmail.com / binh@vietai.org
- 推特:
