欢迎来到天天文库
浏览记录
ID:62096800
大小:1.23 MB
页数:72页
时间:2021-04-16
《最新人工智能-语音识别技术教学讲义PPT课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、人工智能-语音识别技术什么是语音识别技术?与机器进行语音交流,让机器明白你说什么,这是人们长期以来梦寐以求的事情。语音识别技术就是让机器通过识别和理解过程把语音信号转变为相应的文本或命令的高技术。语音识别技术主要包括特征提取技术、模式匹配准则及模型训练技术三个方面。语音识别技术车联网也得到了充分的引用,例如在翼卡车联网中,只需按一键通客服人员口述即可设置目的地直接导航,安全、便捷。两款语音机器人:SiriCortana语音识别的实现(4)接下来就要介绍怎样把这个矩阵变成文本了。首先要介绍两个概念:音素:单词的发音由音素构成。对英语,一种常用的音素集是卡内基梅隆大学
2、的一套由39个音素构成的音素集,参见TheCMUPronouncingDictionary。汉语一般直接用全部声母和韵母作为音素集,另外汉语识别还分有调无调,不详述。状态:这里理解成比音素更细致的语音单位就行啦。通常把一个音素划分成3个状态。语音识别是怎么工作的呢?实际上一点都不神秘,无非是:第一步,把帧识别成状态(难点);第二步,把状态组合成音素;第三步,把音素组合成单词。语音识别的实现(5)图中,每个小竖条代表一帧,若干帧语音对应一个状态,每三个状态组合成一个音素,若干个音素组合成一个单词。也就是说,只要知道每帧语音对应哪个状态了,语音识别的结果也就出来了。图
3、中,每个小竖条代表一帧,若干帧语音对应一个状态,每三个状态组合成一个音素,若干个音素组合成一个单词。也就是说,只要知道每帧语音对应哪个状态了,语音识别的结果也就出来了。那每帧音素对应哪个状态呢?有个容易想到的办法,看某帧对应哪个状态的概率最大,那这帧就属于哪个状态。比如下面的示意图,这帧对应S3状态的概率最大,因此就让这帧属于S3状态。语音识别的实现(6)那这些用到的概率从哪里读取呢?有个叫“声学模型”的东西,里面存了一大堆参数,通过这些参数,就可以知道帧和状态对应的概率。获取这一大堆参数的方法叫做“训练”,需要使用巨大数量的语音数据,训练的方法比较繁琐,这里不讲
4、。但这样做有一个问题:每一帧都会得到一个状态号,最后整个语音就会得到一堆乱七八糟的状态号,相邻两帧间的状态号基本都不相同。假设语音有1000帧,每帧对应1个状态,每3个状态组合成一个音素,那么大概会组合成300个音素,但这段语音其实根本没有这么多音素。如果真这么做,得到的状态号可能根本无法组合成音素。实际上,相邻帧的状态应该大多数都是相同的才合理,因为每帧很短。解决这个问题的常用方法就是使用隐马尔可夫模型(HiddenMarkovModel,HMM)。这东西听起来好像很高深的样子,实际上用起来很简单:第一步,构建一个状态网络。第二步,从状态网络中寻找与声音最匹配的
5、路径。这样就把结果限制在预先设定的网络中,避免了刚才说到的问题,当然也带来一个局限,比如你设定的网络里只包含了“今天晴天”和“今天下雨”两个句子的状态路径,那么不管说些什么,识别出的结果必然是这两个句子中的一句。语音识别的实现(7)那如果想识别任意文本呢?把这个网络搭得足够大,包含任意文本的路径就可以了。但这个网络越大,想要达到比较好的识别准确率就越难。所以要根据实际任务的需求,合理选择网络大小和结构。搭建状态网络,是由单词级网络展开成音素网络,再展开成状态网络。语音识别过程其实就是在状态网络中搜索一条最佳路径,语音对应这条路径的概率最大,这称之为“解码”。路径搜
6、索的算法是一种动态规划剪枝的算法,称之为Viterbi算法,用于寻找全局最优路径。语音识别的实现(8)这里所说的累积概率,由三部分构成,分别是:观察概率:每帧和每个状态对应的概率转移概率:每个状态转移到自身或转移到下个状态的概率语言概率:根据语言统计规律得到的概率其中,前两种概率从声学模型中获取,最后一种概率从语言模型中获取。语言模型是使用大量的文本训练出来的,可以利用某门语言本身的统计规律来帮助提升识别正确率。语言模型很重要,如果不使用语言模型,当状态网络较大时,识别出的结果基本是一团乱麻。声学模型声学模型是把语音转化为声学表示的输出,即找到给定的语音源于某个声
7、学符号的概率。对于声学符号,最直接的表达方式是词组,但是在训练数据量不充分的情况下,很难得到一个好的模型。词组是由多个音素的连续发音构成,另外,音素不但有清晰的定义而且数量有限。因而,在语音识别中,通常把声学模型转换成了一个语音序列到发音序列(音素)的模型和一个发音序列到输出文字序列的字典。需要注意的是,由于人类发声器官运动的连续性,以及某些语言中特定的拼读习惯,会导致音素的发音受到前后音素的影响。为了对不同语境的音素加以区分,通常使用能够考虑前后各一个音素的三音子作为建模单元。另外,在声学模型中,可以把三音子分解为更小的颗粒—状态,通常一个三音子对应3个状态,但
8、是这会引起
此文档下载收益归作者所有