/ Модель

Характеристики

Параметры
405 млн
Архитектура
wav2vec2 · dense
Опубликована
24 мар 2024

Wav2vecLarge_quran_syllables_recognition

Распознавание речиАудио → текст3 профессии

Дообученная Wav2Vec2-модель транскрибирует арабское чтение Корана в слоги с огласовками.

345скачиваний за 30 дней6лайковвеса обновлены5 янв 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Распознавание речи» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

IbrahimSalah/Wav2vecLarge_quran_syllables_recognition — дообученная модель Wav2Vec2 для распознавания на слух слогов Корана с огласовками. Она принимает аудио речи и выводит транскрипцию, разбитую на слоги; например, фраза «مِنَ الْجِنَّةِ وَالنَّاسِ» записывается как «مِ نَلْ جِنْ نَ تِ وَنْ نَاْسْ». Модель содержит около 404,8 млн параметров и опубликована в формате safetensors; для декодирования также доступна 5-граммовая языковая модель.

Обучение проводилось на закрытом наборе данных и части датасета Tarteel после очистки и преобразования транскрипций в слоги. Модель предназначена для распознавания речи на арабском языке в контексте чтения Корана. Лицензия в предоставленных источниках не указана.

Сценарии применения

  • транскрибация чтения Корана по слогам
  • распознавание арабской речи с огласовками
  • получение слоговой разметки аудиозаписи чтения Корана
  • распознавание чтения Корана с декодированием 5-граммовой языковой моделью

Ограничения

Модель настроена на распознавание слогов при чтении Корана и не заявлена как универсальная система распознавания арабской речи. Обучающие данные включают закрытый датасет, поэтому их состав и охват нельзя оценить по карточке.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Quran syllables recognition with tashkeel.

This is fine tuned wav2vec2 model to recognize quran syllables from speech.
The model was trained on private dataset along with part of Tarteel dataset after cleanning and converting into syllables .
5-gram language model is available with the model.

The model transcripe audio speech into syllables .
For instance, when presented with the audio and transcription "مِنَ الْجِنَّةِ وَالنَّاسِ" the expected model output would be "مِ نَلْ جِنْ نَ تِ وَنْ نَاْسْ" .
To try it out :

!pip install datasets transformers
!pip install https://github.com/kpu/kenlm/archive/master.zip pyctcdecode
from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
from transformers import Wav2Vec2ProcessorWithLM
processor = Wav2Vec2ProcessorWithLM.from_pretrained('IbrahimSalah/Wav2vecLarge_quran_syllables_recognition')
model = Wav2Vec2ForCTC.from_pretrained("IbrahimSalah/Wav2vecLarge_quran_syllables_recognition")
import pandas as pd
dftest = pd.DataFrame(columns=['audio'])
import datasets
from datasets import Dataset
path ='/content/908-33.wav'
dftest['audio']=[path]  ## audio path
dataset = Dataset.from_pandas(dftest)
import torch
import torchaudio
def speech_file_to_array_fn(batch):
    speech_array, sampling_rate = torchaudio.load(batch["audio"])
    print(sampling_rate)
    resampler = torchaudio.transforms.Resample(sampling_rate, 16_000) # The original data was with 48,000 sampling rate. You can change it according to your input.
    batch["audio"] = resampler(speech_array).squeeze().numpy()
    return batch
import numpy as np
from datasets import load_dataset
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
test_dataset = dataset.map(speech_file_to_array_fn)
inputs = processor(test_dataset["audio"], sampling_rate=16_000, return_tensors="pt", padding=True)
with torch.no_grad():
    logits = model(inputs.input_values).logits
    print(logits.numpy().shape)

transcription = processor.batch_decode(logits.numpy()).text
print("Prediction:",transcription[0])

You can try the model with live recording using this Google Colab notebook : Live Recording Recognition

sample audios and Outputs

1-

2-

Output

1- ءُوْ لَاْ ءِ كَ لَمْ يَ كُوْ نُوْ مُعْ جِ زِيْ نَ فِلْ ءَرْ ضِ وَ مَاْ كَاْ نَ لَ ھُمْ مِنْ ءَوْ لِ يَاْ
2- ءِذْ قَاْ لَ يُوْ سُ فُ لِ ءَيْ بِيْ ھِ يَاْ ءَ بَ تِ ءِنْ نِيْ رَ ءَيْ تُ ءَ حَ دَ عَ شَ رَ كَوْ كَ بَلْ وَشْ شَمْ سَ وَلْ قَ مَ ضَ رَ ءَيْ تُ ھُمْ لِيْ سَاْ جِ دِيْنْ

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
Wav2Vec2ForCTC
Ревизия весов
6eeb58d

0 моделей