许可证:apache-2.0
语言:芬兰语
评估指标:
标签:
- 自动语音识别
- 芬兰语
- 芬兰文
- 训练生成
- hf-asr排行榜
- 鲁棒语音赛事
数据集:
- mozilla-foundation/common_voice_7_0
模型索引:
- 名称:wav2vec2-xlsr-300m-finnish-lm
结果:
- 任务:
名称:自动语音识别
类型:automatic-speech-recognition
数据集:
名称:Common Voice 7
类型:mozilla-foundation/common_voice_7_0
参数:fi
指标:
- 名称:测试WER
类型:wer
值:8.16
- 名称:测试CER
类型:cer
值:1.97
芬兰语ASR的Wav2Vec2 XLS-R模型
本声学模型是基于facebook/wav2vec2-xls-r-300m针对芬兰语自动语音识别(ASR)任务微调的版本。模型使用了275.6小时的芬兰语标注语音数据进行微调。Wav2Vec2 XLS-R模型在此论文中首次提出,并在此页面发布。
此仓库还包含解码阶段与声学模型配合使用的芬兰语KenLM语言模型。
注意:此模型与Finnish-NLP/wav2vec2-xlsr-300m-finnish-lm完全相同,仅迁移至Finnish-NLP
组织下。
模型描述
Wav2Vec2 XLS-R是Facebook AI研发的大规模多语言预训练语音模型,基于43.6万小时无标注语音数据(含VoxPopuli、MLS、CommonVoice、BABEL及VoxLingua107)预训练,支持128种语言,采用wav2vec 2.0目标函数。
预训练模型详情可参阅博客和论文。
本模型是基于预训练模型(3亿参数版本)针对芬兰语ASR任务的微调版本。
用途与限制
适用于芬兰语语音转文本任务。
使用方法
参考仓库中的run-finnish-asr-models.ipynb笔记本获取详细示例。
局限性
- 音频长度:模型微调时使用的音频最长20秒,对超长音频可能需采用分块处理。
- 数据偏差:训练数据主要来自芬兰议会记录,对日常口语或方言的泛化能力有限,且数据以成年男性为主,可能影响对儿童或女性语音的识别效果。
- 语言模型:解码使用的KenLM语言模型基于音频文本和芬兰维基百科子集训练,对非正式文本(如方言)可能表现不佳,建议针对特定领域训练自定义语言模型。
训练数据
模型微调使用的275.6小时芬兰语数据来源:
数据集 |
时长 |
占比 |
Common Voice 7.0 |
9.70小时 |
3.52% |
芬兰议会会议2 |
0.24小时 |
0.09% |
VoxPopuli芬兰语 |
21.97小时 |
7.97% |
CSS10芬兰语 |
10.32小时 |
3.74% |
Aalto议会语料库 |
228.00小时 |
82.73% |
芬兰广播语料库 |
5.37小时 |
1.95% |
所有音频样本长度不超过20秒。
训练过程
模型在Hugging Face组织的鲁棒语音挑战赛中训练,硬件由OVHcloud赞助的Tesla V100 GPU支持。
训练脚本基于Hugging Face提供的代码修改数据加载部分。
KenLM语言模型训练遵循Hugging Face教程,使用音频文本及10万条清洗后的芬兰维基百科(2021年8月)数据训练5-gram模型。
超参数
- 学习率:5e-04
- 批次大小:32
- 优化器:8-bit Adam (beta=0.9/0.999, epsilon=1e-08)
- 学习率调度:线性预热500步
- 训练轮次:10
- 混合精度:Native AMP
预训练模型初始化参数:
- 注意力丢弃率:0.094
- 隐藏层丢弃率:0.047
- 特征投影丢弃率:0.04
- 掩码时间概率:0.082
训练结果
训练损失 |
轮次 |
步数 |
验证损失 |
WER |
0.973 → 0.27 |
0.17 → 9.89 |
500 → 29500 |
0.5750 → 0.1484 |
0.6844 → 0.1800 |
框架版本
- Transformers 4.17.0.dev0
- PyTorch 1.10.2+cu102
- Datasets 1.18.3
- Tokenizers 0.11.0
评估结果
在Common Voice 7.0芬兰语测试集上评估:
python3 eval.py --model_id aapot/wav2vec2-xlsr-300m-finnish-lm --dataset mozilla-foundation/common_voice_7_0 --config fi --split test
模型性能对比(WER/CER,带/不带语言模型):
模型 |
WER (有LM) |
WER (无LM) |
CER (有LM) |
CER (无LM) |
1B参数v2 |
4.09 |
9.73 |
0.88 |
1.65 |
1B参数 |
5.65 |
13.11 |
1.20 |
2.23 |
300M参数 |
8.16 |
17.92 |
1.97 |
3.36 |
团队成员
欢迎联系我们获取更多细节! 🤗