HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

一种语音识别的训练方法和装置与流程

2021-01-28 16:01:41|301|起点商标网
一种语音识别的训练方法和装置与流程

本申请涉及人工智能技术领域,特别涉及一种语音识别的训练方法和装置。



背景技术:

目前,主流语音识别方案所采用的框架结构为:卷积神经网络(cnn)+双向长短期记忆网络(blstm)+卷积神经网络(cnn)+连接时序分类(connectionisttemporalclassification,ctc)层(cnn+blstm+cnn+ctc)结构。它以音频文件整体作为输入,经由cnn特征提取层提取特征,blstm+cnn层进行学习,并用ctc层解码,最终输出目标文字。

图1给出了上述框架结构的示意图,如图1所示,首先输入部分采用频谱图作为输入,而后采用卷积神经网络(cnn)来提取音频特征。cnn被广泛用来提取图像、文本、音频等多模态信息的特征,经由cnn提取到的特征相比于早期人工设计方案的如梅尔频率倒谱系数(mfcc)特征,更加适合该网络同时丢失的信息较少。

卷积神经网络提取特征后,将该特征输入到blstm层进行学习,所谓blstm是指由两列方向相反的长短期记忆网络(lstm)组成的网络。它可以同时读取音频特征的前后音素信息,使得识别结果更加准确。

经由blstm层学习后,紧接着连接了一个前瞻卷积结构,其结构如图2所示:它与正常的卷积神经网络的不同之处在于卷积层的输入不再单纯的是前一层的输出,而是对应层的输出与后两步输出的结合。这样在输出的层面又进一步结合了音素间的联系。

前瞻卷积层最终的输出连接到全连接层,作为输出准备并输入到ctc层。ctc层对全连接层的输出进行解码得到最终的识别文本。

上述方案使用的损失函数为ctc损失函数,即计算最终识别出的文字与标准答案文字间的差别。该损失函数越小则最终识别结果越准确。

发明人在实现本发明的过程中发现,上述现有的语音识别方案在正常朗读、发音标准的情况下,具有较高的识别准确率。但是,在实际应用中,在会议、对话等场合常会存在识别准确率较低的问题。



技术实现要素:

本申请提供了一种语音识别训练方法和装置,可以有效提高语音识别的准确性。

本发明实施例提供了一种语音识别的训练方法,包括:

将用于训练的语谱图输入至语音识别模型的掩模mask层;

所述mask层对所述语谱图进行遮挡处理后,将遮挡处理结果输入至双向长短期记忆网络blstm层处理;

利用所述语音识别模型中的语音识别子模型,对于所述blstm层的输出结果,进行特征提取和语音识别处理;所述语音识别子模型依次由卷积神经网络cnn层、blstm层、前瞻卷积神经网络cnn层、全连接层和连接时序分类ctc层组成;

根据所述语音识别子模型的语音识别结果和所述遮挡处理对应的能量损失,计算总损失函数值;根据所述总损失函数值,对所述语音识别模型中的各层参数进行优化。

较佳地,所述遮挡处理包括:

对于输入至所述mask层的每一帧语谱图数据,生成本帧的遮挡参数,将该遮挡参数与该帧语谱图数据相乘,得到对该帧语谱图数据的遮挡处理结果,其中,所述遮挡参数服从方差为σ的高斯分布,所述σ预先根据遮挡时需要对数据进行削弱的程度设置。

较佳地,所述生成本帧的遮挡参数包括:

x1、基于所述高斯分布的分布概率,生成一个随机数;

x2、判断所述随机数是否大于等于0且小于等于1;如果是,则将该随机数确定为当前帧用于遮挡的削弱参数,否则,执行步骤x1。

较佳地,所述计算总损失函数值包括:

根据所述语音识别子模型的语音识别结果,计算原始的ctc损失函数值l(c);

按照计算遮挡处理能量损失值l(e);

其中,表示所述语谱图输入至所述mask层时其中语句x的第i帧的能量;表示与所述mask层相邻的所述blstm层输出的所述语句x的第i帧的能量;s为所述语谱图包含的语句集合;a为预设的能量损失重要性参数;n为语句x覆盖的帧数;

按照ltotal=l(e)+l(c),计算所述总损失函数值ltotal。

较佳地,所述计算原始的ctc损失函数值l(c)包括:

按照l(c)=-∑(x,z)∈slnp(z|x),计算原始的ctc损失函数值l(c);其中,p(z|x)表示给定输入语句x时输出序列z的概率,s为所述语谱图对应的语句集合。

