wav2vec2-large-xlsr-53-portuguese
jonatasgrosman
automatic-speech-recognition
transformers
pt
jonatasgrosman/wav2vec2-large-xlsr-53-portuguese
3,458,442
下载量
54
收藏数
10
浏览量
apache-2.0
许可
简介
Fine-tuned XLSR-53 large model for speech recognition in Portuguese
模型卡片
许可协议
apache-2.0
语言
pt
数据集
common_voice
common_voice_6_0
audio
automatic-speech-recognition
hf-asr-leaderboard
mozilla-foundation/common_voice_6_0
pt
robust-speech-event
speech
xlsr-fine-tuning-week
模型配置
模型类型
wav2vec2
架构
Wav2Vec2ForCTC
模型详情
已翻译针对葡萄牙语语音识别微调的 XLSR-53 大型模型
基于 Common Voice 6.1 的训练集和验证集,对 facebook/wav2vec2-large-xlsr-53 进行了葡萄牙语微调。
使用该模型时,请确保语音输入的采样率为 16kHz。
该模型的微调得益于 OVHcloud 慷慨提供的 GPU 积分 :)
训练所用的脚本可在此处找到:https://github.com/jonatasgrosman/wav2vec2-sprint
使用方法
该模型可以直接使用(无需语言模型),操作如下……
使用 HuggingSound 库:
from huggingsound import SpeechRecognitionModel
model = SpeechRecognitionModel("jonatasgrosman/wav2vec2-large-xlsr-53-portuguese")
audio_paths = ["/path/to/file.mp3", "/path/to/another_file.wav"]
transcriptions = model.transcribe(audio_paths)
编写自己的推理脚本:
import torch
import librosa
from datasets import load_dataset
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
LANG_ID = "pt"
MODEL_ID = "jonatasgrosman/wav2vec2-large-xlsr-53-portuguese"
SAMPLES = 10
test_dataset = load_dataset("common_voice", LANG_ID, split=f"test[:{SAMPLES}]")
processor = Wav2Vec2Processor.from_pretrained(MODEL_ID)
model = Wav2Vec2ForCTC.from_pretrained(MODEL_ID)
# Preprocessing the datasets.
# We need to read the audio files as arrays
def speech_file_to_array_fn(batch):
speech_array, sampling_rate = librosa.load(batch["path"], sr=16_000)
batch["speech"] = speech_array
batch["sentence"] = batch["sentence"].upper()
return batch
test_dataset = test_dataset.map(speech_file_to_array_fn)
inputs = processor(test_dataset["speech"], sampling_rate=16_000, return_tensors="pt", padding=True)
with torch.no_grad():
logits = model(inputs.input_values, attention_mask=inputs.attention_mask).logits
predicted_ids = torch.argmax(logits, dim=-1)
predicted_sentences = processor.batch_decode(predicted_ids)
for i, predicted_sentence in enumerate(predicted_sentences):
print("-" * 100)
print("Reference:", test_dataset[i]["sentence"])
print("Prediction:", predicted_sentence)
| 参考文本 | 预测结果 |
|---|---|
| NEM O RADAR NEM OS OUTROS INSTRUMENTOS DETECTARAM O BOMBARDEIRO STEALTH. | NEMHUM VADAN OS OLTWES INSTRUMENTOS DE TTÉÃN UM BOMBERDEIRO OSTER |
| PEDIR DINHEIRO EMPRESTADO ÀS PESSOAS DA ALDEIA | E DIR ENGINHEIRO EMPRESTAR AS PESSOAS DA ALDEIA |
| OITO | OITO |
| TRANCÁ-LOS | TRANCAUVOS |
| REALIZAR UMA INVESTIGAÇÃO PARA RESOLVER O PROBLEMA | REALIZAR UMA INVESTIGAÇÃO PARA RESOLVER O PROBLEMA |
| O YOUTUBE AINDA É A MELHOR PLATAFORMA DE VÍDEOS. | YOUTUBE AINDA É A MELHOR PLATAFOMA DE VÍDEOS |
| MENINA E MENINO BEIJANDO NAS SOMBRAS | MENINA E MENINO BEIJANDO NAS SOMBRAS |
| EU SOU O SENHOR | EU SOU O SENHOR |
| DUAS MULHERES QUE SENTAM-SE PARA BAIXO LENDO JORNAIS. | DUAS MIERES QUE SENTAM-SE PARA BAICLANE JODNÓI |
| EU ORIGINALMENTE ESPERAVA | EU ORIGINALMENTE ESPERAVA |
评估
- 在
mozilla-foundation/common_voice_6_0数据集上使用test分割进行评估
python eval.py --model_id jonatasgrosman/wav2vec2-large-xlsr-53-portuguese --dataset mozilla-foundation/common_voice_6_0 --config pt --split test
- 在
speech-recognition-community-v2/dev_data数据集上进行评估
python eval.py --model_id jonatasgrosman/wav2vec2-large-xlsr-53-portuguese --dataset speech-recognition-community-v2/dev_data --config pt --split validation --chunk_length_s 5.0 --stride_length_s 1.0
引用
如果您想引用此模型,可以使用以下内容:
@misc{grosman2021xlsr53-large-portuguese,
title={Fine-tuned {XLSR}-53 large model for speech recognition in {P}ortuguese},
author={Grosman, Jonatas},
howpublished={\url{https://huggingface.co/jonatasgrosman/wav2vec2-large-xlsr-53-portuguese}},
year={2021}
}
正在翻译中,请稍候...
标签
jax
wav2vec2
audio
hf-asr-leaderboard
mozilla-foundation/common_voice_6_0
pt
robust-speech-event
speech
操作
详细信息
- 厂商
- jonatasgrosman
- 任务
- automatic-speech-recognition
- 框架
- transformers
- 模型类型
- wav2vec2
- 许可(HF)
- apache-2.0
- 语言
- pt