带你了解语音识别技术

来源 :中国信息技术教育 | 被引量 : 0次 | 上传用户:mc76759
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  编者按:语音识别技术在生活中的应用已经非常广泛,如在车载导航、智能家居、日常办公等领域都有涉及,给人们生活带来了很多便利。由于语音交互是一种更便利、更自然、更高效的沟通形式,所以它必定成为未来最主要的人机交互接口之一。那么,你真的了解语音识别技术吗?它的发展历程和技术原理又是怎样的?我们一起来了解。
  语音识别技术又称ASR技术(Automatic Speech Recognition),指机器自动将语音转成文字。语音识别技术属于人工智能方向的一个重要分支,涉及许多学科,如信号处理、计算机科学、语言学、声学、生理学、心理学等,是人机自然交互技术中的关键环节。
  语音识别技术诞生半个多世纪以来,由于缺乏突破性进展,在技术上存在较大缺陷,一直处在实验室研究阶段,没有在实际应用中得到认可。2009年是一个转折点,深度学习和人工神经网络的兴起,使得语音识别技术在常见词汇场景下识别率超过了95%,这意味着语音识别技术具备了与人类相仿的语言识别能力。但不可否认的是,即使到现在,语音识别技术还是存在着很多不足,如对强噪声、超远场、强干扰、多语种、大词汇等场景下的语音识别还有很大的提升空间。
  国内某机构发布的《2018—2022年中国智能语音行业深度调研及投资前景预测报告》显示,我国智能语音市场整体处于启动期,智能车载、智能家居、智能可穿戴等垂直领域处于爆发前夜。因此,我们有必要深入了解一下它的发展历程和技术原理。
  语音识别技术的发展历程
  最早在1952年,著名的贝爾实验室首次实现Aurdrey英文数字识别实验系统(6英尺高),该系统有两个特点:①可以识别0~9单个数字的发音;②对熟人的发音识别准确度高达90%以上。同时期,美国麻省理工学院的林肯实验室开发了针对十个元音的非特定人语音识别系统,普林斯顿大学的RCA实验室也开发了单音节识别系统,能够识别特定人的十个单音节词中所包含的不同音节。
  20世纪60年代,东京无线电实验室、京都大学和NEC实验室在语音识别领域取得了开拓性的进展,并且各自先后制作了能够进行语音识别的专用硬件。
  1971年,美国国防部研究所赞助了五年期限的语音理解研究项目,推动了语音识别的一次大发展。参与该项目的公司和学术机构包括IBM、卡内基梅隆大学、斯坦福研究院。Harpy系统也就在这样的背景下诞生了,该系统能够识别1011个单词,在这个时期大词汇量的孤立词识别取得实质性进展。
  到了80年代,研究思路发生了重大变化,语音识别技术已经从孤立词识别发展到连续词识别,当时出现了两项非常重要的技术,即隐马尔科夫模型(HMM)、N-gram语言模型。1984年,IBM发布的语音识别系统在5000个词汇量级上达到了95%的识别率。1987年12月,李开复开发出世界上第一个“非特定人连续语音识别系统”。
  1990年,大词汇量连续词识别持续进步,提出了区分性的模型训练方法MCE和MMI,使得语音识别的精确度日益提高,尤其适用于长句子的情况。与此同时,还提出了模型自适应方法MAP和MLLR。
  到了21世纪,随着深度学习的不断发展,神经网络之父Hinton提出深度置信网络(DBN)。2009年,Hinton和学生Mohamed将深度神经网络应用于语音识别,在小词汇量连续语音识别任务TIMIT上获得成功。
  2017年,微软发布新的里程碑技术。通过改进微软语音识别系统中基于神经网络的听觉和语言模型,在Swichboard上达到词错误率仅为5.1%,比此前降低了大约12%,并声称已经超过专业速记员(在特定环境下)。
  由于中文语音识别的复杂性,我国在声学模型方面的研究进展相对更快一些,主流方向是更深更复杂的神经网络技术融合端到端技术,也表现了强大的技术实力。
  2018年,科大讯飞提出深度全序列卷积神经网络(DFCNN),使用大量的卷积直接对整句语音信号进行建模。同年,阿里提出LFR-DFSMN模型,将低帧率算法和DFSMN算法进行融合,语音识别错误率相比上一代技术降低20%,解码速度提升3倍。2019年,百度提出了流式多级的截断注意力模型SMLTA,该模型在LSTM和CTC的基础上引入了注意力机制来获取更大范围和更有层次的上下文信息。在线语音识别率上,该模型比百度上一代Deep Peak2模型提升相对15%的性能。
  语音识别的基本过程
  首先是确定文件格式。常见的声音格式MP3、WMA等都是压缩格式,要进行语音识别须采用WAV格式的声音文件,也就是未经压缩的,里面存的是声音波形的具体信息。声音在数字化之后就是图1所示的形状。
  在开始语音识别之前,有时需要把首尾段的静音切除,尽量降低对后续步骤的干扰。然后把声音分帧,即把声音分成一系列的小段,每小段称为一帧,分帧的操作不是简单切割,而是通过移动窗函数来实现,帧与帧之间一般是有交叠的,如图2所示。
  接着,再进行声学特征提取。语音分成小段后,再做波形变换。常见的一种变换方法是提取MFCC(声学特征有多种)特征,根据人耳的生理特性,把每一帧波形变成一个多维向量,可以简单地理解为这个向量包含了这帧语音的内容信息。声音就成了一个M行N列的矩阵,称之为观察序列,如下页图3所示。每一帧都用一个12维的向量表示,色块的颜色深浅表示向量值的大小。
  接着就是把矩阵变成文本的过程。把帧识别成状态,把状态组合成音素,把音素组合成单词。“音素”是构成单词发音的基本单元,英语常用的音素集是由卡内基梅隆大学设计的一套由39个音素构成的音素集,汉语一般直接用全部声母和韵母作为音素集,另外汉语识别还需分声调。“状态”可以理解为比音素更细分的语音单位,通常把一个音素划分为3个“状态”,如下页图4所示。图中每个小竖条代表一帧,若干帧语音对应一个状态,每三个状态组合成一个音素,若干个音素组合成一个单词。所以只要知道每帧语音对应哪个状态,语音识别的工作就完成了。   帧对应的状态寻找是根据对应状态的概率大小来进行的,概率大小的数据来源于“声学模型”,这个模型里存了很多参数,通过这些参数就可以知道帧和状态对应的概率。获取这些参数的方法叫做“训练”,这就需要使用大量语音数据。因为每帧都会得到一个状态号,所以结果会是非常多的杂乱无章的状态号。实际上一段语音不会有太多的音素,最常用的方法是使用隐马尔可夫模型(Hidden Markov Model,HMM)。这个模型通过构建一个状态网络,从中寻找与声音最匹配的路径。总的来说,语音识别的过程其实就是在状态网络中搜索一条最佳路径。
  语音识别主流技术介绍
  从语音识别算法的发展来看,语音识别技术主要分为三大类:第一类是模型匹配法,包括矢量量化(VQ)、动态时间规整(DTW)等;第二类是概率统计方法,包括高斯混合模型(GMM)、隐马尔科夫模型(HMM)等;第三类是辨别器分类方法,如支持向量机(SVM)、人工神经网络(ANN)和深度神经网络(DNN)等,以及多种组合方法。下面对主流的识别技术做简单介绍。
  1.动态时间规整(DTW)
  Dynamic Time Warping(DTW)由日本学者Itakura提出,是一种衡量两个长度不同的时间序列的相似度的方法。其应用也比较广,主要是用在模板匹配中,如用在孤立词语音识别(识别两段语音是否表示同一个单词)、手势识别、数据挖掘和信息检索中等。
  在语音识别中,由于语音信号的随机性,如即使同一个人发的同一个音,只要说话环境和情绪不同,時间长度也不尽相同,因此时间规整是必不可少的。DTW是一种将时间规整与距离测度有机结合的非线性规整技术,在语音识别时,需要把测试模板与参考模板进行实际比对和非线性伸缩,并依照某种距离测度选取距离最小的模板作为识别结果输出。动态时间规整技术的引入,将测试语音映射到标准语音时间轴上,使长短不等的两个信号最后通过时间轴弯折达到一样的时间长度,进而使得匹配差别最小,结合距离测度,得到测试语音与标准语音之间的距离。在实现小词汇表孤立词识别系统时,DTW识别率及其他指标与HMM算法实现几乎等同。又由于HMM算法复杂,在训练阶段需要提供大量的语音数据通过反复计算才能得到模型参数,而DTW算法本身既简单又有效,因此DTW算法在特定的场合下获得了广泛的应用。
  2.支持向量机(SVM)
  SVM法即支持向量机法(Support Vector Machine),由俄罗斯统计学家、数学家Vapnik等人于1995年提出,具有相对优良的性能指标。该方法是建立在统计学习理论基础上的机器学习方法。通过学习算法,SVM可以自动寻找出那些对分类有较好区分能力的支持向量,由此构造出的分类器可以最大化间隔类与类,因而有较好的适应能力和较高的分准率。该方法只需要由各类域的边界样本的类别来决定最后的分类结果。支持向量机算法的目的在于寻找一个超平面H(d),该超平面可以将训练集中的数据分开,且与类域边界的沿垂直于该超平面方向的距离最大,故SVM法亦被称为最大边缘算法。待分样本集中的大部分样本不是支持向量,移去或者减少这些样本对分类结果没有影响,SVM法对小样本情况下的自动分类有着较好的分类结果。
  SVM方法是通过一个非线性映射p,把样本空间映射到一个高维乃至无穷维的特征空间中(Hilbert空间),使得在原来的样本空间中非线性可分的问题转化为在特征空间中的线性可分的问题。简单地说,就是升维和线性化。升维,就是把样本向高维空间做映射,一般情况下会增加计算的复杂性,甚至会引起“维数灾难”,因而人们很少问津。但是作为分类、回归等问题来说,很可能在低维样本空间无法线性处理的样本集,在高维特征空间中却可以通过一个线性超平面实现线性划分(或回归)。一般的升维都会带来计算的复杂化,而SVM方法巧妙地解决了这个难题:应用核函数的展开定理,就不需要知道非线性映射的显式表达式;由于是在高维特征空间中建立线性学习机,所以与线性模型相比,不但几乎不增加计算的复杂性,而且在某种程度上避免了“维数灾难”。这一切要归功于核函数的展开和计算理论。选择不同的核函数,可以生成不同的SVM,常用的核函数有以下4种:
  ①线性核函数K(x,y)=x·y;
  ②多项式核函数K(x,y)=[(x·y)+1]^d;
  ③径向基函数K(x,y)=exp(-|x-y|^2/d^2);
  ④二层神经网络核函数K(x,y)=tanh(a(x·y)+b)。
  3.矢量量化(VQ)
  矢量量化VQ(Vector Quantization)是一种广泛应用于语音和图像压缩编码等领域的重要信号压缩技术,其基本原理是把每帧特征矢量参数在多维空间中进行整体量化,在信息量损失较小的情况下对数据进行压缩。模拟信号是连续的值,而计算机只能处理离散的数字信号,所以在将模拟信号转换为数字信号的时候,我们可以用区间内的某一个值去代替这一个区间,如[0,1]上的所有值变为0,则[1,2]上的所有值变成1,以此类推。因此,它不仅可以减小数据存储,而且还能提高系统运行速度,保证语音编码质量和压缩效率,一般应用于小词汇量的孤立词语音识别系统。
  4.隐马尔科夫模型(HMM)
  隐马尔科夫模型是一种统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数,然后利用这些参数来做进一步的分析,目前多应用于语音信号处理领域。在该模型中,马尔科夫(Markov)链中的一个状态是否转移到另一个状态取决于状态转移概率,而某一状态产生的观察值取决于状态生成概率。在进行语音识别时,HMM首先为每个识别单元建立发声模型,通过长时间训练得到状态转移概率矩阵和输出概率矩阵,在识别时根据状态转移过程中的最大概率进行判决。
  5.高斯混合模型(GMM)   高斯混合模型(Gaussian Mixed Model)指的是多个高斯分布函数的线性组合,理论上GMM可以拟合出任意类型的分布,通常用于解决同一集合下的数据包含多个不同的分布的情况。高斯混合模型种类有单高斯模型(Single Gaussian Model,SGM)和高斯混合模型(Gaussian Mixture Model,GMM)两类。类似于聚类,根据高斯概率密度函数(Probability Density Function, PDF)参数不同,每一个高斯模型可以看作一种类别,输入一个样本x,即可通过PDF计算其值,然后通过一个阈值来判断该样本是否属于高斯模型。
  6.人工神经网络(ANN/BP)
  人工神经网络于20世紀80年代末被提出,其本质是一个基于生物神经系统的自适应非线性动力学系统,它旨在充分模拟神经系统执行任务的方式。如同人的大脑一样,神经网络是由相互联系、相互影响各自行为的神经元构成,这些神经元也称为节点或处理单元。神经网络通过大量节点来模仿人类神经元活动,并将所有节点连接成信息处理系统,以此来反映人脑功能的基本特性。人工神经网络已经被广泛地运用到语音识别领域当中。人工神经网络在语音识别中的应用研究方向主要分为三个部分:①人工神经网络技术的提升;②实现人工神经网络与现有的科学技术结合,进而形成全新的混合系统,并对其进行研究与应用;③对具有创新性和具有较大发展潜力的神经元网络进行深入研究,并将其运用到语音识别领域当中,实现语音信号处理环节的升级和优化。
  7.深度神经网络/深信度网络-隐马尔科夫(DNN/DBN-HMM)
  当前,诸如ANN、BP等多数分类的学习方法都是浅层结构算法,与深层算法相比存在局限。尤其当样本数据有限时,它们表征复杂函数的能力明显不足。深度学习可通过学习深层非线性网络结构,实现复杂函数逼近,表征输入数据分布式,并展现从少数样本集中学习本质特征的强大能力。在深度结构非凸目标代价函数中普遍存在的局部最小问题是训练效果不理想的主要根源。为了解决以上问题,我们提出了基于深度神经网络(DNN)的非监督贪心逐层训练算法,它利用空间相对关系减少参数数目以提高神经网络的训练性能。相比传统的基于GMM-HMM的语音识别系统,其最大的改变是采用深度神经网络替换GMM模型对语音的观察概率进行建模。
  语音识别技术应用
  一般地,我们将语音识别技术的应用分为两大类:一类是大词汇量连续语音识别系统,主要应用于计算机的听写机,以及与电话网或者互联网相结合的语音信息查询服务系统,这些系统都是在计算机平台上实现的;另一类是小型化、便携式语音产品的应用,如手机语音拨号、汽车设备的语音控制等方面的应用,这些应用系统大都是使用专门的硬件系统实现的。
  限于篇幅,有关语音识别技术的原理探究与应用场景,我们将在下一讲中继续介绍。
