📄 X-Voice: Enabling Everyone to Speak 30 Languages via Zero-Shot Cross-Lingual Voice Cloning
#语音合成 #语音克隆 #流匹配 #多语言 #零样本
🔥 8.0/10 | 前25% | #语音克隆 | #流匹配 | #语音合成 #多语言 | arxiv
学术质量 6.0/7 | 选题价值 2.0/2 | 复现加成 1.0 | 置信度 高
👥 作者与机构
- 第一作者:Rixi Xu(上海交通大学,MoE Key Lab of Artificial Intelligence, X-LANCE Lab)
- 通讯作者:Xie Chen(上海交通大学,MoE Key Lab of Artificial Intelligence, X-LANCE Lab; 上海创新研究院)
- 作者列表:Rixi Xu(上海交通大学X-LANCE实验室)、Qingyu Liu(上海交通大学X-LANCE实验室; 约翰霍普金斯大学CLSP)、Haitao Li(浙江大学; 北京海天瑞声科技有限公司)、Yushen Chen(上海交通大学X-LANCE实验室; 上海创新研究院)、Zhikang Niu(上海交通大学X-LANCE实验室; 上海创新研究院)、Yunting Yang(吉利汽车研究院(宁波)有限公司)、Jian Zhao(吉利汽车研究院(宁波)有限公司)、Ke Li(北京海天瑞声科技有限公司)、Berrak Sisman(约翰霍普金斯大学CLSP)、Qinyuan Cheng(上海创新研究院; 复旦大学)、Xipeng Qiu(上海创新研究院; 复旦大学)、Kai Yu(上海交通大学)、Xie Chen(上海交通大学X-LANCE实验室; 上海创新研究院) 注:论文明确说明第一作者Rixi Xu与通讯作者Xie Chen贡献相当,且Xie Chen为通讯作者。
💡 毒舌点评
亮点在于其“两阶段免文本提示”训练范式非常巧妙,利用第一阶段模型生成的数据来训练第二阶段的免文本能力,形成了一个优雅的数据自举闭环,并且全套资源(数据、模型、评测)的开源诚意十足。短板是模型规模(0.4B)限制了其在极端复杂口音或高保真场景下的表现上限,且非流式推理的时延对于实时交互应用可能仍是一个瓶颈。
📌 核心摘要
- 要解决什么问题? 现有多语言零样本语音克隆模型严重依赖输入参考音频对应的文本转录。获取高质量、多语言的文本转录成本高昂且困难,尤其对低资源语言和口语化输入。这限制了语音克隆技术的普及。
- 方法核心是什么? 提出X-Voice,一个基于流匹配的0.4B参数多语言语音克隆模型。核心是两阶段训练范式和架构增强。第一阶段训练一个基础多语言模型(X-Voices1);第二阶段,利用该模型生成合成语音作为“音频提示”,并与真实语音配对,然后在屏蔽文本提示的情况下进行微调,得到最终的免文本提示模型(X-Voices2)。架构上,在文本和时间两个层面注入语言标识符(双层语言注入)以抑制跨语言口音泄漏,并采用解耦、分时调度的分类器引导(CFG)以平衡发音准确性与说话人相似度。
- 与已有方法相比新在哪里? 1) 训练范式新:提出了无需强制对齐或复杂预处理的“监督式微调免文本”范式,通过模型自生成数据来消除对参考文本的依赖。2) 语言注入方式新:采用双层(文本层+时间层)的语言标识符注入,比单一文本层注入更有效地抑制口音泄漏。3) 推理策略新:设计了非对称预热的解耦CFG,将语言引导和声学引导分离并动态调度,提升了合成质量。
- 主要实验结果如何? 论文构建了一个覆盖30种语言的评测基准。在客观指标上:
在Seed-TTS测试集(中英文)上,X-Voices2的WER(英文1.30)和SIM-o(0.65)与Qwen3-TTS(1.08, 0.71)、MOSS-TTS(1.92, 0.69*)等可比,且实时率(RTF 0.073)远优于AR模型。
- 在自建的30语言测试集上,X-Voices2在大多数语言上的WER接近真实语音(GT),并优于LEMAS-TTS、Fish Audio S2等开源模型,与Qwen3-TTS持平。说话人相似度(SIM-o)与Qwen3-TTS、MOSS-TTS等最佳模型相比仍有差距。
- 跨语言克隆实验(表7)显示,X-Voices2在多种语言对上取得了最佳或接近最佳的WER。
- 消融实验(表8, 表9)证实了双层语言注入和解耦CFG-A-Warmup策略的有效性。
- 实际意义是什么? 降低了高质量多语言语音克隆的使用门槛,用户无需提供参考音频的转录文本即可克隆声音并用于30种语言的语音合成。通过全面开源资源,旨在降低研究门槛,贡献于多语言语音合成技术的民主化。
- 主要局限性是什么? 1) 论文承认,在特定语音上下文中,说话人相似度仍有提升空间,抑制口音和保留音色之间存在权衡。2) 目前模型逐句处理,不支持句内语码转换。3) 第二阶段仍依赖高质量的合成数据进行训练,未完全实现无监督跨语言迁移。
🔗 开源详情
- 代码:https://github.com/sunnyxrxrx/X-Voice
- 模型权重:论文声明开源了所有相关资源(https://github.com/sunnyxrxrx/X-Voice),应包含模型权重。
- 数据集:论文完全开源了其420K小时的训练语料库和30K小时的高质量子集。论文附录A列出了用于构建该数据集的开源数据集名称及链接:
- Emilia: https://github.com/homebrew0225/Emilia
- GigaSpeech 2: https://github.com/speechcolab/gigaspeech
- KoreaSpeech: https://huggingface.co/datasets/jp1924/KoreaSpeech
- ReazonSpeech: 未提供链接
- LEMAS: https://github.com/LEMAS-project/LEMAS-TTS
- Multilingual Librispeech: https://www.openslr.org/94/
- Granary: https://github.com/idikslab/Granary
- Demo:论文中未提及。
- 复现材料:
- 论文附录B提供了详细的模型配置(Model Config Details)。
- 论文提供了训练和推理设置(Section 4.1 Training and Inference Setup)。
- 论文构建了一个包含30种语言的评测基准(Evaluation Benchmark)和评估脚本。
- 论文中引用的开源项目:
- F5-TTS(论文基础架构): https://github.com/SWivid/F5-TTS
- eSpeak-NG(文本转IPA工具): https://github.com/espeak-ng/espeak-ng
- langdetect(语言检测库): https://github.com/fedelopez77/langdetect
- Silero VAD(语音活动检测): https://github.com/snakers4/silero-vad
- ECAPA-TDNN(说话人验证模型): https://huggingface.co/speechbrain/spkrec-ecapa-voxceleb/tree/main
- DNSMOS(音质评估):论文引用了其方法,未提供项目链接。
- PyThaiNLP(泰语处理工具):论文未提供具体链接。
- PyOpenJTalk(日语处理工具): https://github.com/r9y9/pyopenjtalk
- g2pK(韩语处理工具): https://github.com/kyubyong/g2pK
- Paraformer(中文ASR): 论文引用了其方法,未提供项目链接。
- Whisper(英文ASR): 论文引用了其方法,未提供项目链接。
- WavLM-Large(说话人嵌入): 论文引用了其方法,未提供项目链接。
- UTMOS(客观评估指标): 论文引用了其方法,未提供项目链接。
- Seed-TTS Test Set: https://github.com/bytedance/Seed-TTS-Eval
- LEMAS-TTS Test Set: https://github.com/LEMAS-project/LEMAS-TTS
- Common Voice: 论文提及,但未提供具体链接。
- Dolly-Audio: https://github.com/daily-llm/Dolly-Audio
- ParlaSpeech-HR: 论文未提供具体链接。
- 以及多个用于评估的基线模型(如Qwen3-TTS, LEMAS-TTS, MOSS-TTS, Fish Audio S2, OmniVoice)的官方代码和预训练检查点链接(详见论文附录C)。
🏗️ 方法概述和架构
X-Voice是一个端到端的、基于流匹配(Flow-Matching)的非自回归(NAR)语音合成系统,旨在实现免参考文本的零样本跨语言语音克隆。其核心流程分为数据准备、两阶段模型训练和推理三个部分。整体架构如图3和图4所示。
图1展示了X-Voice的两阶段训练范式。Stage 1训练一个基础多语言模型(X-Voices1),学习跨语言的声学表示。Stage 2则利用X-Voices1作为数据生成器,合成与真实语音配对的“合成提示”,然后在训练中屏蔽提示对应的文本,微调得到免文本提示的最终模型(X-Voices2)。
主要组件/模块详解:
统一多语言表示(Unified Multilingual Representation)
- 功能:将30种语言的文本转换为统一的音素序列,作为模型的文本条件输入。
- 实现:使用国际音标(IPA)作为跨语言音素的统一空间。对于普通话,使用拼音。使用eSpeak-NG等工具进行文本到IPA的转换,并特别设计了音素表示:显式包含重音标记(“)以区分词义和韵律;将音素分解为核心发音单元和超音段修饰符(如长度标记“:”、送气“h”、声调数字)。论文引用研究指出,将发音单元和修饰符的嵌入统一表示,在NAR TTS中性能损失可忽略。此外,对于eSpeak-NG表现不佳的亚洲语言(如泰语、日语、韩语),使用专用工具包(PyThaiNLP, PyOpenJTalk, g2pK)进行处理。
- 输入输出:输入是特定语言的文本,输出是IPA音素序列。
X-Voices1_{s1}:基础多语言模型
- 功能:在420K小时多语言语料上预训练,建立稳健的多语言声学基础和跨语言克隆能力。
- 架构:基于F5-TTS(一种采用扩散Transformer,DiT的流匹配模型)。其训练任务为文本引导的语音填充(Text-guided Speech Infilling)。
- 关键增强 - 双层语言注入(Dual-Level Language Injection):这是解决跨语言口音泄漏的核心创新。
- 时间层注入:将语言标识符(LID)嵌入
e_L与时间步嵌入e_t拼接,通过一个带SiLU激活的MLP得到融合向量h_t(公式3),用于引导ODE轨迹对齐目标语言的韵律流形。 - 文本层注入:对文本嵌入
e_T应用特征级线性调制(FiLM)(公式4)。LID嵌入e_L通过学习得到的尺度γ和偏移β参数,对文本嵌入进行调制:FiLM(e_T) = γ(e_L) ⊙ e_T + β(e_L)。这如同一个门控,迫使共享的IPA表示适应特定语言的声学模式。 - 动机与实现:论文通过实验发现,仅使用文本层LID注入仍会导致口音泄漏。双层注入提供了全局约束,更好地解耦了说话人音色与口音。所有LID注入层在训练初期采用零初始化,以避免干扰预训练表示。
- 时间层注入:将语言标识符(LID)嵌入
- 训练细节:初始化自F5-TTS-v1-Base(在Emilia数据集上预训练)。使用AdamW优化器,学习率先线性warmup至7.5e-5(前20K步),再线性衰减。训练600K步,批大小为38400音频帧/GPU,使用bfloat16混合精度。前10K步冻结DiT模块。
X-Voices2_{s2}:免文本提示模型
- 功能:在X-Voices1_{s1}基础上微调,使其能够仅凭音频提示(无需对应文本)进行语音克隆。
- 核心方法:基于合成提示的监督微调(SFT with Synthetic Prompts)
- 合成数据生成:从多语言语料中筛选出30K小时高质量子集(按DNSMOS分数排序,每语言1K小时)。以这些真实音频为“音频提示”,随机采样目标文本,用X-Voices1_{s1}生成对应的合成语音,构成(合成提示, 真实目标语音)配对数据,总计10.5K小时。
- 免文本微调:微调时,输入由合成音频提示和真实目标语音拼接而成(公式7)。使用一个二值掩码
m区分提示和目标部分(公式8)。关键设计在于文本序列的构造:在目标文本前添加N个可学习的提示标记<P>和一个EOS标记“.”,目标文本后填充填充标记<F>(公式9)。在训练时,与提示部分(合成音频)对应的文本被完全屏蔽(用填充标记替代),模型被迫直接从合成音频中提取韵律特征,而不依赖其文本。 - 语言条件注入:在时间层,语言条件固定为目标语言嵌入
e_L^{tgt}。在文本层,可学习的提示标记<P>和填充标记<F>不注入LID;EOS标记“.”关联一个未知语言IDL^{unk};目标文本标记关联目标语言IDL^{tgt}(公式10)。这引导模型专注于目标语言。
- 时长预测:X-Voices1_{s1}阶段使用参考文本与目标文本的长度比来估计时长;X-Voices2_{s2}阶段则引入一个基于Transformer的语速预测器(Speaking Rate Predictor)(16层,12头,512维),在SFT数据上训练,以更准确地预测合成时长。
架构图说明:
图3展示了X-Voices1_{s1}的训练框架。文本经过统一多语言表示模块得到IPA序列,然后与文本嵌入结合。双层语言注入在此处体现:语言嵌入e_L通过FiLM模块作用于文本嵌入;同时,在扩散Transformer(DiT)内部,e_L与时间步嵌入e_t拼接后输入,共同引导生成过程。输入是带掩码的梅尔谱和文本条件,输出是预测的噪声向量场,用于优化流匹配目标。
图4详细描述了X-Voices2_{s2}的训练过程。左图展示了合成数据生成:使用训练好的X-Voices1_{s1},以真实音频为提示、随机文本为驱动,生成合成语音。右图是核心的免文本微调:将合成音频提示与真实目标语音拼接,并用掩码区分;对应的文本序列前部被特殊标记和填充符替代,屏蔽了原始文本信息。模型在训练中学习直接从合成提示音频中克隆声音并合成目标语言的语音,从而摆脱对文本的依赖。
组件间的数据流与交互:数据从原始音频和文本开始,经过预处理和统一表示转换。在Stage 1,模型学习从掩码梅尔谱和文本条件生成目标语音。在Stage 2,数据流变为:真实音频 -> X-Voices1生成合成提示 -> (合成提示音频 + 真实目标音频) -> 文本条件被屏蔽 -> X-Voices2学习填充目标部分。推理时,输入是任意参考音频(无需文本)和目标语言文本,模型通过ODE求解生成对应的目标语音。
关键设计选择及动机:选择流匹配而非自回归(AR)模型,是为了获得更快的推理速度和避免误差累积。采用两阶段训练而非端到端训练,是为了利用第一阶段学到的强大生成能力,为第二阶段创建高质量的自监督训练数据,从而优雅地解决免文本提示的难题,避免引入复杂的对齐模块或辅助网络。
💡 核心创新点
- 免参考文本的监督微调范式:设计了一种新颖的两阶段训练流程,利用模型自身生成合成提示数据,并通过在微调时屏蔽对应文本来消除模型对参考���本的依赖。这避免了使用强制对齐或说话人编码器等额外模块,降低了复杂性和预处理负担,实现了“监督式”的免文本学习。
- 双层语言标识符注入:创新地在文本层(通过FiLM)和时间层(通过拼接MLP)同时注入语言标识符(LID)。相比仅文本层注入,双层注入为ODE轨迹提供了全局性的语言约束,更有效地解耦了说话人音色与口音,显著减轻了跨语言合成时的口音泄漏问题。
- 解耦与分时调度的分类器引导:针对多语言场景优化了CFG推理策略。提出非对称预热(Asymmetric Warmup):在解耦语言引导和声学引导后,让语言引导强度从零线性增加,同时声学引导立即以全强度开始。这解决了初始步骤中语言引导因噪声而震荡的问题,首先锚定声学轮廓,再平滑引入语言约束,提升了合成语音的自然度和清晰度。
📊 实验结果
论文在多个基准测试集上进行了全面的主客观评估。
- 内语言(Intra-lingual)评估
Seed-TTS Test Set(中英文):
模型 RTF↓ test-zh WER↓ test-zh SIM-o↑ test-en WER↓ test-en SIM-o↑ Qwen3-TTS 1.754 0.92 0.77 1.08 0.71 LEMAS-TTS 0.131 3.34 0.71 1.49 0.62 MOSS-TTS 0.643 1.46 0.76 1.92 0.69 Fish Audio S2 4.801 1.14 0.73 1.37 0.65 OmniVoice 0.198 0.84 0.78 1.60 0.74 F5-TTS 0.065 1.74 0.75 1.89 0.66 X-Voices1_{s1} 0.073 1.19 0.75 1.53 0.65 X-Voices2_{s2} 0.073 1.28 0.76 1.30 0.65 结论:X-Voices2在WER和SIM-o上达到与AR大模型可比的水平,且实时率(RTF)具有数量级优势,推理速度快。 LEMAS-TTS Test Set(10种语言): 在10种语言的平均WER上,X-Voices1_{s1}(4.94)优于LEMAS-TTS(5.46),X-Voices2_{s2}(约5.0-5.5区间)也与基线持平或更优。在说话人相似度(SIM-o)上,X-Voice系列(0.716-0.752)稳定优于LEMAS-TTS(0.675-0.737)。
X-Voice Multilingual Test Set(30种语言): 在客观WER指标上,X-Voice表现稳健,在大多数语言上优于LEMAS-TTS、Fish Audio S2、MOSS-TTS等开源模型,并与Qwen3-TTS持平。在说话人相似度(SIM-o)上,与Qwen3-TTS、MOSS-TTS、OmniVoice等模型相比仍有差距。 主观评测(IMOS & SMOS):X-Voice在低资源欧洲语言上表现尤佳,IMOS和SMOS均高于其他开源基线。在广泛使用的语言上,X-Voice达到了与更大规模系统相当的自然度和说话人相似度,但在日语、韩语等语言上IMOS略低,在德语、葡萄牙语等语言上SMOS略低。X-Voices2在无文本微调后,部分语言IMOS持平或提升,但SMOS普遍略有下降。
跨语言(Cross-lingual)评估
模型 en→it it→zh zh→ru ru→ko ko→en en→ko ko→ru ru→zh zh→it it→en Qwen3-TTS 2.69 2.44 2.91 14.15 2.46 12.68 4.63 2.48 2.79 2.38 LEMAS-TTS 6.11 12.11 5.13 - - - - 18.63 9.95 4.04 MOSS-TTS 7.21 11.64 5.13 3.64 9.16 4.06 10.23 7.52 5.72 12.4 Fish Audio S2 9.16 11.04 4.71 3.85 3.60 1.71 4.92 11.17 9.93 4.04 OmniVoice 4.48 7.58 3.94 5.36 3.56 3.14 11.56 4.38 4.76 2.44 X-Voices2_{s2} 4.70 3.11 2.85 3.00 2.15 3.10 2.58 3.22 3.91 2.31 结论:在跨语言克隆WER上,X-Voices2在多个语言对(如it→zh, zh→ru, ru→ko, ko→en, ko→ru)取得了最佳或接近最佳的结果,展现了强大的跨语言鲁棒性。 消融实验
语言注入策略(表8):
LID注入层级 平均WER↓ zh→en en→zh zh→it it→zh 无注入 5.46 1.11 6.03 6.65 7.37 文本层(FiLM) 5.28 1.06 6.05 5.89 6.85 文本层(FiLM) + 时间层(拼接) 4.94 0.90 1.87 3.44 2.93 结论:双层注入(文本FiLM + 时间拼接)在内语言WER上最优,并在跨语言任务(如en→zh)上大幅降低WER(从6.05降至1.87),证明其抑制口音泄漏的有效性。 CFG策略(表9):
策略 WER↓ SIM-o↑ UTMOS↑ Base (w=2.5) 8.85 0.693 3.207 + Decay 8.90 0.694 3.249 Base (w=4.0) 8.62 0.672 3.050 + Decay 8.58 0.679 3.135 Decoupled + Decay 8.29 0.684 3.261 + Warmup 8.27 0.684 3.282 + A-Warmup 8.20 0.685 3.284 结论:标准CFG在提高清晰度(降低WER)和保持音色(SIM-o)间存在权衡。解耦+非对称预热策略(A-Warmup)实现了WER和UTMOS(自然度)的同步最佳,是最平衡的方案。值得注意的是,最高SIM-o由保守的Base (w=2.5)+Decay配置获得,说明在极致追求说话人相似度时,低强度联合CFG可能更优。
图2展示了X-Voice训练数据集中30种语言的时长分布,总计约420K小时。数据规模差异巨大,从超过80K小时的中文、英语,到仅数小时的马耳他语等,体现了真实的多语言资源分布不平衡现状。
🔬 细节详述
- 训练数据:总规模420K小时,来自多个开源数据集(Emilia, GigaSpeech 2, KoreaSpeech, ReazonSpeech, LEMAS, Multilingual Librispeech, Granary等)。经过严格的多阶段处理流水线:时长(0.5-30s)和语速过滤、文本语言检测去歧义、去重(>20次去除)、基于DNSMOS的声学质量评分过滤(阈值1.5)。第二阶段使用DNSMOS筛选出的30K小时高质量子集,并合成10.5K小时配对数据。
- 损失函数:采用流匹配中的条件流匹配(CFM)目标函数(公式1),预测概率路径的向量场。优化目标是预测向量场与真实向量场之间的均方误差。
- 训练策略:
- 优化器:AdamW。
- 学习率:X-Voices1_{s1}从7.5e-5 warmup 20K步后线性衰减;X-Voices2_{s2}使用相同初始学习率。
- 批大小:38400音频帧/GPU(X-Voices1/2), 19200音频帧/GPU(语速预测器)。
- 训练步数:X-Voices1_{s1} 600K步,X-Voices2_{s2} 70K步。
- 硬件:未明确说明具体GPU型号和数量,但提及在NVIDIA RTX 4090上测量RTF。
- 关键超参数:模型参数0.4B(X-Voices2)。DiT:22层,16个注意力头,文本嵌入维度1024。语言嵌入维度512。语速预测器:16层,12个注意力头,嵌入维度512。
- 推理细节:
- 求解器:Euler ODE求解器,16个函数评估(NFE)步骤。
- CFG强度:语言引导强度
w_L_start=4.0,声学引导强度w_A_start=2.5。 - CFG调度:预热时间
t_warm=0.01(对应前3步),衰减时间t_decay=0.6(对应最后2步)。衰减策略为(1-t)^2。 - 其他:使用 sway sampling 系数 -1.0。
- 正则化/稳定训练技巧:在X-Voices1_{s1}训练初始阶段(前10K步)冻结DiT模块。所有语言注入层采用零初始化,以避免干扰预训练表示。
⚖️ 评分理由
- 学术质量:6.0/7。论文提出了一套完整、自洽且富有巧思的解决方案(两阶段范式、双层注入、解耦CFG)来解决一个重要的实际问题。方法实现细节清晰,实验设计全面(涵盖多种基线、多语言内/跨语言评估、关键消融),数据支撑扎实。其创新更多是系统级和策略性的整合创新,而非提出颠覆性的新模型架构,且性能与部分工业大模型(如Qwen3-TTS在SIM-o上)相比未形成全面优势,因此学术质量分属于“扎实优秀”范畴。
- 选题价值:2.0/2。课题直指多语言语音克隆的痛点(文本依赖),并致力于通过开源推动技术民主化,具有明确的科学价值、工程价值和社会意义。与AI赋能跨语言交流的长期趋势高度一致。
- 开源与复现加成:+1.0/1。这是本论文最突出的优势之一。开源了完整的训练代码、所有模型权重、420K小时的训练语料、以及构建的30语言评测基准和评测脚本。提供了从数据处理到训练的详细配方,复现门槛极低,为社区研究提供了极大便利,加成满分。