模型:
nguyenvulebinh/wav2vec2-base-vietnamese-250h
Our models 在 13k 小时越南 YouTube 音频(无标签数据)上进行预训练,并在 250 小时标记的 VLSP ASR dataset 上进行了微调,采用 16kHz 采样的语音音频。
我们使用 wav2vec2 architecture 进行预训练模型。按照 wav2vec2 论文的方法:
首次证明仅从语音音频中学习强大的表示,然后在转录语音上进行微调,可以超越最佳半监督方法,同时在概念上更简单。
在微调阶段,使用 Connectionist Temporal Classification(CTC)对 wav2vec2 进行微调,CTC 是一种用于解决序列到序列问题的神经网络训练算法,主要用于自动语音识别和手写识别。
Model | #params | Pre-training data | Fine-tune data |
---|---|---|---|
1238321 | 95M | 13k hours | 250 hours |
正式 ASR 系统需要两个组件:声学模型和语言模型。在这里,ctc-wav2vec 微调模型充当声学模型。对于语言模型,我们提供了一个在 2GB 的口语文本上训练的 4-grams model 。
关于训练和微调过程的详细信息,观众可以参考 fairseq github 和 huggingface blog 。
12312321 | 12313321 | 12314321 | 12315321 | |
---|---|---|---|---|
without LM | 10.77 | 18.34 | 13.33 | 51.45 |
with 4-grams LM | 6.15 | 11.52 | 9.11 | 40.81 |
使用模型时,请确保语音输入采样率为 16KHz。音频长度应该小于 10 秒。请点击下面的 Colab 链接,使用 CTC-wav2vec 和 4 克拉姆 LM 的组合。
from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC from datasets import load_dataset import soundfile as sf import torch # load model and tokenizer processor = Wav2Vec2Processor.from_pretrained("nguyenvulebinh/wav2vec2-base-vietnamese-250h") model = Wav2Vec2ForCTC.from_pretrained("nguyenvulebinh/wav2vec2-base-vietnamese-250h") # define function to read in sound file def map_to_array(batch): speech, _ = sf.read(batch["file"]) batch["speech"] = speech return batch # load dummy dataset and read soundfiles ds = map_to_array({ "file": 'audio-test/t1_0001-00010.wav' }) # tokenize input_values = processor(ds["speech"], return_tensors="pt", padding="longest").input_values # Batch size 1 # retrieve logits logits = model(input_values).logits # take argmax and decode predicted_ids = torch.argmax(logits, dim=-1) transcription = processor.batch_decode(predicted_ids)
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} }
当该存储库用于帮助生成已发表结果或并入其他软件时,请引用我们的 repo。
nguyenvulebinh@gmail.com / binh@vietai.org