缩小低资源文本转语音的质量差距:针对高棉语和韩语的VoxCPM2 LoRA微调
摘要
本文研究了VoxCPM2 TTS模型的LoRA微调,以改善低资源语言(如高棉语)的质量,同时显示对于基础模型已处理良好的韩语没有提升。该适配器在极少的参数训练下,显著提高了高棉语的MOS评分。
arXiv:2606.26618v1 公告类型:新
摘要:大型预训练文本转语音(TTS)模型在资源丰富的语言上听起来几乎与人类无异,但对于训练数据中稀有的语言则表现差得多。我们使用VoxCPM2研究了高棉语和韩语的质量差距,VoxCPM2是一个拥有24亿参数、无需分词器的TTS模型,它将MiniCPM-4语言模型骨干与流匹配扩散解码器结合。我们构建了一个统一的、带有语言标签的语料库,约26小时,并使用一个低秩适配(LoRA)适配器对VoxCPM2进行适配,该适配器同时针对两种语言训练,并添加到语言模型和解码器中。适配器以零初始化,因此训练完全从原始(零样本)模型开始。在母语者听力测试中,使用最佳适配器(秩64)时,高棉语平均意见得分(MOS)从3.85提升至4.23,这是非常显著的提升(配对Wilcoxon检验,p<0.001),而仅训练了0.19%至3.03%的参数。然而,自动损失和人工评分对最佳秩存在分歧:验证损失在秩128时最低,但MOS在秩64时达到峰值。同样的适配器对韩语没有提升,因为基础模型已经能很好地处理韩语,在高秩下甚至会降低质量。因此,适配主要在基础模型真正薄弱的地方才有帮助。
查看缓存全文
缓存时间: 2026/06/26 05:18
# 缩小低资源文本转语音的质量差距:针对高棉语和韩语的 VoxCPM2 LoRA 微调
来源:https://arxiv.org/html/2606.26618
Phannet Pov1,2, Sovandara Chhoun1, Hyun Woo Park1, Wan\-Sup Cho3, Saksonita Khoeurn3,4∗\\ast
###### 摘要
大型预训练文本转语音(TTS)模型在资源丰富的语言上几乎达到人类水平,但对于训练数据中罕见的语言则表现差得多。我们以 VoxCPM2 为研究对象,这是一个 2.4B 参数、无分词器的 TTS 模型,它将 MiniCPM-4 语言模型主干与流匹配扩散解码器相结合,研究了高棉语和韩语的质量差距。我们构建了一个共享的、带语言标签的约 26 小时的语料库,并使用单个低秩适应(LoRA)适配器对 VoxCPM2 进行微调,该适配器同时针对两种语言训练,并同时添加到语言模型和解码器中。适配器初始化为零,因此训练从原始(零样本)模型完全相同的状态开始。在母语者听力测试中,使用最佳适配器(秩 64)时,高棉语的平均意见得分(MOS)从 `3.85` 上升到 `4.23`(配对 Wilcoxon 检验,`p<0.001`),这是高度显著的提升,而仅训练了 0.19% 到 3.03% 的参数。然而,自动损失和人类评分对最佳秩的判断不一致:验证损失在秩 128 时最低,但 MOS 在秩 64 时达到峰值。同样的适配器对韩语(基础模型已经处理得很好的语言)没有带来提升,在高秩时甚至降低了质量。因此,适应主要帮助了基础模型真正薄弱的语言。
## I. 引言
神经文本转语音(TTS)发展迅速。早期系统如 Tacotron 2[1](https://arxiv.org/html/2606.26618#bib.bib1) 和 FastSpeech 2[2](https://arxiv.org/html/2606.26618#bib.bib2) 预测中间声学特征,而较新的端到端和大型生成系统[3](https://arxiv.org/html/2606.26618#bib.bib3), [4](https://arxiv.org/html/2606.26618#bib.bib4) 在英语和普通话等资源丰富的语言上如今已接近人类质量,这在很大程度上归功于大规模预训练。诸如 VoxCPM[5](https://arxiv.org/html/2606.26618#bib.bib5) 及其继任者 VoxCPM2[6](https://arxiv.org/html/2606.26618#bib.bib6) 这样的基础模型在数百万小时的多语言语音上训练,并合成高度自然、上下文感知的语音。
即便如此,输出尚未达到母语者的水平。来自基础模型的零样本合成已经可用,但它仍然存在发音错误、重音和语调放置不当的问题,并且保留了听众能察觉到的合成感。对于在预训练中很少出现的低资源语言[7](https://arxiv.org/html/2606.26618#bib.bib7), [8](https://arxiv.org/html/2606.26618#bib.bib8),这种不足更加明显,而这正是我们针对的情况。我们的主要案例是高棉语(柬埔寨的官方语言),一种真正的低资源语言,其拼写(与英语或韩语不同)单词之间没有空格[9](https://arxiv.org/html/2606.26618#bib.bib9)。为了将真正的适应与任何语言都能获得的提升区分开来,我们将高棉语与基础模型已经处理得很好的韩语配对。
传统的补救方法是全微调,即更新每个参数。它可以恢复质量,但代价高昂:大量的计算和存储空间、每种语言一个单独的数十亿参数检查点,以及模型可能忘记已有知识的风险。参数高效微调(PEFT)避免了这种情况。特别是低秩适应(LoRA)[10](https://arxiv.org/html/2606.26618#bib.bib10),它冻结预训练权重,只训练小的低秩矩阵,因此只改变极小一部分参数。LoRA 在大语言模型中已得到很好的应用[10](https://arxiv.org/html/2606.26618#bib.bib10), [11](https://arxiv.org/html/2606.26618#bib.bib11),但在语音领域仍有两个问题未解决:它能在多大程度上缩小低资源 TTS 的质量差距,以及一个*单一的共享*适配器能否同时服务于几种非常不同的语言。
本文研究 VoxCPM2 上的一个小型 LoRA 适配器是否能缩小这一差距,以基础模型覆盖程度不同的高棉语和韩语为研究对象。我们的贡献包括:
- • **一个适用于两种语言和两个模块的共享适配器。** 我们在高棉语和韩语上共同训练一个*单一* LoRA 适配器,并将其添加到*两个*模块(MiniCPM-4 语言模型和流匹配解码器)中。一个小的适配器(占参数的 `0.19%` 到 `3.03%`)即可服务于两种文字,无需每种语言一个单独的模型。据我们所知,这是对高棉语基础 TTS 模型的首次参数高效适应。
- • **适应仅帮助基础模型薄弱的语言。** 我们测量了母语者的 MOS 并进行了显著性检验。同样的适配器给基础模型覆盖不佳的高棉语带来了巨大且高度显著的提升(总体 MOS 从 3.85 提升至 4.23,提高了 0.38 分,`p<0.001`),但对基础模型已覆盖良好的韩语没有显著提升(最佳秩仅提高 0.11 分,`p=0.49`);高秩甚至使韩语变差。因此,该适配器填补的是真正的缺陷,而非均匀地帮助每种语言。
- • **训练损失不能预测最佳秩。** 我们测试了秩 8、16、32、64 和 128。验证损失在秩 128 时最低,但高棉语 MOS(自然度、韵律、发音)在秩 64 时最高,随后下降。因此损失高估了额外容量的价值。秩应通过听力测试来选择,而秩 8 的小适配器已经恢复了大部分提升。
- • **作为模型已学知识的简单探针的适应。** 由于适配器从精确的零样本模型开始,它帮助多少(以及是否帮助)显示了基础模型已经学习了该语言多少。有用的秩随着这种差距而增长。这给出了明确的建议(高棉语用秩 64;不要为了整体质量微调韩语,并避免秩 64 或更高),并表明当语言不同时,单一的全局秩是错误的。
## II. 相关工作
### II-A 神经文本转语音
现代 TTS 始于两阶段神经流水线:Tacotron 2[1](https://arxiv.org/html/2606.26618#bib.bib1) 自回归地预测梅尔频谱图并与神经声码器配对,而 FastSpeech 2[2](https://arxiv.org/html/2606.26618#bib.bib2) 引入了具有显式时长、音高和能量建模的非自回归合成。完全端到端的系统如 VITS[3](https://arxiv.org/html/2606.26618#bib.bib3) 结合了变分推理与对抗训练和归一化流。随后,大型生成模型将 TTS 重塑为条件语言建模或扩散问题:VALL-E[4](https://arxiv.org/html/2606.26618#bib.bib4) 将零样本 TTS 框架化为神经编解码语言建模。VoxCPM[5](https://arxiv.org/html/2606.26618#bib.bib5) 背离了离散编解码方法,采用*无分词器*设计,直接对连续声学表示建模,而 VoxCPM2[6](https://arxiv.org/html/2606.26618#bib.bib6) 将其扩展到 2.4B 参数的模型,将 MiniCPM-4[12](https://arxiv.org/html/2606.26618#bib.bib12) 主干与流匹配[13](https://arxiv.org/html/2606.26618#bib.bib13) 扩散解码器相结合。我们采用 VoxCPM2 作为基础模型。
### II-B 多语言和低资源 TTS
将语音技术扩展到低资源语言是一个长期挑战。大规模语料库项目,如大规模多语言语音项目[7](https://arxiv.org/html/2606.26618#bib.bib7) 和 Common Voice[14](https://arxiv.org/html/2606.26618#bib.bib14),扩大了语言覆盖范围,而零样本和跨语言系统如 YourTTS[15](https://arxiv.org/html/2606.26618#bib.bib15) 和 XTTS[16](https://arxiv.org/html/2606.26618#bib.bib16) 则从有限数据中迁移到新说话人和语言。尽管如此,像高棉语这样的语言仍然数据稀少,而名义上支持的低资源语言的质量通常落后于高资源语言,这促使了有针对性的适应。
### II-C TTS 适应
有一系列工作将预训练 TTS 模型从有限数据适应到新的说话人、风格或语言[18](https://arxiv.org/html/2606.26618#bib.bib18)。例如,AdaSpeech[17](https://arxiv.org/html/2606.26618#bib.bib17) 在仅更新一小部分参数的同时适应模型,预示了参数高效的方法。这些方法确立了高质量适应不需要重新训练整个模型。我们的工作将这一路线扩展到 2.4B 参数基础 TTS 模型的轻量级、联合多语言适应,其中一个单一的共享低秩适配器同时服务于两种类型上不同、低资源的语言。
### II-D 参数高效微调
参数高效微调通过仅更新大型预训练模型的一小部分参数来适应它们。LoRA[10](https://arxiv.org/html/2606.26618#bib.bib10) 将可训练的低秩矩阵注入到原本冻结的权重中,而 QLoRA[11](https://arxiv.org/html/2606.26618#bib.bib11) 通过量化主干进一步降低内存。PEFT 是适应大语言模型的标准方法,并且越来越多地应用于语音[19](https://arxiv.org/html/2606.26618#bib.bib19)。它在缩小低资源 TTS 质量差距方面的用途,以及一个单一的共享适配器能否同时服务于多个类型上不同的语言,尚未得到充分关注;我们直接针对这个问题进行研究。
## III. 方法
参见图注图 1:所提出的用于 VoxCPM2 的共享 LoRA 微调流水线。
### III-A 模型
图 1 展示了我们流水线的概览。我们基于 VoxCPM2[6](https://arxiv.org/html/2606.26618#bib.bib6),一个约 `2.39×10^9` 参数的无分词器 TTS 模型。输入是一个文本提示,在经过归一化、分词和 BPE 分词后输入模型。VoxCPM2 有两个部分。第一部分是 MiniCPM-4[12](https://arxiv.org/html/2606.26618#bib.bib12) 语言模型主干(隐藏层大小 2048,28 个 Transformer 层加 8 个残差层,16 个注意力头带 2 个键/值头,词汇量 73,440),其中文本语义阶段(TSLM)、有限标量量化阶段(FSQ)和残差声学阶段(RALM)将令牌转换为声学表示。第二部分是流匹配[13](https://arxiv.org/html/2606.26618#bib.bib13) 扩散 Transformer(DiT)解码器,显示为一个局部 DiT(LocDiT)后接 AudioVAE V2 声码器,产生连续声学特征(特征维度 64,补丁大小 4)并渲染 48 kHz 音频。与使用离散编解码令牌的系统[4](https://arxiv.org/html/2606.26618#bib.bib4) 不同,VoxCPM2 直接预测连续特征,从而避免了编解码量化伪影。
### III-B 语料库
我们从公开和内部来源构建了一个高棉语(km)和韩语(ko)的语料库,总结于表 I:由柬埔寨数字研究与创新研究所(IDRI)提供的高棉语语料库;韩语单说话人(KSS)语料库[20](https://arxiv.org/html/2606.26618#bib.bib20);以及韩语 Common Voice/FLEURS[14](https://arxiv.org/html/2606.26618#bib.bib14), [8](https://arxiv.org/html/2606.26618#bib.bib8)。我们通过四个步骤准备数据。`(i)` **聚合**:我们将每个片段与其转录文本配对并测量其时长。`(ii)` **清洗**:我们丢弃时长小于 0.5 秒或大于 20 秒的片段,并检查音频和文本是否匹配。`(iii)` **分词**:我们在每个转录文本前面添加一个语言标签(`[km]` 或 `[ko]`),并使用 VoxCPM2 分词器(词汇量 73,440)进行编码;我们丢弃文本令牌超过 256 的片段,剩下 3,717 个高棉语片段和 15,658 个韩语片段。`(iv)` **清单构建**:我们将每种语言按 90/10 分割为训练集和验证集,然后重复(上采样)高棉语训练片段,直到高棉语占训练混合的 40%,以弥补其稀缺性。这得到了 23,487 个训练片段(9,395 个高棉语 / 14,092 个韩语)和 1,938 个验证片段(372 个高棉语 / 1,566 个韩语)。我们将验证集保持自然比例,以便公平测量损失。
**表 I:按语言划分的训练语料库组成。**
### III-C 联合多语言 LoRA 适应
我们不微调所有参数,而是将单个共享的 LoRA[10](https://arxiv.org/html/2606.26618#bib.bib10) 适配器附加到冻结的主干上。对于预训练权重矩阵 `W0∈R^(d×k)`,LoRA 将更新约束为低秩乘积:
```
W = W0 + ΔW = W0 + (α/r) B A,
```
这里 `A∈R^(r×k)` 使用 Kaiming 均匀初始化,`B∈R^(d×r)` 设为零。因此 `ΔW=0` 在开始时,训练从原始(零样本)模型精确相同的点开始。我们将适配器添加到*两个*模块(语言模型的基础层和残差层,以及 DiT 解码器)的注意力中的查询、键、值和输出投影上。前馈线性层和音频 VAE 保持冻结。我们设置 `α=2r`,并尝试秩 8、16、32、64 和 128。这可训练参数为 4.5 到 72.4 百万,即基础模型的 0.19% 到 3.03%。
核心设计选择是训练*一个*适配器在带语言标签的数据上共同处理高棉语和韩语。因此,一组低秩矩阵学习两种文字。语言标签告诉模型正在阅读哪种语言,这样适配器可以共享容量,同时仍能区分文字。每种语言不需要单独的模型或适配器。
### III-D 训练配置
我们使用 AdamW 优化器(`β1=0.9`, `β2=0.999`, 权重衰减 0.01)训练每个适配器。峰值学习率为 `1×10^(−4)`,使用 200 步线性预热,然后余弦衰减到零。有效批次大小为 16(微批次 4,梯度累积 4),梯度裁剪为 1.0,使用混合精度(bfloat16)训练;音频 VAE 保持 float32。每次运行 10,000 步,每 500 步验证一次。我们使用一个 NVIDIA H200 GPU,每个秩大约需要 2.6 小时(约 1.07 步/秒)。
### III-E 评估指标
我们的主要自动指标是*验证流匹配损失*(`loss_diff`),这是在保留的验证集上测量的扩散目标。值越低表示对目标语音的拟合越好。我们还跟踪停止令牌损失(`loss_stop`)。由于适配器从零开始,训练开始时的损失等于零样本基础模型,因此训练期间的下降显示了适配器缩小了多少差距。我们还合成语音:对于每个秩和基础模型,我们以 48 kHz 生成相同的高棉语和韩语句子。最后,我们针对两种语言运行 MOS 听力测试(表 III 和表 IV)。对于每种语言,五名母语者(男性和女性)在三个轴上对每个系统按 5 分制评分:自然度、韵律和发音,覆盖 20 个句子。令 `r_{s,a,i}` 为评分者 `i` 对系统 `s` 在轴 `a∈{nat, pros, pron}` 上给出的分数,令 `\bar{m}_{s,a}=1/N * Σ_i r_{s,a,i}` 为其均值。总体 MOS 是三个轴的均值:
```
MOS_s = 1/3 * Σ_a \bar{m}_{s,a}.
```
我们将每个系统与零样本基础模型进行比较,使用配对相似文章
Hybrid-LoRA:桥接全微调与低秩适应的后训练方法
Hybrid-LoRA提出了一种框架,选择性地对一小部分模块进行全微调,同时对其他模块使用LoRA,在显著降低计算成本的同时实现了接近全微调的性能。实验表明,与现有参数高效基线方法相比,性能提升高达5.65%。
本地测试了VoxCPM2(开源TTS)。“终极克隆”模式对呼吸和口音的捕捉效果令人惊叹。
对VoxCPM2的技术解析与基准测试,这是一款开源TTS模型,具备“终极克隆模式”以捕捉呼吸与口音。本地测试显示其低VRAM占用和跨语言口音保持能力。
哪种LoRA?多语言指令微调中LoRA技术有效性的实证研究
本文实证比较了多种LoRA变体在多语言指令微调中的表现,发现复杂变体在平衡跨语言迁移与知识保留方面相比基本LoRA并无显著优势。
OpenBMB/VoxCPM
OpenBMB发布VoxCPM2,一个2B参数的无分词器TTS模型,基于超过200万小时的多语言语音数据训练,支持30种语言、语音设计、可控克隆和48kHz输出。
Echo-LoRA:通过跨层表示注入实现参数高效微调
本文介绍了 Echo-LoRA,这是一种新的参数高效微调方法,它将来自深层源层的跨层表示注入到浅层 LoRA 模块中,从而在不增加推理开销的情况下提升性能。