语音识别

语音识别是计算语言学的跨学科子领域,其开发方法和技术,使得能够通过计算机识别和翻译口语。 它也被称为自动语音识别(ASR),计算机语音识别或语音到文本(STT)。 它融合了语言学,计算机科学和电气工程领域的知识和研究。

一些语音识别系统需要“训练”(也称为“登记”),其中个体说话者将文本或孤立的词汇读入系统。 系统分析人的特定声音并使用它来微调对该人的语音的识别,从而提高准确性。 不使用培训的系统称为“与扬声器无关”的系统。 使用训练的系统称为“说话者依赖”。

语音识别应用包括语音用户界面,例如语音拨号(例如“呼叫回家”),呼叫路由(例如“我想进行收集呼叫”),家用电器控制,搜索(例如,找到播放特定单词的播客) ),简单的数据输入(例如,输入信用卡号),准备结构化文件(例如放射学报告),语音到文本处理(例如,文字处理器或电子邮件)和飞机(通常称为直接语音输入) 。

语音识别或说话人识别这一术语指的是识别说话者,而不是他们所说的话。 认识到发言者可以简化在已经针对特定人员的语音训练的系统中翻译语音的任务,或者可以用于认证或验证作为安全过程的一部分的发言者的身份。

从技术角度来看,语音识别具有悠久的历史,有几波重大创新。 最近,该领域受益于深度学习和大数据的进步。 这一进展不仅体现在该领域发表的学术论文激增,更重要的是全球工业界采用各种深度学习方法设计和部署语音识别系统。 这些演讲行业的参与者包括谷歌,微软,IBM,百度,苹果,亚马逊,Nuance,SoundHound,iFLYTEK,其中许多人已经在他们的语音识别系统中宣传了基于深度学习的核心技术。

模型,方法和算法
声学建模和语言建模都是现代基于统计的语音识别算法的重要部分。 隐马尔可夫模型(HMM)广泛用于许多系统中。 语言建模还用于许多其他自然语言处理应用,例如文档分类或统计机器翻译。

隐马尔可夫模型
现代通用语音识别系统基于隐马尔可夫模型。 这些是输出符号或数量序列的统计模型。 HMM用于语音识别,因为语音信号可以被视为分段静止信号或短时静止信号。 在短时间尺度(例如,10毫秒)中,语音可以近似为静止过程。 语音可以被认为是许多随机目的的马尔可夫模型。

HMM受欢迎的另一个原因是因为它们可以自动训练并且使用起来简单且计算可行。 在语音识别中,隐马尔可夫模型将输出一系列n维实值向量(其中n是小整数,例如10),每10毫秒输出一个这些向量。 矢量将由倒谱系数组成,倒谱系数是通过对短时间语音窗口进行傅里叶变换并使用余弦变换对频谱进行去相关,然后取第一(最重要)系数而获得的。 隐马尔可夫模型将倾向于在每个状态中具有对角协方差高斯的混合的统计分布,这将给出每个观察向量的可能性。 每个单词,或(对于更一般的语音识别系统),每个音素,将具有不同的输出分布; 通过将单独训练的隐马尔可夫模型连接成单独的单词和音素,制作用于一系列单词或音素的隐马尔可夫模型。

以上描述的是最常见的基于HMM的语音识别方法的核心要素。 现代语音识别系统使用许多标准技术的各种组合,以便改进上述基本方法的结果。 典型的大词汇系统需要音素的上下文依赖(因此具有不同左右上下文的音素具有与HMM状态不同的实现); 它会使用倒频谱归一化来规范不同的扬声器和录音条件; 对于进一步的说话者归一化,它可以使用声道长度归一化(VTLN)用于男性 – 女性归一化和最大似然线性回归(MLLR)用于更一般的说话者适应。 这些特征将具有所谓的delta和delta-delta系数以捕获语音动态,此外还可以使用异方差线性判别分析(HLDA); 或者可以跳过delta和delta-delta系数并使用拼接和基于LDA的投影,然后通过异方差线性判别分析或全局半连接协方差变换(也称为最大似然线性变换,或MLLT)。 许多系统使用所谓的判别训练技术,其省去了对HMM参数估计的纯统计方法,而是优化了训练数据的一些与分类相关的测量。 示例是最大互信息(MMI),最小分类错误(MCE)和最小电话错误(MPE)。

对语音进行解码(当系统呈现新话语并且必须计算最可能的源语句时发生的事情的术语)可能会使用维特比算法来找到最佳路径,这里可以选择动态创建组合隐马尔可夫模型,包括声学和语言模型信息,并预先静态组合(有限状态传感器,或FST,方法)。

