语音识别的根本观点

[AI]语音识别根本入门_模子_语音 计算机

1

观点

自动语音识别(Automatic Speech Recognition,ASR)技能是一种将人的语音转换为文本的技能。

这项技能被当做是可以使人与人、人与机器更顺畅互换的桥梁,已经在研究领域生动了50多年。

2

发展

ASR在近几年的盛行,与以下几个关键领域的进步有关:

摩尔定律持续有效:使得多核处理器、通用打算图形处理器GPGPU、CPU/GPU集群等技能,为演习繁芜模型供应了可能,显著降落了ASR系统的缺点率。

数据时期:借助互联网和云打算,得到了真实利用场景的大数据演习模型,使得ASR系统更具鲁棒性(健壮性、稳定性)。

移动智能时期:移动设备、可穿着设备、智能家居设备、车载信息娱乐系统,变得越来越盛行,语音交互成为新的入口。

3

研究领域分类

根据在不同限定条件下的研究任务,产生了不同的研究领域。
如图:

4

识别任务分类

根据不同任务,语音识别可分为4类:

5

运用

语音交互作为新的入口,紧张运用于上图中的两大类:帮助人与人的互换和人与机器的互换。

帮助人与人的互换 HHC:运用处景如,如翻译系统,微信沟通中的语音转笔墨,语音输入等功能。
语音到语音(speech-to-speech,S2S)翻译系统,可以整合到像Skype这样的互换工具中,实现自由的远程互换。
S2S组成模块紧张是,语音识别-->机器翻译-->笔墨转语音,可以看到,语音识别是全体流水线中的第一环。

帮助人与机器的互换 HMC:运用处景如,语音搜索VS,个人数码助理PDA,游戏,车载信息娱乐系统等。

6

对话系统

要把稳的是,我们上面所说的运用处景和系统谈论,都是基于【语音对话系统】的举例。

语音识别技能只是个中关键的一环,想要组建一个完全的语音对话系统,还须要其他技能。

语音对话系统:(包含以下系统的一个或多个)

语音识别系统: 语音-->笔墨

语义理解系统:提取用户说话的语音信息

笔墨转语音系统:笔墨-->语音

对话管理系统:1)+ 2)+3)完成实际运用处景的沟通

语音识别系统

语音识别问题,实在是一个模式识别的问题。
给你一段声波,机器判别是a还是b。

这个过程有两大块,一个是天生机器能理解的声音向量。
第二个是通过模型算法识别这些声音向量,终极给出识别结果。

每一块中间都有很多眇小的步骤,我们后面会提到。

1

系统架构概述

下图是语音识别系统的组成构造,紧张分4部分:

旗子暗记处理和特色提取、声学模型(AM)、措辞模型(LM)和解码搜索部分。

左半部分可以看做是前端,用于处理音频流,从而分隔可能发声的声音片段,并将它们转换成一系列数值。

声学模型便是识别这些数值,给出识别结果。
后面我们会详细阐明。

右半边看做是后端,是一个专用的搜索引擎,它获取前端产生的输出,在以下三个数据库进行搜索:一个发音模型,一个措辞模型,一个词典。

【发音模型】表示一种措辞的发音声音 ,可通过演习来识别某个特定用户的语音模式和发音环境的特色。

【措辞模型】表示一种措辞的单词如何合并 。

【词典】列出该措辞的大量单词 ,以及关于每个单词如何发音的信息。

a)旗子暗记处理和特色提取:以音频旗子暗记为输入,通过肃清噪声和信道失落真对语音进行增强,将旗子暗记从时域转化到频域,并为后面的声学模型提取得当的有代表性的特色向量。

b)声学模型:将声学和发音学的知识进行整合,以特色提取部分天生的特色为输入,并为可变长特色序列天生声学模型分数。

c)措辞模型:措辞模型估计通过演习语料学习词与词之间的相互关系,来估计假设词序列的可能性,又叫措辞模型分数。
如果理解领域或任务干系的先验知识,措辞模型的分数常日可以估计的更准确。

d)解码搜索:综合声学模型分数与措辞模型分数的结果,将总体输出分数最高的词序列当做识别结果。

2

语音识别技能详解

看完上面的架构图,你该当有个大致的印象,知道全体语音识别是怎么回事儿了。
下面我们详细说一些主要的过程。

2.1 语音识别单元

我们的语音内容,由基本的语音单元组成。
选择要识别的语音单元是语音识别研究的第一步。

便是说,你要识别的结果因此什么为根本单位的?是单词还是元音字母?

语音识别单元有单词 (句) 、音节和音素三种,详细选择哪一种,根据详细任务来定,如词汇量大小、演习语音数据的多少。

【音素】:在汉语里,最小的语音单位是音素,是从音色的角度分出来的。

【音节】:一个音素单独存在或几个音素结合起来,叫做音节。
可以从听觉上区分,汉语一样平常是一字一音节,少数的有两字一音节(如“花儿”)和两音节一字。

