模型:

vasista22/whisper-gujarati-small

英文

Whisper Gujarati Small

此模型是在Gujarati数据上进行微调的 openai/whisper-small 的版本,该数据来自于多个公开可用的ASR数据集。它作为Whisper微调活动的一部分进行了微调。

注意:用于训练该模型的代码可以在 whisper-finetune 存储库中进行重用。

使用方法

要在整个数据集上评估此模型,可以使用 whisper-finetune 存储库中提供的评估代码。

同一存储库还提供了使用whisper-jax进行更快推理的脚本。

要使用此模型对单个音频文件进行推理,可以使用以下代码片段:

>>> import torch
>>> from transformers import pipeline

>>> # path to the audio file to be transcribed
>>> audio = "/path/to/audio.format"
>>> device = "cuda:0" if torch.cuda.is_available() else "cpu"

>>> transcribe = pipeline(task="automatic-speech-recognition", model="vasista22/whisper-gujarati-small", chunk_length_s=30, device=device)
>>> transcribe.model.config.forced_decoder_ids = transcribe.tokenizer.get_decoder_prompt_ids(language="gu", task="transcribe")

>>> print('Transcription: ', transcribe(audio)["text"])

要更快地推理whisper模型,可以使用 whisper-jax 库。在使用以下代码片段之前,请按照 here 中所述的必要安装步骤进行安装:

>>> import jax.numpy as jnp
>>> from whisper_jax import FlaxWhisperForConditionalGeneration, FlaxWhisperPipline

>>> # path to the audio file to be transcribed
>>> audio = "/path/to/audio.format"

>>> transcribe = FlaxWhisperPipline("vasista22/whisper-gujarati-small", batch_size=16)
>>> transcribe.model.config.forced_decoder_ids = transcribe.tokenizer.get_decoder_prompt_ids(language="gu", task="transcribe")

>>> print('Transcription: ', transcribe(audio)["text"])

训练和评估数据

训练数据:

评估数据:

训练超参数

训练过程中使用了以下超参数:

  • learning_rate: 1.7e-05
  • train_batch_size: 48
  • eval_batch_size: 32
  • seed: 22
  • optimizer: adamw_bnb_8bit
  • lr_scheduler_type: linear
  • lr_scheduler_warmup_steps: 4000
  • training_steps: 20532(在收敛时终止。最初设置为21240步)
  • mixed_precision_training: True

致谢

此工作是在 Speech Lab, IIT Madras 进行的。

此工作的计算资源由印度政府的“Bhashini: National Language translation Mission”项目的电子和信息技术部(MeitY)资助。