🚀 KBLab的wav2vec 2.0大模型VoxRex瑞典语(C)搭配4-gram模型
本声学模型由KBLab训练而成。更多详情请见 VoxRex-C。本仓库在此声学模型基础上,引入社交媒体4-gram语言模型,以提升性能。
🚀 快速开始
本模型可用于瑞典语的自动语音识别任务,通过结合声学模型和4-gram语言模型,能有效提升识别准确率。
✨ 主要特性
- 基于KBLab训练的声学模型VoxRex-C。
- 引入社交媒体4-gram语言模型,提升识别性能。
- 可用于瑞典语的自动语音识别任务。
📦 安装指南
文档未提及具体安装步骤,可参考transformers
库的安装方式:
pip install transformers
💻 使用示例
基础用法
以下是使用pipeline
的简单示例:
import torch
from transformers import pipeline
model_name = 'viktor-enzell/wav2vec2-large-voxrex-swedish-4gram'
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
pipe = pipeline(model=model_name).to(device)
output = pipe('path/to/audio.mp3')['text']
高级用法
以下是对Common Voice测试集的1%进行转录的示例。模型期望输入的音频采样率为16kHz,因此会将其他采样率的音频重采样至16kHz。
from transformers import Wav2Vec2ForCTC, Wav2Vec2ProcessorWithLM
from datasets import load_dataset
import torch
import torchaudio.functional as F
model_name = 'viktor-enzell/wav2vec2-large-voxrex-swedish-4gram'
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
model = Wav2Vec2ForCTC.from_pretrained(model_name).to(device);
processor = Wav2Vec2ProcessorWithLM.from_pretrained(model_name)
common_voice = load_dataset('common_voice', 'sv-SE', split='test[:1%]')
def speech_file_to_array(sample):
sampling_rate = sample['audio']['sampling_rate']
sample['speech'] = F.resample(torch.tensor(sample['audio']['array']), sampling_rate, 16_000)
return sample
common_voice = common_voice.map(speech_file_to_array)
inputs = processor(common_voice['speech'], sampling_rate=16_000, return_tensors='pt', padding=True).to(device)
with torch.no_grad():
logits = model(**inputs).logits
transcripts = processor.batch_decode(logits.cpu().numpy()).text
📚 详细文档
模型描述
VoxRex-C模型通过从瑞典文化计量学千兆词料库(Språkbanken提供)中提取的子集来估计4-gram语言模型。该子集包含2010年至2015年间社交媒体领域的4000万个单词。
训练过程
n-gram模型的文本数据会进行预处理,移除不在wav2vec 2.0词汇表中的字符,并将所有字符转换为大写。预处理完成后,将每个文本样本存储在文本文件的新行中,然后使用KenLM模型进行估计。更多详情请见 此教程。
评估结果
该模型在Common Voice测试集完整版6.1上进行了评估。VoxRex-C在未使用语言模型时的字错率(WER)为9.03%,使用语言模型后降至6.47%。
📄 许可证
本模型采用CC0-1.0许可证。
信息表格
属性 |
详情 |
模型类型 |
wav2vec 2.0大模型VoxRex瑞典语(C)搭配4-gram模型 |
训练数据 |
Common Voice、NST瑞典语ASR数据库、P4、瑞典文化计量学千兆词料库 |
评估指标 |
字错率(WER) |
评估数据集 |
Common Voice测试集6.1版本 |
无语言模型WER |
9.03% |
有语言模型WER |
6.47% |