lgris/wav2vec2-xls-r-300m-tagarela-v2
061
Wav2Vec2 XLS-R 300M - Fine-tuned no TAGARELA v2 (100% Streaming)
Este modelo é uma versão fine-tuned do [facebook/wav2vec2-xls-r-300m](https://huggingface.co/facebook/wav2vec2-xls-r-300m) (modelo multilíngue pré-treinado em 436.000 horas de áudio em 128 idiomas) adaptado para o Português Brasileiro no dataset [TAGARELA v2](https://huggingface.co/datasets/freds0/TAGARELA_v2).
Descrição do Modelo
- Modelo Base:
facebook/wav2vec2-xls-r-300m(300 milhões de parâmetros) - Dataset de Fine-Tuning: TAGARELA v2 (100% dos dados, 2.224 shards Parquet, ~13.127 horas de áudio)
- Idioma: Português Brasileiro (
pt-BR) - Amostragem de Áudio: 16 kHz mono
- Vocabulário: 51 tokens (minúsculas, caracteres acentuados, delimitador
|)
Resultados de Avaliação (Benchmarks)
O modelo foi avaliado nos conjuntos de teste de 3 datasets de referência em português:
Evolução do WER ao longo do Treinamento:
Comparativo com outros modelos:
Como Usar
1. Pipeline do Hugging Face
import torch
from transformers import pipeline
transcriber = pipeline(
"automatic-speech-recognition",
model="lgris/wav2vec2-xls-r-300m-tagarela-v2",
device=0 if torch.cuda.is_available() else -1
)
result = transcriber("audio.wav")
print("Transcrição:", result["text"])2. Wav2Vec2ForCTC direto
import torch
import librosa
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
model_id = "lgris/wav2vec2-xls-r-300m-tagarela-v2"
processor = Wav2Vec2Processor.from_pretrained(model_id)
model = Wav2Vec2ForCTC.from_pretrained(model_id)
speech_array, _ = librosa.load("audio.wav", sr=16000)
inputs = processor(speech_array, sampling_rate=16000, return_tensors="pt", padding=True)
with torch.no_grad():
logits = model(inputs.input_values).logits
predicted_ids = torch.argmax(logits, dim=-1)
transcription = processor.batch_decode(predicted_ids)[0]
print("Transcrição:", transcription)Hiperparâmetros de Treinamento
- Max Steps: 100.000
- Batch Size Efetivo: 128 (8 por device $\times$ 16 gradient accumulation steps)
- Learning Rate: 3e-5 com warm-up linear de 5.000 steps
- Precisão: bfloat16 (
bf16=True) - Feature Encoder: Congelado (
freeze_feature_encoder=True) - Tempo de Treinamento: ~48 horas em 1x NVIDIA B200 GPU
