Whisper Hindi Medium 项目介绍
项目概述
Whisper Hindi Medium 项目是一个针对印地语语音识别任务进行微调的模型版本。它基于开源项目 openai/whisper-medium 并在多个公开可用的自动语音识别(ASR)语料库上的印地语数据进行了微调。这一工作是 Whisper 微调冲刺活动的一部分。
目标和应用场景
Whisper Hindi Medium 项目的主要目标是实现高效且准确的自动语音识别,特别是针对印地语语音。这一模型的应用场景包括语音到文本转换、实时翻译和各类语言处理应用。用户不仅可以评估整套数据集,还可以对单一音频文件进行推断。
技术细节
使用方法
用户可以通过 whisper-finetune 仓库中提供的评价代码来评估整个数据集。为了加快推断速度,还可以使用 whisper-jax 脚本。
以下是一个如何使用这款模型进行单一音频文件推断的代码示例:
import torch
from transformers import pipeline
# 需要转录的音频文件路径
audio = "/path/to/audio.format"
device = "cuda:0" if torch.cuda.is_available() else "cpu"
transcribe = pipeline(task="automatic-speech-recognition", model="vasista22/whisper-hindi-medium", chunk_length_s=30, device=device)
transcribe.model.config.forced_decoder_ids = transcribe.tokenizer.get_decoder_prompt_ids(language="hi", task="transcribe")
print('Transcription: ', transcribe(audio)["text"])
如果需要更快速的推断体验,可以使用 whisper-jax 库,并遵循必要安装步骤。下面是使用该库的代码示例:
import jax.numpy as jnp
from whisper_jax import FlaxWhisperForConditionalGeneration, FlaxWhisperPipline
# 需要转录的音频文件路径
audio = "/path/to/audio.format"
transcribe = FlaxWhisperPipline("vasista22/whisper-hindi-medium", batch_size=16)
transcribe.model.config.forced_decoder_ids = transcribe.tokenizer.get_decoder_prompt_ids(language="hi", task="transcribe")
print('Transcription: ', transcribe(audio)["text"])
数据集
训练数据集:项目使用了以下数据集进行模型训练:
评估数据集:以下数据集用于模型评估:
训练超参数
训练过程中使用了以下超参数:
- 学习率:1e-05
- 训练批次大小:24
- 评估批次大小:48
- 随机种子:22
- 优化器:adamw_bnb_8bit
- 学习率调度类型:线性
- 学习率调度暖启动步数:20000
- 训练步骤数:38754(初始设定为129180步)
- 混合精度训练:开启
致谢
该工作在印度理工学院马德拉斯分校的 Speech Lab 完成。计算资源由印度政府电子和信息技术部(MeitY)的“Bhashini:国家语言翻译任务”项目提供。