本发明实施例还提供一种语音识别的训练装置,包括:

初始处理单元,用于将用于训练的语谱图输入至遮挡处理单元;

遮挡处理单元,用于利用语音识别模型的掩模mask层对所述语谱图进行遮挡处理后,将遮挡处理结果输入至双向长短期记忆网络blstm层处理,将blstm层的输出结果输入至语音识别子单元;

语音识别子单元,用于利用所述语音识别模型中的语音识别子模型,对于所述blstm层的输出结果,进行特征提取和语音识别处理;所述语音识别子模型依次由卷积神经网络cnn层、blstm层、前瞻卷积神经网络cnn层、全连接层和连接时序分类ctc层组成;

模型优化单元,用于根据所述语音识别子模型的语音识别结果和所述遮挡处理对应的能量损失,计算总损失函数值;根据所述总损失函数值,对所述语音识别模型中的各层参数进行优化。

较佳地,所述遮挡处理单元对所述语谱图进行遮挡处理,包括:

对于输入至所述mask层的每一帧语谱图数据,生成本帧的遮挡参数,将该遮挡参数与该帧语谱图数据相乘,得到对该帧语谱图数据的遮挡处理结果,其中,所述遮挡参数服从方差为σ的高斯分布,所述σ预先根据遮挡时需要对数据进行削弱的程度设置。

较佳地,所述遮挡处理单元生成本帧的遮挡参数,包括:

x1、基于所述高斯分布的分布概率,生成一个随机数;

x2、判断所述随机数是否大于等于0且小于等于1;如果是,则将该随机数确定为当前帧用于遮挡的削弱参数,否则,执行步骤x1。

较佳地,所述模型优化单元,计算总损失函数值,包括:

根据所述语音识别子模型的语音识别结果,计算原始的ctc损失函数值l(c);

按照计算遮挡处理能量损失值l(e);

其中,表示所述语谱图输入至所述mask层时其中语句x的第i帧的能量;表示与所述mask层相邻的所述blstm层输出的所述语句x的第i帧的能量;s为所述语谱图包含的语句集合;a为预设的能量损失重要性参数;n为语句x覆盖的帧数;

按照ltotal=l(e)+l(c),计算所述总损失函数值ltotal。

较佳地,所述模型优化单元,根据所述语音识别子模型的语音识别结果,计算原始的ctc损失函数值l(c),包括:

按照l(c)=-∑(x,z)∈slnp(z|x),计算原始的ctc损失函数值l(c);其中,p(z|x)表示给定输入语句x时输出序列z的概率,s为所述语谱图对应的语句集合。

本发明实施例提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行如上所述语音识别的训练方法的步骤。

本发明实施例还提供了一种电子设备,包括如前所述的非易失性计算机可读存储介质、以及可访问所述非易失性计算机可读存储介质的所述处理器。

由上述技术方案可见,本申请提出的语音识别训练方法和装置,在对用于进行语音识别训练的语谱图进行特征提取和语音识别处理之前,需要利用mask层对语谱图进行遮挡处理,以模拟人说话过程中的发音较轻或不全的情况,然后再通过blstm层对mask层输出进行整合,以重新建立前后音频帧间的联系,并且,在语音识别后,还在损失函数值的计算时考虑到了遮挡处理所导致的能量损失,以控制mask层后的blstm层的重建效果。如此,可以解决在会议、对话等场合,说话人会出现发音不全、声音合并等情况发生时,对语音识别准确性的影响,从而可以提高本发明在实际应用中进行语音识别的准确度。

附图说明

图1为现有的语音识别模型的架构示意图;

图2为前瞻卷积结构示意图;

图3为本发明实施例的方法流程示意图;

图4为本发明实施例采用的语音识别模型的结构示意图;

图5为本发明实施例的装置结构示意图。

具体实施方式

为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。

发明人通过对现有主流语音识别方案进行研究分析发现:上述主流语音识别方案在进行模型训练时采用的样本为正常朗读、发音标准的语音,所以该方案对发音标准的语音可以准确识别。而在实际应用中,说话者通常会出现发音不全、声音合并等情况,从而使得基于标准发音训练得到的语音识别模型,无法对此类音频进行准确识别,进而导致识别的准确率降低。

基于此,本发明实施例中,将在现有主流语音识别方案所采用的框架结构基础上增加mask层来对原始音频帧进行随机削弱,模拟人说话过程中的发音较轻或不全的情况,然后再通过blstm层对mask层输出进行整合,重新建立前后帧间的联系,来解决在会议、对话等场合,说话人会出现发音不全、声音合并等情况。并且,还对损失函数进行修改,在正常的ctc损失函数中增加了能量损失函数,以此来控制mask层后的blstm层的重建效果。