解码的一个可能的改进是保留一组好的候选人,而不是仅仅保留最佳候选人,并使用更好的评分函数(重新评分)来评估这些优秀的候选人,以便我们可以根据这个精确的分数选择最佳的候选人。 候选集可以作为列表(N最佳列表方法)或作为模型的子集(格子)保存。 重新评分通常是通过尝试最小化贝叶斯风险(或其近似值)来完成的:我们尝试采用最小化给定损失函数的期望的句子,而不是考虑所有可能的转录。 (即,我们采用最小化与其估计概率加权的其他可能句子的平均距离的句子)。 损失函数通常是Levenshtein距离,尽管它可以是特定任务的不同距离; 当然,这组可能的转录被修剪以保持易处理性。 已经设计了有效的算法来重新划分表示为加权有限状态换能器的格子,其中编辑距离表示为验证某些假设的有限状态换能器。

基于动态时间规整(DTW)的语音识别
动态时间扭曲是一种历史上用于语音识别的方法,但现在已经被更成功的基于HMM的方法取代。

动态时间扭曲是用于测量可能在时间或速度上变化的两个序列之间的相似性的算法。 例如,即使在一个视频中人慢慢行走,如果在另一个视频中他或她走得更快,或者即使在一次观察过程中存在加速和减速,也会检测到行走模式的相似性。 DTW已应用于视频,音频和图形 – 实际上,任何可以转换为线性表示的数据都可以使用DTW进行分析。

一个众所周知的应用是自动语音识别,以应对不同的语速。 通常,它是一种允许计算机在具有某些限制的两个给定序列(例如,时间序列)之间找到最佳匹配的方法。 也就是说,序列被非线性地“扭曲”以彼此匹配。 该序列比对方法通常用于隐马尔可夫模型的上下文中。

神经网络
在20世纪80年代后期,神经网络在ASR中成为一种有吸引力的声学建模方法。 从那时起,神经网络已被用于语音识别的许多方面,例如音素分类,孤立词识别,视听语音识别,视听说话人识别和说话者适应。

与HMM相比,神经网络不对特征统计特性做出假设,并且具有若干特性使其成为用于语音识别的有吸引力的识别模型。 当用于估计语音特征片段的概率时,神经网络允许以自然且有效的方式进行辨别训练。 使用神经网络对输入特征的统计数据做出的假设很少。 然而,尽管它们在对诸如个别音素和孤立单词的短时单元进行分类方面有效,但神经网络很难成功用于连续识别任务,主要是因为它们缺乏对时间依赖性进行建模的能力。

然而,最近已经使用LSTM递归神经网络(RNN)和时间延迟神经网络(TDNN),其已经被证明能够识别潜在的时间依赖性并且使用该信息来执行语音识别的任务。

深度神经网络和去噪自动编码器也正在进行实验,以有效的方式解决这个问题。

由于前馈神经网络不能建模时间依赖性,另一种方法是使用神经网络作为预处理,例如特征变换,降维,用于基于HMM的识别。

深度前馈和循环神经网络
深度前馈神经网络(DNN)是一种人工神经网络,在输入和输出层之间具有多个隐藏的单元层。 与浅层神经网络类似,DNN可以模拟复杂的非线性关系。 DNN体系结构生成组合模型,其中额外的层使得能够从较低层构成特征,从而提供巨大的学习能力,从而具有对复杂的语音数据模型进行建模的潜力。

2010年,工业研究人员与学术研究人员合作,在大词汇量语音识别中成功发展了DNN,其中采用了基于决策树构建的依赖于上下文的HMM状态的DNN的大输出层。 请参阅Microsoft Research最近发表的Springer一书,了解截至2014年10月对此开发和最新技术的全面评论。 另请参阅自动语音识别的相关背景以及各种机器学习范例的影响,包括最近概述文章中的深度学习。

深度学习的一个基本原则是取消手工制作的特征工程并使用原始特征。 该原理首先在“原始”光谱图或线性滤波器组特征的深度自动编码器架构中成功探索,显示其优于Mel-Cepstral特征,其包含来自谱图的固定变换的几个阶段。 语音,波形的真正“原始”特征最近被证明可以产生出色的大规模语音识别结果。

