license: apache-2.0
language: fi
metrics:
- wer
- cer
tags:
- automatic-speech-recognition
- fi
- finnish
- generated_from_trainer
- hf-asr-leaderboard
- robust-speech-event
datasets:
- mozilla-foundation/common_voice_7_0
model-index:
- name: wav2vec2-xlsr-1b-finnish-lm
results:
- task:
name: Automatic Speech Recognition
type: automatic-speech-recognition
dataset:
name: Common Voice 7
type: mozilla-foundation/common_voice_7_0
args: fi
metrics:
- name: Test WER
type: wer
value: 5.65
- name: Test CER
type: cer
value: 1.2
芬兰语ASR的Wav2Vec2 XLS-R模型
该声学模型是基于facebook/wav2vec2-xls-r-1b针对芬兰语自动语音识别(ASR)任务微调的版本,使用了259.57小时的芬兰语标注语音数据进行训练。Wav2Vec2 XLS-R模型在这篇论文中首次提出,并于该页面发布。
此仓库还包含解码阶段与声学模型配合使用的芬兰语KenLM语言模型。
注意:本模型与Finnish-NLP/wav2vec2-xlsr-1b-finnish-lm完全相同,此处仅为迁移至Finnish-NLP
组织下的副本。
注意:存在一个更优的V2版本,该版本通过额外16小时数据进行了更长时间微调:Finnish-NLP/wav2vec2-xlsr-1b-finnish-lm-v2
模型描述
Wav2Vec2 XLS-R是Facebook AI研发的大规模多语言预训练语音模型,基于43.6万小时无标注语音数据(含VoxPopuli、MLS、CommonVoice、BABEL和VoxLingua107)预训练,覆盖128种语言,采用wav2vec 2.0目标函数。
关于预训练模型的更多信息,可参阅此博客和论文。
本模型是基于10亿参数预训练模型针对芬兰语ASR任务微调的版本。
应用场景与限制
该模型适用于芬兰语语音转文本任务。
使用方法
参考本仓库中的run-finnish-asr-models.ipynb笔记本,获取详细使用示例。
局限性
由于训练数据中音频样本最大长度为20秒,本模型对类似长度的短音频效果最佳。对于更长音频可尝试使用,若出现内存不足问题,建议参考此博客介绍的音频分块处理方法。
训练数据主要来自芬兰议会数据集,可能对日常口语或方言等差异较大领域泛化能力有限。此外,数据以成年男性语音为主,对儿童或女性语音的识别效果可能欠佳。
解码阶段使用的芬兰语KenLM语言模型基于训练文本转录数据训练,可能对日常口语或方言等差异较大的语言泛化能力不足。建议针对特定领域语言训练自定义KenLM模型以提升效果。
训练数据
模型使用259.57小时芬兰语标注语音数据微调,数据来源如下:
所有数据集均过滤为不超过20秒的音频样本。
训练流程
本模型在Hugging Face组织的Robust Speech Challenge活动中训练,使用OVHcloud赞助的Tesla V100 GPU完成。
训练脚本由Hugging Face提供,详见此处,我们仅修改了自定义数据集的数据加载部分。
KenLM语言模型训练遵循Hugging Face的博客教程,5-gram模型使用训练音频的文本转录数据训练。
超参数设置
训练阶段超参数:
- 学习率:5e-05
- 训练批大小:32
- 评估批大小:8
- 随机种子:42
- 优化器:8-bit Adam,beta=(0.9,0.999),epsilon=1e-08
- 学习率调度器:线性预热500步
- 训练轮次:5
- 混合精度训练:原生AMP
预训练模型初始化参数:
- 注意力丢弃率:0.094
- 隐藏层丢弃率:0.047
- 特征投影丢弃率:0.04
- 掩码时间概率:0.082
- 层丢弃率:0.041
- 激活函数丢弃率:0.055
- CTC损失缩减方式:"mean"
训练结果
训练损失 |
轮次 |
步数 |
验证损失 |
WER |
0.968 |
0.18 |
500 |
0.4870 |
0.4720 |
0.6557 |
0.36 |
1000 |
0.2450 |
0.2931 |
... |
... |
... |
... |
... |
0.3603 |
4.84 |
13500 |
0.1235 |
0.1533 |
框架版本
- Transformers 4.17.0.dev0
- PyTorch 1.10.2+cu102
- Datasets 1.18.3
- Tokenizers 0.11.0
评估结果
在Common Voice 7.0芬兰语测试集上评估,运行仓库中的eval.py
脚本:
python3 eval.py --model_id aapot/wav2vec2-xlsr-1b-finnish-lm --dataset mozilla-foundation/common_voice_7_0 --config fi --split test
本模型(表格第二行)与其他模型的对比结果:
模型 |
带LM的WER |
无LM的WER |
带LM的CER |
无LM的CER |
aapot/wav2vec2-xlsr-1b-finnish-lm-v2 |
4.09 |
9.73 |
0.88 |
1.65 |
aapot/wav2vec2-xlsr-1b-finnish-lm |
5.65 |
13.11 |
1.20 |
2.23 |
aapot/wav2vec2-xlsr-300m-finnish-lm |
8.16 |
17.92 |
1.97 |
3.36 |
团队成员
欢迎联系我们获取更多细节 🤗