2.2 旗子暗记的数字化和预处理

接下来就要将网络到的语音转化为一系列的数值,这样机器才可以理解。

a)数字化

声音是作为波的形式传播的。
将声波转换成数字包括两个步骤:采样和量化。

为了将声波转换成数字,我们只记录声波在等距点的高度,这被称为采样(sampling)。

采样定理(Nyquist theorem)规定,从间隔的采样中完美重修原始声波——只要我们的采样频率比期望得到的最高频率快至少两倍就行。

经由采样,我们获取了一系列的数字,这些数字才可以在机器上进行建模或打算。

我们每秒读取数千次,并把声波在该韶光点的高度用一个数字记录下来。
把每一秒钟所采样的数目称为采样频率或采率,单位为HZ(赫兹)。

「CD 音质」的音频因此 44.1khz(每秒 44100 个读数)进行采样的。
但对付语音识别,16khz(每秒 16000 个采样)的采样率就足以覆盖人类语音的频率范围了。

b)采样旗子暗记预处理

这里的预处理紧张指,分帧处理。

由于语音旗子暗记是不平稳的、时长变革的,如下图:

我们把它分隔为一小段一小段(10毫秒-40毫秒)的短语音,我们认为这样的小片段是平稳的,称之为【帧】。

在每个帧上进行旗子暗记剖析,称为语音的短时剖析。

图中,每帧的长度为25毫秒,每两帧之间有25-10=15毫秒的交叠。
我们称为帧长25ms、帧移10ms的分帧。

帧移的事情就不详细阐明了,它是为了担保语音信息的完全性。
感兴趣的同学可以查一下,加窗/窗函数。

那为什么须要平缓的分帧呢?由于我们须要做傅里叶变革,它适用于剖析平稳的旗子暗记。

人类是根据振动频率判断声音的,而以韶光为横轴(时域)的波形图没有振幅描述,我们须要做傅里叶变换,将它变成以频率为横轴(频域)的振幅描述。

2.3 特色提取

特色提取便是从语音波形中提取出能反响语音特色的主要信息,去掉相对无关的信息(如背景噪声),并把这些信息转换为一组离散的参数矢量 。

a)特色提取

如何提取呢?我们经由采样,预处理,将这些数字绘制为大略的折线图,如下所示,我们得到了 20 毫秒内原始声波的大致形状:

这样的波形图对机器来说没有任何描述信息。
这个波形图背后是很多不同频率的波叠加产生的。
(准确的讲,它在时域上没有描述能力)

我们希望一段声纹能够给出一个人的特性,比如什么时候高,什么时候低,什么时候频率比较密集,什么时候比较平缓等等。

便是我们上面所说的,用傅里叶变革来完成时域到频域的转换。

这就须要对每一帧做傅里叶变革,用特色参数MFCC得到每一帧的频谱(这个过程便是特色提取,结果用多维向量表示),末了可以总结为一个频谱图(语谱图)。

如下图所示,是“hello”的频谱图,很酷是吧~

横轴是韶光,纵轴是频率。
颜色越亮,表示强度越大。

b)常用的特性参数

特性提取时,我们有常用的特色参数作为提取模板,紧张有两种:

线性预测系数(LPC)

LPC 的基本思想是,当前时候的旗子暗记可以用多少个历史时候的旗子暗记的线性组合来估计。
通过使实际语音的采样值和线性预测采样值之间达到均方差最小,即可得到一组线性预测系数。

求解LPC系数可以采取自干系法 (德宾 durbin 法) 、协方差法、格型法等快速算法。

倒谱系数

利用同态处理方法,对语音旗子暗记求离散傅立叶变换后取对数,再求反变换就可得到倒谱系数。

个中,LPC倒谱(LPCCEP)是建立在LPC谱上的。
而梅尔倒谱系数(Mel Frequency Cepstrum Coefficient, MFCC)则是基于MEL谱的。
不同于LPC等通过对人的发声机理的研究而得到的声学特色,MFCC 是受人的听觉系统研究成果推动而导出的声学特色。

大略的说,经由梅尔倒谱剖析,得到的参数更符合人耳的听觉特性。

c)短语音识别为单词

有了上面的特色提取,每一帧都可以表述为一个多维向量,接下来便是把向量识别为文本。

这里我们须要多先容一个观点,叫【状态】。

你可以理解为,是比音素更细致的语音单位。
常日把一个音素划分成3个状态。

如上图所示,识别过程无非是:

把帧识别成状态(难点)。

把状态组合成音素。

把音素组合成单词。

那每个音素该当对应哪种状态呢?这就须要用到声学模型了。

2.4 声学模型

声学模型是识别系统的底层模型,其目的是供应一种打算语音的特色矢量序列和每个发音模板之间的间隔的方法。

也便是说,提取到的语音特性,与某个发音之间的差距越小,越有可能是这个发音。