其他文献
深度学习是指在教师的引导下,学生围绕真实情境并富有挑战性的学习主题,积极参与、沉浸式体验、获得发展的有意义学习过程。高中信息技术学科核心素养为信息意识、计算思维、数字化学习与创新、信息责任,而深度学习是落实立德树人根本任务、实现学生发展核心素养的重要途径。下面,笔者针对基于学科核心素养的信息技术深度学习分享一些自己的思考与探索。  深度学习主题链接真实情境  信息技术正在逐渐改变人类的交际、生活、
期刊
初中计算思维教学要嵌入真实的社会现实情境,让学生在真实问题解决过程中提升思维品质和发展潜力.本文总结和提炼了初中计算思维教学策略,强调要将真实问题、问题解决和反思分享作为计算思维发展的起点、支撑和升华,并以“智能声控灯”项目为例阐释了基于真实问题解决的初中计算思维教学策略.
5G技术的发展给学校教育场景带来了更多想象的空间,宝安中学(集团)实验学校积极探索、实践基于5G的智慧教育场景,建设全息未来沉浸式教室以及名师讲堂,探索未来智慧教育及双师课堂等创新教学模式,提升教育教学的效果,并在实践中不断完善,形成具有宝中实验特色的5G+智慧教育模板,期望为未来5G+智慧教育开辟新的思路.
摘要:本文以作者所在学校初一初二两个年级学生的期末考试成绩为例,详细阐述了如何利用数据分析工具Pandas对数据进行导入、清洗、分析,以及使用第三方绘图库Python-Bokeh对统计结果进行可视化输出的方法,希望它能够在学生成绩统计应用中具有较好的实用性和推广价值。  关键词:Pandas;Bokeh;可视化;成绩统计  中图分类号:G434 文献标识码:A 论文编号:1674-2117(202
●问题提出rn《中国教育现代化2035》中指出,要强化实践动手能力、合作能力、创新能力的培养,加强创新人才特别是拔尖创新人才的培养;加大应用型、复合型、技术技能型人才培养比重.因此,创新能力的培养已经成为教育的重要目标.
期刊
根据新课标的要求,计算思维的培养教育实践在我国中小学课程中得到积极开展,于是,衡量学生计算思维能力水平以及判断计算思维培养成效的评价手段变得至关重要。国外对计算思维的研究开展较早,经过多年的发展,针对计算思维评价方面的研究也得到了深入开展,而我国在这方面的研究仍旧比较薄弱。在基于量表的评价方式中,土耳其学者柯尔克玛兹(Korkmaz)等人设计开发的针对大学生计算思维的评价量表在学界获得了较高的认可
期刊
摘要:近几年,编程教育逐渐成为小学信息技术课程的主要内容。编程教育“如何教”成为信息技术教师教学探索的重点内容。根据日常实践经验,作者总结和归纳了小学编程教育的一些有效教学策略,以期能够帮助信息技术教师对小学编程教育教学策略进行进一步的探索与实践。  关键词:小学;编程教育;教学策略  中图分类号:G434 文献标识码:A 论文编号:1674-2117(2021)21-0062-02  随着时代的
摘要:本文主要讲述了在计算机基础课程实践教学中,将混合式教学法与课程教学进行整合与重构,实施以“项目为导向,任务为驱动”的“项目+任务”教学法。作者利用混合式教学平台,通过设计与医学专业相关的项目(或任务),采用上述教学法指导学生“学中做,做中学”,以期能够达到增强学生学习主观能动性的教学目的。  关键词:项目;任务;混合式;基础课程  中图分类号:G434 文献标识码:A 论文编号:1674-2
浙教版高中信息技术教材《数据与计算》,有一个答题卡填图识别算法解析示例,因为贴近生活,学生们都很感兴趣。这个案例可以进一步拓展,如通过文档高拍仪对答题卡数据进行采集,那就能实现一个真实的答题卡识别工具。当然,最好的拓展莫过于自己搭建一个功能更加强大的智能文档高拍仪原型,那样不仅可以识别答题卡,还可以识别文字、二维码之类。  文档高拍仪原型的功能分析  文档高拍仪的基本功能是图像采集,增强功能是光学
期刊
许多人对教师的核心素养都做过论述,但不同的人有不同的说法。来自教学一线的我,总觉得对教师的核心素养要结合实际分开讨论,除了最重要的通识素养以外,不同类型的教师,其核心素养不同,即使相同,其排序也会有异。只有明确了,才能指导各地的域本培训。  优质资源就是跨不过这最后六米  偏远地区的学校,师资匮乏早已是不争的事实。为了解决这个问题,20年前就有人用空中课堂为此探过路。  那时的空中课堂还是稀罕物。
期刊