Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

腾讯AI Lab副主任俞栋:语音识别领域的现状与进展

感谢阅读腾讯AI Lab微信号第27篇文章,去年9月,AI Lab推送过一篇关于深度研究的论文概述,该论文由腾讯 AI Lab 副主任兼西雅图实验室负责人俞栋博士,与微软首席应用科学家兼技术负责人李锦宇联合撰写,详情可点击 这里 查看。


日前,媒体「机器之心」在腾讯 AI Lab 学术论坛上对俞栋博士进行了专访,包括语音领域的研究现状如何;是否得到了业界的肯定与应用;腾讯 AI Lab 的进展如何;又有哪些新的目标。以下,是他关于这些问题的答案。


语音领域:Where are we standing? 



机器之心:语音领域整体的研究处于一个什么状态?


俞栋:去年底在 NIPS 会议上南大的周志华教授还和我开玩笑说,「语音识别已经解决了,你不要做了。」相信很多人有类似的感觉。虽然很多公司已经宣称可以在标准数据集或安静的近场环境下达到「97% 识别率」、「超过人」等等水平,但是实际上市面上的产品,在很多真实应用场景下,尤其是远场、中文夹杂英文、旁边有人说话等等情况下,效果还远远达不到期望值。还有很多待研究的问题。

 

机器之心:从标准数据集到真实场景,待解决的问题都有哪些?

 

俞栋:有很多。比如,现在的系统鲁棒性都不太高,而且都还依赖增加数据(包括合成的模拟数据)来提高鲁棒性。这一点对于基于深度学习的系统来说尤为明显:数据没覆盖的情况就做不好,是这类方法的一个局限性。

 

这个世界的可能性是无限的,即使采集了几十万小时的数据,也不能覆盖所有的情况,还是会有很多新的、没见过的场景。而标准数据集的一个特点是,训练集和测试集之间是强相关的,换言之,它们之间的不匹配度(mismatch)不大。

 

很多机器学习方法都要遵循一个基本假设:训练集和测试集符合同一分布。不满足这一要求的话,学出来的模型的效果是没有理论保证的。而真实场景,恰恰是不保证训练集与测试集满足同分布假设的情况。

 

语音识别研究的历史上,很早就有人意识到了这一问题,并开发出了很多自适应算法,试图根据场景和环境的变化做自适应。目前来说,自适应算法起到了一定的作用,但是还不能完全解决鲁棒性问题。

 

机器之心:理论上来讲,推理的数据与训练数据不满足同分布假设的话,机器学习模型会整体失效。那么自适应算法最终能够解决鲁棒性问题吗?

 

俞栋:真实场景和训练集之间所谓的「不满足同分布假设」大概率来讲不是「完全不满足」,而是「近似」或者「满足一些」。因此机器学习模型的识别率虽然会下降,模型仍然可用。只不过需要采用一些方法来弥补大致满足与完全满足同分布情况下的差距。

 

自适应算法只是其中一种方法,它有多个变种。比如可以用另外一个模型来判定分布变化与否,甚至判定如何变化,从而将变化后的特征或分布「恢复」成和训练时所见基本一样的情况再进行识别。举个例子,如果一个模型用我的声音做训练,然后去识别你的声音,效果就会很差。但是如果有一个模型,专门刻画人声的特点,并且在训练的时候,就把「说话人身份」(Speaker ID)作为一个重要的变量放进去,那么今后在识别其他人的时候,只要把说话人身份替换掉,就能获得识别率的上升了。问题在于,这种对于变化的估算也会引入误差,相对的性能还是会有损失。


四个前沿问题的进展


机器之心:端到端模型之前,语音识别模型的发展历程是什么样的?

 

俞栋:以前的语音识别系统基于高斯混合模型Gaussian Mixture Model, GMM)和隐马尔可夫模型(Hidden Markov Model),合在一起,叫 GMM-HMM 模型。

 

在 90 年代初期,伯克利大学的研究人员就开始用多层感知机加上隐马尔可夫模型进行语音识别,由于模型由一个传统的生成模型 HMM 和一个比较时髦的判别式模型神经网络组成,他们称其为混合模型(Hybrid Model)。2010 年,我们用深层神经网络替换掉了浅层神经网络,用上下文相关音素(Phoneme)替换单音素作为建模单元,仍然沿用混合模型的基本架构但增加了建模单元的数量,取得了识别效果上的突破。

 

最近的端到端模型则完全不再需要隐马尔可夫模型,从头到尾都是一整个神经网络。有时候需要结合外部语言模型,如果数据比较多,连外部语言模型都不需要了。

 

机器之心:端到端识别模型有哪些进展呢?

 

