语音识别系统以及方法与流程

文档序号:11097697 阅读:1046 来源:国知局
语音识别系统以及方法与制造工艺

本发明的实施例涉及一种语音识别技术,尤其涉及一种基于神经网络模型的语音识别技术。



背景技术:

目前为止,主要利用隐马尔科夫模型(HMM:Hidden Markov Model)识别语音。这种基于HMM的语音识别方式需要经过从语音数据分析发音,然后基于分析到的发音来组合单词或者句子的过程。

但是,发音可能根据发音者、语言的种类等而不同,所以分析发音并识别语音时必然会伴随经过试错(trial and error)的校正作业。并且,基于HMM的语音识别方式根据发音来识别语音,从这一点来说存在对周围噪音较敏感的问题。

现有技术文献

【专利文献】

(专利文献0001)韩国公开专利公报第10-2014-0015933号(2014.02.07)



技术实现要素:

本发明的实施例的目的在于提供一种利用混合神经网络模型从语音直接识别文本的方法。

根据本发明的示例性的实施例,提供一种语音识别系统,包括:语音输入部,接收学习用语音数据和包含表示所述学习用语音数据的字母(letter)信息的目标标签,并将所述学习用语音数据分割成设定大小的窗(window);第一语音识别部,利用第一神经网络模型以及所述目标标签来学习被分割的所述窗的特征(features);第二语音识别部,利用第二神经网络模型学习被抽取的所述特征的时间序列模式;文本输出部,基于所述第一语音识别部以及所述第二语音识别部中的学习结果,将输入到所述语音输入部的目标语音数 据转换成文本并输出。

所述语音输入部可以将分割的所述窗中连续的两个以上的窗组合成一个组之后输入到所述第一语音识别部中。

所述语音输入部可以根据设定的跨距(stride)而使被分割的所述窗的个数减少之后输入到所述第一语音识别部。

所述第一神经网络模型可以是卷积神经网络模型。

所述第二神经网络模型可以是循环神经网络模型。

所述第二语音识别部可以利用CTC(连续时序分类:Connectionist Temporal Classification)技术来学习针对所述目标标签的候补标签。

所述第一语音识别部可以基于所述第一语音识别部中的学习结果抽取所述目标语音数据的特征,并且所述第二语音识别部可以基于所述第二语音识别部中的学习结果抽取被抽取的所述目标语音数据的特征的时间序列模式,并从学习的所述目标标签或者所述候补标签中选取与被抽取的所述时间序列模式对应的标签。

所述文本输出部可以将选取的所述标签转换成文本并输出。

所述语音识别系统,还可以包括:学习控制部,控制所述第一语音识别部以及所述第二语音识别部的学习率。

所述学习控制部可以在所述第一语音识别部中的学习完成之前,使所述第一语音识别部以及所述第二语音识别部的学习率维持为相同,并且在第一语音识别部中的学习完成的情况下,将所述第一语音识别部的学习率控制为0。

根据本发明的另一实施例,提供一种语音识别方法,包括以下步骤:在语音输入部中,接收学习用语音数据和包含表示所述学习用语音数据的字母信息的目标标签;在所述语音输入部中,将所述学习用语音数据分割成设定大小的窗;在第一语音识别部中,利用第一神经网络模型以及所述目标标签来学习被分割的所述窗的特征;在第二语音识别部中,利用第二神经网络模型学习被抽取的所述特征的时间序列模式;以及在文本输出部中,基于所述第一语音识别部以及所述第二语音识别部中的学习结果,将输入到所述语音输入部的目标语音数据转换成文本并输出。

在将所述学习用语音数据分割成设定大小的窗的步骤以后,还可以包括以下步骤:在所述语音输入部中,将分割的所述窗中连续的两个以上的窗组 合成一个组之后并输入到所述第一语音识别部。

在输入到所述第一语音识别部的步骤中,可以根据设定的跨距而使被分割的所述窗的个数减少之后输入到所述第一语音识别部。

所述第一神经网络模型可以是卷积神经网络模型。

所述第二神经网络模型可以是循环神经网络模型。

