🚀 Wav2Vec2-Base-VoxPopuli-Finetuned
该项目基于Facebook的Wav2Vec2基础模型,此基础模型在VoxPopuli语料库的10K无标签子集上进行预训练,并在斯洛伐克语(sk)的转录数据上进行微调(更多信息请参考论文中的表1)。本项目可用于音频自动语音识别任务,为语音处理领域提供了有力支持。
✨ 主要特性
- 基于预训练的Wav2Vec2模型,在VoxPopuli语料库上进行预训练,具有良好的语音特征学习能力。
- 在斯洛伐克语转录数据上进行微调,对斯洛伐克语语音识别有较好的效果。
📦 安装指南
文档中未提及具体安装步骤,暂不展示。
💻 使用示例
基础用法
from transformers import Wav2Vec2Processor, Wav2Vec2ForCTC
from datasets import load_dataset
import torchaudio
import torch
model = Wav2Vec2ForCTC.from_pretrained("facebook/wav2vec2-base-10k-voxpopuli-ft-sk")
processor = Wav2Vec2Processor.from_pretrained("facebook/wav2vec2-base-10k-voxpopuli-ft-sk")
ds = load_dataset("common_voice", "sk", split="validation[:1%]")
common_voice_sample_rate = 48000
target_sample_rate = 16000
resampler = torchaudio.transforms.Resample(common_voice_sample_rate, target_sample_rate)
def map_to_array(batch):
speech, _ = torchaudio.load(batch["path"])
speech = resampler(speech)
batch["speech"] = speech[0]
return batch
ds = ds.map(map_to_array)
inputs = processor(ds[:5]["speech"], sampling_rate=target_sample_rate, return_tensors="pt", padding=True)
logits = model(**inputs).logits
predicted_ids = torch.argmax(logits, axis=-1)
print(processor.batch_decode(predicted_ids))
高级用法
文档中未提及高级用法相关代码,暂不展示。
📚 详细文档
论文:VoxPopuli: A Large-Scale Multilingual Speech Corpus for Representation Learning, Semi-Supervised Learning and Interpretation
作者:来自 Facebook AI 的 Changhan Wang, Morgane Riviere, Ann Lee, Anne Wu, Chaitanya Talnikar, Daniel Haziza, Mary Williamson, Juan Pino, Emmanuel Dupoux
更多信息请参考官方网站 here
📄 许可证
本项目采用CC BY-NC 4.0许可证。
属性 |
详情 |
模型类型 |
基于Wav2Vec2的自动语音识别模型 |
训练数据 |
VoxPopuli语料库的10K无标签子集及斯洛伐克语转录数据 |