Whisper-Wu(低语 —— 吴语语音大模型)
声息相通,文脉致远
项目简介
Whisper-Wu(低语) 是一个基于 OpenAI Whisper 的吴语方言语音模型,通过 LoRA(Low-Rank Adaptation,低秩适配)微调技术,让 Whisper 听懂吴语。
以方言为索引,构筑文化的数字镜像。
吴语是中国主要方言之一,覆盖上海、浙江、江苏南部等地区,使用人口超过 8000 万。然而在主流 ASR(Automatic Speech Recognition,自动语音识别)系统中,吴语几乎是"隐形的"——无论是 Siri、讯飞还是 Google,都无法准确识别一段上海话或宁波话。
这个项目的出发点很简单:让说吴语的人,也能被机器听懂。
模型能力
| 能力 | 说明 |
|---|---|
| Transcription(转写) | 吴语语音 → 吴语文字。保留方言原味,适合文化记录和方言研究。 |
| Translation(翻译) | 吴语语音 → 普通话文字。适合字幕生成、内容理解等应用场景。 |
当前版本:V09 ★
CER(Character Error Rate,字错率)= 0.3467,历史最佳。
V09 采用"分离声学与翻译"策略:
- 声学基底:使用 V08-Phase1 的 ASR 模型(CER=0.2943,ASR 历史最佳),通过 Speed Perturbation(语速扰动)和 SpecAugment(频谱增强)在 13,200 条增强数据上训练
- 翻译微调:在声学基底上,使用干净训练方式(无数据增强),用原始 2,570 条 AST 数据微调
版本演进
| 版本 | CER(字错率) | 策略 | 状态 |
|---|---|---|---|
| V01 | 0.6284 | 基线(Baseline),仅 AST 数据 | 存档 |
| V02 | 0.5407 | 调参(Hyperparameter Tuning),优化学习率和 LoRA rank | 存档 |
| V03 | 1.8230 | 合并 AST + ASR 数据,数据量 ×2.6 | 存档 |
| V05 | 0.4539 | 数据清洗 + LoRA r=32 | 存档 |
| V06 | 0.3600 | 阶跃训练(Staircase Training) | 前最佳 |
| V09 | 0.3467 | 最佳声学基底 + 干净翻译 | 当前最佳 ★ |
V09 相比 V06 改进了 **3.7%**。
快速使用
import torch
from transformers import WhisperProcessor, WhisperForConditionalGeneration
from peft import PeftModel
# 加载基础模型(Base Model)和吴语适配权重(LoRA Adapter)
base_model = WhisperForConditionalGeneration.from_pretrained("openai/whisper-small")
processor = WhisperProcessor.from_pretrained("kaiwang0574/whisper-wu")
# 加载 LoRA 适配器
model = PeftModel.from_pretrained(base_model, "kaiwang0574/whisper-wu")
model.eval()
# 对一段吴语音频进行转写
import soundfile as sf
audio, sr = sf.read("your_wu_dialect_audio.wav")
inputs = processor(audio, sampling_rate=16000, return_tensors="pt")
with torch.no_grad():
generated_ids = model.generate(
inputs.input_features,
language="zh",
task="transcribe",
)
text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
print(text)
在线试用
Whisper-Wu Demo — 上传吴语音频即可体验
训练数据
基于 WenetSpeech-Wu-Bench(吴语语音基准数据集),包含:
- AST(Audio Speech Translation,语音翻译):约 3000 条吴语语音 → 普通话标注(清洗后 2,570 条)
- ASR(Audio Speech Recognition,语音识别):约 4851 条吴语语音 → 吴语方言标注(清洗后 4,410 条)
总计约 7851 条真实吴语语音数据。方言覆盖:上海话 68%、普通话 17%、混合 10%。
技术方案
- Base Model(基座模型):openai/whisper-small(244M 参数)
- Fine-tuning(微调方法):LoRA(Low-Rank Adaptation,低秩适配),仅训练约 3.5% 的参数
- LoRA 配置:r=16, alpha=32, targets=q/k/v/o_proj
- 学习率:2e-5,有效 batch size 16(4 × 4 gradient accumulation)
- Early Stopping(早停):patience=5, threshold=0.0005
- Task Prefix(任务前缀):使用
<|translate|>和<|transcribe|>标记区分翻译和转写任务 - Evaluation Metric(评估指标):CER(Character Error Rate,字错率)
- 训练硬件:NVIDIA Tesla V100 16GB
开源与可持续
这个项目选择开源,因为乡音属于大众,文明不设藩篱。
核心模型权重(Model Weights)始终遵循 Apache 2.0 协议,免费开放。我们相信:
- 开源带来信任:所有训练数据、代码和权重完全透明,可审计、可复现。
- 社区驱动进化:每一条方言语音数据的贡献,都在让模型更准确。
- 可持续的探索:我们正在思考如何在保持开源精神的同时,让项目拥有长期运转的能力。这是一个进行中的课题,欢迎交流。
致谢
- OpenAI Whisper — 提供了强大的基座模型
- ASLP-lab — 提供了珍贵的吴语语音数据集
- ionkaon/dictionary — 宁波话字词典(CC-BY-4.0),shinzoqchiuq 编纂
- ionkaon/data — 宁波话历史文献数字化(CC-BY-4.0)
- HuggingFace — 开源 AI 社区基础设施(Infrastructure)
License(许可协议)
Apache 2.0 — 允许自由使用、修改和商业化,但需保留原始版权声明。
引用
如果您使用了本模型,请引用:
@misc{whisper-wu-2026,
title={Whisper-Wu: LoRA-adapted Whisper for Wu Dialect Speech Recognition and Translation},
author={Kai Wang},
year={2026},
url={https://huggingface.co/kaiwang0574/whisper-wu}
}
留住乡音的褶皱,便是留住文明的温度。我们用代码,为古老的语脉续写数字索引。
- Downloads last month
- 107
Model tree for kaiwang0574/whisper-wu
Base model
openai/whisper-small