|
--- |
|
language: vi |
|
datasets: |
|
- vlsp-asr-2020 |
|
tags: |
|
- audio |
|
- automatic-speech-recognition |
|
license: cc-by-nc-4.0 |
|
--- |
|
|
|
## Model description |
|
|
|
Our models use wav2vec2 architecture, pre-trained on 13k hours of Vietnamese youtube audio (un-label data) and fine-tuned on 250 hours labeled of VLSP ASR dataset on 16kHz sampled speech audio. You can find more description [here](https://github.com/nguyenvulebinh/vietnamese-wav2vec2) |
|
|
|
## Benchmark WER result on VLSP T1 testset: |
|
|
|
| | [base model](https://huggingface.co/nguyenvulebinh/wav2vec2-base-vi-vlsp2020) | [large model](https://huggingface.co/nguyenvulebinh/wav2vec2-large-vi-vlsp2020) | |
|
|---|---|---| |
|
|without LM| 8.66 | 6.90 | |
|
|with 5-grams LM| 6.53 | 5.32 | |
|
|
|
## Usage |
|
[](https://colab.research.google.com/drive/1z3FQUQ2t7nIPR-dBR4bkcee6oCDGmcd4?usp=sharing) |
|
|
|
```python |
|
#pytorch |
|
#!pip install transformers==4.20.0 |
|
#!pip install https://github.com/kpu/kenlm/archive/master.zip |
|
#!pip install pyctcdecode==0.4.0 |
|
#!pip install huggingface_hub==0.10.0 |
|
|
|
from transformers.file_utils import cached_path, hf_bucket_url |
|
from importlib.machinery import SourceFileLoader |
|
from transformers import Wav2Vec2ProcessorWithLM |
|
from IPython.lib.display import Audio |
|
import torchaudio |
|
import torch |
|
|
|
# Load model & processor |
|
model_name = "nguyenvulebinh/wav2vec2-large-vi-vlsp2020" |
|
model = SourceFileLoader("model", cached_path(hf_bucket_url(model_name,filename="model_handling.py"))).load_module().Wav2Vec2ForCTC.from_pretrained(model_name) |
|
processor = Wav2Vec2ProcessorWithLM.from_pretrained(model_name) |
|
|
|
# Load an example audio (16k) |
|
audio, sample_rate = torchaudio.load(cached_path(hf_bucket_url(model_name, filename="t2_0000006682.wav"))) |
|
input_data = processor.feature_extractor(audio[0], sampling_rate=16000, return_tensors='pt') |
|
|
|
# Infer |
|
output = model(**input_data) |
|
|
|
# Output transcript without LM |
|
print(processor.tokenizer.decode(output.logits.argmax(dim=-1)[0].detach().cpu().numpy())) |
|
|
|
# Output transcript with LM |
|
print(processor.decode(output.logits.cpu().detach().numpy()[0], beam_width=100).text) |
|
``` |
|
|
|
### Model Parameters License |
|
|
|
The ASR model parameters are made available for non-commercial use only, under the terms of the Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0) license. You can find details at: https://creativecommons.org/licenses/by-nc/4.0/legalcode |
|
|
|
|
|
### Contact |
|
|
|
[email protected] |
|
|
|
[](https://twitter.com/intent/follow?screen_name=nguyenvulebinh) |