端到端自动语音识别
自2014年以来,对“端到端”ASR的研究兴趣不断增加。 传统的基于语音的(即所有基于HMM的模型)方法需要单独的组件和发音,声学和语言模型的训练。 端到端模型共同学习语音识别器的所有组件。 这很有价值,因为它简化了培训过程和部署过程。 例如,所有基于HMM的系统都需要n-gram语言模型,典型的n-gram语言模型通常需要几千兆字节的内存,因此在移动设备上部署它们是不切实际的。 因此,Google和Apple(截至2017年)的现代商用ASR系统部署在云上,需要网络连接而不是本地设备。

端到端ASR的首次尝试是基于连接主义时间分类(CTC)的系统,该系统由Google DeepMind的Alex Graves和2014年多伦多大学的Navdeep Jaitly引入。该模型由递归神经网络和CTC层组成。 共同地,RNN-CTC模型一起学习发音和声学模型,但是由于类似于HMM的条件独立性假设,它不能学习语言。 因此,CTC模型可以直接学习将语音声学映射到英文字符,但这些模型会产生许多常见的拼写错误,并且必须依靠单独的语言模型来清理成绩单。 后来,百度用极大的数据集扩展了这项工作,并展示了一些中文普通话和英语的商业成功。 2016年,牛津大学推出LipNet,这是第一个端到端句子级唇读模型,使用时空卷积和RNN-CTC架构,超越了限制语法数据集中的人类水平表现。

基于CTC的模型的替代方法是基于注意力的模型。 Chan等人同时引入了基于注意力的ASR模型。 卡内基梅隆大学和Google Brain和Bahdanaua等人。 2016年的蒙特利尔大学。名为“听,参与和拼写”(LAS)的模型,字面上“听”声信号,“注意”信号的不同部分并“拼写”成绩单中的一个字符一次。 与基于CTC的模型不同,基于注意力的模型不具有条件独立性假设,并且可以直接学习语音识别器的所有组件,包括发音,声学和语言模型。 这意味着,在部署期间,不需要携带语言模型,这使得它在部署到具有有限存储器的应用程序上非常实用。 到2016年底,基于注意力的模型取得了相当大的成功,包括超越CTC模型(有或没有外部语言模型)。 自原始LAS模型以来已经提出了各种扩展。 潜在序列分解(LSD)由卡内基梅隆大学,麻省理工学院和谷歌大脑提出,直接发出比英语字符更自然的子词单元; 牛津大学和Google DeepMind将LAS扩展到“观看,收听,参与和拼写”(WLAS),以处理超越人类表现的唇读。

应用

车载系统
通常,手动控制输入,例如通过方向盘上的手指控制,使得语音识别系统能够通过音频提示向驾驶员发出信号。 在音频提示之后,系统具有“监听窗口”,在该窗口期间它可以接受用于识别的语音输入。

简单的语音命令可用于发起电话呼叫,选择电台或从兼容的智能手机,MP3播放器或音乐加载的闪存驱动器播放音乐。 汽车品牌和型号之间的语音识别功能各不相同 一些最新的[何时?]汽车模型提供自然语言识别代替固定的命令集,允许驾驶员使用完整的句子和常用短语。 因此,利用这种系统,用户不需要记住一组固定的命令字。

卫生保健

医疗文件
在医疗保健领域,语音识别可以在医疗文件处理的前端或后端实施。 前端语音识别是提供者指示语音识别引擎的地方,识别的单词在说出时显示,并且独裁者负责编辑和签署文档。 后端或延迟语音识别是提供者指示数字听写系统的地方,语音通过语音识别机器进行路由,识别的草稿文档与原始语音文件一起路由到编辑器,编辑器编辑并报告定稿。 延迟语音识别目前在业界广泛使用。

与在医疗保健中使用语音识别相关的主要问题之一是,2009年美国恢复和再投资法案(ARRA)为根据“有意义使用”标准使用EMR的医生提供了实质性的经济利益。 这些标准要求EMR维护大量数据(现在通常称为电子健康记录或EHR)。 语音识别的使用更自然地适合于叙述文本的生成,作为放射学/病理学解释,进展记录或出院摘要的一部分:使用语音识别输入结构化离散数据(例如,数值或代码)的人体工程学收益从列表或受控词汇表中来看,对于有视力且可以操作键盘和鼠标的人来说相对最小。

一个更重要的问题是,大多数EHR尚未明确定制以利用语音识别功能。 临床医生与EHR交互的很大一部分涉及使用菜单和标签/按钮点击导航用户界面,并且严重依赖于键盘和鼠标:基于语音的导航仅提供适度的人体工学优势。 相比之下,许多高度定制的放射学或病理学听写系统实现语音“宏”,其中使用某些短语 – 例如“正常报告”,将自动填写大量默认值和/或生成样板,这将根据检查的类型而变化 – 例如胸部X射线与放射系统的胃肠对比系列。

