语音合成之十四 文本转语音(TTS)开源数据集
文本转语音(TTS)开源数据集
- 引言
- TTS数据集作用
- 数据预处理
- 采样率
- 语言前端:从原始文本到模型可读的表示
- 神经语音合成架构的输入表示
- 关键开源英文TTS数据集
- 开源中文TTS数据集
- 应对海量数据集的挑战
引言
近年来,随着深度学习的飞速发展,TTS技术取得了显著进步,不仅能够生成高度逼真的人声,还能实现对情感、韵律、音色和语速等语音属性的精细控制 。高质量、大规模且多样化的数据集是训练先进TTS模型的基础。
TTS数据集作用
1.TTS所需数据类型和特征包括:
为了提升模型性能的提升和新功能的研发 ,这些数据需要精心标注,以捕捉目标语言独特的语音、句法和文化细微差别。
- 音频-文本校对,音频通常需要由母语者朗读多样化的文本(如新闻、故事、对话)以覆盖广泛的发音、语调和节奏变化 。
- 时间对齐:音频和文本转录必须进行精确的时间对齐,即确定文本中每个字或音素在音频中对应的起止时间。这通常借助Praat或Montreal Forced Aligner等工具完成 。
- 元数据:除了基本的音文对齐,详细的元数据对于训练多说话人模型或可控TTS模型至关重要。这些元数据可以包括说话人的人口统计学信息(年龄、性别、方言)、情感标签、语速、音高等 。例如,在处理声调语言(如普通话)时,可能需要在训练数据中嵌入声调标记 。
- 数据规模与质量:对于基线模型,通常需要至少20-40小时的高保真音频数据,而更大规模的数据集则有助于提升合成语音的质量和自然度 。音频质量至关重要,应避免明显的背景噪音和失真 。
- 数据集在TTS开发中的作用
数据集在TTS模型的整个生命周期中扮演着核心角色,从模型训练、评估到特定功能的实现,都离不开数据的支撑。
- 模型训练:深度神经网络通过学习大量的音频-文本对来理解词语与语音的对应关系,包括口音、音高、音量、语调、节奏等 。现代神经TTS系统,如Tacotron、FastSpeech或VITS、Cosyvoice2依赖于这些数据进行端到端的训练 。
- 声学特征学习:模型首先将文本转换为时间对齐的声学特征,如梅尔频谱图(spectrogram),它能够捕捉语音中频率随时间变化的详细特征,并考虑上下文相关的发音、重音和词语时序 。
- 声码器训练:声码器(vocoder)网络则负责将这些时间对齐的声学特征转换成可播放的音频波形 。
- 可控性与表现力:通过在数据集中标注情感、风格等信息,可以训练模型生成带有特定情感或风格的语音 。例如,LibriTTS-P数据集通过引入风格和说话人特征提示,赋能了基于提示的可控TTS 。
- 评估与迭代:数据集也用于评估模型的性能,常用的客观指标(如梅尔倒谱失真,Mel Cepstral Distortion, MCD)和主观指标(如平均意见分,Mean Opinion Score, MOS)均依赖于测试集进行计算 。用户反馈和社区评估也有助于模型的迭代优化 。
对数据集的语言学分析是TTS系统工作的第一步,系统需要理解词语如何与语音匹配,以及口音、音高、音量、语调和节奏等要素 。因此,数据集的构建不仅是简单的音频录制和文本转录,更是一个涉及语言学、信号处理和数据科学的复杂过程。
- 大规模TTS数据增强策略
数据增强通过对现有音频进行变换来创造新的训练样本,以提高模型泛化能力和鲁棒性 。
常用技术 :
- 噪声注入 (Noise Injection):添加不同类型的噪声(高斯白噪、真实背景噪声等)模拟现实录音条件。
- 音高变换 (Pitch Shifting):在不改变语速的情况下改变音高。
- 时间伸缩/速度扰动 (Time Stretching/Speed Perturbation):在不改变音高(或同时改变两者)的情况下改变语速。
- 混响 (Reverberation):模拟不同的房间声学环境。
- 频谱扭曲 (Spectral Warping):修改音频的频谱内容。
实现:可使用Librosa, TensorFlow (tf.data), Audiomentations等库,在训练过程中动态应用以最大化每个epoch的多样性 。
注意事项:需谨慎控制增强强度,避免破坏语音标签的完整性(如过度音高变换可能扭曲音素 )。增强策略应考虑领域特性。对于低资源说话人,数据增强(如噪声添加)可显著扩充有效训练样本 。
对于海量数据集,数据增强的主要目的从单纯增加数量转变为有针对性地提升特定维度上的多样性,以弥补原始数据在某些方面的不足(如噪声环境、特定口音等),从而实现对鲁棒性的定向改进。然而,对TB级数据集进行在线增强的计算成本可能非常高昂 。这可能催生分层增强策略:简单的、计算开销小的增强在线进行;复杂或计算密集的增强则对部分数据离线预计算,或降低应用频率,以平衡多样性需求与计算可行性。
数据预处理
语音合成(Text-to-Speech, TTS)模型的性能在很大程度上取决于输入数据的质量和一致性。本节将探讨数据预处理中的基础步骤,重点关注采样率的统一及其对模型各方面的影响,以及文本规范化和声学特征提取的关键技术。
采样率
在TTS数据预处理中,统一数据集内的音频采样率是确保后续处理流程和模型训练一致性的基础步骤 。不同的原始采样率会导致声学特征(如梅尔频谱)在频率分辨率和时间尺度上存在差异,即便其他短时傅里叶变换(Short-Time Fourier Transform, STFT)参数在时间维度上保持一致(例如,窗长以毫秒为单位)。这种不一致性使得神经网络难以学习从文本到语音特征的稳定映射。
- TTS中常见的采样率
TTS研究和应用中常见的采样率包括16kHz、22.05kHz、24kHz和48kHz 。
- 22.05kHz 是一个广泛应用的采样率,常见于LJSpeech数据集,并被VITS、FastPitch等模型采用 。Coqui TTS工具包也默认使用22050Hz 。
- 24kHz 同样常见,例如LibriTTS数据集采用此采样率 ,一些声码器也针对此采样率进行设计 。
- 48kHz 通常用于追求高保真语音和歌声合成的场景,因为它能更全面地覆盖人类听觉范围 。HiFi-GAN等声码器已被成功应用于48kHz采样率的音频生成
- 采样率对声码器设计和音频质量的影响
声码器,特别是像WaveNet和HiFi-GAN这样的神经声码器,通常是为特定采样率设计和训练的 。使用采样率不匹配的声码器可能导致音频伪影或质量下降。
较高的采样率(如48kHz)通过捕捉更宽的频谱范围,通常能带来更高保真度的音频,这对于语音的细微差别和歌声合成尤为关键 。然而,这也伴随着计算成本和数据量的增加 。一些研究,如AP-BWE ,探索了带宽扩展技术,旨在从较低采样率训练或调节的模型生成高采样率语音,显示了在效率和保真度之间寻求平衡的努力。
尽管48kHz在理论上能提供最佳音质,但许多先进的TTS模型(如基于LJSpeech的VITS和FastPitch)通常在22.05kHz 或24kHz(如LibriTTS )下训练。这表明,对于标准语音合成任务,从约22-24kHz提升至48kHz所带来的感知增益,并非总是能抵消其显著增加的计算和存储成本 。人声中对可懂度和自然度最关键的信息,已能被这些较低采样率所提供的约11-12kHz带宽良好地覆盖。因此,采样率的选择是TTS流程早期的一个关键决策,需权衡目标应用场景(如电话语音与高保真声音克隆)、可用计算资源及数据集特性。并不存在一个普适的“最佳”采样率,关键在于针对具体用例找到最优的平衡点。带宽扩展技术的出现 进一步丰富了这一选择,使得在较低采样率下训练的模型也有可能输出更高保真度的音频。
语言前端:从原始文本到模型可读的表示
本小节深入探讨将原始输入文本转换为TTS模型能够理解和处理的语言单元序列的关键文本处理步骤,包括文本规范化、音素化以及韵律特征的提取。
- 文本规范化:处理数字、缩写、符号及特定语言的细微差别(英文和中文)
文本规范化(Text Normalization, TN)是将非标准词(Non-Standard Words, NSWs),如数字、日期、货币、缩写和符号等,转换为其完整的口语等效形式,以确保TTS系统能够正确发音的过程 。这一步骤对合成语音的可懂度和自然度至关重要。
英文文本规范化示例与挑战(:
- 数字:“123” → “one hundred twenty-three”;“2nd” → “second” 。
- 货币:“$45.67” → “forty-five dollars and sixty-seven cents” 。
- 缩写:“Dr.” → “Doctor”;“St.” → “Street”(上下文相关,例如 “St. Patrick” 保持不变)。
- 符号:“100%” → “one hundred percent”;URL如 “elevenlabs.io/docs” → “eleven labs dot io slash docs” 。
- 日期和时间:“2024-01-01” → “January first, two-thousand twenty-four”;“14:30” → “two thirty PM”(依赖区域设置)。
- 工具与技术:基于规则的系统、正则表达式(例如Python的re和inflect库 ),以及越来越多的神经模型或混合方法 。LumenVox TTS为其英文引擎提供了详尽的基于规则的规范化示例 。
中文文本规范化示例与挑战中文归一化详见见语音合成之十三): - 分词:与英文不同,中文文本没有明确的词边界,需要先进行分词才能进行准确的TN和字位到音位(Grapheme-to-Phoneme, G2P)转换 。
- 数字、日期、单位:类别与英文相似,但发音和格式具有中文特异性(例如,“2021年” → “二零二一年” 或 “两千零二十一年”)。
- 工具与技术:有限状态自动机(Finite State Automata, FSA)用于初步分类,最大熵(Maximum Entropy, ME)分类器和基于规则的系统是常用方法 。结合规则和神经模型(如基于Transformer的模型、FLAT)的混合系统正逐渐兴起,以提高准确性并处理歧义 。WeTextProcessing是一个可能提供中文TN工具的库,但具体细节未在摘要中提供。
文本规范化并非简单的转换步骤,而是一个关键的消歧过程。TN中的错误,例如将“$200”误读为“美元二百”而非“二百美元”,或将“St.”在表示街道时误读为“Saint”(圣),会直接传播到音素化和声学建模阶段。这会导致发音错误、韵律不自然(例如,由于数字或日期解析错误导致的停顿或重音不当),最终严重降低合成语音的可懂度和专业性。对于中文而言,由于分词和多样的非标准词格式,其复杂性更高 。因此,鲁棒且能感知上下文的TN是高质量TTS的基石。微软的UniTA 等统一神经文本分析器的出现,通过联合处理包括TN在内的多个前端任务,表明了业界对这种相互依赖性的认识以及对更整体解决方案以最大限度减少错误传播的需求。
- 音素化策略:字符、字位与音素(包括英文重音的ARPABET表示法,中文的带声调拼音)
- 输入表示:
- 字符/字位: 直接从文本获取,实现简单。然而,它们可能存在歧义(例如,英文单词 “read” 可以发 /ri:d/ 或 /rɛd/),使得模型难以学习一致的发音,尤其对于未登录词(Out-Of-Vocabulary, OOV)或拼写不规则的语言 。
- 音素: 提供更直接的发音表示,减少歧义,并且在有良好G2P转换器的情况下,可能改善OOV处理 。这是许多TTS系统(如FastSpeech 2、VITS通常使用音素输入)的常见方法。
- 字位到音位(G2P)转换:
- 对于将文本(字位)转换为音素至关重要。英文G2P工具包括g2p_en 、phonemizer(可使用espeak-ng等后端) 以及NVIDIA NeMo的G2P模型 。ESPnet的配方常使用espeak_ng_english_vits或其他g2p模型 。
- 挑战包括处理OOV词和异形同音异义词(拼写相同但发音不同的词,如英文中的 “read”)。现代G2P系统(例如NeMo的G2P-Conformer)可以在句子级别进行训练,以更好地处理这些情况 。
音素输入是一把双刃剑。虽然音素提供了明确的发音指导,并能提高对OOV词的鲁棒性 ,但它们引入了对G2P转换器的依赖。来自G2P阶段的错误(错误发音、不正确的重音/声调)将直接传播到合成语音中,可能抵消其带来的好处 。基于字符的模型虽然可能对模糊的字位学习到不正确的发音,但避免了这种显式的错误传播链。然而,它们可能需要更多数据或更复杂的注意力机制来隐式学习字位到声音的映射。因此,在字符和音素输入之间的选择,涉及到在显式发音控制(音素)和避免G2P错误传播(字符)之间的权衡。如果选择音素,G2P系统的质量至关重要。混合方法或能够从两者中学习的模型(例如Mixed-Phoneme BERT )试图兼顾两者的优点。音位特征(Phonological features, PFs)也被探索作为一种更抽象、独立于语言的表示,可能提供更好的泛化能力并减少数据需求 。
- 中文音素化(带声调的拼音):
- 带数字声调标记的拼音(例如,ma1, ma2, ma3, ma4, ma0)是普通话TTS的标准音素表示法 。
- 多音字消歧: 一个主要挑战。同一个汉字根据语义上下文可以有不同的拼音发音和声调。BERT等模型被用于提取语义特征以消除多音字的歧义 。Dict-TTS利用在线词典进行语义到发音的匹配 。
- 连续变调: 普通话的声调会根据上下文发生变化(例如,两个连续的第三声调:[σ3σ3]w → [σ2σ3]w)。期望神经模型能从数据中隐式学习这些规则,或通过显式指导进行学习 。AMNet将声调特征从音素中解耦,以进行显式的声调建模 。
- 英文词汇重音(ARPABET):
- ARPABET是一种音标代码,通过在元音后附加数字(0:无重音,1:主重音,2:次重音)来表示词汇重音 。这对于自然的英语韵律至关重要。
- 英语重音的声学相关因素包括F0、时长、强度和元音音质 。神经模型可以被训练来检测重音错误或从带重音标记的音素输入中实现重音模式 。
预训练语言模型(Pre-trained Language Models, PLMs)在连接字符和音素表示方面扮演着越来越重要的角色。传统的G2P系统通常基于规则或在有限的配对数据上训练。像BERT这样在大规模文本语料库上预训练的PLM,能够捕捉丰富的语义和上下文信息 。将这些PLM微调用于G2P任务,或使用其嵌入来增强TTS输入 ,可以提高对歧义词(中文多音字 ;英文异形同音异义词 )的发音准确性,并通过提供更好的上下文理解来增强韵律建模。例如,TEAR模型提出了一种通过声学表示增强的跨模态预训练文本编码器 。PLM的崛起正在改变这一领域。它们使得在字符输入的简便性(但存在歧义)和音素输入的明确性(但依赖G2P)之间不再是硬性选择,而是可以通过PLM来丰富基于字符的输入,赋予其学习到的音素/语义知识,或者通过为G2P提供更好的上下文消歧来改进基于音素的系统。这有望催生出更鲁棒且需要较少特定语言工程的TTS前端。
- 韵律特征提取:建模语调(F0轮廓)、时长和能量
- 基频(F0)/音高:
- 是语调和重音的关键声学相关因素 。
- 提取方法:Praat(自相关或互相关法)、librosa(pyin用于F0估计)、pyWORLD(dio用于原始音高提取,stonemask用于音高优化)。
- 预处理:F0轮廓通常转换为对数刻度,对无声区进行插值,然后进行归一化(均值/标准差)以供模型训练 。FastSpeech 2使用连续小波变换(Continuous Wavelet Transform, CWT)将音高分解为音高谱图 。ProsodyFM使用音高处理器对原始音高值进行插值、平滑和扰动,以突出其形状特征 。
- 时长:
- 音素/字符时长对于节奏和语速至关重要。
- 提取:通常使用强制对齐工具(如Montreal Forced Aligner, MFA)获得 。
- 建模:由时长预测器在FastSpeech 2等模型中进行预测 。VITS使用随机时长预测器 。
- 能量/响度:
- 影响感知到的重音和整体语音音量。
- 提取:通常计算为每帧的均方根(Root Mean Square, RMS)能量 或STFT帧幅度的L2范数 。Librosa提供了librosa.feature.rms函数 。
- 预处理:在用作输入或预测目标之前,通常会进行归一化(均值/标准差)。
F0、时长和能量这些韵律特征并非相互独立。例如,英语中的词汇重音是由较高的F0、较长的时长和较大的强度共同提示的 。类似地,语调模式是通过与音节时长在时间上对齐的F0轮廓来实现的。独立预测这些特征的模型可能会忽略这些复杂的相互作用,从而可能导致韵律不够自然。先进的TTS模型(例如带有变异适配器的FastSpeech 2 )试图联合或有条件地建模这些特征。提取的F0、时长和能量的质量直接影响模型学习和再现听起来自然的韵律的能力。F0提取错误(例如,音高减半/加倍)或时长对齐错误可能导致单调或节奏笨拙的语音。
表1:语言前端处理概述
处理阶段 | 描述与目的 | 主要挑战(例如,歧义、OOV、连续变调、重音标记) | 常用英文技术/工具(例如,Regex, inflect, phonemizer, ARPABET, Praat, librosa) | 常用中文技术/工具(例如,FSA, ME, BERT用于多音字, Pinyin+tone, Praat, pyWORLD) | 处理不当对TTS质量的影响 |
---|---|---|---|---|---|
文本规范化 | 将非标准词(数字、缩写、符号、日期、货币)转换为标准口语形式。 | 歧义性(如St.是Street还是Saint),上下文依赖,新词处理。 | 正则表达式, inflect库, pypinyin (用于中文数字), 规则系统, 神经模型 | 有限状态自动机 (FSA), 最大熵 (ME) 模型, BERT (用于多音字处理), 规则系统, WeTextProcessing (可能) | 发音错误,韵律不自然,可懂度降低。 |
中文分词(中文) | 将连续的汉字序列切分为有意义的词语单元。 | 分词歧义,未登录词。 | 不适用 | 基于词典和统计的分词器 (如Jieba), 神经分词模型。 | 影响后续的G2P和语义理解,导致发音和韵律错误。 |
G2P/音素化 | 将字位(字符)序列转换为音素序列。 | OOV词处理,异形同音异义词(英文),多音字(中文),发音规则复杂性。 | phonemizer (后端如espeak-ng), g2p_en, CMUdict, ARPABET (用于重音) | 拼音转换工具 (如pypinyin), 多音字消歧模块 (基于BERT或规则) | 严重发音错误,影响可懂度和自然度。 |
韵律特征提取 - F0(音高) | 提取基频轮廓,用于建模语调。 | F0提取错误(倍频/半频),无声段处理,F0轮廓平滑与细节保留的平衡。 | Praat, librosa (pyin), pyWORLD (dio, stonemask) | 同英文。 | 语调平淡或不自然,情感表达不足。 |
韵律特征提取 - 时长 | 确定每个音素或字符的持续时间,用于建模节奏和语速。 | 对齐准确性,时长变异性建模。 | 强制对齐工具 (如MFA) | 同英文。 | 语速不当,节奏奇怪,发音拖沓或过快。 |
韵律特征提取 - 能量 | 提取每帧的能量或响度,用于建模重音和音量。 | 能量归一化,噪声影响。 | librosa (feature.rms), STFT帧幅度的L2范数 | 同英文。 | 音量不均,重音模式错误,听感不自然。 |
神经语音合成架构的输入表示
TTS模型训练所使用的不同形式的输入数据,重点关注语言层面和声学层面。语言输入:字符 vs. 音素——在鲁棒性、OOV处理和韵律学习方面的权衡
- 基于字符的输入:
- 实现更简单,因为它避免了单独的G2P转换步骤 。
- 模型隐式地学习字位到声音的映射。
- 如果模型能学习子词单元或常见的字符模式,则对OOV词可能更鲁棒。
- 然而,可能难以处理不规则发音、异形同音异义词(例如,英文中的 “read”),并且可能需要更多数据来学习准确的发音规则 。韵律学习也可能不那么直接。
- 示例:Tacotron可以将字符嵌入作为输入 。
- 基于音素的输入:
- 提供明确的发音信息,可以产生更准确和一致的发音,特别是对于具有复杂G2P规则或许多不规则性的语言 。
- 如果G2P转换器能够泛化到未见过的词,则具有更好的OOV处理能力 。
- 更容易整合词汇重音(例如,通过ARPABET数字 )和声调(例如,带数字的拼音 ),有助于韵律建模。
- 需要可靠的G2P转换流程;来自G2P的错误会传播 。
- 如果包含所有音素、重音/声调变体,词汇量可能会更大。
- 示例:FastSpeech 2 、VITS 。ESPnet的配方通常使用音素 。
- 混合/混合输入: 一些模型,如Mixed-Phoneme BERT ,使用音素和亚音素单元的组合来平衡语义丰富性和发音准确性。PnG BERT同时将音素和字位作为输入 。
预训练语言模型(PLM)在弥合字符与音素表示之间的差距方面发挥着日益重要的作用。传统的G2P系统通常基于规则或在有限的配对数据上训练。而像BERT这样在海量文本语料上预训练的PLM,能够捕捉丰富的语义和上下文信息 。将这些PLM微调用于G2P任务,或使用其嵌入来增强TTS输入 ,可以提高对歧义词(中文多音字 ;英文异形同音异义词 )的发音准确性,并通过提供更好的上下文理解来增强韵律建模。例如,TEAR模型提出了一种通过声学表示增强的跨模态预训练文本编码器 。PLM的崛起正在改变这一领域。它们使得在字符输入的简便性(但存在歧义)和音素输入的明确性(但依赖G2P)之间不再是硬性选择,而是可以通过PLM来丰富基于字符的输入,赋予其学习到的音素/语义知识,或者通过为G2P提供更好的上下文消歧来改进基于音素的系统。这有望催生出更鲁棒且需要较少特定语言工程的TTS前端。
表2:
TTS语言输入表示对比
表示类型 | 优点 | 缺点 | 语言适用性(例如,英文、中文) | 生成的常用工具/技术(例如,直接从文本、G2P工具、PLM增强) | 对模型复杂度的影响 |
---|---|---|---|---|---|
字符 | 实现简单,无需G2P步骤;对某些OOV词可能通过学习字符模式而具有鲁棒性。 | 发音歧义(异形同音异义词),难以学习不规则发音,可能需要更多数据,韵律学习不直接。 | 对拼写规则性强的语言相对友好。 | 直接从文本。 | 模型需要隐式学习G2P映射,可能增加编码器复杂度。 |
音素 | 提供明确发音,提高发音准确性和一致性,利于OOV处理(依赖G2P泛化能力),易于整合重音/声调信息以辅助韵律建模。 | 依赖G2P转换器质量,G2P错误会传播,词典可能较大。 | 对拼写不规则或有复杂音变(如中文声调)的语言更优。 | G2P工具(phonemizer, g2p_en, pypinyin),PLM增强的G2P。 | 前端处理更复杂,但可能简化声学模型的学习任务。 |
混合/音位特征(PFs) | 尝试结合字符和音素的优点,或提供更抽象、跨语言的表示。PFs可能减少数据需求,提高泛化能力。 | 实现更复杂,研究尚不如纯字符或音素成熟。 | 旨在提高跨语言适应性和低资源场景性能。 | PLM辅助的混合输入,专门的PF提取方法。 | 模型架构可能更复杂以处理多种输入或抽象特征。 |
关键开源英文TTS数据集
英文TTS研究拥有相对丰富的开源数据集资源,这些数据集在推动技术发展方面发挥了重要作用。
- LJSpeech:单说话人TTS的基石
LJSpeech是一个广泛使用的公开领域英文语音数据集,由Keith Ito整理并发布。
- 规模与内容:该数据集包含一个女性说话人朗读的7本非小说类书籍的13,100个短音频片段,总时长约24小时 。音频片段长度从1秒到10秒不等,平均长度为6.57秒 。文本内容源自1884年至1964年间出版的公共领域书籍,总计约225,715个单词和1,308,678个字符,包含13,821个不同词汇 。
- 音频质量:音频文件为22050 Hz采样率、16-bit PCM WAV格式的单声道音频 。值得注意的是,原始LibriVox录音为128 kbps MP3格式,这意味着WAV文件可能包含MP3编码引入的瑕疵 。
- 文本标注:为每个音频片段提供了对应的转录文本。transcripts.csv文件包含原始转录(说话者朗读的UTF-8文本)和规范化转录(数字、序数词、货币单位等被展开为完整单词的UTF-8文本) 。文本与音频经过手动匹配和质量检查以确保准确性 。
- 许可与获取:LJSpeech在美国及多数其他国家属于公共领域,使用上没有限制 。可通过其官方项目页面下载 。Hugging Face Datasets、TensorFlow Datasets和PyTorch Audio等库也提供了加载器 。
- 适用性:由于其单说话人、高质量(相对而言)和清晰的标注,LJSpeech非常适合训练单说话人TTS模型,并常被用作TTS研究的基准数据集之一 。
LJSpeech的出现,为研究者提供了一个易于获取且数据量适中的高质量单人发音语料库。在此之前,许多TTS研究依赖于内部或不易获取的数据集,这使得研究成果难以复现和比较 。LJSpeech的公共领域特性和标准化格式,极大地推动了基于神经网络的端到端TTS模型的开发和开源实践。尽管其音频源于MP3,可能存在一些质量上限,但其清晰的标注和广泛的社区接受度使其成为入门和基准测试的理想选择。
- LibriTTS与LibriTTS-R:大规模多说话人语料库
LibriTTS及其音质增强版LibriTTS-R是专为TTS研究设计的大规模多说话人英文语料库,由Heiga Zen等谷歌研究人员整理发布。
-
LibriTTS (SLR60)
- 来源与规模:LibriTTS源自LibriSpeech ASR语料库的原始材料(LibriVox的MP3音频和古腾堡计划的文本文件),包含约585小时、2456个说话人的朗读式英文语音 。
- 音频参数:音频文件采样率为24kHz 。语音片段在句子层面进行了切分 。
- 文本标注:包含原始文本和规范化文本 。还可以提取上下文信息(如相邻句子) 。背景噪音显著的语段已被排除 。
- 说话人信息:作为一个多说话人数据集,它包含了大量说话人的数据。根据Zen等人在2019年的论文,LibriTTS的2456个说话人中,包含1185名女性和1271名男性,呈现出较好的性别均衡性 。后续研究也指出其具有均衡的性别分布 。
- 许可与获取:采用CC BY 4.0许可证 。可通过OpenSLR (SLR60) 下载不同子集(如train-clean-100, train-other-500, dev-clean, test-clean等) 。
- 适用性:LibriTTS因其规模大、说话人数量多、标注较为规范,成为训练和评估多说话人TTS系统、说话人自适应TTS以及研究语音转换等任务的重要资源 。
-
LibriTTS-R (SLR141)
- 改进之处:LibriTTS-R是LibriTTS的音质修复版。其构成样本与LibriTTS相同,但通过应用名为Miipher的语音修复模型(使用了w2v-BERT特征清洁器和WaveFit神经声码器)显著提升了音频质量 。Miipher模型本身在一个包含2680小时嘈杂和录音室质量语音对的专有数据集上进行了训练 。
- 规模与参数:与LibriTTS一致,约585小时,2456个说话人,24kHz采样率 。
- 效果:实验表明,LibriTTS-R的基准样本音质显著优于LibriTTS,并且使用LibriTTS-R训练的神经TTS模型能够达到与基准样本相当的自然度 。
- 许可与获取:同样采用CC BY 4.0许可证,可通过OpenSLR (SLR141) 下载 。
- 适用性:由于音质的提升,LibriTTS-R更适合训练追求高自然度和高保真度的TTS模型,是当前高质量多说话人TTS研究的首选数据集之一 。
LibriTTS系列的推出,特别是LibriTTS-R的音质提升,为TTS社区提供了接近录音室质量的大规模开源数据。这使得研究者能够在更理想的数据条件下复现和推进先进的TTS模型架构,如基于Transformer的模型和各种神经声码器。从LibriSpeech到LibriTTS,再到LibriTTS-R,体现了社区对数据质量持续追求的趋势。最初的LibriSpeech主要服务于ASR,其长段音频和不完全一致的文本使其不直接适用于TTS 。LibriTTS通过句子切分、文本规范化和噪声剔除解决了这些问题 。而LibriTTS-R则更进一步,通过复杂的语音增强技术,弥补了原始LibriVox录音在音质上与专业录音室录音的差距,这对于生成高度自然的语音至关重要。这种“修复”已有大规模数据集的思路,为扩展高质量TTS语料提供了一个有效途径,尤其是在直接录制同等规模录音室质量数据成本高昂的情况下 。
-
- VCTK Corpus:多口音英文语音数据
CSTR VCTK Corpus (Voice Cloning Toolkit Corpus) 是一个包含多种口音的英文多说话人数据集,由爱丁堡大学语音技术研究中心(CSTR)发布。
- 规模与说话人:包含110位(早期版本为109位)带有不同口音的英语母语者的语音数据 。每位说话人朗读约400个句子 。总时长约44小时 。
- 文本内容:句子选自报纸、彩虹段落(Rainbow Passage)以及用于语音口音档案的引出段落 。报纸文本取自The Herald (Glasgow),经授权使用 。每个说话人朗读不同的报纸句子集,这些句子集通过贪心算法选择以增加上下文和音素覆盖率 。
- 音频质量与录制环境:语音数据在爱丁堡大学的半消声室中录制,采样频率为96kHz,24位深度,后下采样至48kHz,16位 。使用了两种麦克风:全向麦克风(DPA 4035,mic1配置)和小振膜电容麦克风(Sennheiser MKH 800,mic2配置) 。mic1的录音包含一些低频噪声 。
- 说话人信息:包含说话人ID、性别(2类)和口音(11种或13种类别的标注) 。
- 许可与获取:通常认为是开放的,TensorFlow Datasets页面指明其遵循Creative Commons Attribution 4.0 License 。可通过TensorFlow Datasets加载 ,或从其官方项目页面(如datashare.ed.ac.uk,尽管有时可能无法访问 )或Activeloop Deep Lake等平台获取 。
- 适用性:VCTK因其多样的口音、高质量的录音(尤其是48kHz采样率)和详细的说话人信息,被广泛用于开发TTS和语音克隆系统,特别是说话人自适应和跨口音合成的研究 。
发音单元数量:TensorFlow Datasets中vctk/mic1配置的训练集有44,455个样本,vctk/mic2配置的训练集有43,873个样本 。
- VCTK Corpus:多口音英文语音数据
VCTK数据集的一个显著特点是其对口音多样性的关注。虽然其总时长和说话人数量不及LibriTTS,但每个说话人朗读的句子数量较多(约400句),且包含了明确的口音标签。这使其成为研究口音建模、口音转换以及评估TTS模型在不同口音上的鲁棒性的宝贵资源。48kHz的高采样率也为生成高保真语音提供了良好基础。然而,需要注意不同麦克风录音(mic1 vs mic2)可能带来的音质差异,以及部分说话人数据可能存在的问题(如p315文本丢失,p280和p315的mic2录音问题 )。这些因素在实验设计时应予以考虑。该数据集的构建目标之一是支持基于HMM的TTS系统,特别是使用平均语音模型和说话人自适应技术的系统 ,但它同样适用于现代的深度学习TTS模型。
- HiFi-TTS:高质量多说话人英文TTS数据集
Hi-Fi Multi-Speaker English TTS Dataset (Hi-Fi TTS) 是一个专为训练文本转语音模型设计的多说话人英语数据集,由Bakhturina等人于2021年发布。
- 来源与规模:基于LibriVox的公共有声读物和古登堡计划的文本构建 。包含约291.6小时的语音数据,来自10位说话人,每位说话人至少有17小时的录音 。
- 音频质量:音频文件以44.1kHz采样率的WAV格式存储 。数据集分为“clean”子集(SNR至少40dB)和“other”子集(SNR至少32dB),以反映不同的录音质量 。所有样本都经过ASR模型(QuartzNet和Citrinet)验证,确保词错误率(WER)为零,以排除转录与音频不匹配的情况 。
- 说话人信息:包含**10位说话人,其中6位女性,4位男性 。**论文中未明确提供详细的口音分布信息 。
- 文本标注:提供原始文本和规范化文本(保留大小写) 。
- 许可与获取:采用CC BY 4.0许可证 。可通过OpenSLR (SLR109) 下载,文件名为hi_fi_tts_v0.tar.gz (41G) 。
- 适用性:HiFi-TTS旨在提供一个高质量、多说话人的数据集,特别适合训练能够生成高保真语音的TTS模型。每位说话人充足的数据量也使其适用于训练强大的说话人嵌入或进行细致的说话人风格建模。
HiFi-TTS的一个**核心贡献在于其对每位说话人提供了大量的高保真录音(至少17小时,44.1kHz采样率)。**这与许多其他多说话人数据集中每位说话人平均数据量较少的情况形成了对比。如此充足的单人数据,对于训练能够捕捉说话人细微特征、实现高质量个性化语音合成或进行鲁棒的少样本/零样本语音克隆的模型至关重要。此外,通过信噪比(SNR)将数据明确划分为“clean”和“other”两个子集 ,为研究者提供了便利,可以针对性地研究音频质量对TTS模型性能的影响,或者开发对不同噪声水平具有鲁棒性的模型。这种细致的质量控制和数据划分,是其相较于简单地将LibriVox数据归类为“clean”或“other”(如LibriTTS中的做法)的一个进步,为更精细化的研究提供了可能。
- Mozilla Common Voice (英文):潜力与挑战并存
Mozilla Common Voice是一个大规模、多语种、众包的语音数据集,旨在促进语音技术的民主化和多样性 。其英文部分数据量非常庞大。
- 规模 (英文):Common Voice项目持续更新。例如,Common Voice Corpus 12.0版本包含104种语言,总计26,119小时已录制语音,其中17,127小时经过验证 。Common Voice 17.0版本则增长到124种语言,总计31,175小时已录制语音,其中20,408小时经过验证 。最新的版本(如16.1 , 17.0 , 或 Hugging Face上的非官方18.0版本 )的具体英文数据量和说话人数需查阅其官方发布渠道或Hugging Face上的详细信息(如 )。
- 音频质量:音频文件为MP3格式。由于是众包数据,质量参差不齐,可能包含背景噪音、静电声等 。存在一些Common Voice进行筛选以获取更高质量子集的尝试,例如styletts2-community/common-voice-filtered仅包含MOS评分高于3.75的语音,约占总数据的7% 。
- 说话人信息:包含许多录音的年龄、性别、口音等人口统计学元数据,具有高度多样性 。
- 文本内容:志愿者朗读收集到的句子。
- 许可:通常采用CC0 (公共领域贡献)。
- TTS适用性:尽管数据量巨大,Common Voice主要用于自动语音识别(ASR)任务。直接用于TTS面临挑战:音频质量不一、缺乏规范化转录 、语段通常较短(很多少于5秒 )。有研究明确指出,未经大量筛选和整理的Common Voice因音频质量问题不适合直接构建TTS模型 。然而,如果数据经过精心挑选和处理,其多样性对TTS可能是一个优势 。
Common Voice项目在数据民主化和多样性方面做出了巨大贡献,但将其有效应用于高质量TTS,则需要大量的预处理、筛选和细致的选择策略。它对于TTS而言,更像是一块“璞玉”,需要精心雕琢才能发光。该数据集的众包特性带来了无与伦比的说话人数量和口音覆盖范围,这对于解决现有TTS数据集中常见的说话人偏差问题具有重要意义 。然而,这也意味着音频质量、录音环境、甚至转录准确性都可能存在较大差异 。直接在原始Common Voice数据上训练TTS模型,效果往往不尽如人意 。诸如common-voice-filtered 或从Common Voice派生的GLOBE数据集 等工作,都表明了为TTS目的而进行数据策展的必要性和潜力。这表明,尽管原始数据唾手可得,但需要大量的“增值”处理才能充分释放其在TTS领域的潜力,这也为进一步的研究和数据集发布创造了机会。
另一方面,Common Voice的巨大体量,即使只有一部分适合TTS,也可能对预训练超大规模TTS基础模型具有不可估量的价值,类似于大型、略带噪声的文本语料库用于大型语言模型(LLM)的预训练。关键在于开发鲁棒的筛选和训练技术。大型语言模型受益于海量、多样化的文本数据,即便这些数据并非完美纯净。TTS领域也日益采用大型模型架构(例如BASE TTS )。Common Voice提供了海量的音频来源(数万小时 )。即便只有约7%被认为是可直接用于TTS微调的“高质量”数据 ,剩余的数据仍可用于无监督或自监督预训练,以学习通用的声学表征或说话人特性。这可能催生出更鲁棒、泛化能力更强的TTS基础模型,这些模型随后可以在更小、更高质量的数据集上针对特定任务进行微调。
- LibriTTS-P:面向可控与表现力TTS的数据集
LibriTTS-P是在LibriTTS-R基础上构建的新型语料库,其核心特点是为每个语段和说话人增加了描述性提示(prompts),从而支持更具表现力和可控性的TTS。
- 数据基础与增强:LibriTTS-P基于高质量的LibriTTS-R数据集,额外添加了两种类型的提示 :
- 语段级风格提示 (Style Prompt):描述每个语段的说话风格,包括性别、音高(如低、正常、高)、语速(如慢、正常、快)和响度(如低、正常、高)等因素 。
- 说话人级特征提示 (Speaker Prompt):描述对说话人特征的人工感知和印象词汇,如“女性化”、“男性化”、“冷静”、“可爱”等,这些特征在不同语段中保持一致,对每个说话人是唯一的 。
- 标注方法:采用混合标注方法:对主观的说话人特征进行人工标注(由三位专业标注员完成),对可量化的说话风格属性进行合成标注(基于F0、音节速率、响度等统计数据自动标记,并使用LLM进行句子改写以增加多样性) 。
- 目标应用:专为基于提示的可控TTS(prompt-based controllable TTS)和语音风格字幕(style captioning)任务设计 。
- 效果与影响:实验表明,使用LibriTTS-P训练的TTS模型比使用传统数据集的模型具有更高的自然度;同时,在风格字幕任务中,使用LibriTTS-P训练的模型生成的描述词准确率提升了2.5倍 。
- 可获取性:该数据集已在GitHub上开源 。
- 注意事项:研究者发现在LibriTTS-R中存在少量说话人ID相同但性别明显不同的样本,建议在使用LibriTTS-P时排除这些样本 。
LibriTTS-P(以及类似的ParaSpeechCaps 等工作)标志着TTS数据集的一个重要演进方向:从仅仅提供音频-文本对,发展到包含丰富的、结构化的元数据,从而实现对合成语音的细粒度控制。这对于开发下一代交互式、富含情感和表现力的TTS系统至关重要。传统TTS数据集主要产出朗读风格的语音,而可控TTS需要额外信息来指导合成过程(如期望的情感、说话方式等)。LibriTTS-P通过为一个已存在的大规模高质量数据集(LibriTTS-R)显式添加风格和说话人特征的“提示” ,使得模型能够学习从这些描述性提示到声学实现的映射。这是使TTS更具适应性、个性化和情感共鸣能力的关键一步。
其采用的混合标注方法——人工标注主观的说话人感知,合成标注可测量的风格属性——是为大规模数据集标注丰富信息的一种实用解决方案,平衡了人类的细微洞察与可扩展的自动化处理。手动为585小时数据集中的每个语段标注多种风格因素成本极高。说话人的感知(如声音“冷静”或“可爱”)本质上是主观的,最好由人类标注员捕捉 。而音高、语速和响度等声学属性可以从音频中客观测量,然后映射到描述性标签(如“低音高”、“语速快”) 。LibriTTS-P的混合方法 结合了两者的优点:利用人类判断处理复杂感知,利用自动分析处理可量化特征。这种策略为丰富大规模数据集提供了一种可扩展的方式,使其对可控TTS研究更具价值。
表3:主要英文TTS开源数据集对比
数据集名称 | 总时长(约) | 说话人数 | 说话人特征 | 采样率 (kHz) | 关键特性 | 许可协议 | 主要获取途径 |
---|---|---|---|---|---|---|---|
LJSpeech | 24小时 | 1 | 单一女性,美式英语 | 22.05 | 单说话人,相对高质量,清晰标注,广泛用作基准 | 公共领域 | (https://keithito.com/LJ-Speech-Dataset/) |
LibriTTS | 585小时 | 2,456 | 多说话人 (1185女, 1271男 ),主要是美式英语 | 24 | 大规模,多说话人,从LibriSpeech派生,句子切分,含clean/other子集 | CC BY 4.0 | OpenSLR (SLR60) |
LibriTTS-R | 585小时 | 2,456 | 同LibriTTS | 24 | LibriTTS的音质修复版,音质更佳,适合高质量TTS | CC BY 4.0 | OpenSLR (SLR141) |
VCTK Corpus | 44小时 | 110 | 多说话人,多种英式及其他口音,性别标注 | 48 | 多口音,高质量录音(部分48kHz),每个说话人数据量较多 | CC BY 4.0 (通常认为) | TensorFlow Datasets , CSTR |
HiFi-TTS | 291.6小时 | 10 | 多说话人 (6女, 4男 ),母语为英语 | 44.1 | 高保真,每位说话人数据量大 (>=17小时),含clean/other (SNR区分)子集 | CC BY 4.0 | OpenSLR (SLR109) |
Mozilla Common Voice (English) | 数千至上万小时 (持续增长) | 海量 | 极其多样,含年龄、性别、口音元数据 | 48 (MP3源) | 规模巨大,众包,多样性高,但音频质量不均,需筛选 | CC0 | https://commonvoice.mozilla.org/, Hugging Face Datasets |
LibriTTS-P | 585小时 | 2,456 | 同LibriTTS-R,额外标注风格与说话人提示 | 24 | 基于LibriTTS-R,增加风格/说话人提示,用于可控TTS和风格字幕 | CC BY 4.0 (数据源) | GitHub (line/LibriTTS-P) |
开源中文TTS数据集
- AISHELL系列 (AISHELL-1, AISHELL-3):普通话语音语料库
AISHELL系列是由北京希尔贝壳科技有限公司发布的重要的中文普通话语音资源。
- AISHELL-1 (SLR33 / LDC2018S14)
- 简介:一个开源的普通话语音语料库,主要用于ASR,但也适用于TTS研究 。
- 规模:约178小时的录音数据 。包含400名来自中国不同口音区的说话人 。
- 音频质量:在高保真麦克风下录制,开源版本下采样至16kHz 。录音环境为安静室内。
- 文本标注:人工转录准确率高于95% 。文本内容覆盖11个领域,如智能家居、自动驾驶等 。AISHELL-1的确切发音单元数量和词汇量大小在公开资料中不明确 。
- 许可与获取:Apache License v2.0 ,免费供学术使用。可通过OpenSLR (SLR33) 或AISHELL官网获取。
- AISHELL-3 (SLR93)
- 简介:一个大规模、高保真的多说话人普通话语音语料库,专为多说话人TTS系统设计 。
- 规模:约85小时的录音,包含88,035条发音,来自218位中国普通话母语者 。
- 音频质量:高保真录音,采样率为44.1kHz,16位 。录音内容为情感中性的朗读。
- 说话人信息:明确标注了说话人的性别、年龄段和母语口音等辅助属性 。
- 文本标注:提供汉字级别和拼音级别的转录,声母、韵母和声调的标注准确率均高于98% 。词汇量大小未明确说明 。
- 许可与获取:Apache v2.0许可证 。可通过OpenSLR (SLR93) 或AISHELL官网获取,并提供了基线系统 。
AISHELL系列数据集,特别是AISHELL-1和AISHELL-3,是商业公司(北京希尔贝壳)对开源社区的重要贡献,体现了产业界支持学术研究的趋势 。这些数据集的发布,极大地推动了中文普通话语音处理技术的发展。AISHELL-1以其16kHz的采样率更偏向ASR应用,而AISHELL-3凭借其44.1kHz的高采样率、详细的说话人元数据(性别、年龄、口音),更适合现代高保真多说话人TTS和语音克隆研究,弥补了以往高质量中文TTS开源资源的不足 。这一定位使其成为中文TTS领域对标LibriTTS或VCTK等英文数据集的重要资源。
- THCHS-30:广泛使用的普通话语料库
THCHS-30是由清华大学语音与语言技术中心(CSLT)发布的免费中文语音数据库,旨在为中文语音识别系统构建提供基础。
- 简介:包含超过30小时(具体为35小时 )的普通话朗读语音,由清华大学录制 。虽然主要目标是ASR,但也用于TTS任务。
- 规模:约35小时,数据量6.4GB。包含50位参与者朗读的1000个句子 。
- 音频质量:使用单个碳棒麦克风在安静办公室录制,采样率为16kHz,16位 。
- 说话人信息:大部分参与者为年轻大学生,普通话流利标准 。
- 文本标注:提供了完整的资源,包括词典、语言模型和训练脚本 。确切发音单元数和词汇量未在公开资料中明确 。
- 许可与获取:Apache License v2.0 。可通过OpenSLR (SLR18) 或CSLT数据门户网站下载 。
- TTS应用:尽管主要为ASR设计,PapersWithCode等平台将其列于TTS任务下 。有研究论文(如一篇关于跨语言语音克隆的论文 )使用THCHS-30作为普通话目标语料。ESPnet或CoquiTTS等工具包的具体使用案例检索结果有限或无法访问 。
THCHS-30尽管录制时间较早(2000-2001年录制,2015年发布 ),录音设备也相对简单(单个碳棒麦克风 ),但由于其免费开放、附带完整的系统构建资源,并且在普通话音素覆盖方面对早期的863数据库有所补充 ,因此在中文语音研究领域,尤其是在资源相对匮乏的早期,扮演了重要角色。其在TTS领域的应用 表明了其适应性。这提示我们,即使不是采用最先进设备录制的数据集,只要文档完善、易于获取且许可宽松,也能对研究社区产生持久的积极影响。然而,与AISHELL-3这类专为高保真TTS设计的数据集(44.1kHz采样率 )相比,THCHS-30在音频保真度上可能存在差距。但对于侧重语言学特性、跨语言迁移学习或资源受限的TTS研究,它仍不失为一个有价值的选择。
- CSS10 (中文):单说话人普通话数据
CSS10是一个包含10种语言的单说话人语音数据集集合,其中的中文(zh)部分源自LibriVox有声读物。
- 简介:作为CSS10多语言项目的一部分,中文数据集旨在提供一个单说话人的普通话TTS语料 。
- 规模 (中文):总时长6小时27分04秒,包含两本有声读物:《朝花夕拾》和《呐喊》 。确切的发音单元数量和词汇量信息未在公开资料中明确 。
- 音频质量:采样率为22kHz,音频文件从有声读物中分割而来 。
- 文本内容:与有声读物音频对齐的文本。进行了文本规范化处理,如扩展缩写、将数字转为文字、保留大小写等 。
- 许可与获取:Apache-2.0许可证 。可通过Kaggle等平台获取 。PapersWithCode上亦有提及 。
- TTS应用:CSS10系列专为TTS设计。有模型在CSS10中文数据上进行了微调 。更具体的应用案例检索受限 。
CSS10中文数据集以其相对宽松的许可证(Apache-2.0 )和便捷的获取方式,为研究者提供了一个易上手的普通话单人TTS语料。这使得研究人员在无需立即处理复杂的多人场景或受限许可证的情况下,即可开展普通话TTS研究。其22kHz的采样率对于TTS而言是可接受的 。由于源自LibriVox的有声读物且为单人朗读 ,其特性与英文的LJSpeech有相似之处:适合高质量单人语音建模,但无法直接支持多说话人或语音克隆研究。其最终合成质量会受到原始LibriVox朗读者和录音条件的影响。
- MagicData 开源贡献
Magic Data Technology(北京爱数智慧科技有限公司)也为开源社区贡献了若干中文语音数据集。
- MAGICDATA 普通话朗读语音库 (SLR68):包含755小时的脚本朗读语音,来自1080名中国大陆普通话母语者 。大部分数据通过移动设备在安静室内录制。句子转录准确率高于98% 。音频参数(如采样率、位深)未在OpenSLR页面直接说明,需查阅元数据文件 。许可证为CC BY-NC-ND 4.0(非商业用途) 。
- MagicData-RAMC (富标注普通话对话语音数据集):包含180小时的普通话对话语音,由母语者通过手机录制,采样率为16kHz 。覆盖15个领域,带有主题标签和说话人活动时间戳。主要用于ASR、说话人日志、主题检测等任务。
- 其他潜在数据:MagicData官网曾提及一个商业用途的“48kHz多说话人语音克隆数据集——中文”,规模达12,000小时,20,000+说话人 ,但这并非公开的开源数据。另有提及一个包含9.97小时高质量多语言对话语音的开源包 。一些特定链接无法访问以获取更多信息 。
MagicData发布的SLR68(755小时朗读语音)是普通话领域一个体量非常可观的开源资源,其规模可与AISHELL-1匹敌。然而,其“大部分为移动设备录制” 的特性以及CC BY-NC-ND 4.0的非商业使用限制 ,是其与AISHELL系列(通常为更高质量麦克风录制且采用更宽松的Apache 2.0许可证)的关键区别。移动设备录音可能意味着声学条件更具可变性,但也可能更贴近某些真实应用场景。对于希望将研究成果商业化的团队而言,许可证的差异是一个重要考量。
同时拥有大规模朗读语音(SLR68)和对话语音(MagicData-RAMC)资源,即便RAMC更偏向ASR应用,也为研究者提供了在普通话中比较不同说话风格声学和韵律特征的机会,或在许可和数据兼容性允许的前提下,将两者结合用于训练更通用的模型。
- Mozilla Common Voice (中文):潜力与挑战
与英文版类似,Mozilla Common Voice的中文部分(包括普通话、粤语等方言)提供了大规模数据,但也伴随着相似的质量参差不齐和未经策展难以直接用于高质量TTS的挑战。
- 规模 (中文):Common Voice项目包含“中文(中国)”、“中文(香港)”、“中文(台湾)”等多个中文变体 。例如,CoVoST 2数据集中包含了zh-CN_en(普通话到英文)的语音翻译对,其训练集有7085条语料 。有ASR模型在Common Voice 6.1中文数据上进行微调 。CantoMap则是一个源自Common Voice的粤语数据集 。具体的中文各变体的时长和说话人数量需查阅最新的官方发布(一些参考链接如信息不全或无法访问)。
- 音频质量与适用性:与英文Common Voice类似,音频为MP3格式,质量不一,主要面向ASR。用于TTS需要仔细筛选和预处理 。
- 许可:通常为CC0。
对于普通话以外的资源相对较少的中文方言(如粤语、吴语、闽语等),Common Voice可能是为数不多的大规模、公开可获取的语音数据来源之一,尽管数据质量存在问题,但其价值依然关键。CantoMap 正是利用Common Voice平台为粤语这一特定方言收集数据的实例。此外,一些在Common Voice中文数据上(结合其他数据)微调并取得良好ASR效果的模型(如wbbbbb/wav2vec2-large-chinese-zh-cn )表明,通过恰当的预训练和微调策略,这些数据可以被有效利用。这为TTS应用提供了借鉴:如果能解决声学质量问题(如通过筛选、数据增强或鲁棒的声码器),并采用仔细的数据选择和模型训练方法,该数据集对中文TTS同样具有潜力。
表4:主要中文TTS开源数据集对比
数据集名称 | 语言/方言 | 总时长(约) | 说话人数 | 说话人特征 | 采样率 (kHz) | 关键特性 | 许可协议 | 主要获取途径 |
---|---|---|---|---|---|---|---|---|
AISHELL-1 (SLR33) | 普通话 | 178小时 | 400 | 不同口音区 | 16 | ASR为主,也用于TTS,安静室内高保真麦录制后下采样 | Apache 2.0 | OpenSLR (SLR33) , AISHELL官网 |
AISHELL-3 (SLR93) | 普通话 | 85小时 | 218 | 性别、年龄段、口音明确标注 | 44.1 | 高保真,多说话人TTS专用,情感中性 | Apache 2.0 | OpenSLR (SLR93) , AISHELL官网 |
THCHS-30 (SLR18) | 普通话 | 35小时 | 50 | 年轻学生,普通话标准 | 16 | ASR为主,也用于TTS,安静办公室碳棒麦克风录制,含完整构建资源 | Apache 2.0 | OpenSLR (SLR18) , CSLT官网 |
CSS10 (中文) | 普通话 | 6.45小时 | 1 | 单一说话人(有声读物) | 22 | 单说话人TTS,源自LibriVox有声读物 | Apache 2.0 | Kaggle |
MAGICDATA Read Speech (SLR68) | 普通话 | 755小时 | 1080 | 不同口音区 | 未明确(需查元数据) | 大规模朗读语音,多为移动设备录制,安静室内 | CC BY-NC-ND 4.0 | OpenSLR (SLR68) |
MagicData-RAMC | 普通话 | 180小时 | 未明确 | 母语者 | 16 | 对话语音,多领域,含主题标签、VAD,主要用于ASR相关任务 | 未明确(需查证) | Interspeech论文提及 |
Mozilla Common Voice (中文变体) | 普通话, 粤语等 | 数百至数千小时 (持续增长) | 海量 | 极其多样,含人口统计学元数据 | 48 (MP3源) | 规模巨大,众包,多样性高,但音频质量不均,需筛选,方言数据是亮点 | CC0 | https://commonvoice.mozilla.org/, Hugging Face Datasets |
应对海量数据集的挑战
处理海量TTS数据集时,会遇到一系列特有的挑战,需要相应的解决策略。
(1) 数据不平衡 (尤其在多说话人场景)
在多说话人TTS数据集中,不同说话人的数据量往往存在显著差异。数据量少的说话人(低资源说话人)的音色可能难以被模型充分学习,导致合成其语音时效果不佳 。
- 解决方案:
- 加权采样 (Weighted Sampling):在训练过程中,提高来自低资源说话人样本的采样频率 。
- 分桶采样 (Binned Sampling):为高资源和低资源说话人创建独立的样本池(bins),按比例从各池中抽取样本组成批次,确保低资源说话人的样本在某些批次中占主导,使其对损失函数的贡献得到保证 。
- 数据增强:对低资源说话人的样本进行数据增强(如切分成短句、添加噪声等)以扩充其有效训练数据量 。
- 说话人嵌入 (Speaker Embeddings):通过专门的说话人编码器或查找表学习说话人特征,使模型能够通过切换嵌入来生成不同声音,这有助于在一定程度上缓解数据不平衡对特定说话人音色学习的影响 。
(2) 标注质量与一致性
大规模数据集的标注(文本转录、音素对齐、情感/风格标签等)质量和一致性至关重要。错误的或不一致的标注会引入噪声,误导模型训练,降低合成语音的准确性和自然度 。
解决方案:
- 明确的标注规范与培训:制定详细的标注指南,对标注人员进行充分培训,处理歧义和边界情况(如如何标注口误、非语音事件等) 。
- 多重标注与一致性检验:对部分或全部数据进行多人独立标注,通过计算标注者间一致性(Inter-Annotator Agreement, IAA)来评估和提升标注质量。对不一致的标注进行仲裁 。
- 自动化工具辅助:利用ASR工具进行初步转录,再由人工校对;使用强制对齐工具进行音素边界的自动标注与检查 。
- 迭代式质量控制:在数据收集和标注过程中持续进行质量抽查和反馈修正。
- 利用模型进行数据清洗:训练初步模型后,利用模型识别可能存在标注错误的样本(如与模型预测差异极大的样本),进行人工复核。ParaSpeechCaps数据集的构建中,使用了文本嵌入模型、语音-文本多模态大模型等来辅助筛选和验证标签与语音内容的一致性 。
- 数据集审计:定期对数据集进行统计分析和可视化检查,以发现潜在的系统性偏差或质量问题 。
(3) 长尾现象处理
真实世界的数据往往呈现长尾分布,即少数类别占据大部分数据,而大量类别只有少量样本 。在TTS中,这可能表现为某些音素组合、韵律模式、说话风格或特定词汇出现频率较低。
解决方案:
- 数据增强:针对性地对尾部数据进行增强。
- 迁移学习/预训练:在包含丰富长尾现象的大规模通用数据集上进行预训练,再在目标数据集上微调。
- 课程学习 (Curriculum Learning):先用常见样本训练模型,再逐渐引入稀有样本。
- 合成数据生成:利用已有模型生成更多尾部现象的合成样本(需注意避免引入偏差)。
- 模型架构设计:采用对长尾分布更鲁棒的模型结构或损失函数。例如,T分布漂移适配器被提出用于缓解长尾问题带来的偏差 。
(4) 计算瓶颈
海量数据的处理、传输和模型训练本身就是巨大的计算挑战 。
解决方案:
- 高效的软硬件基础设施:采用高性能GPU、高速存储、低延迟网络。
- 优化的数据流水线:如预提取特征、加载和预处理策略。
- 分布式训练:利用DDP等技术并行化训练过程 。
- 模型压缩与剪枝:在保证性能的前提下减小模型大小和计算量。
- 混合精度训练 (Mixed Precision Training):使用FP16等较低精度进行计算,减少显存占用和计算时间,同时保持关键部分的FP32精度。
亚马逊BASE TTS的经验 强调了通过扩大模型和数据规模来获得“涌现能力”(如处理复杂文本的自然韵律)的重要性,这反过来也要求研究者和工程师不断优化计算和数据处理的每一个环节,以应对随之而来的巨大计算需求。
(5) 展望未来:
更高质量和多样性的数据集:对情感、风格、多方言、代码转换、非理想声学环境(如远场、噪声)等细分场景的高质量数据集需求将持续增长。
- 更智能的数据处理工具:自动化数据筛选、清洗、标注以及异常检测工具将更加重要。
- 与大语言模型(LLM)的融合:LLM在文本理解和上下文建模方面的强大能力,可能会催生对能够更好捕捉长程依赖和细微语义-韵律关系的TTS数据集的需求。
- 隐私保护与数据联邦学习:随着数据隐私法规的收紧,如何在保护用户隐私的前提下构建和使用TTS数据集(如通过联邦学习)将成为重要研究方向。
- 低资源语言/方言的突破:利用跨语言迁移学习、零样本/少样本学习技术,结合众包和数据增强,有望为更多低资源语言和方言构建可用的TTS系统。
总体而言,TTS数据集的建设与高效利用,将继续是推动语音合成技术迈向更自然、更智能、更普惠未来的核心驱动力。