所述语音识别方法在学习被抽取的所述特征的时间序列模式的步骤以后,还可以包括以下步骤:在所述第二语音识别部中,利用CTC技术来学习针对所述目标标签的候补标签。

所述语音识别方法,在所述转换成文本并输出的步骤之前还可以包括以下步骤:在所述第一语音识别部中,基于所述第一语音识别部中的学习结果,抽取所述目标语音数据的特征;以及在所述第二语音识别部中,基于所述第二语音识别部中的学习结果,抽取被抽取的目标语音数据的特征的时间序列模式,并从学习的所述目标标签或者所述候补标签中选取与被抽取的所述时间序列模式对应的标签。

在所述转换成文本并输出的步骤中可以将选取的所述标签转换成文本并输出。

所述语音识别方法,还可以包括以下步骤:在学习控制部中控制所述第一语音识别部以及所述第二语音识别部的学习率。

在控制所述学习率的步骤中,可以在所述第一语音识别部中的学习完成之前,使第一语音识别部以及所述第二语音识别部的学习率维持为相同,并且可以在第一语音识别部中的学习完成的情况下,将将第一语音识别部的学习率控制为0。

根据本发明的另一实施例,提供一种计算机程序,为了与硬件结合而执行如下步骤而存储于计算机可读记录介质:在语音输入部中,接收学习用语音数据和包含表示所述学习用语音数据的字母信息的目标标签;在所述语音输入部中,将所述学习用语音数据分割成设定大小的窗;在第一语音识别部中,利用第一神经网络模型以及所述目标标签来学习被分割的所述窗的特征;在第二语音识别部中,利用第二神经网络模型学习被抽取的所述特征的时间序列模式;以及在文本输出部中,基于所述第一语音识别部以及所述第二语音识别部中的学习结果,将输入到所述语音输入部的目标语音数据转换成文本并输出。

根据本发明的实施例,根据基于神经网络模型的学习结果,可以在对语音数据没有进行发音分析过程的情况下,将语音数据直接转换(end-to-end转换)成文本并输出,从而可以简化用于识别语音的整体流程。

并且,根据本发明的实施例,将与语音数据相关的字母以及字母间的空格信息以目标标签的方式接受而进行学习,从而可以方便地应用于字母本身形成一个字的字母表(alphabet)以及字母(例如,初声、中声、终声等)通过组合形成一个字的组合型语言(例如,韩语)的识别。

并且,根据本发明的一实施例,通过控制第一语音识别部以及第二语音识别部的学习率,可以提高语音识别率。

附图说明

图1为示出根据本发明的一实施例的语音识别系统的详细构成的框图。

图2为用于说明根据本发明的一实施例的语音输入部中分割语音数据的过程的图。

图3为示出根据本发明的一实施例被调音的语音数据的示例的图。

图4为用于说明根据本发明的一实施例的语音数据和目标标签之间的关系的图。

图5为用于说明根据本发明的一实施例的第一语音识别部中抽取语音数据的特征的过程的图。

图6为用于说明根据本发明的一实施例的第二语音识别部中抽取语音数据的时间序列模式的过程的图。

图7为用于说明根据本发明的一实施例的第二语音输入部中学习与目标标签对应的候补标签的过程的图。

图8为用于说明根据本发明的一实施例的学习控制部中控制第一语音识别部以及第二语音识别部的学习率的过程的图。

图9为用于说明根据本发明的一实施例的学习控制部中控制第一语音识别部以及第二语音识别部的学习率的过程的图。

图10为用于说明根据本发明的一实施例的学习控制部中的学习控制引起的语音识别率提升效果的图。

图11为用于说明根据本发明的一实施例的学习学习用语音数据的方法的流程图。

图12为用于说明根据本发明的一实施例的语音识别方法的流程图。

符号说明

100:语音识别系统 102:语音输入部

104:第一语音识别部 106:第二语音识别部

108:文本输出部 110:学习控制部

具体实施方式

以下,将参照附图对本发明的具体实施形态进行说明。以下的详细的说明为帮助全面地理解本说明书中描述的方法、装置以及/或者系统而提供。然而这仅仅为示例,本发明并不局限于此。

