Token导航 LogoToken导航

AI 资讯 · 科技行者

Dolby实验室将语音克隆速度提升十倍

更新 2026-10-27科技行者正文 6620字阅读约 21分钟

你有没有想过,如果让AI模仿一段只有五秒钟的陌生人声音,电脑需要算多久才能开口说话?

答案可能让你意外:用现在业界最强的那套系统,生成一句话的语音,花的时间比你念出这句话还长。这听起来有点荒谬,一个号称能实时交互的AI,说话反应却比真人还慢。这就是Dolby实验室这篇论文想解决的问题。

**先搞清楚:现在最好的语音克隆系统到底强在哪,又卡在哪**

要理解这篇论文的价值,得先知道当前这个领域的天花板在哪里。论文里提到的IndexTTS2,是一套工业级的语音克隆系统,训练数据用了几万小时的真人语音,效果确实好,拿一段陌生人的几秒钟录音,就能让AI模仿这个人的音色、情绪、说话的腔调,读出任意一段新的文字。

但它有个致命的结构性问题。IndexTTS2用的是自回归生成方式,简单说,就是像你打字一样,一个字一个字往后蹦,蹦出前一个字才能算下一个字。这种方式在语言模型里很常见,因为语言本身就是有前后依赖关系的,但放在语音合成里,它意味着生成的语音越长,等待的时间就线性增加。论文的实验数据显示,IndexTTS2的语音生成速度大概是0.88倍实时,也就是说,生成1秒钟的语音,大约要花1.14秒的计算时间。听起来好像还行,但只要用户要的语音稍微长一点,这个延迟就会被不断放大。

与之相对的是另一条路线,叫非自回归生成,这类方法可以并行吐出所有内容,不用排队等前面的字先生成完。听起来应该快得多,但这条路线有个绕不开的代价,大部分非自回归系统需要知道参考语音对应的文字内容,也就是转录文本。像MaskGCT、CosyVoice2这些系统,都要求用户提供或者自动识别出参考语音说的是什么话。

这个要求看起来不起眼,实际上是个大坑。如果参考语音是一段冷门小语种,或者是婴儿的咿呀学语,或者根本就是胡乱编的音节,语音识别系统压根识别不出有效内容,只能瞎猜或者报错。整个语音克隆的第一步就卡住了。

这就是研究者们面对的真实矛盾:自回归系统效果好但慢,非自回归系统快但离不开转录文本这根拐棍。Dolby实验室这篇论文提出的Tacit-TTS,想做的事情就是把这两条路的优点捏到一起:既要非自回归的速度,又要摆脱转录文本的束缚。

**从排队生成到并行填空:怎么把自回归的"老师"教成非自回归的"学生"**

Tacit-TTS的核心思路是知识蒸馏,用IndexTTS2当老师,训练一个更小更快的学生模型。

*知识蒸馏*:让一个性能强但笨重的大模型(老师)生成大量数据,再用这些数据训练一个结构更简单的小模型(学生),让学生尽量逼近老师的表现,但跑得更快。

具体来说,Tacit-TTS把IndexTTS2那个52700万参数的自回归语义解码器,换成了一个只有26900万参数的掩码非自回归生成器。这个替换方式借鉴了MaskGCT的思路,核心机制叫掩码预测。

*掩码预测*:一开始把要生成的全部内容都标记成"未知"(论文里用[MASK]表示),模型先对所有空位同时做一次预测,然后把预测得比较有把握的位置先确定下来,剩下没把握的位置留着继续猜,反复几轮直到全部填满。这个思路最早来自BERT这种双向语言模型,后来被MaskGIT用在图像生成上,现在被用在语音的语义token生成里。

这个过程有点像玩填字游戏比赛。自回归生成就像一个人独自做填字游戏,必须从第一个格子开始,填完一个才能看下一个,中间卡住了后面全部等着。而掩码预测更像是一群人同时盯着整张填字游戏表,先把每个人都有把握的格子填上,剩下没把握的格子,大家再一起琢磨,反复几轮就能把整张表填完。如果不这样做会怎样?那就只能回到一个人单枪匹马、按顺序硬啃的老路,时间自然就被拖长了。论文的实验数据很直接:仅仅是这一步替换,就让文本到语义这个阶段的速度提升了26.5倍,从原来的5274毫秒降到199毫秒。

