
# Wav2Vec2-Large-XLSR-53-Hungarian

Fine-tuned [facebook/wav2vec2-large-xlsr-53](https://huggingface.co/facebook/wav2vec2-large-xlsr-53) on Hungarian using the [Common Voice](https://huggingface.co/datasets/common_voice) dataset. 
When using this model, make sure that your speech input is sampled at 16kHz.

## Usage

The model can be used directly (without a language model) as follows:

```python
import torch
import torchaudio
from datasets import load_dataset
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor

test_dataset = load_dataset("common_voice", "hu", split="test[:2%]")

processor = Wav2Vec2Processor.from_pretrained("gchhablani/wav2vec2-large-xlsr-hu")
model = Wav2Vec2ForCTC.from_pretrained("gchhablani/wav2vec2-large-xlsr-hu")

resampler = torchaudio.transforms.Resample(48_000, 16_000)

# Preprocessing the datasets.
# We need to read the aduio files as arrays
def speech_file_to_array_fn(batch):
    speech_array, sampling_rate = torchaudio.load(batch["path"])
    batch["speech"] = resampler(speech_array).squeeze().numpy()
    return batch

test_dataset = test_dataset.map(speech_file_to_array_fn)
inputs = processor(test_dataset["speech"][:2], 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)

print("Prediction:", processor.batch_decode(predicted_ids))
print("Reference:", test_dataset["sentence"][:2])
```


## Evaluation

The model can be evaluated as follows on the Portuguese test data of Common Voice.


```python
import torch
import torchaudio
from datasets import load_dataset, load_metric
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
import re

test_dataset = load_dataset("common_voice", "hu", split="test")
wer = load_metric("wer")

processor = Wav2Vec2Processor.from_pretrained("gchhablani/wav2vec2-large-xlsr-hu")
model = Wav2Vec2ForCTC.from_pretrained("gchhablani/wav2vec2-large-xlsr-hu")
model.to("cuda")

chars_to_ignore_regex = '[\,\?\.\!\-\;\:\"\“\%\‘\”\�\–\…]'
resampler = torchaudio.transforms.Resample(48_000, 16_000)

# Preprocessing the datasets.
# We need to read the aduio files as arrays
def speech_file_to_array_fn(batch):
    batch["sentence"] = re.sub(chars_to_ignore_regex, '', batch["sentence"]).lower()
    speech_array, sampling_rate = torchaudio.load(batch["path"])
    batch["speech"] = resampler(speech_array).squeeze().numpy()
    return batch

test_dataset = test_dataset.map(speech_file_to_array_fn)

# Preprocessing the datasets.
# We need to read the aduio files as arrays
def evaluate(batch):
    inputs = processor(batch["speech"], sampling_rate=16_000, return_tensors="pt", padding=True)

    with torch.no_grad():
        logits = model(inputs.input_values.to("cuda"), attention_mask=inputs.attention_mask.to("cuda")).logits

        pred_ids = torch.argmax(logits, dim=-1)
        batch["pred_strings"] = processor.batch_decode(pred_ids)
    return batch

result = test_dataset.map(evaluate, batched=True, batch_size=8)

print("WER: {:2f}".format(100 * wer.compute(predictions=result["pred_strings"], references=result["sentence"])))
```

**Test Result**: 46.75 % 

## Training

The Common Voice `train` and `validation` datasets were used for training. The code can be found [here](https://github.com/gchhablani/wav2vec2-week/blob/main/fine-tune-xlsr-wav2vec2-on-hungarian-asr.ipynb). The notebook containing the code used for evaluation can be found [here](https://colab.research.google.com/drive/1esYvWS6IkTQFfRqi_b6lAJEycuecInHE?usp=sharing).
{"language": "hu", "license": "apache-2.0", "tags": ["audio", "automatic-speech-recognition", "speech", "xlsr-fine-tuning-week"], "datasets": ["common_voice"], "metrics": ["wer"], "model-index": [{"name": "Wav2Vec2 Large 53 Hungarian by Gunjan Chhablani", "results": [{"task": {"type": "automatic-speech-recognition", "name": "Speech Recognition"}, "dataset": {"name": "Common Voice hu", "type": "common_voice", "args": "hu"}, "metrics": [{"type": "wer", "value": 46.75, "name": "Test WER"}]}]}]}
transformers pytorch jax wav2vec2 automatic-speech-recognition audio speech xlsr-fine-tuning-week hu dataset:common_voice license:apache-2.0 model-index endpoints_compatible region:us
TAGS
#transformers #pytorch #jax #wav2vec2 #automatic-speech-recognition #audio #speech #xlsr-fine-tuning-week #hu #dataset-common_voice #license-apache-2.0 #model-index #endpoints_compatible #region-us 


# Wav2Vec2-Large-XLSR-53-Hungarian

Fine-tuned facebook/wav2vec2-large-xlsr-53 on Hungarian using the Common Voice dataset. 
When using this model, make sure that your speech input is sampled at 16kHz.

## Usage

The model can be used directly (without a language model) as follows:




## Evaluation

The model can be evaluated as follows on the Portuguese test data of Common Voice.




Test Result: 46.75 % 

## Training

The Common Voice 'train' and 'validation' datasets were used for training. The code can be found here. The notebook containing the code used for evaluation can be found here.
# Wav2Vec2-Large-XLSR-53-Hungarian

Fine-tuned facebook/wav2vec2-large-xlsr-53 on Hungarian using the Common Voice dataset. 
When using this model, make sure that your speech input is sampled at 16kHz. ## Usage

The model can be used directly (without a language model) as follows: ## Evaluation

The model can be evaluated as follows on the Portuguese test data of Common Voice.




Test Result: 46.75 % ## Training

The Common Voice 'train' and 'validation' datasets were used for training. The code can be found here. The notebook containing the code used for evaluation can be found here.
TAGS
#transformers #pytorch #jax #wav2vec2 #automatic-speech-recognition #audio #speech #xlsr-fine-tuning-week #hu #dataset-common_voice #license-apache-2.0 #model-index #endpoints_compatible #region-us 
 # Wav2Vec2-Large-XLSR-53-Hungarian

Fine-tuned facebook/wav2vec2-large-xlsr-53 on Hungarian using the Common Voice dataset. 
When using this model, make sure that your speech input is sampled at 16kHz. ## Usage

The model can be used directly (without a language model) as follows: ## Evaluation

The model can be evaluated as follows on the Portuguese test data of Common Voice.




Test Result: 46.75 % ## Training

The Common Voice 'train' and 'validation' datasets were used for training. The code can be found here. The notebook containing the code used for evaluation can be found here.
passage: TAGS
#transformers #pytorch #jax #wav2vec2 #automatic-speech-recognition #audio #speech #xlsr-fine-tuning-week #hu #dataset-common_voice #license-apache-2.0 #model-index #endpoints_compatible #region-us 
# Wav2Vec2-Large-XLSR-53-Hungarian

Fine-tuned facebook/wav2vec2-large-xlsr-53 on Hungarian using the Common Voice dataset. 
When using this model, make sure that your speech input is sampled at 16kHz.## Usage

The model can be used directly (without a language model) as follows:## Evaluation

The model can be evaluated as follows on the Portuguese test data of Common Voice.




Test Result: 46.75 %## Training

The Common Voice 'train' and 'validation' datasets were used for training. The code can be found here. The notebook containing the code used for evaluation can be found here.