在对本发明的实施例进行说明时,如果判断为对与本发明相关的公知技术进行的具体说明会给本发明的主旨带来不必要的混乱,则将省略对其进行的详细说明。并且,下述的术语为考虑到本发明中的作用而给出定义的术语,其可以根据用户、经营者的意图或者习惯等而不同。所以,需要基于本说明书的整体内容来对其做出定义。在详细的说明中使用的术语只是用于叙述本发明的实施例的,而并不具有限制作用。在没有明确的反例时,单数形态的表现形式包含复数形态的含义。本说明书中,要理解“包含”或者“具有”等表现形式指某些特征、数字、步骤、操作、要素以及它们的部分或者组合,并且不排出除了所叙述的表现形式之外的一个或以上的其他特征、数字、步骤、操作、要素以及它们的部分或者组合的存在或者可能性。

图1为示出根据本发明的一实施例的语音识别系统100的详细构成的框图。

图1所示,根据本发明的一实施例的语音识别系统100用于将语音数据直接转换(end-to-end转换)成文本而输出,并且包括:语音输入部102,、第一语音识别部104、第二语音识别部106、文本输出部108以及学习控制部110。

语音输入部102是接收语音数据的模块。其中语音数据指包含:将语音信号以波形态表示的波文件、将所述波文件以频率形态表示的声谱图(spectrogram)、MFCC(梅尔倒谱系数:Mel-Frequency Cepstral Coefficient)等的广范围的意思。语音输入部102例如可以从麦克风、扬声器、音响等音频设备接收语音数据。但是,不限于此,语音输入部102例如可以从台式机、 笔记本电脑、平板电脑等通信设备接收语音数据。

输入到语音输入部102的语音数据可以是目标语音数据或者学习用语音数据。目标语音数据指作为实际识别对象的语音数据,学习用语音数据指为了识别所述目标语音数据而使用的语音数据,并且为了语音识别系统100的学习可以输入到语音输入部102中。

学习用语音数据可以与表示所述学习用语音数据的目标标签(label)一起输入到语音识别部102中。目标标签指神经网络模型的监督学习(supervis ed learning)中与学习用语音数据相关的结果数据。所述目标标签可以包含表示所述学习用语音数据的字母(或者字,letter)信息。例如,与“(您好)”的学习用语音数据相关的目标标签可以是“”。并且,所述目标标签还可以包含表示所述学习用语音数据的字母间的空格(space)信息。例如,与“(见到您很高兴)”的学习用语音数据相关的目标标签可以是“”。所述空格信息可以用设定的符号,例如“$”来表示。所述目标标签的示例如下述表1。

【表1】

如上所述,语音输入部102将与语音数据相关的字母以及字母间的空格信息以目标标签的形式接收并进行学习,所以可以容易地适用于字母本身构成一个字的字母表(alphabet)的识别,不仅如此,还可容易地适用于由字母(例如初声、中声、终声)组合而构成一个字的组合型语言(例如韩语)的识别。语音输入部102可以接收多个学习用语音数据(例如,1400个句子的学习用语音数据)以及与所述学习用语音数据相关的目标标签。输入到语音输入部102的学习用语音数据的量越多,越可以提高后述的第一语音识别部104以及第二语音识别部106中的语音识别率。

并且,语音输入部102可以将语音数据(目标语音数据或者学习用语音数据)分割成设定大小(或者长度)的窗(window)。所述设定的大小例如 可以是25ms,但是分割的窗的大小不限于此。并且,从语音输入部102中分割的各个窗可分别具有设定的时间差。例如,语音输入部102中分割的各个窗可分别具有10ms的时间差。所述分割的窗中相邻的窗可以具有预定长度的重复的部分,据此可以通过所述窗覆盖语音数据的所有部分。

并且,所述语音数据可以根据语音数据的特征或者第一语音识别部104以及第二语音识别部106的学习参数(或者权值)而被调音(tuning)。

作为示例,在语音输入部102中被分割的窗中连续的两个以上的窗可以被组合成一个组,所述窗组可以作为一个输入(input)输入到第一语音识别部104中。其目的在于,除了针对当前时刻t表示的语音,还将连接于t之前、之后的音视为一个输入,并从它们的关系抽取特征。以下的实施例中,将组合成一个输入的窗的个数称为height(窗高),例如在height=9的情况下,语音输入部102可以将9个窗作为一个输入而输入到第一语音识别部104。

