🎙️ MaskGCT: 探索零样本文本到语音转换的未来 2024-11-122024-11-11 作者 C3P00 image 🎯 概述 在文本到语音(TTS)领域,MaskGCT(Masked Generative Codec Transformer)带来了革命性的创新。它是一个完全非自回归的TTS模型,不再依赖文本和语音的显式对齐信息,也不需要进行音素级的时长预测。简而言之,MaskGCT是一个两阶段模型:第一阶段从文本预测语义令牌,这些令牌来自于一个自监督学习(SSL)语音模型;第二阶段,模型根据这些语义令牌预测声学令牌。 MaskGCT遵循“掩码与预测”的学习范式,训练时预测被掩码的语义或声学令牌,推理时则并行生成指定长度的令牌。最令人兴奋的是,MaskGCT在100,000小时的自然语音数据集上进行训练,实验证明其在质量、相似性和可理解性方面超越了当前的零样本TTS技术。音频示例可以在演示页面体验。 📰 最新动态 2024/10/19:发布MaskGCT,训练于Emilia数据集,达到零样本TTS的最先进性能(SOTA)。 🚀 快速开始 要运行MaskGCT模型,您可以按照以下步骤进行操作: 克隆仓库并安装环境:您可以选择部分克隆(partial clone)或完整克隆(full clone)。 运行Jupyter Notebook / Gradio演示 / 推理脚本。 部分克隆 由于Amphion仓库较大,您可以使用稀疏检出(sparse-checkout)只下载所需的代码: # 下载元信息 git clone --no-checkout --filter=blob:none https://github.com/open-mmlab/Amphion.git # 进入仓库目录 cd Amphion # 设置稀疏检出 git sparse-checkout init --cone git sparse-checkout set models/tts/maskgct # 下载所需代码 git checkout main git sparse-checkout add models/codec utils 完整克隆 如果您希望下载整个仓库,您可以使用以下命令: git clone https://github.com/open-mmlab/Amphion.git # 进入仓库目录 cd Amphion 安装环境 确保您在Amphion目录下。如果不在,请使用cd命令切换到该目录。由于我们使用phonemizer将文本转换为音素,您需要先安装espeak-ng: # 对于Debian类发行版(如 Ubuntu、Mint 等) sudo apt-get install espeak-ng # 对于RedHat类发行版(如 CentOS、Fedora 等) sudo yum install espeak-ng # 对于Windows用户,请访问 https://github.com/espeak-ng/espeak-ng/releases 下载.msi安装程序 然后,使用conda配置环境: conda create -n maskgct python=3.10 conda activate maskgct pip install -r models/tts/maskgct/requirements.txt 🧑🏫 模型介绍 MaskGCT提供了以下预训练模型: 模型名称描述Semantic Codec将语音转换为语义令牌。Acoustic Codec将语音转换为声学令牌并从中重构波形。MaskGCT-T2S使用文本和语义令牌预测语义令牌。MaskGCT-S2A根据语义令牌预测声学令牌。 所有预训练模型均可从HuggingFace下载,您也可以使用HuggingFace的API: from huggingface_hub import hf_hub_download # 下载semantic codec模型 semantic_code_ckpt = hf_hub_download("amphion/MaskGCT", filename="semantic_codec/model.safetensors") 🎧 模型评估结果 MaskGCT在多个数据集上进行了评估,结果展示了其在多个指标上优越的表现: 系统SIM-O↑WER↓FSD↓SMOS↑CMOS↑LibriSpeech test-cleanGround Truth0.681.944.05±0.120.00VALL-E0.505.90–3.47 ±0.26-0.52±0.22VoiceBox0.642.030.7623.80±0.17-0.41±0.13NaturalSpeech 30.671.940.7864.26±0.100.16±0.14MaskGCT0.687(0.723)2.634(1.976)0.8864.27±0.140.10±0.16 这些结果表明,MaskGCT在LibriSpeech等主流数据集上表现优异,特别是在相似性和语音质量方面显示出显著提升。 ⚙️ 训练数据集 MaskGCT的训练数据集是Emilia,这是一个多语言、多样化的自然语音数据集,专为大规模语音合成任务设计。在这项工作中,使用了Emilia中的英语和中文数据,总量达100,000小时。 📚 参考文献 如果您在研究中使用了MaskGCT,请引用以下文献: @article{wang2024maskgct, title={MaskGCT: Zero-Shot Text-to-Speech with Masked Generative Codec Transformer}, author={Wang, Yuancheng and Zhan, Haoyue and Liu, Liwei and Zeng, Ruihong and others}, journal={arXiv preprint arXiv:2409.00750}, year={2024} } 🎬 结语 MaskGCT不仅仅是一个TTS模型,它代表了一个全新的研究方向。通过打破传统的自回归生成框架,MaskGCT真正实现了高效的并行推理,尤其在零样本学习场景中展现了强大的潜力。无论您是研究者还是开发者,MaskGCT都能为更自然、更智能的语音合成提供支持。
🎯 概述
在文本到语音(TTS)领域,MaskGCT(Masked Generative Codec Transformer)带来了革命性的创新。它是一个完全非自回归的TTS模型,不再依赖文本和语音的显式对齐信息,也不需要进行音素级的时长预测。简而言之,MaskGCT是一个两阶段模型:第一阶段从文本预测语义令牌,这些令牌来自于一个自监督学习(SSL)语音模型;第二阶段,模型根据这些语义令牌预测声学令牌。
MaskGCT遵循“掩码与预测”的学习范式,训练时预测被掩码的语义或声学令牌,推理时则并行生成指定长度的令牌。最令人兴奋的是,MaskGCT在100,000小时的自然语音数据集上进行训练,实验证明其在质量、相似性和可理解性方面超越了当前的零样本TTS技术。音频示例可以在演示页面体验。
📰 最新动态
🚀 快速开始
要运行MaskGCT模型,您可以按照以下步骤进行操作:
部分克隆
由于Amphion仓库较大,您可以使用稀疏检出(sparse-checkout)只下载所需的代码:
完整克隆
如果您希望下载整个仓库,您可以使用以下命令:
安装环境
确保您在
Amphion
目录下。如果不在,请使用cd
命令切换到该目录。由于我们使用phonemizer
将文本转换为音素,您需要先安装espeak-ng
:然后,使用
conda
配置环境:🧑🏫 模型介绍
MaskGCT提供了以下预训练模型:
所有预训练模型均可从HuggingFace下载,您也可以使用HuggingFace的API:
🎧 模型评估结果
MaskGCT在多个数据集上进行了评估,结果展示了其在多个指标上优越的表现:
这些结果表明,MaskGCT在LibriSpeech等主流数据集上表现优异,特别是在相似性和语音质量方面显示出显著提升。
⚙️ 训练数据集
MaskGCT的训练数据集是Emilia,这是一个多语言、多样化的自然语音数据集,专为大规模语音合成任务设计。在这项工作中,使用了Emilia中的英语和中文数据,总量达100,000小时。
📚 参考文献
如果您在研究中使用了MaskGCT,请引用以下文献:
🎬 结语
MaskGCT不仅仅是一个TTS模型,它代表了一个全新的研究方向。通过打破传统的自回归生成框架,MaskGCT真正实现了高效的并行推理,尤其在零样本学习场景中展现了强大的潜力。无论您是研究者还是开发者,MaskGCT都能为更自然、更智能的语音合成提供支持。