或者说,某帧对应哪个状态的概率最大,那这帧就属于哪个状态。
这个可以用GMM(稠浊高斯模型,便是一种概率分布)或DNN(深度神经网络)来识别。

但这样识别出来的结果会比较乱,由于一个人讲话的速率不一样,每一帧识别出的结果可能是:....HHH_EE_LL__LLLL__OOO.....,如下图:

这个问题可以用DTW(动态韶光规整)或HMM(隐马尔科夫模型)或CTC(改进的RNN模型)来对齐识别结果,知道单词从哪里开始,从哪里结束,哪些内容是重复的没有必要的。

a)常用的声学建模方法包含以下三种:

基于模式匹配的动态韶光规整法(DTW);

隐马尔可夫模型法(HMM);

基于人工神经网络识别法(ANN);

在过去,主流的语音识别系统常日利用梅尔倒谱系数(Mel-Frequency Cepstral Coefficient, MFCC)或者线性感知预测(Perceptual Linear Prediction, PLP)作为特色,利用稠浊高斯模型-隐马尔科夫模型(GMM-HMM)作为声学模型。

近些年,分层鉴别模型比如DNN,变得可行起来,比如高下文干系的深度神经网络-隐马尔可夫模型(context-dependent DNN-HMM,CD-DNN-HMM)就比传统的GMM-HMM表现要好得多。

如下图,你可以清晰的看到被更换的部分。

b)紧张问题:

我们要理解的是,声学模型存在2个问题:

特色向量序列的可变长;

每个人说同一个单词的韶光长度都不一样,声学模型要能从不同的韶光长度的语音旗子暗记中识别出是同一个单词。

办理方法便是DTW(动态韶光规整)、 HMM(隐马尔可夫模型)。

音频旗子暗记的丰富变革性;

如说话人的性别,康健状况,紧张程度,说话风格、语速,环境噪音,周围人声,信道扭曲,方言差异,非母语口音等。

c)HMM 声学建模:

对语音识别系统而言,HMM 的输出值常日便是各个帧的声学特色 。
为了降落模型的繁芜度,常日 HMM 模型有两个假设条件,一是内部状态的转移只与上一状态有关,一是输出值只与当前状态或当前状态转移有关。
除了这两个假设外,HMM 模型还存在着一些理论上的假设,个中之一便是,它假设语音是一个严格的马尔科夫过程 。

2.5 措辞模型

如何将识别出的单词,组成有逻辑的句子,如何识别出精确的有歧义的单词,这些就用到措辞模型了。

由于语音旗子暗记的时变性、噪声和其它一些不稳定成分,纯挚靠声学模型无法达到较高的语音识别的准确率。
在人类措辞中,每一句话的单词直接有密切的联系,这些单词层面的信息可以减少声学模型上的搜索范围,有效地提高识别的准确性,要完成这项任务措辞模型是必不可少的,它供应了措辞中词之间的高下文信息以及语义信息。

随着统计措辞处理方法的发展,统计措辞模型成为语音识别中措辞处理的主流技能,个中统计措辞模型有很多种,如N-Gram措辞模型、马尔可夫N元模型(Markov N-gram)、指数模型( Exponential Models)、决策树模型(Decision Tree Models)等。
而N元措辞模型是最常被利用的统计措辞模型,特殊是二元措辞模型(bigram)、三元措辞模型(trigram)。

2.6 字典

字典是存放所有单词的发音的词典,它的浸染是用来连接声学模型和措辞模型的。

识别出音素,利用字典,就可以查出单词了。

例如,一个句子可以分成多少个单词相连接,每个单词通过查询发音词典得到该单词发音的音素序列。
相邻单词的转移概率可以通过措辞模型得到,音素的概率模型可以通过声学模型得到。
从而天生了这句话的一个概率模型。

2.7 解码器

解码器的浸染便是将上述演习好的模型按照一定的规则组合起来,将新输入的语音识别出来。

语音识别评估标准

在语音识别中,常用的评估标准为词缺点率(Word Error Rate,WER)。

我们上面讲了帧向量识别为单词,须要用声学模型。
由于识别出来的全体词序列是混乱的,须要进行更换、删除、插入某些词,使得次序列有序完全。

WER便是反响上述过程的标准,能直接反响识别系统声学模型的性能,也是其他评估指标如句缺点率SER的根本。

传统的词缺点率评估算法在语音识别中存在三种范例的词缺点:

更换缺点(Substitution):在识别结果中,精确的词被缺点的词代替;

删除缺点(Deletion):在识别结果中,丢失了精确的词;

插入缺点(Insertion):在识别结果中,增加了一个多余的词;

以是,词缺点率为:

S 为替代缺点词数,D 为删除缺点词数,I 为插入缺点词数。
T为参照句子中的所有词数。

须要把稳的是,由于有插入词,以是WER有可能大于100%。