但掩码预测这种并行生成方式有个前提:你得先知道要填多少个格子。自回归生成是走一步看一步,想停就停,靠一个"结束符"自然收尾。非自回归生成不一样,必须提前确定好总共要生成多长的序列,这就带来了一个新问题:语音该生成多长?

**没有文字内容也能猜出语速?一个不用训练的小技巧**

这正是转录文本依赖问题的另一个隐藏面。大部分非自回归系统之所以离不开转录文本,除了对齐文字和语音内容之外,还有一个重要用途:估算该生成多长的语音。知道参考语音说了多少字,又知道这个人说话的大致语速,就能推算出目标文本应该对应多长的语音。

Tacit-TTS想摆脱转录文本,就必须找到另一种办法来估算长度。论文给出的方案很巧妙,完全不需要额外训练模型,直接从声音信号本身的物理特征里下手。

具体做法是这样的:对参考音频做能量分析,把声音切成一个个很短的时间窗口(30毫秒一帧,10毫秒一跳),计算每一帧的能量大小,再用一个叫YIN的算法判断哪些片段是在说话(有声)还是沉默(无声)。接着在这些有声片段里,找出那些能量明显突起的峰值,这些峰值点被当作音节的近似标志。

*YIN算法*:一种估计声音基频的经典算法,常用来判断一段音频有没有人在发声说话,区分出"说话中"和"沉默"的片段。

这个思路背后的假设是,人说话的时候,每个音节发声时能量都会有个小的峰值,就像敲鼓一样,一个字一个字地敲,鼓点之间会有起伏。统计这些鼓点的数量,大致就能知道这段话有多少个音节,再除以这段话的时长,就估算出了这个人说话的节奏快慢。

这就像你去陌生的菜市场买菜,听不懂摊主的方言,但你能从他吆喝的频率里判断出他是个急性子还是慢性子。你不需要理解他喊的每一个字具体是什么意思,光凭声音的节奏起伏,就能大致判断出语速。如果反过来非要先搞懂每个字才敢下判断,那遇到完全听不懂的语言,你就直接没法买菜了。这正是转录文本依赖的死穴:一旦语言不通或者内容本身没有意义(比如婴儿的哭闹声),整个流程直接卡死。而Tacit-TTS绕开了"听懂内容"这一步,只看声音的物理节奏。

算出参考语音的语速之后,再结合目标文本本身的音节数(中文按字数算,英文用一套叫textstat的规则化工具估算),两者一乘,就得到了目标语音大致该生成多长。论文里还做了细节上的打磨,比如给语速设定了一个合理区间(7到12个音节每秒),避免噪声导致估算结果离谱地长或离谱地短;针对中文又做了一个0.92的系数修正,补偿语音和文本音节计数方式之间的系统性偏差。

**既要学会说话的内容,也要学会说话的味道:两个损失函数的分工**

光是把生成结构换成非自回归还不够,这个新模型还得学会老师的"手艺"。Tacit-TTS用的训练数据,不是直接从海量真实录音里学,而是让老师模型IndexTTS2对着各种参考声音读各种文本,把老师生成的结果当成教材,整整87.4万条样本,大约2000小时的语音,覆盖2739个不同的参考说话人。

训练过程里,新模型要同时学两件事:一是预测该生成哪些具体的语义编码(离散的符号,相当于语音被压缩成的一串数字标签),二是还原一种叫残差的连续特征。

*语义token*:语音先被编码成一串离散的符号序列,这些符号携带了说话内容和部分声音特征信息,类似于把一段语音"翻译"成一组数字密码。

论文发现,IndexTTS2的下游渐染模块,除了用这些离散符号之外,还额外用了一部分从老师模型里提取出来的连续特征,这部分信息能让最终合成的音质更细腻。所以Tacit-TTS特意设计了第二个预测头,专门去学习这部分离散符号学不到的"剩余信息"。两部分损失加在一起,构成了完整的训练目标。

这个设计有点像学做菜。离散符号相当于菜谱上写的"放两勺盐、炒三分钟",按着做能做出一道能吃的菜。但真正的大厨手艺,还藏在那些菜谱写不出来的细节里,比如火候的微调、下锅的手感。残差信息就是这部分写不进菜谱的手感,如果只学菜谱不学手感,做出来的菜能吃但总觉得差点意思。如果Tacit-TTS只学了离散符号,放弃了这部分残差信息,最终的语音质量会打折扣,这也是论文特意保留这条支路的原因。

**生成速度提上来了,渲染环节还能不能再快一点**