作为另一示例,语音输入部102可以根据设定的跨距(stride)而使被分割的所述窗的个数减少之后输入到第一语音识别部104中。语音输入部102例如可以每次滑动10ms地将语音数据分割成25ms的窗。在该情况下,相邻的窗可以部分重叠。若stride=0,则被分割的各个窗或者根据height而组合的各个窗组可以作为一个输入依次输入到第一语音识别部104,但是在stride=2的情况下,被分割的窗或者窗组中与输入到第一语音识别部104的窗或者窗组紧邻的窗或者窗组将会跳过,而下一个窗或者窗组可输入到第一语音识别部104中。据此,可以减少输入到第一语音识别部104的整体窗数,并且具有连续性的语音数据可稀疏(sparse)地输入到第一语音识别部104中。所述height值以及stride值可以被分析员或者管理者设定,并且语音输入部102可以根据设定的所述height值以及stride值对语音数据进行调音,然后输入到第一语音识别部104中。

第一语音识别部104以及第二语音识别部106是一种利用基于深度学习(Deep learning)的神经网络模型(Neural Network model)来学习学习用语音数据,并基于所述学习结果识别目标语音数据的模块。

首先,第一语音识别部104利用第一神经网络模型学习学习用语音数据的特征。其中,第一神经网络模型例如可以是卷积神经网络(CNN:Convolutional Neural Network)模型。所述CNN模型是用于通过交替执行两种运算层(卷积层(Convolutional Layer),采样层(Subsampling(pooling) Layer))来最终抽取输入数据特征的层级模型。第一语音识别部104可以利用所述CNN模型对从语音输入部102输入的被分割的窗和目标标签进行机器学习(machine learning)。如上所述,目标标签可以包含从语音输入部102输入的学习用语音数据的字母以及所述字母间的空格信息。第一语音识别部104可以利用所述CNN模型使各个卷积层的滤波器学习,并据此学习与学习用语音数据相关的特征,即字母以及字母间的空格信息。所述CNN模型由多个层级组成,并以步骤方式抽取/学习/分类特征,所以相比现有的语音识别模型,具有受周围杂音影响较小的长处。第一语音识别部104可以通过机器学习来学习与所输入的学习用语音数据对应的字母以及空格信息,并且基于所述学习的信息(即,与学习用语音数据对应的字母以及空格信息)抽取其后输入的目标语音数据的特征(即,输入的目标语音数据具有何种字母以及空格信息)。

然后,第二语音识别部106利用第二神经网络模型学习从第一语音识别部104抽取的特征的时间序列模式(temporal pattern或者time series pattern)。其中,第二神经网络模型例如可以是循环神经网络模型(RNN:Recurrent N eural Network)模型。所述RNN模型是在抽取输入数据的时间序列相关关系(或者联系关系)时所使用的模型。第二语音识别部106可以利用所述RNN模型对第一语音识别部104中抽取的特征进行机器学习。所述RNN模型例如可以是BRNN(双向神经网络:Bidirectional Neural Network)模型,并且所述BRNN模型可以根据抽取/学习数据的时间序列的相关关系的方向,由For ward层(从前方学习的层)和Backward层(从后方学习的层)组成。第二语音识别部106可以通过将BRNN模型应用于从第一语音识别部104抽取的特征,从而学习所述特征的时间序列模式,例如哪种字母后主要出现哪种字母,在哪种字母前主要出现哪种字母等。第二语音识别部106可以抽取并学习这种时间序列模式,并将该学习结果以概率示出。例如,在抽取的特征为“”的情况下,第二语音识别部106可以抽取以及学习所述字母的时间序列模式,即在“”前面出现“”字母的时间序列模式,在“”后面出现“”、“”字母的时间序列模式。