俞栋:在即将召开的 ICASSP 上,谷歌会发表一些相关文章,部分预印版已经放在 arXiv 上了,文章里提到当使用大量训练数据时可以在语音搜索任务的某一个测试集上做到和混合模型一样的效果。但是在真实场景下当出现没见过的尾端(tail)搜索词的情况下,效果还有差距,这表明这些模型记忆能力很强但是举一反三的能力还比较欠缺。

 

但无论如何,这仍然是十分可观的进展了,因为之前的端到端系统和混合模型之间的差距还很大,现在这个差距在缩小,甚至在某一场景下端到端模型可以做到超越,这都是比较大的进展。

 

腾讯 AI Lab 最近几个月也做了一些类似的工作,在数据量比较少,也就是端到端系统的优势更不能得到体现的情况下,用一些新的算法和技巧大幅提高了性能。

 

应该看到,在端到端系统上面,大家的投入是比较多的,也确实有一些比较有意思的进展。但是端到端系统是否能替代混合模型,仍然是未知数。

 

只有当新模型比旧模型好很多的时候,替换才会发生。当然,这里的好是多方面的,不单单是识别率好,也可能是在其他指标不变的情况下你的运算量小了,或者是解码速度提升了。

 

机器之心:端到端模型在产品中有实际应用吗?

 

俞栋:目前的端到端系统基本上基于两个框架,一个是 CTC(Connectionist Temporal Classification)框架,一个是基于注意力机制的 seq2seq 框架。

 

刚才提到的谷歌的论文用的是基于注意力的框架,投入使用相对较少。CTC 模型用得相对较多。腾讯的产品上既有 CTC 模型,也有混合模型,性能没有太大区别。

 

CTC 的好处是可以采用更大的建模单元,坏处是存在一个随机延迟的问题,即结果出来的时间不是预先可知的。随机延迟的后果是断句困难,这会给用户造成一种「你怎么比别人慢」的感觉。

 

因此,做交互的系统,比如语音助手类,大部分仍然在使用混合系统。而对实时性没有要求的产品,比如 YouTube 的字幕生成器,因为可以离线,所以有延时也没有关系。

 

机器之心:鸡尾酒会问题的现状如何?

 

俞栋:大家都很重视鸡尾酒会问题,因为这是远场里必须解决的重要问题,因此也有蛮多进展。

 

一个当然就是我们之前提出的置换不变性训练(Permutation Invariant Training)的方法,我们在很多场景下都做了不同的尝试,也有其他的学校以及公司,在我们的工作上做了一些拓展。

 

此外还有其他重要的方法被提出来,比如 MERL 的深度聚类(deep clustering)方法和哥伦比亚大学的深度吸引子网络(deep attractor network)。另外 NTT 还提出了一种跟我们不同的设定,我们的设定是两人同时说话时,要将两人分开,同时识别两个人的语音。他们的设定是在两个人同时说话时,只跟踪其中一个人的声音。在这个设定下我们也有一些有趣的进展。

 

不过这些都还属于研究性工作,还没有放在产品中。

 

机器之心:持续预测与适应的模型情况如何?

 

俞栋:这类模型的研究已经在我们的实验室列项了,应该是一个很有「做头」的问题,但是目前还没有很多进展。值得一提的可能是预测双向 RNN 的反向状态使单向 RNN 的性能提升的工作。

 

机器之心:声学前后端从独立优化到联合优化的进展如何?

 

俞栋:相比于独立优化,现在业界的情况是前后端联合优化已经占了大多数。

 

前后端联合优化把前端和后端紧紧绑在了一起,好处是如果前后端系统都是自己开发的,那么效果会很好,坏处是一旦换一个前端/后端之后,会出现整体效果变差的情况。

 

因此,我们要针对场景进行不同的设计。在某些场景下,我们还是要分割开做优化。例如在声学前端,降低噪声和减小变形(distortion)就是一对要同时考虑的矛盾的目标,需要针对场景做特殊优化。


从语音的角度看先验


机器之心:Yann LeCun 和 Christopher Manning 之前在斯坦福进行了一场关于先验的讨论。LeCun 倾向于使用尽可能少的先验,因为作出的假设总会和一小部分数据冲突,从而限制最后能达到的最低错误率。而 Manning 倾向于认为当前的模型都还是「差劲的学习者」,学界需要对先验以及结构更有信心,尝试引入更丰富的结构,允许人们在更少的时间内、以更少的数据获得更高效的学习器。站在语音研究者的角度,您如何看待先验这一问题?

 

俞栋:先验的作用可以说是一个哲学问题了。这两位学者给出的答案不同,更多是因为他们的优化目标和场景不同。

 

LeCun 希望找到一个更通用的算法,因此当然希望假设越少越好,跟问题越不相关越好。因为如果你针对某个特定问题加入先验,那么模型虽然可以保证这个问题的效果,但肯定会在某一些场景下工作得不好。

 