作为手动导航的替代方案,已经研究了级联使用语音识别和信息提取作为填写用于临床校对和签字的移交表格的方式。 结果令人鼓舞,本文还向研究和开发界开放数据,连同相关的性能基准和一些处理软件,用于研究临床文档和语言处理。

治疗用途
长期使用语音识别软件与文字处理器相结合,已显示出已经接受切除术治疗的脑AVM患者的短期记忆恢复的益处。 需要进一步研究以确定AVM使用放射技术治疗的个体的认知益处。

军事

高性能战斗机
在过去十年中,人们一直致力于测试和评估战斗机中的语音识别。 特别值得注意的是美国高级战斗机技术集成(AFTI)/ F-16飞机(F-16 VISTA)语音识别计划,法国幻影飞机计划,以及英国其他各种程序飞机平台。 在这些程序中,语音识别器已在战斗机中成功运行,其应用包括:设置无线电频率,命令自动驾驶系统,设置转向点坐标和武器释放参数,以及控制飞行显示。

与在JAS-39 Gripen驾驶舱内飞行的瑞典飞行员一起工作,Englund(2004)发现随着g载荷的增加,识别能力下降。 该报告还得出结论,适应性极大地改善了所有病例的结果,并且显示呼吸模型的引入显着提高了识别分数。 与可能的预期相反,没有发现发言者英语破碎的影响。 很明显,自发语音会给识别器带来问题,正如人们所期望的那样。 因此,可以预期受限制的词汇表,尤其是正确的语法,可以大大提高识别准确度。

目前在英国皇家空军服役的欧洲战斗机台风采用了一个与扬声器相关的系统,要求每个飞行员创建一个模板。 该系统不用于任何安全关键或武器关键任务,例如武器释放或降低底盘,但用于各种其他驾驶舱功能。 通过视觉和/或听觉反馈确认语音命令。 该系统被视为减少飞行员工作量的主要设计特征,甚至允许飞行员通过两个简单的语音命令将目标分配给他的飞机,或者只用五个命令给他的任何一个僚机。

独立于扬声器的系统也正在开发中,并且正在接受F35 Lightning II(JSF)和Alenia Aermacchi M-346 Master引入式战斗机训练器的测试。 这些系统产生的单词准确度分数超过98%。

直升机
在压力和噪声下实现高识别精度的问题与直升机环境以及喷气式战斗机环境密切相关。 在直升机环境中声学噪声问题实际上更严重,不仅因为高噪声水平,而且因为直升机飞行员通常不佩戴面罩,这会降低麦克风中的声学噪声。 在过去的十年中,在直升机的语音识别系统应用中进行了大量的测试和评估程序,特别是美国陆军航空电子研究与开发活动(AVRADA)和英国皇家航空航天局(RAE)。 在法国工作包括在Puma直升机中进行语音识别。 加拿大也有很多有用的工作。 结果令人鼓舞,语音应用包括:通信无线电的控制,导航系统的设置以及自动目标切换系统的控制。

与战斗机应用一样,直升机语音的首要问题是对飞行员效率的影响。 AVRADA测试报告了令人鼓舞的结果,尽管这些仅代表测试环境中的可行性演示。 在语音识别和整体语音技术方面仍有许多工作要做,以便在操作设置中始终如一地实现性能改进。

培训空中交通管制员
空中交通管制员(ATC)的培训代表了语音识别系统的出色应用。 许多ATC训练系统目前需要一个人充当“伪飞行员”,与受训者控制器进行语音对话,模拟控制器在真实ATC情况下必须与飞行员进行的对话。 语音识别和综合技术提供了消除人员作为伪飞行员的需要的潜力,从而减少了培训和支持人员。 理论上,空气控制器任务的特征还在于高度结构化的语音作为控制器的主要输出,因此降低了语音识别任务应该可能的难度。 实际上,这种情况很少发生。 FAA文件7110.65详细说明了空中交通管制员应该使用的短语。 虽然本文档提供的这类短语的例子少于150个,但其中一个模拟供应商语音识别系统支持的短语数量超过500,000。

美国空军,美国海军陆战队,美国陆军,美国海军和美国联邦航空局以及许多国际空中交通管制培训机构,如澳大利亚皇家空军和意大利,巴西和加拿大的民用航空当局,目前正在使用具有语音识别功能的ATC模拟器。许多不同的供应商。