并且,第二语音识别部106可以利用CTC(连续时序分类:Connectioni st Temporal Classification)技术来学习针对所述目标标签的候补标签。CTC技术是用于分类以及预测输入数据的时间序列模式的技术。即使是相同内容 的语音数据,所述语音数据的标签(字母以及字母间的空格信息)也会根据语音数据中包含的语音的发音者是谁而不同。例如,从A发音的语音(例如,用“”标签表示的语音)和从B发音的语音(例如,用“”标签表示的语音)都表示相同的意思,但是可能具有互不相同的长、短音。其中,“-”指空白(blank),即没有被分类为标签的音。所以,即使一个单词也可能存在多个对应的标签。将这些标签称为针对目标标签(例如,“”)的候补标签,并且第二语音识别部106可以利用CTC技术来学习针对目标标签的候补标签。第二语音识别部106可以从多个学习用语音数据和与其对应的目标标签学习多个候补标签。第二语音识别部106例如,可将学习用语音数据对所有时间t分类成字母或者空格而生成标签,然后计算所述标签与目标标签的相似度,然后利用BPTT(反向时间传播:Back-pr opagation Through Time)技术来学习候补标签。如此,所述第二语音识别部106可以根据对相同时间t的语音数据被分类成blank还是字母来区分语音数据的长/短音。上述示例中,对“”的语音数据的长/短音可以如下述表2区分。

【表2】

第二语音识别部106学习从第一语音识别部104抽取的特征的时间序列模式,然后基于所述学习的信息(即,字母以及空格的时间序列模式)抽取其后经过第一语音识别部104输入的目标语音数据的特征的时间序列模式。并且,第二语音识别部106可以选取经学习的所述目标标签或者候补标签中与抽取的所述时间序列对应的标签。

另外,本文中将CNN模型以及RNN模型分别作为了第一神经网络模型以及第二神经网络模型的示例,但是需要留意第一神经网络模型以及第二神经网络模型不限于此,可以多样地适用实现类似功能的模型或者算法。

文本输出部108是基于第一语音识别部104以及第二语音识别部106中的学习结果,将输入到语音输入部102的目标语音数据转换成文本并输出的模块。如上文所述,第一语音识别部104可以学习学习用语音数据的特征, 第二语音识别部106可以学习所述特征的时间序列模式。文本输出部108通过分别结合与学习用语音数据相关的目标标签以及与所述目标标签相关的候补标签的“初声”、“中声”以及“终声”,可将所述目标标签以及候补标签转换成文本。例如,在与语音数据“”相关的目标标签是“”的情况下,文本输出部108通过结合所述“”的初声、中声、终声,可将“”转换为“”的文本。此时,文本输出部108可以参考设定的词典而结合目标标签的初声、中声、终声。例如,文本输出部108通过结合目标标签的初声、中声、终声来构成文本,并且可以通过判断所构成的文本是否存在于所述词典中来提高文本转换的准确度。但是,文本输出部108将选取的标签转换成文本的方式不限于此,文本输出部108可以通过多种方法将目标标签以及候补标签转换成文本。从而,文本输出部108可以学习与学习用语音数据相关的文本情报,并基于所述学习结果将从语音输入部102新输入的目标语音转换成文本并输出。

具体地,第一语音识别部104基于所述学习结果抽取目标语音数据的特征,第二语音识别部106基于所述学习结果抽取从第一语音识别部104抽取的语音数据的特征的时间序列模式,并在学习到的目标标签或者候补标签中选取与抽取的所述时间序列模式对应的标签。并且,文本输出部部108可以基于所述学习结果将选取的标签转换成文本。例如,在选取的标签为“”的情况下,文本输出部108可以输出与所述标签对应的文本“”。即,根据本发明的实施例,基于以神经网络模型为基础的学习结果,在对语音数据的发音没有经过分析过程的情况下将语音数据直接转换(end-to-end转换)成文本并输出,据此可以简化用于识别语音的整体程序。

学习控制部110是控制第一语音识别部104以及第二语音识别部106的学习率的模块。如上文所述,第一语音识别部104以及第二语音识别部106可以分别利用CNN模型以及RNN模型识别语音。但是,CNN模型和RNN模型的对学习的收敛(完成)速度分别不同。其中,学习的收敛指神经网络模型的参数,即权(weight)值不再变化(即,不被更新)的状态。