本发明实施例提供了一种实现语音识别的训练方法,如图3所示,该方法包括:

步骤301、将用于训练的语谱图输入至语音识别模型的掩模mask层。

需要说明的是,这里与现有语音识别方案所不同的是,用于训练的语谱图需要先输入至mask层处理,以通过mask层的处理实现对实际应用中音节丢失、较弱等非标准语音效果的模仿。

这里,所述语谱图是对每帧语音信号从时域变换到频域提取特征后得到的,具体生成方法同现有方案,在此不再赘述。

步骤302、所述mask层对所述语谱图进行遮挡处理后,将遮挡处理结果输入至双向长短期记忆网络blstm层处理。

这里,mask即掩模,在图像处理中,是对处理的图像(全部或局部)进行遮挡,来控制图像处理的区域或处理过程。这里利用mask层的处理,来对输入该层的音频帧进行部分遮挡实现在输入中削弱部分音频帧,而不破坏原始音频。mask层实质上是对输入的每一帧乘以0到1之间的值,从而实现遮挡。该0到1之间的值p(x)由高斯分布生成,其分布为:

其中,p(x)是均值为1,方差为σ的高斯分布,σ作为可调的超参数来调整削弱帧的程度的百分比,对于方差越小的分布,削弱的百分比越低。基于上述,较佳地,本步骤的遮挡处理具体可以采用下述方法实现:

对于输入至所述mask层的每一帧语谱图数据,生成本帧的遮挡参数,将该遮挡参数与该帧语谱图数据相乘,得到对该帧语谱图数据的遮挡处理结果。

其中,所述遮挡参数服从方差为σ的高斯分布,所述σ预先根据遮挡时需要对数据进行削弱的程度设置。

考虑到,在生成所述遮挡参数时需要满足:不小于0且不大于1,因此,当生成的数值大于1或小于0时,需要重新生成,以确保遮挡参数满足上述条件,从而可以保证最终mask层高斯分布的有效性。

基于上述考虑,较佳地可以采用下述方法实生成本帧的遮挡参数:

步骤x1、基于所述高斯分布的分布概率,生成一个随机数。

步骤x2、判断所述随机数是否大于等于0且小于等于1;如果是,则将该随机数确定为当前帧用于遮挡的削弱参数,否则,执行步骤x1。

本步骤中,语谱图经过mask层处理后,部分帧的能量被削弱,甚至将为0,因此,这里实现了对输入音频的轻音和丢失音节情况的模拟。但是,由于音节的人为遗弃有可能导致前后帧之间的关系遭到破坏,因此,本步骤中,在mask层后又增加了blstm层对mask层的输出,进行再处理。blstm即双向长短期记忆网络,它可以从正向和反向学习mask层的输出,重建音频帧之间的联系,在一定程度上降低音节丢失带来的影响,从而模拟音节非削弱或丢失情况下的音频输入情况。与此同时,该blstm层还要重建原始输入的语谱图信息,即判断哪些帧被削弱了,之后在输出值中将其修正。

步骤303、利用所述语音识别模型中的语音识别子模型,对于所述blstm层的输出结果,进行特征提取和语音识别处理;所述语音识别子模型依次由卷积神经网络cnn层、blstm层、前瞻卷积神经网络cnn层、全连接层和连接时序分类ctc层组成。

本步骤中,步骤302中blstm层的输出将会被当作语音识别子模型的输入来进行特征提取和语音识别。该语音识别子模型的结构同现有的主流语音识别模型结构,即采用的是cnn+blstm+cnn+ctc的结构。图4给出本发明实施例采用的语音识别模型的结构示意图,从图4中可以看出,本申请与现有主流语音识别方案所不同的是增加了两层处理,即最下面的mask层和blstm层。

本步骤的具体实现为本领域技术人员所掌握,在此不再赘述。

步骤304、根据所述语音识别子模型的语音识别结果和所述遮挡处理对应的能量损失,计算总损失函数值;根据所述总损失函数值,对所述语音识别模型中的各层参数进行优化。

本步骤中对所述语音识别模型中的各层参数进行优化的具体方法同现有系统,在此不再赘述。

这里需要说明的是,与现有方案的损失函数值计算方法所不同的是,这里在计算所述总损失函数值时考虑到了遮挡处理时的能量损失,以此控制mask层处理后的blstm层的重建效果,进而提高经过训练后语音识别模型的准确度。