Chris Manning 的立场则不同:他面对的问题是,给定场景、给定现有模型,在这种前提下,如何把某一任务做好。这时,把先验,尤其是网络结构类型的先验添加进去,是会提升系统性能的。

 

这个问题也和训练数据量有很大的关系。如果想要训练一个能区分猫和老虎的分类器,但训练数据只有 5 幅猫的图片和 5 幅老虎的图片,该如何选择模型呢?这个设定下,大部分模型都无法工作,只有一种模型可以,就是添加了非常强的先验的模型。比如说,模型设计者预先知道,老虎都在山里跑,背景是绿色的,猫都在家里,背景是灰白色的。那么把这个先验知识加进去,就可以设计一个简单的模型,测试一下背景颜色,做个分类,大部分情况下就能分对了。但这些知识不是机器学出来的,是人放入的先验知识

 

如果训练数据非常多,接近无穷多,这时情况更有利于 LeCun 的观点,也就是做假设的意义不大甚至可能因假设不对起反作用。如果训练数据不足,就需要人在模型设计阶段把问题的特殊结构提取出来,添加进模型作为先验。不过在现实场景下的绝大多数问题训练数据都是不够多的,所以某种先验或者偏置是必须的。当然,最好的情况是机器自己能够发现或总结这些特殊结构并加以利用。

 

机器之心:现阶段的语音处理方面的数据量更接近于哪一端?

 

俞栋:在处理语音问题时,我们加了非常多先验在里面。如果目标是做通用的语音识别器,语音的数据量还差得远,比如一个人说话声音与两个人、三个人混合的声音就差很远,所以语音的数据量还是远远不够的。

 

但如果我们只关心某个特殊的应用场景比如「语音搜索」,那么在有些公司比如谷歌数据量有可能达到基本满足要求的程度,但是这个专门为语音搜索定制的识别器,一旦被用于识别其他内容,效果可能就没那么好了。

 

现在业界还是愿意为了产品性能去投入采集数据的,因此初始训练数据集的量不会太少。存在的问题是在产品投放出去之前,采集到的数据很可能和最终产品形态不一致,不是独立同分布,因此训练效果不够好,只能用这部分数据 bootstrap 启动一个系统。等到系统投放到市场上,采集到真实数据,再用真实数据提升模型性能,进入一个正向的循环。

 

数据是一个非常重要的资源,数据量不够,很多模型没办法用,即使用上了,也达不到期望的要求。这是因为现在的机器学习有三个很重要的因素,分别是数据,计算力,和算法,这三者加起来,才是最后系统的性能。三个要素中,如果缺少任何一个,系统的性能就会差很多。如果算法比别人好一点,但是数据比别人少很多,那么算法的优势很可能弥补不了数据的缺失,反之亦然。

 

机器之心:卷积神经网络(CNN)和循环神经网络(RNN)均可以被看做先验的一种,卷积神经网络通常被用于空间数据而循环 神经网络多被用于时序数据,如何看待用卷积神经网络处理时序数据这样的搭配呢?

 

俞栋:如果卷积的层数足够多的话,理论上,它是可以和循环神经网络具有同等的能力的。

 

信号处理学科中,有两种滤波器,分别叫做 IIR 和 FIR(Infinite Impulse Response Filter vs. Finite Impulse Response Filter),它们和两种神经网络相对应。IIR 就相当于 RNN 模型,FIR 就相当于 CNN 模型,在卷积了足够多层之后,它就能利用足够远的信息(类似 RNN)。就好像在很多场景下,FIR 滤波器是可以近似 IIR 滤波器的。

 

因此 CNN 和 RNN 都是「可选的」,选择时就要考虑其他因素:例如 RNN 相对于 CNN(或者是 IIR 相对于 FIR)训练难度就要更大一些。但同时 RNN 更容易对变化很大的序列建模,比如依赖关系忽大忽小的情景,可能更适用 LSTM 这样的模型来实现。


腾讯西雅图实验室:现状与目标




机器之心:能否为我们更新下西雅图实验室的现状?主要关注哪些研究方向?

 

俞栋:西雅图实验室成立于去年 5 月,更偏向基础研究,主攻方向是语音处理和自然语言处理。这与深圳实验室强调「研究+应用并重」侧重点稍有不同。

 

过去一年,腾讯 AI Lab 西雅图实验室从我 1 个员工,发展到现在有 10 余名全职语音和自然语言处理方向的员工;从没有办公场地,到办公室装修好,还在社区内举办了开放日活动。进展还不错。

 

目前语音识别研究人员的方向主要可以分为声学前端、声学模型和语言模型三类。

 