语义生成这一步快了,但整个流程还没完。生成出的语义符号得转换成真正的声音波形,这个阶段论文叫它语义到音频生成,中间要经过一个叫S2Mel渐染器的模块,把语义特征转成梅尔频谱(一种声音的视觉化表示),再用声码器把频谱还原成真实的音频波形。

*流匹配*:一种生成模型的训练思路,核心是学习一条从随机噪声逐渐变化到目标数据的路径,生成时沿着这条路径一步步走,也能理解为学一个"速度场",告诉模型每一步该往哪个方向调整。

IndexTTS2原本的渐染器基于流匹配技术,生成高质量音频大约需要25步欧拉迭代。Tacit-TTS用了一种叫ReFlow的蒸馏技巧,把这个步数压缩到了4到8步。

*ReFlow(整流)*:对流匹配模型的一种加速手段,先让模型按照原来的多步方式走一遍,记录下从起点噪声到终点结果的真实路径,再用这些路径重新训练模型,让生成轨迹变得更直,这样少走几步也能到达终点。

这个过程像是开车导航。原来的路线弯弯绕绕,要走25个红绿灯才能到目的地,现在工程队把路给修直了,同样的起点终点,8个红绿灯就能到。路修直靠的不是让车开得更快,而是让路径本身变短变直。如果没有这步修路,渐染环节依然要跑完25步才能保证质量,整体加速效果会大打折扣。

两个环节加在一起,文本到语义这块从5274毫秒压到199毫秒,语义到音频这块从875毫秒压到310毫秒,整个生成环节的总耗时从6149毫秒降到509毫秒,提速12.1倍。如果单看5秒以上的语音生成,Tacit-TTS相比IndexTTS2能快出10倍以上,论文里专门画了一张图,展示不同输出时长下的加速倍数,在30秒左右的语音生成时达到峰值,接近15倍。

**真刀真枪的测试:四个数据集,还有那些"刁钻"的声音**

说了这么多设计思路,到底效果怎么样,得看硬数据。论文在四个标准测试集上做了对比:英文的LibriSpeech和SeedTTS-en,中文的SeedTTS-zh和AISHELL-1。

对比指标主要两个:说话人相似度(生成语音听起来像不像参考说话人,数值越高越像),以及词错误率或字错误率(生成语音内容是不是准确,数值越低越好)。

结果显示,Tacit-TTS在英文的LibriSpeech测试集上拿到了0.875的说话人相似度,是所有参与对比的部署级系统里最高的,甚至超过了老师模型IndexTTS2的0.870。词错误率是5.54%,也是最低的。在另一个英文测试集SeedTTS-en上,相似度0.849同样是最高。中文表现稍弱一些,论文解释这可能跟训练数据里中英文说话人数量不均衡有关系,2342个英文说话人对397个中文说话人。

更有意思的测试在后面。论文专门设计了几个转录文本依赖系统会露馅的场景,来验证Tacit-TTS摆脱转录文本依赖之后到底能派上什么用场。

第一个场景是跨语种克隆。拿八种语言的参考语音(日语、韩语、德语、西班牙语、俄语、阿拉伯语、印地语、约鲁巴语),让系统读英文和中文的目标文本。这些语言都不是Tacit-TTS或IndexTTS2直接支持合成的语言,相当于用一个完全陌生的声音,去生成这个系统压根没学过怎么说的语言内容。结果显示,Tacit-TTS读英文目标时相似度0.789,词错误率只有0.10%;读中文目标时相似度0.692,字错误率1.90%。而依赖转录文本的系统,比如SparkTTS,在俄语和阿拉伯语参考上失败率高达20%到56.7%,MaskGCT更是在所有俄语和阿拉伯语参考上全部失败。

*失败率*:指系统压根没能生成出语音的比例,不是生成质量差,是直接罢工。

第二个场景更极端,干脆用没有任何真实语言内容的声音做参考。一类是婴儿的咿呀学语,一类是人工拼出来的、读不出任何语言意义的"胡言乱语"(论文里举的例子是"kalene kuguva ge yu mu nola vi pesa",读起来朗朗上口但谁也听不懂)。这种情况下,语音识别系统基本是瞎猜,转录出来的文字可能完全是幻觉内容。测试结果里,SparkTTS在婴儿咿呀学语场景下的词错误率飙到了99%,相当于几乎每个字都认错了。而Tacit-TTS在这个场景下的相似度反而是0.603,比老师模型IndexTTS2的0.484还高,词错误率只有3.24%。

这组数据背后藏着一个挺有意思的现象:在最刁钻的测试场景里,学生模型表现得比老师还好。这乍一听有点反直觉,学生不应该是全面逼近老师、顶多打个平手吗?但细想一下也合理,因为这个场景本身就是转录文本依赖系统的死穴,而Tacit-TTS和IndexTTS2走的都是转录文本无关的路线,学生模型在这个特定场景下的表现波动,更多反映的是训练数据和模型容量的差异,不是路线选择上的输赢。

**这篇论文站在了谁的肩膀上,又给谁铺了路**

Tacit-TTS不是从零开始的发明,它站在几条已有技术脉络的交汇点上。往前追溯,MaskGIT在2022年把掩码预测这种并行填空的生成方式带进了图像生成领域,随后MaskGCT把这个思路搬到了语音的语义生成阶段。往另一个方向看,VALL-E在2023年验证了自回归语言模型做语音克隆的可行性,后续的Seed-TTS、CosyVoice都沿着这条路继续扩展规模。

流匹配和整流技术这条线也值得一提,Voicebox在2023年把流匹配用在了语音生成的声学特征预测上,E2 TTS和F5-TTS进一步把流匹配用到了端到端的文本到梅尔频谱生成,跳过了中间的语义表示环节。Tacit-TTS选择保留两阶段结构,但在渐染阶段用整流技术做加速,这个组合方式某种程度上是把几条独立发展的技术脉络拧到了一起。

往后看,这篇论文留下的空间也不小。论文自己也承认,中文效果比英文弱,根源是训练数据里说话人数量不均衡,如果后续能扩大中文训练数据规模,这个差距应该能继续缩小。另外,这套转录文本无关的长度估算方法,目前还只是针对中英文做了专门的音节计数规则,如果要扩展到更多语言,这部分规则工程量也不小。

**写在后面**

读完这篇论文,印象最深的不是哪个具体的加速数字,是那张展示生成速度随语音长度变化的曲线图。IndexTTS2的生成时间几乎是一条直线,随语音长度线性增长,而Tacit-TTS的曲线几乎贴着横轴,平得近乎一条水平线。两条曲线叠在一起看,会有一种很直观的冲击感:同样是等AI说一段话,一个系统的等待时间会跟着内容变长不断累积,另一个几乎感觉不到变化。这种差异在短句子上不明显,但一旦涉及长段落朗读、长篇播客生成这类场景,体验上的分野会被急剧放大。

还有一个细节值得单独说一说。论文里提到,加速倍数在30秒左右的语音时达到峰值,接近15倍,但超过一分钟之后又开始收窄,降到了12倍左右。这是因为非自回归结构里的自注意力机制,计算量会随序列长度的平方增长,长到一定程度之后,这个平方级的开销又会反过来拖累速度。这说明非自回归也不是没有代价的免费午餐,它只是把瓶颈从"排队等待"换成了"内存和算力的平方级增长",只是在中等长度的语音上,这个代价还没有显现出来。技术选择很少是无条件的胜利,更多时候是把问题换了一种形式。

一个值得继续追问的问题是:如果有一天语音合成不再需要文字作为中介,直接从情绪、语境、甚至脑电信号这类更底层的信号生成声音,转录文本依赖这个话题会不会彻底变成历史名词?

Q&A

Q1:Tacit-TTS是什么?

A:Tacit-TTS是Dolby实验室提出的一种高效语音克隆系统,它从IndexTTS2蒸馏而来,用非自回归的掩码生成方式替代了自回归解码,同时不需要参考语音的转录文本就能完成声音克隆,生成速度比IndexTTS2快10倍以上。

Q2:Tacit-TTS为什么不需要转录文本?

A:因为它用了一种不依赖训练、直接从声音物理特征估算语速和长度的方法,通过分析参考音频的能量峰值估算音节数,再结合目标文本的音节数推算生成长度,不需要先搞懂参考语音说的是什么内容。

Q3:Tacit-TTS和IndexTTS2相比效果怎么样?

A:在英文测试集上,Tacit-TTS的说话人相似度甚至略高于老师模型IndexTTS2,在跨语种和非语言声音(如婴儿咿呀学语)场景下表现也更稳定,而生成速度快了10倍以上,模型参数量也更小。

资讯来源:由AI资讯编辑整理自互联网公开内容,版权归原作者所有,未经许可,不得转载。