电话和其他域名
ASR现在在电话领域很普遍,并且在计算机游戏和模拟领域变得越来越普遍。 尽管在一般个人计算中与文字处理的高度集成。 然而,文件制作领域的ASR没有看到预期[由谁?]使用增加。

移动处理器速度的提高使语音识别在智能手机中变得切实可行。 语音主要用作用户界面的一部分,用于创建预定义或自定义语音命令。 该领域的领先软件供应商包括:谷歌,微软公司(微软语音命令),数字虹吸(声波提取器),LumenVox,Nuance通信(Nuance语音控制),Voci技术,VoiceBox技术,语音技术中心,Vito Technologies(VITO Voice2Go) ),Speereo Software(Speereo语音翻译),Verbyx VRX和SVOX。

用于教育和日常生活
对于语言学习,语音识别对于学习第二语言可能是有用的。 它可以教授正确的发音,除了帮助一个人发展流利的语言技巧。

盲人(参见失明和教育)或视力低下的学生可以从使用该技术传达文字然后听到电脑背诵它们,以及通过用声音指挥使用计算机而不必看屏幕和键盘。

身体残疾或患有重复性劳损或上肢其他伤害的学生可以通过使用语音到文本程序免于担心手写,打字或在学校作业中与抄写员一起工作。 他们还可以利用语音识别技术自由地在家中搜索互联网或使用计算机而无需物理操作鼠标和键盘。

语音识别可以让有学习障碍的学生成为更好的作家。 通过大声说出这些词,他们可以增加写作的流动性,并减轻对拼写,标点符号和其他写作机制的担忧。 另请参阅学习障碍。

使用语音识别软件,结合数字录音机和运行文字处理软件的个人计算机,已被证明对于恢复中风和开颅手术中受损的短期记忆能力具有积极作用。

残疾人
残疾人可以从语音识别计划中受益。 对于聋人或听力困难的人,语音识别软件用于自动生成对话的隐藏字幕,例如会议室,课堂讲座和/或宗教服务中的讨论。

语音识别对于使用双手困难的人来说也非常有用,从轻度重复性压力损伤到涉及使用传统计算机输入设备的残疾。 实际上,大量使用键盘并开发RSI的人成为语音识别的迫切早期市场。 语音识别用于聋人电话,例如语音邮件到文本,中继服务和标题电话。 有学习障碍但有思想到纸交流问题的个人(基本上他们想到的是一个想法,但处理不当导致它在纸面上以不同的方式结束)可能会从软件中受益,但该技术不是防错的。 此外,对于智力障碍者而言,对文本说话的整个想法可能很难,因为很少有人试图学习该技术来教导残疾人。

这种类型的技术可以帮助那些患有阅读障碍但其他残疾的人仍然有问题。 产品的有效性是妨碍其有效的问题。 虽然一个孩子可能会说一句话取决于他们说得多清楚,但技术可能会认为他们正在说另一个词并输入错误的词。 给他们更多的工作来修复,导致他们不得不花更多的时间来修复错误的单词。

更多应用
航空航天(如太空探索,宇宙飞船等)美国宇航局的火星极地着陆器使用Sensory,Inc。的语音识别技术在着陆器上的火星麦克风
带语音识别的自动字幕
自动情绪识别
自动翻译
法庭报告(实时演讲写作)
电子发现(法律发现)
免提计算:语音识别计算机用户界面
家庭自动化
互动语音响应
移动电话,包括移动电子邮件
多模式互动
计算机辅助语言学习应用中的发音评估
实时字幕
机器人
演讲文本(将演讲录制成文字,视频字幕,法庭报道)
远程信息处理(例如车辆导航系统)
转录(数字语音转文本)
视频游戏,以汤姆克兰西的EndWar和Lifeline为例
虚拟助手(例如Apple的Siri)

性能
语音识别系统的性能通常在准确性和速度方面进行评估。 精度通常用字错误率(WER)评定,而速度用实时因子测量。 其他准确度测量包括单字错误率(SWER)和命令成功率(CSR)。

然而,机器的语音识别是一个非常复杂的问题。 口音在口音,发音,清晰度,粗糙度,鼻音,音高,音量和速度方面各不相同。 语音被背景噪声和回声,电气特性扭曲。 语音识别的准确性可能因以下因素而异:

词汇量大小和混淆
演讲者依赖与独立
孤立的,不连续的或连续的语音
任务和语言限制
阅读与自发言论
不利条件