模型:

vasista22/whisper-tamil-small

英文

Whisper Tamil 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-tamil-small", chunk_length_s=30, device=device)
>>> transcribe.model.config.forced_decoder_ids = transcribe.tokenizer.get_decoder_prompt_ids(language="ta", 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-tamil-small", batch_size=16)
>>> transcribe.model.config.forced_decoder_ids = transcribe.tokenizer.get_decoder_prompt_ids(language="ta", 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: 17500
  • training_steps: 29659(最初设置为84740步)
  • mixed_precision_training: True

致谢

此工作由 Speech Lab, IIT Madras 完成。

此工作的计算资源由印度政府的“Bhashini:国家语言翻译计划”项目的电子和信息技术部(MeitY)资助。