Xls R 300m Sv
基于facebook/wav2vec2-xls-r-300m在瑞典语数据集上微调的自动语音识别模型
下载量 28
发布时间 : 3/2/2022
模型简介
这是一个针对瑞典语优化的自动语音识别(ASR)模型,基于XLS-R-300m架构,在Common Voice 7瑞典语数据集上微调,能够将瑞典语语音转换为文本。
模型特点
瑞典语优化
专门针对瑞典语语音识别进行微调,在瑞典语数据集上表现优异
多数据集验证
在Common Voice 7和鲁棒语音赛事数据集上均进行了评估
支持语言模型集成
可结合语言模型进一步提升识别准确率
模型能力
瑞典语语音识别
长音频处理(支持分块处理)
高准确率文本转录
使用案例
语音转录
瑞典语语音转文字
将瑞典语语音内容转换为文本
测试WER 16.98(CV7), 27.01(鲁棒赛事)
语音助手
瑞典语语音指令识别
用于瑞典语语音助手或控制系统
🚀 XLS-R-300m - 瑞典语版
本模型是基于 facebook/wav2vec2-xls-r-300m 在 MOZILLA - FOUNDATION/COMMON_VOICE_7_0 - SV - SE 数据集上进行微调的版本。它在自动语音识别任务上表现出色,为瑞典语语音处理提供了有效的解决方案。
✨ 主要特性
- 基于预训练模型微调,在瑞典语语音识别任务上有良好表现。
- 提供了详细的训练超参数和评估结果。
- 支持使用语言模型(LM)进行推理。
📦 安装指南
文档未提供安装步骤,故跳过此章节。
💻 使用示例
基础用法
import torch
from datasets import load_dataset
from transformers import AutoModelForCTC, AutoProcessor
import torchaudio.functional as F
model_id = "hf-test/xls-r-300m-sv"
sample_iter = iter(load_dataset("mozilla-foundation/common_voice_7_0", "sv-SE", split="test", streaming=True, use_auth_token=True))
sample = next(sample_iter)
resampled_audio = F.resample(torch.tensor(sample["audio"]["array"]), 48_000, 16_000).numpy()
model = AutoModelForCTC.from_pretrained(model_id)
processor = AutoProcessor.from_pretrained(model_id)
input_values = processor(resampled_audio, return_tensors="pt").input_values
with torch.no_grad():
logits = model(input_values).logits
transcription = processor.batch_decode(logits.numpy()).text
# => "jag lämnade grovjobbet åt honom"
高级用法
文档未提供高级用法相关内容,故跳过此部分。
📚 详细文档
模型评估结果
本模型在以下数据集上进行了评估,并取得了相应的结果:
数据集 | 评估指标 | 值 |
---|---|---|
Common Voice 7(测试集) | 测试词错误率(Test WER) | 16.98 |
Common Voice 7(测试集) | 测试字符错误率(Test CER) | 5.66 |
Robust Speech Event - Dev Data | 测试词错误率(Test WER) | 27.01 |
Robust Speech Event - Dev Data | 测试字符错误率(Test CER) | 13.14 |
评估命令
- 在
mozilla - foundation/common_voice_7_0
数据集的test
分割上进行评估:
python eval.py --model_id hf-test/xls-r-300m-sv --dataset mozilla-foundation/common_voice_7_0 --config sv-SE --split test
- 在
speech - recognition - community - v2/dev_data
数据集上进行评估:
python eval.py --model_id hf-test/xls-r-300m-sv --dataset speech-recognition-community-v2/dev_data --config sv --split validation --chunk_length_s 5.0 --stride_length_s 1.0
带语言模型的推理
import torch
from datasets import load_dataset
from transformers import AutoModelForCTC, AutoProcessor
import torchaudio.functional as F
model_id = "hf-test/xls-r-300m-sv"
sample_iter = iter(load_dataset("mozilla-foundation/common_voice_7_0", "sv-SE", split="test", streaming=True, use_auth_token=True))
sample = next(sample_iter)
resampled_audio = F.resample(torch.tensor(sample["audio"]["array"]), 48_000, 16_000).numpy()
model = AutoModelForCTC.from_pretrained(model_id)
processor = AutoProcessor.from_pretrained(model_id)
input_values = processor(resampled_audio, return_tensors="pt").input_values
with torch.no_grad():
logits = model(input_values).logits
transcription = processor.batch_decode(logits.numpy()).text
# => "jag lämnade grovjobbet åt honom"
Common Voice 7 “test” 集的评估结果(WER)
无语言模型 | 有语言模型(运行 ./eval.py ) |
---|---|
24.68 | 16.98 |
🔧 技术细节
训练超参数
在训练过程中使用了以下超参数:
- 学习率(learning_rate):7.5e - 05
- 训练批次大小(train_batch_size):8
- 评估批次大小(eval_batch_size):8
- 随机种子(seed):42
- 梯度累积步数(gradient_accumulation_steps):4
- 总训练批次大小(total_train_batch_size):32
- 优化器(optimizer):Adam,β1 = 0.9,β2 = 0.999,ε = 1e - 08
- 学习率调度器类型(lr_scheduler_type):线性
- 学习率调度器热身步数(lr_scheduler_warmup_steps):2000
- 训练轮数(num_epochs):50.0
- 混合精度训练(mixed_precision_training):Native AMP
训练结果
训练损失 | 轮数 | 步数 | 验证损失 | 词错误率(Wer) |
---|---|---|---|---|
3.3349 | 1.45 | 500 | 3.2858 | 1.0 |
2.9298 | 2.91 | 1000 | 2.9225 | 1.0000 |
2.0839 | 4.36 | 1500 | 1.1546 | 0.8295 |
1.7093 | 5.81 | 2000 | 0.6827 | 0.5701 |
1.5855 | 7.27 | 2500 | 0.5597 | 0.4947 |
1.4831 | 8.72 | 3000 | 0.4923 | 0.4527 |
1.4416 | 10.17 | 3500 | 0.4670 | 0.4270 |
1.3848 | 11.63 | 4000 | 0.4341 | 0.3980 |
1.3749 | 13.08 | 4500 | 0.4203 | 0.4011 |
1.3311 | 14.53 | 5000 | 0.4310 | 0.3961 |
1.317 | 15.99 | 5500 | 0.3898 | 0.4322 |
1.2799 | 17.44 | 6000 | 0.3806 | 0.3572 |
1.2771 | 18.89 | 6500 | 0.3828 | 0.3427 |
1.2451 | 20.35 | 7000 | 0.3702 | 0.3359 |
1.2182 | 21.8 | 7500 | 0.3685 | 0.3270 |
1.2152 | 23.26 | 8000 | 0.3650 | 0.3308 |
1.1837 | 24.71 | 8500 | 0.3568 | 0.3187 |
1.1721 | 26.16 | 9000 | 0.3659 | 0.3249 |
1.1764 | 27.61 | 9500 | 0.3547 | 0.3145 |
1.1606 | 29.07 | 10000 | 0.3514 | 0.3104 |
1.1431 | 30.52 | 10500 | 0.3469 | 0.3062 |
1.1047 | 31.97 | 11000 | 0.3313 | 0.2979 |
1.1315 | 33.43 | 11500 | 0.3298 | 0.2992 |
1.1022 | 34.88 | 12000 | 0.3296 | 0.2973 |
1.0935 | 36.34 | 12500 | 0.3278 | 0.2926 |
1.0676 | 37.79 | 13000 | 0.3208 | 0.2868 |
1.0571 | 39.24 | 13500 | 0.3322 | 0.2885 |
1.0536 | 40.7 | 14000 | 0.3245 | 0.2831 |
1.0525 | 42.15 | 14500 | 0.3285 | 0.2826 |
1.0464 | 43.6 | 15000 | 0.3223 | 0.2796 |
1.0415 | 45.06 | 15500 | 0.3166 | 0.2774 |
1.0356 | 46.51 | 16000 | 0.3177 | 0.2746 |
1.04 | 47.96 | 16500 | 0.3150 | 0.2735 |
1.0209 | 49.42 | 17000 | 0.3175 | 0.2731 |
框架版本
- Transformers:4.16.0.dev0
- Pytorch:1.10.0 + cu102
- Datasets:1.17.1.dev0
- Tokenizers:0.10.3
📄 许可证
本模型采用 Apache - 2.0 许可证。
Voice Activity Detection
MIT
基于pyannote.audio 2.1版本的语音活动检测模型,用于识别音频中的语音活动时间段
语音识别
V
pyannote
7.7M
181
Wav2vec2 Large Xlsr 53 Portuguese
Apache-2.0
这是一个针对葡萄牙语语音识别任务微调的XLSR-53大模型,基于Common Voice 6.1数据集训练,支持葡萄牙语语音转文本。
语音识别 其他
W
jonatasgrosman
4.9M
32
Whisper Large V3
Apache-2.0
Whisper是由OpenAI提出的先进自动语音识别(ASR)和语音翻译模型,在超过500万小时的标注数据上训练,具有强大的跨数据集和跨领域泛化能力。
语音识别 支持多种语言
W
openai
4.6M
4,321
Whisper Large V3 Turbo
MIT
Whisper是由OpenAI开发的最先进的自动语音识别(ASR)和语音翻译模型,经过超过500万小时标记数据的训练,在零样本设置下展现出强大的泛化能力。
语音识别
Transformers 支持多种语言

