语音识别声学模型介绍
关于声学模型,主要有两个问题,分别是特征向量序列的可变长和音频信号的丰富变化性。可变长特征向量序列问题在学术上通常有动态时间规划(Dynamic Time Warping, DTW)和隐马尔科夫模型(Hidden Markov Model, HMM)方法来解决。而音频信号的丰富变化性是由说话人的各种复杂特性或者说话风格与语速、环境噪声、信道干扰、方言差异等因素引起的。声学模型需要足够的鲁棒性来处理以上的情况。
在过去,主流的语音识别系统通常使用梅尔倒谱系数(Mel-Frequency Cepstral Coefficient, MFCC)或者线性感知预测(Perceptual Linear Prediction, PLP)作为特征,使用混合高斯模型-隐马尔科夫模型(GMM-HMM)作为声学模型。在近些年,区分性模型,比如深度神经网络(Deep Neural Network, DNN)在对声学特征建模上表现出更好的效果。基于深度神经网络的声学模型,比如上下文相关的深度神经网络-隐马尔科夫模型(CD-DNN-HMM)在语音识别领域已经大幅度超越了过去的GMM-HMM模型。
我们首先介绍传统的GMM-HMM声学模型,然后介绍基于深度神经网络的声学模型。
1.3. 传统声学模型(GMM-HMM)
HMM模型对时序信息进行建模,在给定HMM的一个状态后,GMM对属于该状态的语音特征向量的概率分布进行建模。
1.3.1. 混合高斯模型
如果一个连续随机变量服从混合高斯分布,则它的概率密度函数为
混合高斯模型分布最明显的性质是它的多模态,这使得混合高斯模型可以描述很多显示出多模态性质的屋里数据,比如语音数据,而单高斯分布则不合适。数据中的多模态性质可能来自多种潜在因素,每一个因素决定分布中特定的混合成分。如果因素被识别出来,那么混合分布就可以被分解成有多个因素独立分布的集合。
那么将上面公式推广到多变量的多元混合高斯分布,就是语音识别上使用的混合高斯模型,其联合概率密度函数的形式如下:
在得到混合高斯模型的形式后,需要估计混合高斯模型的一系列参数变量:=,我们主要采用最大期望值算法(Expectation Maximization, EM)进行参数估计,公式如下:
其中,j是当前迭代轮数, 为t时刻的特征向量。GMM参数通过EM算法进行估计,可以使其在训练数据上生成语音观察特征的概率最大化。此外,GMM模型只要混合的高斯分布数目足够多,GMM可以拟合任意精度的概率分布。
1.3.2. 隐马尔可夫模型
为了描述语音数据,在马尔可夫链的基础上进行了扩展,用一个观测的概率分布与马尔可夫链上的每个状态进行对应,这样引入双重随机性,使得马尔可夫链不能被直接观察,故称为隐马尔可夫模型。隐马尔可夫模型能够描述语音信号中不平稳但有规律可学习的空间变量。具体的来说,隐马尔可夫模型具有顺序排列的马尔可夫状态,使得模型能够分段的处理短时平稳的语音特征,并以此来逼近全局非平稳的语音特征序列。
隐马尔可夫模型主要有三部分组成。对于状态序列···,
1. 转移概率矩阵A=[],i,j[1,N],描述马尔可夫链状态间的跳转概率:
=P(=j | =i )
2. 马尔可夫链的初始概率:,其中
3. 每个状态的观察概率分布,按照上一节的介绍,我们会采用GMM模型来描述状态的观察概率分布。在这种情况下,公式可以表述为:
隐马尔可夫模型的参数通过Baum-Welch算法(在HMM上EM算法的推广)进行估计。
1.4. CD-DNN-HMM
虽然GMM-HMM在以往取得了很多成功,但是随着深度学习的发展,DNN模型展现出了明显超越GMM模型的性能,替代了GMM进行HMM状态建模。不同于GMM模型,DNN模型为了获得更好的性能提升,引入了上下文信息(也即前后特征帧信息),所以被称为CD-DNN-HMM(Context-Dependent DNN-HMM)模型。在很多测试集上CD-DNN-HMM模型都大幅度超越了GMM-HMM模型。
首先简单介绍一下DNN模型,DNN模型是有一个有很多隐层的多层感知机,下图就是具有5层的DNN,模型结构上包括输入层、隐层和输出层。对于第层,有公式
其中 分别表示,L层的输出向量,权重矩阵,输入向量以及偏差向量(bias); f(·) 一般称为激活函数,常用的激活函数有sigmoid函数
或者整流线性单元(Rectifier Linear Unit)ReLU(x)=max(0,x)。在语音识别上应用的DNN模型一般采用softmax将模型输出向量进行归一化,假设模型有 L 层,在特征向量为 O,输出分类数为 C,则第 i 类的输出概率为
相比于GMM模型,DNN模型具有一些明显的优势:首先,DNN是一种判别模型,自身便带有区分性,可以更好区分标注类别;其次,DNN在大数据上有非常优异的表现,伴随着数据量的不断增加,GMM模型在2000小时左右便会出现性能的饱和,而DNN模型在数据量增加到1万小时以上时还能有性能的提升;另外,DNN模型有更强的对环境噪声的鲁棒性,通过加噪训练等方式,DNN模型在复杂环境下的识别性能甚至可以超过使用语音增强算法处理的GMM模型。
除此之外,DNN还有一些有趣的性质,比如,在一定程度上,随着DNN网络深度的增加,模型的性能会持续提升,说明DNN伴随模型深度的增加,可以提取更有表达性、更利于分类的特征;人们利用这一性质,提取DNN模型的Bottle-neck特征,然后在训练GMM-HMM模型,可以取得和DNN模型相当的语音识别效果。
DNN应用到语音识别领域后取得了非常明显的效果,DNN技术的成功,鼓舞着业内人员不断将新的深度学习工具应用到语音识别上,从CNN到RNN再到RNN与CTC的结合等等,伴随着这个过程,语音识别的性能也在持续提升,未来我们可以期望将可以和机器进行无障碍的对话。
语音识别声学模型介绍相关推荐
- 3月16日云栖精选夜读:显著超越流行长短时记忆网络,阿里提出DFSMN语音识别声学模型...
在语音顶会ICASSP,阿里巴巴语音交互智能团队的poster论文提出一种改进的前馈序列记忆神经网络结构,称之为深层前馈序列记忆神经网络(DFSMN).研究人员进一步将深层前馈序列记忆神经网络和低帧率 ...
- kaldi语音识别实战pdf_FSMN网络结构在语音识别声学模型的实践
一.FSMN 其中是可学习参数.[1]使用Feedforward Sequential Memory Networks(FSMN)这种结构来近似RNN,类似于FIR对IIR的近似,具有速度上的优势,用 ...
- 人工智能:语音识别技术介绍
❤️作者主页:IT技术分享社区 ❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#.Java开发九年,对数据库.C#.Java.前端.运维.电脑技巧等经验丰富. ❤️个人荣誉: 数据库领域优质 ...
- 【程序员归家计划】放假回家之前拜服务器?不存在的,这才是保证程序员过好年的正确打开方式...
又到了一年中可以名正言顺地"偷懒"的时候了,此时的正常情况是大家应该收一收努力工作和好好学习的心,准备过年了!这个阶段几乎所有的问题都可以用"过完年再说吧"和& ...
- 放假回家之前拜服务器?不存在的,这才是保证程序员过好年的正确打开方式!
又到了一年中可以名正言顺地"偷懒"的时候了,此时的正常情况是大家应该收一收努力工作和好好学习的心,准备过年了!这个阶段几乎所有的问题都可以用"过完年再说吧"和& ...
- 【程序员归家计划】放假回家之前拜服务器?不存在的,这才是保证程序员过好年的正确打开方式
摘要: 在即将到来的214情人节和举国同庆的农历春节期间,运维同学们应该如何才能不被公司召回,如何才能保证系统的正常运转?本文就为大家整理了自动化运维.架构升级以及安全保障的相关干货合集,希望能够帮助 ...
- 传统语音识别介绍【三】—— 声学模型
近年来,随着深度学习的兴起,使用了接近30年的语音识别声学模型HMM(隐马尔科夫模型)逐渐被DNN(泛指深度神经网络)所替代,模型精度也有了突飞猛进的变化. 整体来看声学建模技术从建模单元.模型结构. ...
- 从声学模型算法角度总结 2016 年语音识别的重大进步
94人阅读 原文链接:http://click.aliyun.com/m/13878/ 免费开通大数据服务:https://www.aliyun.com/product/odps 在过去的一年中,语音 ...
- 语音识别一、语音识别介绍
语音识别就是将包含文字信息的语音通过计算机转化成文字的过程,也叫语音转写,英文叫automatic speech recognition(ASR)或者 speech to text(STT),语音识别 ...
最新文章
- 一行代码解决对象数组排序(sort)
- 关于Spring Cloud 框架热部署的方法
- 非标自动化企业前十名_非标设备的现状
- python测试之道pdf百度云_Python测试之道——笔记1
- 计算机主机外部的连接端口有何作用,微机原理 课后题 标准答案
- 《Python编程从入门到实践》记录之文件异常(try-except-else代码块)
- 构图之法——9条构图小贴士
- 从最大似然再看线性回归
- 不解决这六个问题,农商行怎么去玩大数据?
- log4j日志设置error级别以上
- GAMP读取精密星历存在一个小BUG
- 正反馈理论与管理学——马太效应、比…
- matlab调用ANSYS
- 2016 新学++ , 回顾过去展望未来
- 费雪信息场增量建场实际实验
- 实现所有网站的qq登录返回登录后的cookie信息
- nms、softnms、softernms
- java转换大小写快捷键_Java 大小写最快转换方式实例代码
- 偏向锁、轻量级锁、重量级锁的区别和解析
- 计算机组成原理左规右规,计算机组成原理[袁春风]chap3homework.ppt