具体地,CNN模型的滤波器的学习可能比RNN模型进行得更快。这是因为CNN模型只学习输入数据的空间信息(spatial information),相比于此, RNN模型追加学习输入数据的时间信息(temporal information)。因此,在CNN模型和RNN模型以相同的学习率(learning rate)学习的情况下,需要使RNN模型学习更久,在此情况下,在CNN模型的滤波器收敛以后,CNN模型的参数(例如,权值)值也会产生变化,所以可能妨碍RNN模型的学习。并且,在只令CNN模型充分学习以后,再使RNN模型学习的情况下,无法充分反映输入数据的连续性。因此,本发明的实施例中,使学习控制部110能够控制第一语音识别部104以及第二语音识别部106的学习率。具体地,学习控制部110在第一语音识别部104中的学习完成之前,使第一语音识别部104以及第二语音识别部106的学习率维持为相同(活态训练(Active state training)),并且在第一语音识别部104中的学习完成的情况下,可以将第一语音识别部104的学习率控制为0(静态训练(Inactive state training))。其中,将学习率控制为0指不再更新CNN模型的参数(例如,权值)值。学习控制部110可以重复执行如上的活态训练(Active state training)-静态训练(Inactive state training)过程,并据此可提高语音识别系统100的语音识别率。

一实施例中,语音输入部102、第一语音识别部104、第二语音识别部106、文本输出部108以及学习控制部110可以在包括一个以上的处理器以及与该处理器连接的计算机可读存储介质的计算装置上实现。计算机可读存储介质可以设在处理器的内部或者外部,并且可以通过多种周知的手段与处理器连接。计算装置内的处理器可以使各个计算装置根据本说明书中记载的示例性的实施例运转。例如,可以通过以下方式构成:处理器可以执行计算机可读存储介质中储存的命令语句,并且在计算机可读存储介质中储存的命令语句被处理器执行的情况下,使计算装置执行根据本说明书中记载的示例性的实施例的操作。

图2是用于说明根据本发明的一实施例的语音输入部102中分割语音数据的过程的图。如图2所示,语音输入部102可以将语音数据(目标语音数据或者学习用语音数据)分割成设定大小(或者长度)的窗(window)。

并且,语音输入部102例如可以每次滑动10ms地将语音数据分割成T个25ms的窗。图2中示出语音数据被分割成T个窗的过程以及所述被分割的T个窗的声谱图。

图3是示出根据本发明的一实施例而得到调音的语音数据的示例的图。如上文所述,输入到语音输入部102的语音数据可以根据语音数据的特性或 者第一语音识别部104以及第二语音识别部106的学习参数(或者权值)被调音。

首先,在语音输入部102中分割的窗中连续的两个以上的窗可以组合成一个组。例如,在height=9的情况下,9个窗可以组合成一个组而输入到第一语音识别部104中。

然后,语音输入部102可以根据设定的跨距(stride)而使被分割的窗的个数减少之后输入到第一语音识别部104中。例如,在stride=2的情况下,语音输入部102可以将所述窗组中的第一窗组、第三窗组、第五窗组…依次输入到第一语音识别部104中,并且第二窗组、第四窗组、第六窗组…等可以不被输入到第一语音识别部104中。据此,可以减少输入到第一语音识别部104的整体窗数,并且具有连续性的语音数据可稀疏(sparse)地输入到第一语音识别部104中。

图4是用于说明根据本发明的一实施例的语音数据和目标标签之间的管系的图。如图4所示,目标标签的长度Y不可能大于语音数据的长度T。其中,目标标签的长度Y指表示字母和字母之间的空格的符号的个数,语音数据的长度T指被分割的窗的个数。根据语音数据中包含的语音的长、短音或者对所述语音的发音者的发音,多个窗可能对应于一个字母,所以语音数据的长度T大于目标标签的长度Y。例如,在所述目标标签为“”的情况下,被分割的窗可能分别与“…”等的字母对应,在该情况下,语音数据的长度T大于目标标签的长度Y。在高速录音的语音数据中,改变stride参数而输入到第一语音识别部104的情况下,语音数据的长度T被改变而可能小于目标标签的长度Y,因此语音数据的调音应符合语音数据的特性以及语音识别模型的结构。

