达摩院语音AI技术创新全景
作者:陈谦、邓憧、付强、高志付、胡凯、罗浩能、纳跃跃、田彪、王雯、鄢志杰、张仕良、张庆林、郑斯奇(以姓氏首字母排序)
戳这里查看更多AI技术干货👇
( 本文阅读时间:20分钟 )
过去十年,语音AI从实验室走向应用,语音搜索、交互早已融入日常。本文将带你一览达摩院语音AI技术创新全景,一起感受能听、会说、懂你的语音AI。
当你在家中与智能音箱进行交互对话,当你使用天猫超市或菜鸟裹裹,接到机器人打来的配送确认及回访电话,当你利用淘宝高德优酷等App进行语音搜索,当你听到数字人动听的话语及各种悦耳的视频配音……这些背后,都是语音 AI 技术的应用。
AI的很多研究方向,都和人的感知相关。如果说计算机视觉对应的是眼睛,语音AI做的就是耳朵和嘴巴——耳朵是语音识别,把语音转成文字,嘴就是语音合成,把文字转成语音。语音 AI 作为人工智能应用的核心技术之一,在过去十年的时间里持续进步,从实验室研究走向了实际应用和价值创造阶段,并不断解锁新场景,将此前做不了、做不好的技术变得能做,且体验越来越好。
不仅如此,语音 AI 技术已经开始挑战并解决一系列更难的应用课题。正如 Google voice search 解锁了手机上的语音搜索;Apple Siri 解锁了语音助理;Amazon Echo 解锁了远场语音交互……达摩院语音实验室判断,下一个语音技术解锁的场景将会是用更多“人-人”交流替代当前“人-机”交互模式的会议场景。
今天,恰逢图灵诞辰110周年,我们与大家一起来分享下达摩院语音 AI 技术创新全景,包括语音识别声学模型和基础框架、说话人区分、语音合成声学模型和声码器、口语语言处理、联合优化的声学前端等多方面的研究和应用进展。一起感受能听、会说、懂你的语音AI。
01
能听:技术创新之
语音识别基础算法研究
在语音识别的场景下,拾音质量是一个很关键的因素。当年IBM的Via Voice,要带一个耳麦讲话,现在手机可以在稍远距离准确识别,智能音箱又可以做到更大距离。但这些的前提是,周边不会有太多的噪声,而且这些场景都是单人的,都是跟机器去完成一个单独的任务——要么是听写,要么是想点一首歌。但如果加了很多别的因素,准确率就会逐渐下降,说话场所的不同、空间大小的差异、说话人的多寡、情绪语种语速的交杂,各种声音在空间内不断反射产生混响,再加上环境本身带来的噪音,对机器识别来说是极大的挑战。
对我们人类来说,“谁在什么时间说了什么话”非常好识别,因为我们不仅能靠灵敏的耳朵区分不同音色、判断声音方位,还能看到说话人的肢体在动,同时大脑不断用知识储备分析着话语,但对于语音识别而言,如何使机器也具备这些智能呢?
1.1 语音识别基础框架
✪ UNIVERSAL-ASR语音识别基础框架
过去几十年,基于混合框架的语音识别系统一直是学术界和工业界主导框架,其系统包括独立优化的声学模型(Acoustic Model,AM)、语言模型(Language Model,LM)、发音词典(Lexicon)和解码器,系统构建流程复杂。
近几年,端到端语音识别(End-to-End,E2E)成为了学术研究热点。端到端语音识别通过一个网络建模语音识别系统,不仅简化了系统构建复杂度,而且通过联合优化预期可以获得更好的建模效果。阿里巴巴语音实验室结合上一代 DFSMN 网络结构和学术界流行的 Transformer 创新性提出了 SAN-M 网络结构,并且提出了 Streaming Chunk-Aware Multihead Attention(SCAMA)流式 Attention 机制构建了新一代的端到端语音识别框架,显著提升语音识别系统性能。
日益丰富的业务需求,不仅要求识别效果精度高,而且要求能够实时地进行识别。一方面,离线语音识别系统具有较高的识别准确率,但无法实时的返回解码文字结果,并且,在处理长语音时,容易发生解码重复,且高并发解码超时等问题;另一方面,流式系统能够低延时实时进行语音识别,但由于缺少下文信息,流式语音识别系统的准确率不如离线系统,在流式业务场景中,为了更好的折中实时性与准确率,往往采用多个不同时延的模型系统。
为了满足差异化业务场景对计算复杂度、实时性和准确率的要求,常用的做法是维护多种语音识别系统,例如,CTC 系统、E2E 离线系统、SCAMA 流式系统等。在不同的业务场景使用不同的模型和系统,不仅会增加模型生产成本和迭代周期,而且会增加引擎以及服务部署的维护成本。
因此,阿里巴巴语音实验室创新性地提出和设计了离线流式一体化语音识别系统–UNIVERSAL ASR,同时具有高精度和低延时的特点,不仅能够实时输出语音识别结果,还可在说话句尾用高精度的解码结果修正输出,与此同时,UNIVERSAL ASR 采用动态延时训练的方式,替代了之前维护多套延时流式系统的做法。通过设计 UNIVERSAL ASR 语音识别系统,我们将之前多套语音识别系统架构统一为一套系统架构,一个模型满足所有业务场景,显著的降低了模型生产和维护成本。
图1 UNIVERSAL-ASR语音识别基础框架
UNIVERSAL ASR 模型结构如上图所示,包含离线语音识别部分和流式语音识别部分。其中,离线与流式部分通过共享一个动态编码器(Encoder)结构来降低计算量。流式语音识别部分是由动态时延 Encoder 与流式解码器(Decoder)构成。动态时延 Encoder 采用时延受限可控记忆单元的自注意力(LC-SAN-M)结构;流式 Decoder 采用动态 SCAMA 结构。离线语音识别部分包含了降采样层(Sride Conv)、Big-Chunk Encoder、文本 Encoder 与 SCAMA Decoder。为了降低刷新输出结果的尾点延时,离线识别部分采用大 Chunk 流式结构。其中,Stride Conv 结构是为了降低计算量。文本 Encoder 增加了离线识别的语义信息。为了让模型能够具有不同延时下进行语音识别的能力,我们创新性地设计了动态时延训练机制,使得模型能够同时满足不同业务场景对延时和准确率的要求。
根据业务场景特征,我们将语音识别需求大致分为3类:
- 低延迟实时听写:如电话客服,IOT语音交互等,该场景对于尾点延迟非常敏感,通常需要用户说完以后立马可以得到识别结果。
- 流式实时听写:如会议实时字幕,语音输入法等,该场景不仅要求能够实时返回语音识别结果,以便实时显示到屏幕上,而且还需要能够在说话句尾用高精度识别结果刷新输出。
- 离线文件转写:如音频转写,视频字幕生成等,该场景不对实时性有要求,要求在高识别准确率情况下,尽可能快的转录文字。
为了同时满足上面3种业务场景需求,我们将模型分成3种解码模式,分别对应为:fast、normal 和 offline 模式,在模型部署阶段,通过发包指定该次语音识别服务的场景模式和延时配置。这样,通过 UNIVERSAL ASR 系统,我们统一了离线流式语音识别系统架构,提高模型识别效果的同时,不仅缩小了模型生产成本和迭代周期,还降低了引擎以及服务部署维护成本。更多技术细节可以参考我们的技术论文:
https://arxiv.org/pdf/2010.14099.pdf
✪ 中英自由说
近几年来,端到端语音识别 (End-to-End ASR) 技术在单语种任务上已经取得了比较好的效果,通过UNIVERSAL ASR 统一离线和流式识别系统架构进一步提升了流式场景的识别率,但在多语种混说 (Code-Switch) 场景下效果还不是很理想,比如中英文混说——“借你的ipad给我看下paper”,当突然切换到另一个语种时识别率会发生大幅下降,比如中文 ASR 突然遇到纯英文识别。
拿中英文识别来说,效果不理想的很大原因是中英文混说数据比较稀缺,标注成本也比较高,中/英单语数据的直接混合训练对纯中文和纯英文的识别效果会产生一定的负面影响。如何利用海量的中/英文单语种数据和少量的中英文混说数据提升中英自由说免切换识别效果成为工业界和学术界的研究热点。
针对中英文自由说识别问题,我们借鉴了混合专家系统 (Mixture of Experts) 的思想。在端到端语音识别模型中,对中文和英文分别设计了一个子网络,每个子网络被称为专家,最后通过门控模块对每个专家网络的输出进行加权。同时为了减少模型参数量,中、英文子网络采用底层共享,高层独立的方式。通过这样的方式,使模型在中文、英文、中英文混说场景下都能取得比较好的效果。进一步我们结合达摩院语音实验室自研的 SAN-M 网络,打造了达摩院语音实验室新一代的端到端中英自由说语音识别系统。在不需要语种信息的前提下,用一个模型保证纯中文和纯英文相对于单语模型的识别性能基本不降,并且大幅度提升中英文混说场景下的识别性能。
图2 中英自由说系统框架图
✪ 方言自由说
通用的中文语音识别系统对普通话的识别准确率已接近人类水平。但当一个中文识别系统遇到重口音或者方言的时候,识别效果会产生灾难性地下降。主要的原因是方言的发音和普通话有差异,会出现同音异字的情况。所以针对每一种方言,我们都会单独训练一个方言模型,这样又会导致我们需要维护多个方言模型,同时无法通过一个模型识别多种方言,且有的方言数据量稀疏,不利用其他方言数据中的共有信息而单独训练这个方言模型的效果不尽人意。
针对这个问题,我们借鉴了中英文自由说模型的方案,对每一种方言设计一个专家网络,同时考虑到每种方言的发音相似性,我们增加了一个共享的专家网络来学习方言之间的共性。和中英文自由说模型类似,最后通过一个门控模块对每个专家网络的输出进行加权。
考虑到方言种类比较多,每个专家网络通过简单的两层线性层来建模。进一步我们结合达摩院语音实验室自研的 SAN-M 网络,打造了达摩院语音实验室新一代的端到端方言自由说语音识别系统。在不需要提供方言id的情况下,用一个模型识别十四种常用方言,并且保证纯中文相对于单语模型的识别性能基本不降。
图3 方言自由说系统框架图
1.2 鸡尾酒会问题
“鸡尾酒会问题”(cocktail party problem)是语音识别领域困扰人已久的学术难题。鸡尾酒会问题是指在多人自由交谈的场景,需要高精度识别出每个说话人所讲的内容。当前通用的语音识别系统可以高精度的识别单个说话人的语音,但是当场景中同时存在多个说话人自由交谈时候,语音识别系统识别性能就会出现明显的下降。
会议场景是一个典型的多人自由交谈的场景。探索鸡尾酒会问题的工业级解决方案,对于解锁会议场景的语音AI具有重要作用。针对鸡尾酒会问题,语音团队从语音识别基础框架(上文已阐述),M2MeT 国际挑战赛,混叠语音检测技术和说话人日志技术等方面展开了技术探索。
✪ M2MeT国际挑战赛
语音识别(Automatic Speech Recognition)、说话人日志(Speaker Diarization)等语音处理技术的最新发展激发了众多智能语音的广泛应用。会议场景是语音技术应用中最有价值、同时也是最具挑战性的场景之一。因为这样的场景包含了丰富的讲话风格和复杂的声学条件,需要考虑到重叠语音、未知的说话人数量、大型会议室中的远场信号、噪音和混响等挑战因素。然而,该领域的发展一直以来因为缺乏大型公开真实会议数据而受到制约。由于会议转录涉及复杂的处理过程,因此必须仔细收集和标注更丰富的信息,如说话人身份、语音上下文、开始/结束时间等,所有这些信息都需要准确的标注,这既昂贵又耗时。针对这个困扰学术界的数据问题,达摩院语音实验室制作和开源了 AliMeeting 语料库。该语料库包含120小时真实记录的中文会议数据,包括8通道麦克风阵列采集的远场数据以及每个参会者的耳机麦克风采集的近场数据。
M2MeT 关注的是真实的线下多人会议场景,包括 speaker diarization 和 multi-talker ASR 两个子任务。M2MeT 已被接收为 ICASSP 2022 Signal Processing Grand Challenge。有关 M2MeT 国际挑战赛的信息可以参考我们的竞赛论文M2MeT。
竞赛网址:
https://www.alibabacloud.com/zh/m2met-alimeeting
基线系统框架:
https://github.com/yufan-aslp/AliMeeting
✪ 混叠语音检测技术
会议场景是一个典型的多人自由交谈的场景,存在一个普遍的现象是多人同时说话造成的混叠语音。这种混叠语音的存在对于后续语音增强,语音识别等任务都造成了很大的挑战。
针对混叠语音检测问题,我们提出了两个技术方案:
1)联合声学特征和空间特征的混叠语音检测技术(论文);
2)BeamTransformer: 基于麦克风阵列的Transformer结构(论文)。
如图4是我们提出的混叠语音检测的系统框图。不同于过往的只利用单通道的音频信号进行混叠语音检测,我们的研究探索了实际录制的8通道语音信号,利用信号处理提供的声源空间信息和音频声学信息联合建模来进行混叠语音检测。具体包含如下三个核心模块:
- 波束形成和声源定位:对于原始8通道阵列信号我们首先采用阵列信号处理算法来获得声源空间信息和增强的语音信号。
- 语音分割:对于增强后的语音信号,我们采用基于神经网络的语音端点检测模型来将语音分割成短的片段。同时切分的时间戳也会用于声源空间分布频谱的切分。
- 混叠语音检测:我们探索采用神经网络来进行混叠语音检测,验证了不同的输入特征对于系统性能的影响。
图4 混叠语音检测系统框图
针对基于神经网络的混叠语音检测问题,我们提出了两种网络结构,分别称之为 Two-Stream DFSMN 和 BeamTransformer。
图5 基于Two-stream DFSMN的混叠语音检测
Two-stream DFSMN的结构如图5所示。它由声学编码器、空间编码器、联合编码器、池化层和 softmax 输出层组成。声学和空间编码器分别用于将声学和空间特征转换为深层表征。他们的输出会经过拼接,然后输入到联合编码器里,进一步通过池化层将序列压缩成单个表征。除了通常采用的均值池化层,我们进一步提出了一种基于自注意力机制的池化层。并在会议数据集上进行了实验验证,结果显示联合音频和空间信息的混叠语音检测相比基线基于音频的检测方法可以获得明显的性能提升。相关论文发表于 INTERSPEECH 2021.
图6 基于 BeamTransformer 的混叠语音检框图
我们还提出一种基于麦克风阵列信号的 Transformer 结构, 如图6所示,通过 CDDMA Beamformer 分离后的多路 Beam,经过重新组合,在控制 transformer 参数量的条件下,形成空间信息互补最大化。该结构能够有效检测出空间中的重叠语音信号,并在检测的同时完成语音的分离。
✪ 说话人日志技术
说话人日志(Speaker Diarization,SD)系统的目标是解决“谁在什么时间说话”的说话人识别问题,是一种可以广泛应用于客服、会议等多轮对话场景的语音技术。现有的相关技术可大致分为两类,一类是基于分割聚类的传统方法,另一类则是基于深度神经网络的端到端方法。传统方法的局限性在于无法处理说话人在时间上的重叠;而端到端的方法则需要预先设定说话人数量,并且不能过多(通常6人以下)。
针对现有方法存在的上述问题,我们提出了基于嵌入码的说话人日志模型(Speaker Embedding-aware Neural Diarization,SEND)。该模型通过动态维护说话人嵌入码记忆单元的数量,提高了对说话人数量的灵活性,既能够应对较多的说话人也不需要提前设定说话人数量;另外,通过幂集编码将重叠语音的说话人日志任务由多标签预测问题重新建模为单标签分类问题,大大提高了对重叠语音的说话人识别率。我们还利用语音中丰富的语义信息,将所提出的方法进行扩展,进一步提高了模型的识别性能。
图7 基于嵌入码的说话人日志系统
如图7所示,所提出的说话人日志系统 SEND 主要包含四个部分,分别是语音编码器 Speech Encoder、说话人嵌入码编码器 Speaker Encoder、相似度计算 Similarity Calculation 以及后处理网络 Post-Net。其中相似度计算模块对每一帧的语音编码和每个说话人的编码计算两两之间的相似度,得到相似度矩阵,随后将其送入后处理网络对不同说话人之间的关联性进行建模。为了解决阈值选择的问题,我们利用幂集(Power set)将各个说话人的独立语音活动进行编码,得到不同说话人组合的唯一独热标签。利用幂集编码及其反函数,即可直接得到每一帧语音对应的说话人,从而增加了对不同说话人重叠的灵活处理能力,也避免了繁琐的阈值选择问题。
图8 带有文本信息的SEND说话人日志系统
为了利用语音中的语义信息,我们使用 ASR 识别出的文本将所提出的方法进一步扩展。如图8所示,首先通过文本编码器 Text Encoder 将词嵌入码进行编码,随后采用注意力机制将声学信息与每个字的文本信息进行对齐,得到包含声学和语义多种信息的混合编码。通过计算混合编码和说话人编码之间的内积,即可得到每个字和每个人之间的相似度,再将相似度矩阵通过后处理网络即可得到每个字对应的说话人,最终能够回答“谁在什么时候说了什么”的问题。我们分别在合成数据集和会议数据集上进行了实验验证,结果显示所提出的基于说话人嵌入码的说话人日志系统相比于基线可以获得明显的性能提升,而引入识别文本作为语义信息能够更进一步提升模型的识别性能。相关论文:https://arxiv.org/pdf/2111.13694.pdf
02
能听:技术创新之说话人相关
在多人会议场景中,说话人区分的任务最为复杂。如何在说话人数量未知的情况下,降低噪声的影响,并做到对每一个说话人的定位、追踪、聚类以及对每句话发言时间的精确定位,在技术上面临诸多挑战。
2.1 基于多通道会议场景的Speaker Diarization任务
传统的单通道 speaker diarization 任务在复杂的多人会议场景中,一直难以取得理想的分离效果。如,在 DIHARD I、DIHARD II 的比赛中,表现最好的系统错误率也均在20%-30%以上。除此以外,单通道 diarization 在两个说话人接得比较紧的时候,难以找到准确的切分时刻,从而导致大量的丢失首字或者尾字的情况。较差的切分准确率和说话人ID准确率使得目前该技术无法达到商业应用的需求。
对此,我们提出了一种基于麦克风阵列的多通道 speaker diarization 系统,利用麦克风阵列获得 SRP-PHAT 空间相位信息,利用 SRP-PHAT 进行空间声源定位。除此以外,我们还加入了基于神经网络的 VAD 模块,Overlap 检测模块,说话人 segmentation 模块。在此基础上,我们提出的 embedding+空间信息+时间信息的 AHC 聚类算法,大幅度提升了会议场景下的 speaker diarization 性能。
从下面两表中可以看出,与传统的单通道说话人聚类算法相比,我们的系统将切分准确率从40%-50%左右,提升至99%以上(Table 1)。同时,将 DER 从23.17%降低至5.22%,达到可商用级别的要求。
2.2 嘈杂环境下的说话人自适应噪声过滤及说话人识别
嘈杂的背景噪声会给说话人任务带来明显的性能下降,如:在带有背景音乐的短视频、直播、电影电视剧、或者在背景环境嘈杂的录音中进行说话人识别,一直都是研究领域中的一大难题。
我们针对这一挑战,提出了一种针对说话人嵌入场景的说话人自适应噪声过滤机制。对带有噪声的音频先进行一次说话人嵌入提取,利用说话人嵌入向量和训练好的声源分离 mask 得到去噪后的子空间特征,再在该子空间特征的基础上得到更加准确的说话人嵌入向量。在实现这个系统的过程中,难点包括在说话人嵌入场景下没有参考音频以及理想掩码,无法按照一般的声源分离系统中的方式进行训练。
对此,我们可使用当前音频作为自身的参考音频,假设原始的说话人嵌入已经有了一定的噪声鲁棒性,通过端到端训练共同优化,放弃基于理想掩码的训练方式。除此之外,我们还可以进一步提出两个优化点,一是考虑到 D-TDNN 和声源分离模型 Conv-TasNet 之间的相似性,我们直接合并这两个模型,共享参数。二是考虑到我们不需要还原干净音频,将频谱图掩码替换成特征图掩码。
在 VoxCeleb 的实验中,加入噪声过滤模块的系统在等错误率上相对降低了25%左右,而计算开销仅增加了15%左右,取得了单系统1.2% EER的理想效果。
2.3 基于图神经网络的说话人无监督训练
无监督或自监督学习在说话人识别任务上的重要性正逐渐增加,其中无监督聚类技术的作用愈发明显。在现实中通常有大量的无标注数据,来自于会议或多人讨论等常见的语音场景。一个有效的无监督聚类技术可以帮助我们在无需额外标注成本的情况下充分发挥出数据量的优势。
图神经网络 Graph Convolutional Network(GCN)近年来正在得到越来越多的关注。由于其在学习节点的链接性规律上有突出的表现,可以在无监督聚类中发挥出一定优势。
因此我们提出了一种基于图神经网络 GCN 的说话人特征半监督学习方法。对于说话人 embedding,通过构建子图进行训练打标的方式,快速扩充数据,在公开数据集 Voxceleb 上取得了与已知 ground truth label 相似的性能。
03
会说:技术创新之语音合成
合成真实、自然、富有表现力的声音,一直是语音合成技术的追求和目标。当你连续听一段时间,仍然无法感觉到是机器在说话时,就意味着该款合成语音是较为成功的。
3.1 高表现力声码器——HIFI-TTS
声码器作为语音合成系统中的一个重要模块,负责将特殊设计的中间表征(文本语言学特征/声学特征)转换为波形信号,直接影响着合成音频的音质。近年来,随着深度学习技术在语音合成中的应用,基于神经网络的声码器被广泛使用,从 wavenet、wavernn 到 LPCNet,每一次声码器技术的进步都推动了整个语音合成系统的升级,带来了体验的提升。
高采样率、高音质是高表现力语音合成的一个体现。已有的自回归声码器方案在面对高采样率、高音质情况下存在着合成效果和效率的问题,在学界非自回归声码器的研究进展启发下,我们在达摩院新一代 KAN-TTS 基础上、结合业界流行的Hifi-GAN声码器,进行了一些技术、系统链路上的改进,提出可以高效支持高采样率、高音质的语音合成 HIFI-TTS 系统。
✪ 模型
- Hifi-TTS 引入基于生成对抗网络(GAN)的连续变量建模。不同于先前采用交叉熵训练的离散变量建模的 wavenet,wavernn,LPCNet,引入 Discriminator 区分真实录音/生成声音的分布来指导声码器(Generator)的训练。模型通过 MSD 建模语音中信号的平稳特性,通过 MPD 建模语音中不同频率成分的周期特性,从而达到对声音更好的还原效果。
- 为支持48k高采样率的声音生成,对 Discriminator, Up-Net, MRF 的结构进行相应改造,使其在48k采样率下有更稳定的合成效果。
✪ 效果
新一代 HIFI-TTS (48k) 系统在 CMOS 测评中均超过了线上 (16k)系统,在 HIFI 专业测评中 CMOS 平均提升0.3,在普通众包测评中 CMOS 平均提升0.08,展现出更好的音质和表现力体验。
发音人 (F: female, M: male) | 测试环境 | HIFI-TTS CMOS gain |
---|---|---|
F1 | HIFI专业测评 | +0.42 |
M1 | HIFI专业测评 | +0.19 |
F2 | 普通众包测评 | +0.14 |
F3 | 普通众包测评 | +0.085 |
F4 | 普通众包测评 | +0.085 |
M2 | 普通众包测评 | +0.085 |
M3 | 普通众包测评 | +0.085 |
M4 | 普通众包测评 | +0.03 |
✪ 系统设计
- 声码器 (vocoder)-on-GPU 的异构方案。不同于先前逐点生成的自回归声码器,新一代非自回归声码器可支持并行生成。并行生成效率更高,更适合发挥 GPU 本身的计算优势,从而提高整个语音合成系统的实时性。
- 非自回归声码器流式方案。通过声码器的 chunk 机制和声学模型 (Acoustic Model) 相配合,在显存占用、运行效率上优于非流式方案, 可支持 HIFI-TTS 系统在 GPU 下的高效流式服务。
3.2 高表现力声学模型
语音合成技术发展迅速,越来越多的语音合成系统被提出,使得合成的语音更加自然和流畅。即便如此,合成的语音在韵律上和真人还有明显差距。因此,很多研究人员提出若干种方法来对语音中的韵律建模,从而使得合成的语音进一步接近真人。一般来说,韵律成分包含:基频、能量和时长。
已有的韵律建模方法存在一些问题:
1)由于基频提取不准,导致韵律建模效果差;
2)不同韵律成分预测是用不同模型分别预测,而实际上这些韵律成分之间存在关联性;
3)有限的 TTS 数据对于多样的韵律分布建模不足。针对这些问题,我们提出了高表现力声学模型——ProsoSpeech,模型结构图如下:
✪ 系统和结果
见图(a),ProsoSpeech 主要包含:音素编码网络(Phoneme Encoder)、词编码网络(Word Encoder)、长度规整模块(Length Regulator)、解码网络(Decoder)、韵律编码网络(Prosody Encoder)和隐藏韵律矢量预测网络(LPV Predictor)。输入的文本序列被转换成音素序列和词序列,然后通过音素编码网络和词编码网络获得语言学特征表示H_ling。然后,基于H_ling和H_spk(H_spk是可训练的矢量),目标梅尔谱(mel-spec)的低频部分通过韵律编码网络获得隐藏韵律矢量(LPV)。最后,H_ling、H_spk和隐藏韵律矢量拼接在一起,送入后续的长度规整模块和解码网络获得预测的梅尔谱。
通过 latent prosody vector 的提取和预测,MOS 可以获得3.65->3.85(人声4.08)的提高,整体韵律更平滑顺畅。相关论文可见:
https://arxiv.org/abs/2202.07816
04
懂你:技术创新之SLP基础算法研究
我们在“人-机”对话时,会有特定的语句表达,比如我们会字正腔圆地问天猫精灵:今天天气怎么样?,进行问询式的互动。而在“人-人”交流式的口语互动中,会常有语气词、重复、随意修改表达句式等情况,技术难点包括带感情的自然语音识别、对口语化表达的语音识别和语义理解。
4.1 口语语言处理(SLP)
如何让语音识别的文字更具有可读性和可用性,是语音实验室持续考虑的问题,为此我们介绍在联合文本和音素表征学习、区分式自学习的标点技术、自适应滑窗的篇章分割技术、基于池化的长文本建模技术、基于掩码的关键词抽取技术等方面的进展。
4.2 联合文本和音素表征学习
在用于口语理解 (SLU) 的传统级联架构中,已经观察到自动语音识别(ASR)错误可能会损害自然语言理解的性能。端到端 (E2E) SLU 模型已经提出用单个模型将语音输入直接映射到所需的语义,从而减轻 ASR 错误传播。最近,针对这些 E2E 模型已经探索了预训练技术。
我们提出了一种联合文本和音素预训练的表征学习方法,可以利用音素信息来提升口语语言理解任务对于 ASR 错误的鲁棒性。我们探索了音素标签作为一种高层次的语音特征,设计和比较了基于条件掩码语言模型目标和句间关系目标的预训练方法。我们也探索了结合文本和音素信息在模型finetune的有效性。在 Fluent Speech Commands 和 SNIPS 两个公开数据集上的实验结果表明,提出的方法可以显著提升基线模型效果以及口语语言理解任务对语于ASR错误的鲁棒性。
之前的工作一般通过 Multiple ASR hypothesis 和 end-to-end SLU 两类方法来缓解 ASR 错误对下游任务造成的错误累积。Multiple ASR hypothesis 方法的缺点是增加ASR解码的复杂性和延时,以及并不是所有的ASR系统都能产生高质量的 multiple ASR hypotheses。End-to-end SLU 的缺点是业务上通常使用的是级联系统,架构改造大,冷启动和维护难度大。我们的方法是在传统级联架构下,只使用 ASR 1-best,从而提升 NLU 的性能。我们比较系统地探索利用发音特征(音素)来提升 SLU 对 ASR 错误的鲁棒性,包括在预训练阶段学习文本音素联合表征和在 finetune 阶段融合发音特征。预训练阶段学习文本音素联合表征的示意图如下所示:
我们进一步分析了联合文本和音素表征学习后,词向量表征发生的变化。我们选择来自 FSC 开发集(ASR 1-best WER 36.7)词频最高的20个混淆词构造 retrieval 任务,比较不同预训练模型词向量的 Mean Reciprocal Rank (MRR)。实验发现口语预训练模型可以显著缩短表征空间中声学混淆词的距离(MRR 0.1012 -> 0.1591),从而达到提升ASR错误鲁棒性的效果。效果实验图如下图所示:
更多技术细节可以参考我们的 INTERSPEECH 2021 技术论文:
Pre-training for Spoken Language Understanding with Joint Textual and Phonetic Representation Learning
https://www.isca-speech.org/archive/pdfs/interspeech_2021/chen21g_interspeech.pdf
4.3 区分式自学习的标点技术
标点预测任务对于提升 ASR 输出文本的可读性和提升下游自然语言处理任务的效果起到至关重要的作用。然而,要想取得好的标点预测效果,往往需要大量标注的口语文本,这往往是耗费大量人力物力的。
我们提出了一种区分式 self-training 方法,即加权损失和区分性标签平滑的方法,来利用无标注的口语文本数据。加权损失是指使用不同的权重损失来联合人工标签数据和伪标签数据。区分性标签平滑是指考虑到人工标签数据和伪标签数据噪声程度不同,采用不同超参的标签平滑技术来处理人工标签数据和伪标签数据。整个自学习的流程图如下所示:
模型采用基于Transformer的序列标注框架,如下图所示:
在英文公开数据集 IWSLT2011 和一个内部中文数据集上,实验表明我们提出的方法可以进一步提升很强的基线模型,包括 BERT, RoBERTa 和 ELECTRA。另外,提出的区分式 self-training 方法相较经典 self-training 方法的效果有一定提升。我们在 IWSLT 2011 公开数据集上获得了新的 SOTA,有1.3 F1的绝对提升。
更多技术细节可以参考我们的INTERSPEECH2021技术论文:
Discriminative Self-training for Punctuation Prediction
https://www.isca-speech.org/archive/pdfs/interspeech_2021/chen21d_interspeech.pdf
4.4 自适应滑窗的篇章分割技术
随着在线会议、在线教育等形式的普及,越来越来的记录音视频会由自动语音识别 (ASR) 系统转录为记录文档。但是原始的 ASR 转写稿,缺少话题、段落等结构性分割注释,大大降低了其可读性和利用价值。对口语长篇章转写文档进行自动化的段落分割标注,可以很大程度提高文章可读性和下游 NLP 任务(例如摘要和机器阅读理解)在该语料上的性能。
我们提出了一种结合自适应滑动窗口机制的序列结构化分割模型,同时还探索利用音频信息提高模型效果的方法。我们的方法大幅度提高口语文档结构化分割的准确性和效率,音频信息的使用也显著提高了系统对口语长篇章文档中 ASR 错误的鲁棒性。相比基线模型,我们的模型在效果方面提升超过4%,同时将推理效率缩减为原来的1/6。模型结构和推理机制如下图所示:
更多技术细节可以参考我们的 IEEE ASRU 2021技术论文:
Sequence Model with Self- adaptive Sliding Window for Efficient Spoken Document Segmentation
https://arxiv.org/abs/2107.09278
4.5 基于池化的长文本建模技术
基于 Transformer 的模型在各种 NLP、视觉和语音任务中取得了巨大的成功。然而,Transformer 的核心,即自注意力机制,相对于序列长度具有二次时间和内存复杂度,这阻碍了基于 Transformer 的模型在长序列上的应用。
目前已经提出了许多方法来缓解这个问题,例如稀疏注意机制、低秩矩阵近似和可扩展内核,以及自注意力的 token 混合替代方案。我们提出了一种新的池化网络 (PoNet),用于在具有线性复杂度的长序列中混合 token。我们设计了多粒度池化和池化融合来捕获不同级别的上下文信息并将它们与 token 的交互结合起来。在 Long Range Arena(LRA)基准测试中,PoNet 显著优于 Transformer 并实现了具有竞争力的准确性,同时在 GPU 上测量的所有序列长度上仅比最快的模型 FNet 慢一点。我们还对 PoNet 的迁移学习能力进行了系统研究,并观察到 PoNet 在 GLUE 基准测试中达到了 BERT 95.7% 的准确率,相对于 FNet 高出 4.5%。综合消融分析证明了设计的多粒度池化和池化融合在长序列中的 token 混合的有效性以及为 PoNet 设计的预训练任务的有效性,以学习可转移的上下文化语言表示。
PoNet 模型的示意图如下所示,我们设计了多粒度池化和池化融合来模拟不同级别的 token 交互。多粒度池化在每个子层中包含三种类型的池化,从粗粒度到细粒度。全局聚合(Global Aggregation,GA)将整个序列的信息聚合到一个 token 中。GA包含两阶段,第一阶段用平均池化以获得粗略的全局表示,第二阶段用交叉注意力以获得更准确的全局表示。段最大池化(Segment max-pooling,SMP)捕获段落或句子级别的信息。局部最大池化(Local Max-pooling,LMP)捕获更重要的局部信息。这三个池化被融合以产生多粒度池化块的输出特征。然后通过残差连接,这个输出特征被进一步聚合到每个 token 中。
更多技术细节可以参考我们发表在ICLR2022的技术论文:
PoNet: Pooling Network for Efficient Token Mixing in Long Sequences
https://openreview.net/pdf?id=9jInD9JjicF
4.6 基于掩码的关键词抽取技术
关键短语提取 (KPE) 自动提取文档中提供核心内容、简明摘要的短语,这有利于下游信息检索和 NLP 任务。先前最先进的方法根据候选关键短语的学习表示与文档之间的相似性来选择候选关键短语。由于序列长度之间的差异导致关键短语候选的表示与文档之间的不匹配,它们在长文档上的性能下降。在这项工作中,我们提出了一种新的基于无监督嵌入的 KPE 方法,即掩码文档嵌入排名 (MDERank),通过利用掩码策略并根据源文档和掩码文档嵌入之间的相似性对候选者进行排名来解决这个问题。我们通过提出一种新的自监督对比学习方法进一步开发了面向 KPE 的 BERT (KPEBERT) 模型,该方法比普通 BERT 更兼容 MDERank。对六个 KPE 基准的综合评估表明,所提出的 MDERank 优于最先进的无监督 KPE 方法,平均提高了 1.80 F1@15。MDERank 进一步受益于KPEBERT,总体上比 SIFRank 平均提高了 3.53 F1@15。
传统的方法通过技术 phrase 和 document 之间的语义距离来抽取关键词,我们称这些方法为 Phrase-Document(PD)方法。PD 方法有两个主要缺点:
1)由于文档通常比候选 KP 长得多,并且通常包含多个 KP,因此 PD 方法很难可靠地测量它们在潜在语义空间中的相似性。因此,PD 方法自然偏向于更长的候选 KP,如下表中的示例所示,该例子显示了短语文档 (PD) 方法更倾向提取较长候选关键短语。其中提取的关键短语按排名顺序显示,与人工标签匹配的关键词标记为红色。
2)PD 方法中候选 KP 的嵌入是在没有上下文信息的情况下计算的,因此进一步限制了后续相似性匹配的有效性。
我们提出了一种新的基于无监督嵌入的 KPE 方法,用 Masked Document Embedding Rank (MDERank) 表示,以解决 PD 方法的上述缺点。MDERank 的架构如下图所示。MDERank 的基本思想是关键短语在文档的语义中起着重要的作用,如果它从文档中消失,就会导致文档语义的重大变化。我们提出的方法可以被视为 Document-Document 方法,它解决了 Phrase-Document 方法的两个弱点:
1)由于原始文档和掩码文档的序列长度相同,比较它们在语义空间中的相似性更有意义和可靠。
2)掩码文档的嵌入是根据足够数量的上下文信息计算的,因此可以使用 SOTA 上下文化表示模型(如 BERT)可靠地捕获语义。
更多技术细节可以参考我们发表在Findings of ACL 2022 的技术论文:
MDERank: A Masked Document Embedding Rank Approach for Unsupervised Keyphrase Extraction
https://aclanthology.org/2022.findings-acl.34.pdf
05
技术创新之联合优化声学前端
在语音AloT场景应用中,语音交互系统需要在设备回声、噪声干扰、房间混响等多种不利声学影响下,进行语音唤醒和识别等交互操作。业界一般采用由多个算法模块形成算法系统来应对,但算法子模块各自收敛到其目标函数的最优解后,并不能代表整体系统性能也达到了最优。与算法级联架构不同,联合优化声学前端则是端到端从系统的角度去设计和优化算法,以不同声学条件下端到端的唤醒率等指标为优化目标,采用统一的建模方法提升回声消除、声源分离、去混响和语音唤醒的整体算法性能,在远场语音模组、智能电视、智能音箱和智能座舱等人机交互产品中可以不断突破技术边界,为用户带来更好更便捷的交互体验。
在面向远场语音交互的前端信号处理方面, 我们已经构建了以盲源分离理论为核心的统一框架:将声源分离、解混响和回声消除统一在盲源分离理论框架下,统一了目标函数和优化策略。这一技术路线的出发点是针对消费类电子设备高性能、低成本和低功耗的需求特点,其性能较各模块独立优化进一步提高,请参考:
Na, Yueyue, et al. "Joint Online Multichannel Acoustic Echo Cancellation, Speech Dereverberation and Source Separation." Interspeech, 2021.
https://arxiv.org/abs/2104.04325
对于远场前端处理来说,目前最难的场景包括极低信噪比(-10dB以下)或多人同时干扰(或称鸡尾酒会场景,信干比一般在0dB或更低)。盲源分离算法一定程度上对多人同时干扰的情况已经有了较好的分离效果,在某头部教育平板品牌商的人声分离算法测评中,达摩院2mic方案也被认为是业内最佳的。在本年度,我们则重点攻坚了以扫地机器人为代表的极低信噪比场景,具体来说是以阵列信号处理与语音唤醒的联合优化为切入点,加强了声学-语音一体化建设,形成统一前端处理平台,这一思想可由下图来示意:
其主要的内容有:
5.1 自适应麦克风阵列信号处理
随着神经网络(NN)技术的发展,目前越来越多的研究倾向于使用全NN模型的方法来实现端到端的语音增强和关键词检测。端到端的系统由于具有统一的目标函数,所以有望取得较好的整体性能。但是在实际应用中,设备所面临的环境是多种多样的。基于全NN的端到端方案虽然在与其匹配的场景中能够取得较好的性能,但是其缺点在于无法在实际使用过程中进行自适应调整,所以当遇到与训练过程不匹配的场景时模型的性能将会显著降低。另外,低算力、低存储的嵌入式应用中也限制了模型的规模、从而限制了整体的性能。
基于自适应麦克风阵列信号处理的语音增强技术,其优点就在于能随着使用场景的变化对信号处理算法作出自适应更新,从而保持语音增强系统的在线最优性能。同时,由于自适应信号处理算法所占用的计算和存储资源较小,所以非常适合低资源嵌入式系统上的应用。
5.2 引入关键词mask进一步提升在极低信噪比和散射噪声场景下的唤醒性能
传统的基于波束形成或盲源分离的语音增强方法,其本质在于在目标声源处形成主瓣,在点声源干扰处形成零点,从而提升目标声源的信噪比。但是,在某些极低信噪比、散射噪声的应用场景中,由于麦克风阵列孔径、麦克风数目、计算复杂度等条件的限制,传统基于信号处理的语音增强方法并不足以有效的实现噪声抑制。
为了弥补传统方法的不足,我们研发了基于深度学习的语音增强方案,基于信号处理的传统方法级联基于深度模型的后滤波模块,使得语音增强的性能得到了进一步提升。
相关技术论文请参考:
Wang, Ziteng, et al. "NN3A: Neural Network supported Acoustic Echo Cancellation, Noise Suppression and Automatic Gain Control for Real-Time Communications." arXiv preprint arXiv:2110.08437 (2021).
https://arxiv.org/abs/2110.08437
5.3 完善的多通道远场数据模拟工具, 可在训练阶段引入完全的数据匹配
要在训练阶段实现完全的数据匹配,首先需要多通道、长音频数据模拟功能的支持。这样才能使用与实际处理中相同的语音增强前端来处理多通道数据,并且保证长音频的自适应信号处理算法有足够的数据收敛,达到正常的语音增强性能。我们用于关键词检测模型训练的数据模拟工具除了能够大批量模拟多通道、长音频的功能之外,该工具还支持了安静、点声源干扰、回声、散射噪声场景的模拟,以及这些场景的各种组合。在数据模拟的基础上,我们还形成了从音源到特征的 pipeline 工具的建设,使得训练阶段实现完全的数据匹配成为可能。
5.4 基于关键词检测模型的多路信息融合和通道选择机制,提升关键词检测性能,降低计算量
目前语音增强前端输出的多是多通道的、增强后的信号,在这类多路输出的系统中,一般性的做法是在每路前端输出后面都接一个单路的关键词检测模块,任何一路模块中检测到关键词即算唤醒。之后通过事件融合和通道选择模块统一上报唤醒事件并选择上云音频通道。这种组合而成的系统虽然暂时满足了多通道的应用需求,但其中仍然存在一些缺点:首先是虚警问题,由于多路信号中虚警发生的概率可以近似认为是相互独立的,所以每增加一个通道,虚警就比单通道的关键词检测近似增加一倍;第二是计算量问题,每增加一个通道,关键词检测的计算量也随之增加一倍;第三是增加了系统的复杂性,由于各路关键词检测上报事件的机制也是相互独立的,所以经常会发生信噪比高的通道后唤醒的情况,所以需要复杂的缓存和等待逻辑来对事件和数据进行同步。
为了弥补上述不足,我们开发了关键词检测模型的多路信息融合机制,即只在模型的第一层记忆单元上做多路推理,之后将推理结果使用 max pooling 操作进行融合。同时,max pooling 的选择结果又能揭示最佳通道的选择结果。此种架构同时解决了上述虚警、计算量、同步性的缺点,进一步提升了整体性能。
5.5 推理阶段的前后端反馈联动
传统的语音增强+关键词检测的系统采用顺序级联的架构,语音增强模块为后续的关键词检测模块提供信噪比较高的语音,但是关键词检测模块并不能提供信息辅助前级模块实现更好的语音增强。分析关键词检测模块的结构可以发现,通过解码器可以知晓组成关键词的各个发音单元在音频流中的存在概率,进而得到关键词存在概率。该信息可以作为一种自顶向下的监督信息,告诉前级模块哪些数据是关键词检测模块倾向的,哪些是不需要的。所以,除了原架构中的前馈机制之外,我们还建立了关键词存在概率的反馈机制,用于指导前级模块进行更高效的语音增强。
以上算法的性能优势在以扫地机器人为代表的高难度场景中得到了验证。
相关技术论文请参考:
Na, Yueyue, et al. "JOINT EGO-NOISE SUPPRESSION AND KEYWORD SPOTTING ON SWEEPING ROBOTS." ICASSP 2022-2022 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2022.
https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9747084
Dianwen Ng, et al. "CONVMIXER: FEATURE INTERACTIVE CONVOLUTION WITH CURRICULUM LEARNING FOR SMALL FOOTPRINT AND NOISY FAR-FIELD KEYWORD SPOTTING." ICASSP 2022-2022 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2022.
https://arxiv.org/abs/2201.05863
对行进间的扫地机器人直接进行语音交互操作所面临的问题是高自噪、大回声、移动远场和低算力,每一项都具有超出一般家居智能硬件产品的难度。基于信号处理和唤醒的联合优化算法方案,我们与天猫精灵共同合作推出高性能木星模组,有效地解决了以上问题,大幅提升了移动高噪场景下的语音交互效果,在业界树立了新标杆。初版6mic算法支持了业界首款语音交互扫地机;通过信号处理和唤醒的联合优化,唤醒率较语音增强+多路关键词检测的基线系统相对提升近10%,且虚警率下降了30多倍,关键词检测模块的计算量相对下降50%多,并经离线验证mic个数降为3/4mic时,性能下降幅度也在可接受范围之内,进一步提升了性价比和降低装配难度。经内部严谨的对比测试,经过算法升级某客户的唤醒率指标在相同噪声声压级下均高于后期出现的竞品。
这一思想进而也可以引入视觉信息来辅助提升音频盲源分离在复杂交互场景下的鲁棒性 ,从而可形成完整的多模交互前端处理方案。
5.6 面向嵌入式低资源的信号处理与神经网络极致加速
有别于数据中心等大规模、高算力场景,声学前端所应用的 Tiny 方向则聚焦于低功耗、高性价比等特性,需要充分利用软硬一体的加速技术。以语音唤醒为例,采用蒸馏和裁剪等模型训练压缩、基于 TVM 的神经网络编译图优化、RISC-V 指令集以及语音领域相关的工程实践,在2022年AI基准测试 MLPerf™ Tiny Benchmark 的嵌入式语音唤醒场景中,我们提交的方案较好地平衡了推理任务中的准确率与延时,保证准确率90.7%最高的情况下耗时最短。可参考技术论文:
https://mp.weixin.qq.com/s/yBdjQmRZq7NfKmodYC-bWQ
达摩院语音实验室的软硬一体联合优化技术,让回声消除、盲源分离、语音降噪和语音唤醒等高复杂度端侧语音AI前沿算法,在资源极致严苛的嵌入式芯片上得以实现,算法内存开销低至1M字节,运行功耗低于100mW,从而可以为客户整机降低一半以上的模组成本,并依然保持高性能的算法体验。
在算法输出形态上,我们也形成了下图所示的前端处理平台: 包括信号处理、唤醒和 VAD 在内的一体化建模算法、算法嵌入式平台优化和配套训练工具, 此工具包为 Mind 声学前端算法对外输出的基本形态。
设备端侧语音AI工具包结构框架图
在语音AI不断解锁新场景的进程中,下一代语音AI与过往语音应用最大的区别在于:从过去更强调人与机器之间的语音交互,变为未来对人与人之间语音交流的分析和智能化应用。
会议场景“人-人”语音交流,集众技术挑战于一身,将会是牵引语音技术进一步发展突破的绝佳试验田
,需要从硬件、信号处理、语音、语义等多方面共同发力。达摩院语音实验室正沿着此方向进行探索,我们希望用先进的技术,来率先解锁对会议场景的智能化应用难题。