其中,声学前端主要围绕在家居和车载环境所必须的麦克风阵列、降噪、去回声、去混响、唤醒等功能;声学模型部分主要关注如何将声学信号建模;最后,语言模型则对语言文字本身建模。

 

语言模型技术相对稳定,不同语言之间差异也不是特别大,一般擅长声学模型的研究员也能做出不错的语言模型,但是声学前端和声学模型所需的技能是完全不同的,因此要分别找到合适的人选。

 

机器之心:实验室是如何选择研究方向的呢?

 

俞栋:我们会考虑两件事,一个是今天的问题:当下公司和客户有哪些需求,如何去解决。另一个是明天的问题:两到三年乃至更久之后,市场会有什么样的需求?

 

比如今天已经非常常见的远场识别,其实在几年前还是鲜为人知,或者说处于不被认可的状态。这是因为一方面大家觉得没有应用场景,另一方面远场技术还没发展到一定地步,没有太好的结果。但是,亚马逊的 Echo 问世之后,大家发现这个问题的解决虽然达不到完美,但也做得还可以了。当时 Echo 的团队进行远场研究已经有 3 、4 年了。他们就是在相关技术还不成熟的时候,更多地考虑了「明天」乃至「后天」问题,对 3 到 5 年后,我们会有何种应用、需要什么技术进行预判,然后进入这一领域,投入研究。

 

机器之心:未来实验室有哪些计划呢?

 

俞栋:在人员方面,西雅图实验室今年的人员数预计会达到 20。当然,由于人工智能火热的现状,以及我们希望维持一个较高的选人标准,这目标会有一定挑战性。

 

2018 年,西雅图团队会和深圳的实验室团队继续加强合作。希望能在进行前沿研究的同时,给今天的问题提供一些较好的解决方案。

 

此外,去年我们花了很多时间在从头建立系统上,现在,不少组件已经准备好了,我们可以更快速地进行一些更有意思的研究,希望对学术界和我们自己的产品性能提升都有一些好的影响。

腾讯AI实验室
腾讯AI实验室

入门语音识别深度学习网络
31
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

先验知识技术

先验(apriori ;也译作 先天)在拉丁文中指“来自先前的东西”,或稍稍引申指“在经验之前”。近代西方传统中,认为先验指无需经验或先于经验获得的知识。先验知识不依赖于经验,比如,数学式子2+2=4;恒真命题“所有的单身汉一定没有结婚”;以及来自纯粹理性的推断“本体论证明”

分类问题技术

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

高斯混合模型技术

高斯混合模型(Gaussian Mixture Model,GMM)是单一高斯概率密度函数的延伸,就是用多个高斯概率密度函数(正态分布曲线)精确地量化变量分布,是将变量分布分解为若干基于高斯概率密度函数(正态分布曲线)分布的统计模型。

语音识别技术

自动语音识别是一种将口头语音转换为实时可读文本的技术。自动语音识别也称为语音识别(Speech Recognition)或计算机语音识别(Computer Speech Recognition)。自动语音识别是一个多学科交叉的领域,它与声学、语音学、语言学、数字信号处理理论、信息论、计算机科学等众多学科紧密相连。由于语音信号的多样性和复杂性,目前的语音识别系统只能在一定的限制条件下获得满意的性能,或者说只能应用于某些特定的场合。自动语音识别在人工智能领域占据着极其重要的位置。

隐马尔可夫模型技术

隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。

信号处理技术

信号处理涉及到信号的分析、合成和修改。信号被宽泛地定义为传递“关于某种现象的行为或属性的信息(如声音、图像和生物测量)”的函数。例如,信号处理技术用于提高信号传输的保真度、存储效率和主观质量,并在测量信号中强调或检测感兴趣的组件。我们熟悉的语音、图像都可以看做是一种信号形式。因此,对于语音、图像的增强、降噪、识别等等操作本质上都是信号处理。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

生成模型技术

在概率统计理论中, 生成模型是指能够随机生成观测数据的模型,尤其是在给定某些隐含参数的条件下。 它给观测值和标注数据序列指定一个联合概率分布。 在机器学习中,生成模型可以用来直接对数据建模(例如根据某个变量的概率密度函数进行数据采样),也可以用来建立变量间的条件概率分布。

语言模型技术

语言模型经常使用在许多自然语言处理方面的应用,如语音识别,机器翻译,词性标注,句法分析和资讯检索。由于字词与句子都是任意组合的长度,因此在训练过的语言模型中会出现未曾出现的字串(资料稀疏的问题),也使得在语料库中估算字串的机率变得很困难,这也是要使用近似的平滑n元语法(N-gram)模型之原因。

推荐文章
先验的作用可以说是一个哲学问题了