图5是用于说明根据本发明的一实施例的在第一语音识别部104中抽取语音数据的特征的过程的图。如上文所述,第一语音识别部104可以利用CNN模型抽取语音数据的特征。通常,CNN模型具有如下的三个层。

①卷积层(Convolution layer):抽取卷积特征(convolution feature)的层。

②Polling layer:为了减少特征,进行二次抽样(sub-sampling)的层

③前馈层(Feedforward layer):作为最后一层,是对convolution layer,pooling layer中被抽取的特征进行分类的层。

第一语音识别部104可以利用所述CNN模型对从语音输入部102输入的被分割的窗和目标标签进行机器学习(machine learning)。第一语音识别部104可以利用所述CNN模型使各个卷积层的滤波器进行学习。据此,可以学习与学习用语音数据相关的特征,即字母以及字母间的空格信息。并且,第一语音识别部104可以基于所述学习的信息(即,与语音数据对应的字母以及空格信息)抽取其后输入的目标语音数据的特征(即,目标语音数据具有何种字母以及空格信息)。

图6是用于说明根据本发明的一实施例的在第二语音识别部106中抽取语音数据的时间序列模式的过程的图。如上文所述,第二语音识别部106可以利用RNN模型抽取从第一语音识别部104中识别的特征的时间序列模式。所述RNN模型例如可以是BRNN(Bidirectional Neural Network)模型,所述BRNN模型可以根据抽取/学习数据的时间序列相关关系的方向,由Forward层(前向层)和Backward层(后向层)组成。第二语音识别部106可以通过对在第一语音识别部104中抽取的特征应用BRNN模型,学习所述特征的时间序列模式,例如在哪种字母后主要出现哪种字母,在哪种字母前主要出现哪种字母等。

图7是用于说明根据本发明的一实施例的在第二语音识别部106中学习针对目标标签的候补标签的过程的图。如上文所述,第二语音识别部106可以利用CTC技术来学习针对目标标签的候补标签。第二语音识别部106可以从多个学习用语音数据和与其对应的目标标签,学习多个候补标签。例如,第二语音识别部106将学习用语音数据对所有时间t分类成字母或者空格并生成标签,然后计算所述标签和目标标签之间的相似度,并利用BPTT(Back-propagation Through Time)技术学习目标标签。

参照图7,第二语音识别部106可以对于“”的目标标签抽取并学习最有可能的组合的层,即“”、“”、“”…等。并且,第二语音识别部106可以根据对相同的时间t被分类成空白(blank)还是字母来区分语音数据的长/短音。

图8以及图9是用于说明根据本发明的一实施例的在学习控制部110中控制第一语音识别部104以及第二语音识别部106的学习率的过程的图。如上文所述,学习控制部110可以在第一语音识别部104中的学习完毕之前,使第一语音识别部104以及第二语音识别部106的学习率维持为相同(活态 训练(Active state training)),并且在第一语音识别部104中的学习完毕的情况下,可将第一语音识别部104的学习率控制为0(静态训练(Inactive state training))。

图8示出在学习控制部110中进行活态训练(Active state training)的过程,图9示出在学习控制部110中进行静态训练(Inactive state training)的过程。学习控制部110可以反复进行如上所述的活态训练(Active state training)-静态训练(Inactive state training)过程,并且据此可以提高语音识别系统100的语音识别率。

图10是用于说明根据本发明的一实施例的在学习控制部110中的基于学习控制的语音识别提升效果的图。如上文所述,学习控制部110可以反复进行活态训练(Active state training)-静态训练(Inactive state training)过程。

如图10所示,可以确认,在根据学习控制部110的控制反复Active state training-Inactive state training过程的情况下,相比CNN中的学习持续的情况,可大幅提高单词识别率(85.91%→90.72%)。为了得到上述实验结果,1400个句子作为学习用语音数据被输入到语音输入部102中,然后400个句子作为测试语音数据(即,目标语音数据)输入到了语音输入部102中。所述各个句子例如,可以平均由大约6.7个单词组成。