W
openai
4.0M
2,317
Wav2vec2 Large Xlsr 53 Russian
Apache-2.0
基于facebook/wav2vec2-large-xlsr-53模型微调的俄语语音识别模型,支持16kHz采样率的语音输入
语音识别 其他
W
jonatasgrosman
3.9M
54
Wav2vec2 Large Xlsr 53 Chinese Zh Cn
Apache-2.0
基于facebook/wav2vec2-large-xlsr-53模型微调的中文语音识别模型,支持16kHz采样率的语音输入。
语音识别 中文
W
jonatasgrosman
3.8M
110
Wav2vec2 Large Xlsr 53 Dutch
Apache-2.0
基于facebook/wav2vec2-large-xlsr-53微调的荷兰语语音识别模型,在Common Voice和CSS10数据集上训练,支持16kHz音频输入。
语音识别 其他
W
jonatasgrosman
3.0M
12
Wav2vec2 Large Xlsr 53 Japanese
Apache-2.0
基于facebook/wav2vec2-large-xlsr-53模型微调的日语语音识别模型,支持16kHz采样率的语音输入
语音识别 日语
W
jonatasgrosman
2.9M
33
Mms 300m 1130 Forced Aligner
基于Hugging Face预训练模型的文本与音频强制对齐工具,支持多种语言,内存效率高
语音识别
Transformers 支持多种语言

M
MahmoudAshraf
2.5M
50
Wav2vec2 Large Xlsr 53 Arabic
Apache-2.0
基于facebook/wav2vec2-large-xlsr-53微调的阿拉伯语语音识别模型,在Common Voice和阿拉伯语语音语料库上训练
语音识别 阿拉伯语
W
jonatasgrosman
2.3M
37
精选推荐AI模型
Llama 3 Typhoon V1.5x 8b Instruct
专为泰语设计的80亿参数指令模型,性能媲美GPT-3.5-turbo,优化了应用场景、检索增强生成、受限生成和推理任务
大型语言模型
Transformers 支持多种语言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一个基于SODA数据集训练的超小型对话模型,专为边缘设备推理设计,体积仅为Cosmo-3B模型的2%左右。
对话系统
Transformers 英语

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基于RoBERTa架构的中文抽取式问答模型,适用于从给定文本中提取答案的任务。
问答系统 中文
R
uer
2,694
98