/ Модель

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

Контекст
1 024 токена
Параметры
905 млн
Архитектура
whisper · dense
Опубликована
19 мая 2023

distil-whisper-large-v2-8-ls

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

Дистиллированная Whisper large-v2 с укороченным декодером для более быстрого распознавания речи.

16скачиваний за 30 дней10лайковвеса обновлены19 мая 2023

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Это дистиллированная версия Whisper large-v2 от rsonavane, созданная с помощью удаления слоёв декодера и обучения на распределениях модели-учителя. В декодере 8 слоёв вместо 32 у исходной модели; заявлены размер на 40% меньше и скорость декодирования примерно вдвое выше, чем у Whisper large-v2.

Модель предназначена для автоматического распознавания речи. На датасете LibriSpeech после дообучения в течение одной эпохи автор сообщает о WER 4,2%. В карточке также указана возможность дообучения для нескольких языков, но конкретные результаты для них не приведены. Доступны веса PyTorch; лицензия в предоставленных данных не указана.

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

  • транскрибация английской речи
  • распознавание речи в аудиозаписях
  • подготовка субтитров из речи
  • транскрибация записей LibriSpeech

Ограничения

Заявленная точность 4,2% WER получена на LibriSpeech после дообучения в течение одной эпохи; результаты на других наборах данных не приведены. Хотя карточка упоминает возможность дообучения для нескольких языков, подтверждена поддержка английского.

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

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

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

Также подходит для

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

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

Открыть на Hugging Face

Description

This model is a distilled version of the Whisper large v2 model using decoder pruning. It is trained to give the same distribution as the teacher(large-v2) model using Distillation loss (KL loss) + CE Loss. The original model contains 32 decoder layers, whereas the distilled model contains only 8 layers and achieves 4.2% WER on the librispeech dataset with finetuning for just one epoch. The decoding speed of the model is 2x faster than vanilla large-v2 and 40% smaller in size.

Train on your data

accelerate launch student-teacher-distillation-streaming.py --freeze_encoder --keep_punctuation 
--keep_case --teacher_model_name_or_path openai/whisper-large-v2 --student_model_name_or_path large-v2-2 
--student_cache_dir large-v2-2 --output_dir whisper-large-v2-2-en-cv --data_cache_dir commonvoice 
--teacher_cache_dir cache --student_cache_dir large-v2-2-en-cv --text_column sentence 
--train_dataset_name mozilla-foundation/common_voice_13_0 --train_dataset_config_name en --train_split_name train 
--validation_dataset_name mozilla-foundation/common_voice_13_0 --validation_dataset_config_name en 
--validation_split_name test --max_val_samples 2000

Inference

>>> from transformers import WhisperProcessor, WhisperForConditionalGeneration
>>> from datasets import load_dataset

>>> # load model and processor
>>> processor = WhisperProcessor.from_pretrained("rsonavane/distil-whisper-large-v2-8-ls")
>>> model = WhisperForConditionalGeneration.from_pretrained("rsonavane/distil-whisper-large-v2-8-ls")
>>> model.config.forced_decoder_ids = None

>>> # load dummy dataset and read audio files
>>> ds = load_dataset("hf-internal-testing/librispeech_asr_dummy", "clean", split="validation")
>>> sample = ds[0]["audio"]
>>> input_features = processor(sample["array"], sampling_rate=sample["sampling_rate"], return_tensors="pt").input_features 

>>> # generate token ids
>>> predicted_ids = model.generate(input_features)
>>> # decode token ids to text
>>> transcription = processor.batch_decode(predicted_ids, skip_special_tokens=False)
['<|startoftranscript|><|en|><|transcribe|><|notimestamps|> Mr. Quilter is the apostle of the middle classes and we are glad to welcome his gospel.<|endoftext|>']

>>> transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)
[' Mr. Quilter is the apostle of the middle classes and we are glad to welcome his gospel.']

Limitations

This experiment aimed to explore the effectiveness of decoder pruning and distillation in enhancing performance after training. The model acquires a similar internal representation of the English language as its teacher model, but with improved inference speed and efficiency for downstream tasks. Additionally, it can be fine-tuned for multiple languages, maintaining the original model's performance while reducing inference latency. There are other frameworks such as JAX that can help improve the same.

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
WhisperForConditionalGeneration
Ревизия весов
067ff43

0 моделей