较佳地,可以采用下述方法计算所述总损失函数值:

步骤y1、根据所述语音识别子模型的语音识别结果,计算原始的ctc损失函数值l(c)。

本步骤中ctc损失函数值l(c)的具体实现与现有方案相同,即按照l(c)=-∑(x,z)∈slnp(z|x),计算原始的ctc损失函数值l(c)。

其中,p(z|x)表示给定输入语句x时输出序列z的概率,s为所述语谱图对应的语句集合。

步骤y2、按照计算遮挡处理能量损失值l(e)。

其中,表示所述语谱图输入至所述mask层时其中语句x的第i帧的能量。

表示与所述mask层相邻的所述blstm层输出的所述语句x的第i帧的能量。

s为所述语谱图包含的语句集合。

a为预设的能量损失重要性参数;0≤a≤1。a是一个预设的参数,用于控制能量损失的重要性,具体可由本领域技术人员根据实际需要设置合适取值。

n为语句x覆盖的帧数。

步骤y3、按照ltotal=l(e)+l(c),计算所述总损失函数值ltotal。

步骤304中计算出所述总损失函数值ltotal后,便可根据该总损失函数值,对所述语音识别模型中的各层参数进行优化。这里,进行训练的目标就是最小化总损失函数值ltotal,优化算法可采用现有方法如adam算法等。采用上述方法对语音识别模型进行多轮训练后,损失函数值收敛到预期值即可获得准确度满足要求的语音识别模型。

之后在实际使用中,利用经过训练后的语音识别模型进行语音识别时,将mask层全部设置为1使得输入全部通过,这是因为使用中的音频本身就存在音节丢失、较弱等现象,不需要刻意去做。

本发明实施例还提供一种语音识别的训练装置,如图5所示,该装置包括:

初始处理单元,用于将用于训练的语谱图输入至遮挡处理单元;

遮挡处理单元,用于利用语音识别模型的掩模mask层对所述语谱图进行遮挡处理后,将遮挡处理结果输入至双向长短期记忆网络blstm层处理,将blstm层的输出结果输入至语音识别子单元;

语音识别子单元,用于利用所述语音识别模型中的语音识别子模型,对于所述blstm层的输出结果,进行特征提取和语音识别处理;所述语音识别子模型依次由卷积神经网络cnn层、blstm层、前瞻卷积神经网络cnn层、全连接层和连接时序分类ctc层组成;

模型优化单元,用于根据所述语音识别子模型的语音识别结果和所述遮挡处理对应的能量损失,计算总损失函数值;根据所述总损失函数值,对所述语音识别模型中的各层参数进行优化。

较佳地,所述遮挡处理单元对所述语谱图进行遮挡处理,包括:

对于输入至所述mask层的每一帧语谱图数据,生成本帧的遮挡参数,将该遮挡参数与该帧语谱图数据相乘,得到对该帧语谱图数据的遮挡处理结果,其中,所述遮挡参数服从方差为σ的高斯分布,所述σ预先根据遮挡时需要对数据进行削弱的程度设置。

较佳地,所述遮挡处理单元生成本帧的遮挡参数,包括:

x1、基于所述高斯分布的分布概率,生成一个随机数;

x2、判断所述随机数是否大于等于0且小于等于1;如果是,则将该随机数确定为当前帧用于遮挡的削弱参数,否则,执行步骤x1。

较佳地,所述模型优化单元,计算总损失函数值,包括:

根据所述语音识别子模型的语音识别结果,计算原始的ctc损失函数值l(c);

按照计算遮挡处理能量损失值l(e);

其中,表示所述语谱图输入至所述mask层时其中语句x的第i帧的能量;表示与所述mask层相邻的所述blstm层输出的所述语句x的第i帧的能量;s为所述语谱图包含的语句集合;a为预设的能量损失重要性参数;n为语句x覆盖的帧数;

按照ltotal=l(e)+l(c),计算所述总损失函数值ltotal。

较佳地,所述模型优化单元,根据所述语音识别子模型的语音识别结果,计算原始的ctc损失函数值l(c),包括:

按照l(c)=-∑(x,z)∈slnp(z|x),计算原始的ctc损失函数值l(c);其中,p(z|x)表示给定输入语句x时输出序列z的概率,s为所述语谱图对应的语句集合。

本发明还提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行如上所述语音识别的训练方法实施例的步骤。

此外,本申请还提供了一种电子设备,包括如前所述的非易失性计算机可读存储介质、以及可访问所述非易失性计算机可读存储介质的所述处理器。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips