人工智能之父马文·明斯基曾说:“如果机器不能够很好地模拟情感,那么人们可能永远也不会觉得机器具有智能。”如今看来,“机器类人”这样一件听起来有趣且令人着迷的事儿,早就不局限在《星际迷航》这样的科幻电影中。以智能语音为例,有数据显示,目前全球智能语音市场已形成每年200亿美元的规模。相比之下,我国智能语音市场更是发展迅速:据《2020-2021中国语音产业发展白皮书》统计:仅2020年我国该领域市场规模就已达到217亿元,有望在2025年达到875亿元,预计2019-2025年的复合增速将达到25%。
就在市场利好、一众科技企业紧锣密鼓、跑步入场,甚至不惜重金探索语音奥秘之时,我们发现仅仅对交流内容的准确理解早已不能满足市场需求,而在音色复刻、语言风格变化甚至是多种“类人”细节上的追求成为当前差异化竞争的重点:这其中不但包含了多项高难度的AI技术创新,对于模型训练以及数据标注等环节的AI成本约束更是巨大的考验。
对此至顶网记者特别采访了来自火山语音,即字节跳动 AI Lab Speech & Audio 智能语音与音频团队的诸多算法侧以及工程侧的工程师们,一起探讨能让企业在AI上降本增效的“锦囊妙计”。
01 在降本增效的道路上 模型优化为“重中之重”但也是“难上加难”
众所周知,模型在企业中对于降低AI成本、提升交互体验起着至关重要的作用。优质的训练数据通常成为获取高效模型的第一步,对此火山语音音乐信息检索与音乐创作方向算法工程师Song直言:“想要获取优质数据,标注带来的长周期以及高成本,通常都是大家不得不面对的疑难问题,但伴随人工智能从有监督向半监督以及无监督方向的迅速发展,未来大概率对于标注数据量的需求会进一步呈现下降趋势。”
同为火山语音团队并长期从事语音识别算法研究的维特比就很确信这一点。“目前在计算机视觉和自然语言处理领域,预训练大模型率先取得了不小的成功。尤其在语音和音频领域,近两年也涌现出一批以Wav2vec 2.0为代表的自监督预训练技术。其实原理主要就是通过‘预训练+少量数据微调’的组合方式,在语音识别、音频事件检测等下游任务上不但可以更好效果,最重要的是可以大幅降低对人工标注数据的依赖,大幅缩短模型训练的周期,进而实现降本增效。”
谈到无监督学习技术对于AI 降本增效的促进,其实近期,火山语音发布的超自然对话语音合成技术就很典型。该技术主要通过使用无监督特征的语音合成建模方案,仅使用常规音库1/4的数据规模,就可实现十分自然多变的韵律效果。“尤其针对文本标注不足的问题,我们使用了伪数据对口语化模型进行预训练,这样就降低了数据量的需求。同时在模型中引入了指针网络结构,增强了文本可控性。之后仅仅利用少量优质的人工标注数据,对预训练好的口语化模型进行微调,就可实现可控的、自然的口语化文本效果了。”谈及超自然技术的创新性,火山语音语音合成方向的算法工程师修昊有些滔滔不绝。
深入交谈下来,我们了解到,对修昊所在的语音合成团队来说,将数据标注的成本降下来固然重要,但要想整体效果达到显著提升,模型的基础效果还需不断迭代优化,而这种利于AI成本降低的优化显然不是一朝一夕,或者几招几式就能达成的。“不同场景下的优化目标有差异,要了解模型的大致上限才行,还要明确技术痛点,所以优化路线也都不一样,做方案是必须的,有时候不同硬件上的迁移也需作出相应调整。”
在针对模型效果提升的算法优化上,他认为可采用的方法有这样几种:例如可以对模型采用自适应裁减策略,即通过减小模型从而提升效率;当然也可以采用多任务模型,也就是将多个相关的子任务模型整合为单个多任务模型,提升效果的同时整体效率也得到了提升。“使用模型重参数化策略,推理阶段合并算子,保证效果不损失的同时提升推理效率,通常也会是个不错的办法。”他列举道。
以语音合成前端的建模为例,作为一个NLP模型,通常会涉及分词、韵律标注、发音转写、消歧等子任务。一般传统方案会将每个子任务采用单独模型来建模,经过分析火山语音发现,分词、韵律标注、发音消歧几个任务是有高度相关性的,基于此将多个子任务重新设计成一个多任务模型,运算效率相较于单独子任务模型有了大幅提升,同时由于各任务是高度相关的,其效果也得到了进一步提升。“此外为了不断提升该模型效率,我们将该多任务模型进行了蒸馏训练,将其运算效率提升3倍以上,效果基本和原模型持平。”
值得提及的是,在将该模型迁移到移动端的过程中,面临的重大问题聚焦在嵌入式词表表征矩阵过大。针对该问题,火山语音团队依照重要性,对于高维度词表进行压缩,有效缩减词表尺寸至20倍以下,保证效果损失可控的同时使其能在低计算及存储资源的移动端设备上运行。“针对云端发音转写模型在移动端的压缩比较受限,性能与模型尺寸高度相关,火山语音重新设计了一款新的低资源转写模型,引入专家先验同时采用并行结构设计,最终可以在云端效果接近的同时,模型尺寸缩减10倍以上,已应用到离线TTS模型中。”修昊总结道。
针对具体场景下的优化提效,以语音识别为例。通常,语音识别的准确率在部分理想场景中可以高达98%,但由于很多实际场景表现复杂,识别效果就会伴随大幅降低,尤其在会议场景中,由于一些英文词会被识别成发音相近的中文,从而导致准确率大幅下降。火山语音语音识别方向算法研究员李志进一步表示:“在具体场景中解决中英文混合识别问题时,其实盲目加大模型或者增加训练数据量并不能根本解决问题,而是要贴合实际场景,针对性增加中英混合的数据,并人工仿真出部分数据;另外在模型设计上也需要针对两种语言混说的情况,设计具备编码开关能力的编码器来提升模型建模能力,并保证当只有中文的情况下还能保障效果不变才可以。”可见,无论是数据还是模型的改良,都要基于场景来择优路线才行。
02 降低AI成本:从算法到工程缺一不可,且须持之以恒
“降低AI成本是一个端到端长链条的工作,整个过程中算法、工程以及相关的专业人员需要紧密配合才能将成本压缩极致。” 这是火山语音工程团队研发工程师小L长期经验的总结。
具体来说,在整体链路中,数据成本降低的关键在于如何采用组合拳有效减少带标数据的生产成本。小L表示,目前看通过更好的模型结构方案直接降低训练所需要的带标数据量,或者经过大规模预训练模型附加少量数据微调等手段都是减少带标数据量的常见方案。此外还涉及到通过引入AI辅助、平台化、自动化等方式来提升单位人力标注效率,例如通过音频消重、裁剪静音片段、加入辅助文本、平台化自动流转任务、标注和校验流程设计和自动化等方式,也可以显著提升标注效率,降低单位标注数据成本。
“在训练环节,除了需要考虑生产模型本身花费的计算资源外,实践中还需考虑算法人员在得到这样一个生产可用的模型,过程中所使用的计算资源开销,因此如何提升算法人员训练出可上线模型的过程效率,并降低生产模型本身的计算成本,是这个过程中的关键问题。”火山语音工程团队研发工程师张工补充道。关于这个问题的解决,火山语音工程团队提出可以使用容器化的方式来支持算法实验,比方说通过排队等策略控制资源的总开销;使用 AutoML 等手段加速模型结构、参数搜索的过程;通过高性能 I/O、分布式通信优化、计算通信并行、高性能算子等加速模型训练过程等;还可以通过平台化方案,让运营人员能够直接调优和训练模型,降低投入并节省人力成本。
谈及重要的推理阶段,小L表示,“由于AI服务属于计算密集型,要把硬件资源利用到极致才是降低单位服务能力成本的重点,所以可以通过把计算offload到用户侧设备(例如手机),在设备上运行全部/部分的模型推理,来节省云端的服务成本和中间的带宽成本。“例如采用在终端侧直接运行离线 ASR、TTS 等方式,使用专用的 AI 芯片、计算硬件等,可以极大降低单位服务能力的成本;还可以通过端云异构统一框架,提高AI原子能力迭代效率,对于基于不同硬件和指令集做深度的算子优化,都是降低成本的可行办法。”
火山语音,长期以来面向字节跳动各大业务线以及火山引擎ToB行业与创新场景,提供全球领先的AI语音技术能力以及卓越的全栈语音产品解决方案,包括音频理解、音频合成、虚拟数字人、对话交互、音乐检索、智能硬件等。目前团队的语音识别和语音合成覆盖了多种语言和方言,多篇技术论文入选各类AI 顶级会议,为抖音、剪映、飞书、番茄小说、Pico等业务提供了领先的语音能力,并适用于短视频、直播、视频创作、办公以及穿戴设备等多样化场景,通过火山引擎开放给外部企业。