图11是用于说明根据本发明的一实施例的学习学习用语音数据的方法的流程图。图示的流程图中,将所述方法分成多个步骤而记载,但是至少一部分的步骤可以交换顺序而被执行,或者与其他步骤结合而一起被执行,或者被省略,或者被分成详细的步骤而被执行,或者可能附加一个以上的未被图示的步骤而被执行。

在S110步骤中,语音输入部102接收学习用语音数据。语音输入部102例如可以从麦克风、扬声器、音响等音频设备接收语音数据。此时,语音输入部102可以同时接收所述学习用语音数据和表示所述学习用语音数据的目标标签。所述目标标签可以包含对应学习用语音数据的字母以及字母间的空格信息。语音识别部102可以将所述学习用语音数据分割成设定大小的窗,并将分割的窗分别输入给第一语音识别部104。

在S120步骤中,第一语音识别部104学习从语音输入部102输入的各个窗的特征。第一语音识别部104例如可以利用第一神经网络模型学习所述各个窗的特征。其中,第一神经网络模型例如可以是CNN模型。第一语音识别 部104可以利用所述CNN模型使各个卷积层的滤波器学习,并据此学习与学习用语音数据相关的特征,即字母以及字母间的空格信息。

在S130步骤中,第二语音识别部106学习从第一语音识别部104中抽取的特征的时间序列模式。第二语音识别部106例如可以利用第二神经网络模型学习所述时间序列模式。其中,第二神经网络模型例如可以是BRNN模型。第二语音识别部106可以通过对从第一语音识别部104中抽取的特征应用BRNN模型,从而学习所述特征的时间序列模式,例如在哪种字母后主要出现哪种字母,在哪种字母前主要出现哪种字母等。并且,第二语音输入部106可以利用CTC技术学习针对目标标签的候补标签。第二语音识别部106例如可以将学习用语音数据对所有时间t分类成字母或者空格并生成标签,然后计算所述标签和所述目标标签之间的相似度,然后利用BPTT技术学习候补标签。

在S140步骤中,文本输出部108将学习用语音数据转换成文本。文本输出部108通过结合与学习用语音数据相关的目标标签以及与所述目标标签相关的候补标签的初声、中声、终声,从而将所述目标标签以及候补标签转换成文本。通过上述过程,语音识别系统100可以学习与学习用语音数据对应的文本。

图12是用于说明根据本发明的一实施例的语音识别方法的流程图。

在S210步骤中,语音识别部102接收目标语音数据。

在S220步骤中,文本输出部108基于第一语音识别部104以及第二语音识别部106中的学习结果,输出与目标语音数据对应的文本。具体地,第一语音识别部104基于所述学习结果抽取目标语音数据的特征,第二语音识别部106基于所述学习结果,抽取被抽取的目标语音数据的特征的时间序列模式,然后从学习的目标标签或者候补标签中选取与抽取的时间序列模式对应的标签。据此,文本输出部108可以将选取的所述标签转换成与所述标签对应文本并输出。

另外,本发明的一实施例可以包括计算机可读记录介质,其包含用于在计算机上执行本说明书中记载的方法的程序。所述计算机可读记录介质可以单独地或者组合地包括程序命令、本地数据文件、本地数据结构等。所述介质可以是为本发明而特别地设计并构成的介质,或者可以是在计算机软件领域中通常被使用的介质。计算机可解码存储介质的示例包括:磁介质,如硬 盘、软盘以及磁带等;光记录介质,如CD-ROM、DVD等;磁-光介质,软盘等;以及ROM、RAM、闪存等为了储存命令并执行程序命令而特别构成的硬件装置。作为程序命令的例,不仅包括如利用编译器制作的计算机语音代码,还可以包括可利用翻译器等由计算机执行的高级语言代码。

以上,对本发明的具有代表性的实施例进行了详细的说明,然而在本发明所属的技术领域中具有基本知识的人员可以理解对上述的实施例可在不脱离本发明的范围的限度内进行多种变形。因此,本发明的权利范围并不局限于上述的实施例,本发明的权利范围需要根据权利要求书的范围以及与该权利要求书均等的范围来确定。

当前第1页 1 2 3
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1