掌桥专利:专业的专利平台
掌桥专利
首页

语音识别方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 19:30:30


语音识别方法、装置、电子设备及存储介质

技术领域

本发明涉及语音处理技术领域,尤其涉及一种语音识别方法、装置、电子设备及存储介质。

背景技术

随着语音识别技术的不断成熟,其被广泛应用于车载导航、智能家居和社交聊天等众多领域,给人们的生活带来了极大的便利。

目前,在进行语音识别时,使用较为广泛的通常是传统的基于声学模型(AcousticModel,AM)和语言模型(Language Model,LM)这种分段式的语音识别方法。在语音识别过程中,在进行文本内容解码时,该方法通会用到N-gram语言模型,该模型通过滑动固定字节长度窗口的方式,对文本中每个句子的每个字节片段(gram)在语料库中出现的频度进行统计,以此计算出整个句子的出现概率,即句子中各个词的出现概率的乘积,从而得到具有最大概率的句子,使得模型输出的句子更加合理。

然而,上述方式中,对同音但不同词性的词语并不能进行准确识别,如待识别语音为“我请助手一起帮忙”,则有可能被识别为“我请住手一起帮忙”,从而导致语音识别的准确度较低。

发明内容

本发明提供一种语音识别方法、装置、电子设备及存储介质,用以解决现有技术中语音识别的准确度较低的缺陷,实现了提高语音识别的准确度的目的。

本发明提供一种语音识别方法,包括:

将待识别语音输入声学模型中,得到所述待识别语音对应的音素序列;

将所述音素序列输入第一语言模型中,得到所述待识别语音对应的多个候选解码文本;

将所述多个候选解码文本输入第二语言模型中,得到各所述候选解码文本属于各标准语法结构的第一预测结果;

基于所述第一预测结果确定所述待识别语音的识别结果。

根据本发明提供的一种语音识别方法,所述将所述多个候选解码文本输入第二语言模型中,得到各所述候选解码文本属于各标准语法结构的第一预测结果,包括:

针对所述多个候选解码文本中的各候选解码文本,将所述候选解码文本输入所述第二语言模型的输入层,得到所述候选解码文本的编码特征;

将所述编码特征输入所述第二语言模型的中间层,得到特征子图;

将所述特征子图输入所述第二语言模型的输出层,得到所述候选解码文本属于各标准语法结构的第一预测结果。

根据本发明提供的一种语音识别方法,所述将所述特征子图输入所述第二语言模型的输出层,得到所述候选解码文本属于各标准语法结构的第一预测结果,包括:

将所述特征子图输入所述第二语言模型的输出层,确定所述特征子图与各所述标准语法结构对应的标准编码特征之间的相似度;

基于所述相似度,确定各所述候选解码文本属于各标准语法结构的第一预测结果。

根据本发明提供的一种语音识别方法,所述第二语言模型的输出层中包括多个有向图,所述有向图用于表征所述标准语法结构。

根据本发明提供的一种语音识别方法,所述第二语言模型为基于如下方式训练得到的:

获取语音样本对应的多个候选样本解码文本;

将所述多个候选样本解码文本输入初始第二语言模型中,输出各所述候选样本解码文本属于各标准语法结构的第二预测结果;

基于所述第二预测结果,对所述初始第二语言模型进行训练,得到所述第二语言模型。

根据本发明提供的一种语音识别方法,所述基于所述第二预测结果,对所述初始第二语言模型进行训练,得到所述第二语言模型,包括:

针对每个候选样本解码文本,基于所述候选样本解码文本对应的第二预测结果,以及各所述标准语法结构对应的目标值,确定所述候选样本解码文本与各所述标准语法结构之间的损失信息;

基于所述候选样本解码文本与各所述标准语法结构之间的损失信息,确定所述候选样本解码文本对应的目标损失;

基于各所述候选样本解码文本对应的目标损失,对所述初始第二语言模型进行迭代训练,得到所述第二语言模型。

根据本发明提供的一种语音识别方法,所述第一预测结果包括各所述候选解码文本属于各标准语法结构的打分值;

所述基于所述第一预测结果确定所述待识别语音的识别结果,包括:

将各所述候选解码文本属于各标准语法结构的打分值中,打分值最高的候选解码文本确定为所述识别结果。

本发明还提供一种语音识别装置,包括:

输入模块,用于通过将待识别语音输入声学模型中,得到所述待识别语音对应的音素序列;

所述输入模块,还用于通过将所述音素序列输入第一语言模型中,得到所述待识别语音对应的多个候选解码文本;

所述输入模块,还用于通过将所述多个候选解码文本输入第二语言模型中,得到各所述候选解码文本属于各标准语法结构的第一预测结果;

确定模块,用于基于所述第一预测结果确定所述待识别语音的识别结果。

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述语音识别方法。

本发明还提供一种电子设备,包括麦克风,还包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述麦克风用于采集待识别语音;

所述处理器执行所述计算机程序中的声学模型、第一语言模型和第二语言模型,将待识别语音输入声学模型中,得到所述待识别语音对应的音素序列;将所述音素序列输入第一语言模型中,得到所述待识别语音对应的多个候选解码文本;将所述多个候选解码文本输入第二语言模型中,得到各所述候选解码文本属于各标准语法结构的第一预测结果;基于所述第一预测结果确定所述待识别语音的识别结果。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述语音识别方法。

本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述语音识别方法。

本发明提供的语音识别方法、装置、电子设备及存储介质,通过将待识别语音输入声学模型中,得到待识别语音对应的音素序列,将音素序列输入至第一语言模型中,得到待识别语音对应的多个候选解码文本,以并将得到的多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果,也即得到各候选解码文本的语法结构合理度打分,以此通过该第一预测结果,确定出待识别语音的识别结果。由于词语的词性不同时,对应的语法结构不同,因此,可以通过将多个候选解码文本输入第二语言模型中,并基于第二语言模型中的标准语法结构,预测每个候选解码文本属于各标准语法结构的第一预测结果,这样,可以将多个候选解码文本中语法结构不合理的候选解码文本筛除,得到更加符合标准语法结构的识别结果,避免了最终的识别结果中出现同音但不同词性的词语而导致的语义错误的现象,从而提高了语音识别的准确度。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是现有技术中语音识别的过程示意图;

图2是本发明实施例提供的语音识别方法的流程示意图之一;

图3是本发明实施例提供的音素序列的生成示意图;

图4是本发明实施例提供的语音识别方法的流程示意图之二;

图5是本发明实施例提供的第二语言模型的结构示意图;

图6是本发明实施例提供的候选解码文本的编码示意图;

图7是本发明实施例提供的语音识别装置的结构示意图;

图8是本发明提供的电子设备的结构示意图之一;

图9是本发明提供的电子设备的结构示意图之二。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

语音识别技术,也称自动语音识别(Automatic Speech Recognition,ASR),是一种将人发出的语音转换成对应的文字内容的技术,传统的语音识别技术一般包括声学模型和语言模型两个部分,而且两个模型之间相互连接,以便通过解码引擎,完成各类语音识别任务。

下面结合图1对现有技术中语音识别的过程进行描述。

图1为现有技术中语音识别的过程示意图,如图1所示,当用户发出声音时,语音采集设备,如麦克风等拾音设备,将会采集该声音,以生成对应的模拟语音信号,进而通过集成在该语音采集设备内部的转换模块,将该模拟语音信号转换为数字语音信号,使得语音信号可以输入到前端声学处理模块中,完成语音信号的增强、降噪等相关处理,从而提高该语音信号的识别成功率。基于此,再将处理后的数字语音信号输入至语音识别系统中,从而得到该语音信号对应的文本内容。

在上述语音识别技术中,语音识别系统通常包括声学模型和语言模型两个部分。具体地,声学模型多采用深度神经网络,语言模型多采用加权有限状态转换器(WeightedFinite-State Transducer,WFST)解码器。具体地,在该语音识别技术中,WFST作为第一遍解码的语言模型,其用于产生多个(例如5个)候选解码结果,以便将多个候选解码结果送入二遍模型中进行候选解码结果的重打分,并选取分数最高的解码结果作为最终的解码结果。其中,二遍模型包括N-gram语言模型,其通常由4-gram甚至是5-gram生成,N-gram语言模型例如可以包括二元模型(BiGram model,Bi-Gram)和三元模型(TriGrammodel,Tri-Gram)等。

其中,上述N-gram语言模型的基本思想是:首先,将文本内容按照其字节大小为N的窗口进行滑动操作,形成长度为N的多个字节片段序列,这里一个字节片段称为一个gram,以便对获取的每个字节片段(gram)在语料库中的出现频度进行统计,并按照预先设定好的阈值进行过滤,得到关键字节片段列表,即该文本的向量特征空间。其中,关键字节片段列表中的每一个关键字节片段(gram)代表着一个特征向量维度。进一步地,N-gram语言模型是一种基于统计语言模型的算法,该模型基于这样一种假设,第N个词的出现只与前面N-1个词相关,而与其它任何词都不相关,因而整个句子的出现概率等于该句子中各个词的出现概率的乘积,这些概率可以直接通过从语料库中统计N个词同时出现的次数而计算得到,也即关键字节片段列表中的所有特征向量维度。

然而,上述方法对于一些同音但不同词性的词语并不能进行准确识别,在基于各个词的出现概率进行重打分得到的识别文本,可能会出现语义错误,导致语音识别的准确度较低。

基于此,本发明实施例提出了一种语音识别方法,该方法通过在第二语言模型中增加多个标准语法结构,使得输入的多个候选解码文本与各标准语法结构进行匹配,以得到多个候选解码文本属于各标准语法结构的第一预测结果,进而再通过多个候选解码文本的第一预测结果,筛选掉语法结构不合理的候选解码文本,得到更加符合标准语法结构的识别结果,避免了最终的识别文本中出现同音但不同词性的词语而导致的语义错误的现象,从而提高了语音识别的准确度。

下面结合图2-图6对本发明实施例提供的语音识别方法进行描述,该方法可以应用于任何语音识别场景中。执行该方法的主体可以是语音识别装置,例如手机、电脑、计算机或者其他任何能够进行语音识别的电子设备。

图2为本发明实施例提供的语音识别方法的流程示意图之一,如图2所示,该方法包括:

步骤201:将待识别语音输入声学模型中,得到待识别语音对应的音素序列。

其中,音素是根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作来分析,一个动作构成一个音素。进一步地,音素序列包括按照一定顺序排列而成的一组音素。

示例性的,图3为本发明实施例提供的音素序列的生成示意图,如图3所示,在通过麦克风等拾音设备获取到上述待识别语音信号后,首先需要通过梅尔频率倒谱系数(Mel-Frequency Cepstral Coefficients,MFCC)、滤波器组(Filter Banks,FB)等声学特征提取方法,对所获取的待识别语音信号(整段音频)进行分帧声学特征提取,并对提取的分帧声学特征进行归一化等数据处理,得到处理后的声学特征O;然后,将处理后的声学特征O输入至声学模型中,判断其声学状态序列是一组还是多组,以便通过隐马尔可夫模型(HiddenMarkov Model,HMM)计算出该声学特征O对应的声学概率P(O|W),以此将每一组声学状态序列都映射为音素序列,以继续执行步骤202。

步骤202:将音素序列输入第一语言模型中,得到待识别语音对应的多个候选解码文本。

具体地,第一语言模型为音素级的WFST网络,WFST网络是一种有穷自动机(FiniteAutomation,FA)。其中,一个有穷自动机通常由一个有限的状态集合以及状态之间的跳转组成,每个跳转至少有一个标签(label),最基本的有穷自动机是有限状态接收机(FiniteState Acceptor,FSA)。giddy一个输入符号序列,FSA返回“接受”或者“不接受”,它的判断条件是:如果存在一条从初始状态到终止状态的路径,使得路径上的标签序列正好等于输入符号序列,那么就是“接受”,否则就是“不接受”。

继续参照图3所示,将上述获取到的音素序列输入至语言模型(LM)中的第一语言模型中,以通过发音词典(PL),通过解码模块(Decoder)查询出与该音素序列相对应的多个文本序列,并计算出其语音概率P(W),以此来筛选出多个候选解码文本。

步骤203:将多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果。

其中,各标准语法结构可以理解为正确的语法结构,如主+谓、主+谓+宾、主+谓+补等等,该标准语法结构可以通过咨询中文语言专家或者通过网络查询的方式进行获取,也可以通过将所有句子成分进行组合排列后,剔除错误语法结构,从而得到标准语法结构,对于标准语法结构的获取方式,本发明实施例中对此不做具体限制。

具体地,可以将多个候选解码文本输入至第二语言模型中,以便在对多个候选解码文本进行重打分时,可以将其与各标准语法结构进行相似度计算,得到各候选解码文本属于各标准语法结构的第一预测结果。

步骤204:基于第一预测结果确定待识别语音的识别结果。

具体地,第一预测结果可以包括各候选文本属于各标准语法结构的打分值,在获取到上述的第一预测结果后,可以选取该第一预测结果中打分值最高的候选解码文本作为待识别语音的识别结果,从而得到更加符合标准语法结构的解码文本,筛除了不符合标准语法结构的候选解码文本,提高了识别结果语义的准确性。另外,由于第二语言模型中增加了各标准语法结构,从而可以提高第二语言模型的可解释性。

本发明实施例提供的语音识别方法,通过将待识别语音输入声学模型中,得到待识别语音对应的音素序列,其输入至第一语言模型中,得到待识别语音对应的多个候选解码文本,以并将得到的多个候选解码文本输入第二语言模型中,也即得到各候选解码文本属于各标准语法结构的第一预测结果,也即各候选解码文本的语法结构合理度打分,以此通过该第一预测结果,确定出待识别语音的识别结果。由于词语的词性不同时,对应的语法结构不同,因此,可以通过将多个候选解码文本输入第二语言模型中,并基于第二语言模型中的标准语法结构,预测每个候选解码文本属于各标准语法结构的第一预测结果,这样,可以将多个候选解码文本中语法结构不合理的候选解码文本筛除,得到更加符合标准语法结构的识别结果,避免了最终的识别结果中出现同音但不同词性的词语而导致的语义错误的现象,从而提高了语音识别的准确度。

图4是本发明实施例提供的语音识别方法的流程示意图之二,本发明实施例中对图2所示实施例的步骤203中如何确定各候选解码文本属于各标准语法结构的第一预测结果的具体过程进行详细说明,如图4所示,该方法包括:

步骤2031:针对多个候选解码文本中的各候选解码文本,将候选解码文本输入第二语言模型的输入层,得到候选解码文本的编码特征。

具体地,图5为本发明实施例提供的第二语言模型的结构示意图,如图5所示,该第二语言模型包括输入层、中间层和输出层三个部分。

在得到各候选解码文本后,将每个候选解码文本输入至第二语言模型的输入层中,以使该输入层对候选解码文本进行编码操作,得到候选解码文本的编码特征。示例性的,图6为本发明实施例提供的候选解码文本的编码示意图,如图6所示,对输入的各候选解码文本中的每一个句子进行分词操作,以通过embeding编码方法或者one hot向量编码方法,生成每个词的embeding词向量表示,并将其逐个连接,以得到句向量的网络表示,即候选解码文本的编码特征,其中,该候选解码文本的编码特征为图结构。例如,输入的候选解码文本为“你中午吃的什么”,对该候选解码文本进行分词操作,得到“你”、“中午”、“吃”、“的”、“什么”。通过确定这些分词的embeding词向量表示,并进行拼接,从而可以得到该候选解码文本的网络表示,也即编码特征。

步骤2032:将编码特征输入第二语言模型的中间层,得到特征子图。

具体地,在获取到所有候选解码文本的编码特征后,可将该编码特征输入至第二语言模型的中间层中,以获得其特征子图。如图5所示,第二语言模型所使用的网络主体模型为自注意机制图网络(Self-attention graph neural networks,SAGNN),通过对输入的候选解码文本的编码特征,进行自注意力计算,得到各候选解码文本对应的特征子图。示例性的,上述计算为针对各候选解码文本的编码特征中每个词向量依次与所有词向量进行点积并进行归一化处理,以获得两个词向量之间的相似度,也即通过对当前句向量进行自注意力计算,以得到其语法特征向量,也即特征子图。

步骤2033:将特征子图输入第二语言模型的输出层,得到候选解码文本属于各标准语法结构的第一预测结果。

如图5所示,为了确定各个候选解码文本是否属于标准语法结构,因此,可以将SAGNN的输出层替换为由多个标准语法结构组成的输出层,其中,多个标准语法结构组成的输出层可以通过图网络的方式表示。

具体地,将上述获取到的特征子图输入至第二语言模型的输出层中,以使该特征子图与输出层中的各标准语法结构进行比对或者匹配,从而得到各候选解码文本属于各标准语法结构的第一预测结果。示例性的,该第一预测结果可以为各候选解码文本属于各标准语法结构的打分值,其中,打分值越高,则说明候选解码文本属于标准语法结构的概率越大。

在本实施例中,通过将各候选解码文本输入第二语言模型的输入层中,得到候选解码文本的编码特征,并将该候选解码文本的编码特征输入第二语言模型的中间层中,得到特征子图。由此,可以将该特征子图输入第二语言模型的输出层中,以获取到各候选解码文本属于各标准语法结构的第一预测结果,这样,可以将多个候选解码文本中语法结构不合理的候选解码文本筛除,得到更加符合标准语法结构的识别结果,避免了最终的识别结果中出现同音但不同词性的词语而导致的语义错误的现象,从而提高了语音识别的准确性。

进一步地,传统的二遍语言模型通常由4-gram甚至是5-gram结果生成,模型体积较大,通常为十几G,占用了部署服务器的较大存储空间。相比之下,本发明实施例提供的第二语言模型只有三四百兆,减少服务器的模型储存占用空间,保证系统内存水位的安全。具体地,本实施例提供的第二语言模型属于深度神经网络,模型文件中存储的数据为模型参数,参数类型通常为float32。其中,一个float32占用4字节,对于亿级参数模型而言,基于如下计算方式,模型实际大小仅为400兆左右体积:

100000000*4byte=100000*4KB=400MB

另外,传统的二遍语言模型通常是基于CPU(Central Processing Unit,中央处理器)进行解码,其运行时会占用大量的服务器内存。相比之下,本发明实施例提供的第二语言模型在进行前向解码的过程中,实际使用的是矩阵(向量)进行运算,因此,该第二语言模型可以使用GPU(Graphics Processing Unit,图形处理器)进行解码。相较于CPU解码的方式,GPU更擅长矩阵的运算。由此,通过将第二语言模型在GPU上进行运算,可进一步实现整个语音识别系统的并行计算,从而大大加快语音识别系统的解码速度,提升了语音识别的速度。

在一种可能的实现方式中,将特征子图输入第二语言模型的输出层,得到候选解码文本属于各标准语法结构的第一预测结果,可以通过如下方式进行实现:将特征子图输入第二语言模型的输出层,确定特征子图与各标准语法结构对应的标准编码特征之间的相似度;基于相似度,确定各候选解码文本属于各标准语法结构的第一预测结果。

示例性的,为了方便特征子图与各标准语法结构对应的标准编码特征之间的相似度的计算,第二语言模型的输出层中包括多个有向图,该有向图用于表征标准语法结构。

本发明实施例提供的第二语言模型的输出层中固定使用基于句子结构的有向图,由于增加了基于人类专家的抽象规则,大大增加了模型的可解释性,当在工程应用中遇到识别错误的问题时,可以确定分析其原因,也即网络的可解释性,从而可以给出逻辑清楚的解决方案。

示例性的,下面以中文普通话为例来说明第二语言模型的输出层中包括的多个标准语法结构的确定方式,对于其他语言对应的标准语法结构的确定方式,与下述内容类似,此处不再赘述。

对于中文来说,句子成分包括主语、谓语、宾语、动语、定语、状语,补语和中心语,对于这八种语句成分,取维度大小为16×16的向量对其进行编码,例如主语编码如下:

另外,可以将该主语编码向量中的前8列列向量的

在基于经验或者网络查询的方式获取到多个标准语法结构后,可以基于各个标准语法结构,将上述句子成分对应的编码向量进行拼接,从而得到各个标准语法结构对应的标准编码特征。例如,对于主+谓的标准语法结构,可以将主语对应的编码向量和谓语对应的编码向量进行拼接,从而可以得到主+谓这一标准语法结构对应的标准编码特征。

进一步地,在将特征子图输入第二语言模型的输出层后,将确定该特征子图与每个标准语法结构对应的标准编码特征之间的相似度,从而基于该相似度,可以确定出特征子图对应的候选解码文本属于每个标准语法结构的打分值,也即第一预测结果,其中,相似度越高,对应的打分值越高,打分值越高,说明候选解码文本属于该标准语法结构的概率越大。

在本实施例中,通过将第二语言模型中间层输出的特征子图输入第二语言模型的输出层中,得到该特征子图与各标准语法结构对应的标准编码特征之间的相似度,从而基于该相似度,确定出各候选解码文本属于各标准语法结构的第一预测结果,也即确定出各候选解码文本与各标准语法结构之间的所属关系。基于此,可以根据该第一预测结果,筛选出更加符合标准语法结构的候选解码文本,作为该待识别语音的识别结果进行输出,以避免由于错误语法结构而导致的语音识别失败的问题,从而提高了语音识别的准确性。

在上述各实施例的基础上,上述各实施例中所述的第二语言模型可以通过如下方式训练得到:获取语音样本对应的多个候选样本解码文本;将多个候选样本解码文本输入初始第二语言模型中,输出各候选样本解码文本属于各标准语法结构的第二预测结果;基于第二预测结果,对初始第二语言模型进行训练,得到第二语言模型。

其中,语音样本可以通过语音采集设备采集得到,也可以通过网络下载得到,对此不做过多限制。另外,初始第二语言模型可理解为通过少量样本进行预训练得到的模型,或者也可以为未经过训练的模型。

具体地,在获取到上述语音样本后,可以通过传统的第一遍模型来获取多个候选样本解码文本,并将该获取的多个候选样本解码文本输入至初始第二语言模型中,以得到各候选样本解码文本对应的第二预测结果。具体实现过程可以参见前述实施例的相关描述,在此不再赘述。在得到第二预测结果后,可以对初始第二语言模型进行训练,以调整初始第二语言模型的模型参数,从而可以得到第二语言模型。

在本实施例中,通过将获取的语音样本对应的多个候选样本解码文本输入初始第二语言模型中,得到各候选样本解码文本属于各标准语法结构的第二预测结果。由此,可以依据该第二预测结果,对初始第二语言模型进行训练,以得到更加准确的第二语言模型,这样,后续在采用该第二语言模型进行语音识别时,可以提高语音识别的准确性。

示例性的,在基于第二预测结果,对初始第二语言模型进行训练,得到第二语言模型时,可以采取如下方式进行训练:针对每个候选样本解码文本,基于候选样本解码文本对应的第二预测结果,以及各标准语法结构对应的目标值,确定候选样本解码文本与各标准语法结构之间的损失信息;基于候选样本解码文本与各标准语法结构之间的损失信息,确定候选样本解码文本对应的目标损失;基于各候选样本解码文本对应的目标损失,对初始第二语言模型进行迭代训练,直至达到收敛条件,这样,可以将最终得到的初始第二语言模型作为第二语言模型。

具体地,本发明实施例中可以采用无监督的方法对第二语言模型进行训练。由于第二语言模型的输出层为固定的图结构确定,所以整个第二语言模型可以看作是一个回归模型。因此,在获取到各候选样本解码文本对应的第二预测结果后,可以通过如公式(1)所示的损失函数计算方式,计算出候选样本解码文本与标准语法结构之间的损失信息Loss(l)。

其中,

在此基础上,对获取的候选样本解码文本与各标准语法结构之间的多个损失信息进行加权求和,以得到每个候选样本解码文本对应的目标损失,并根据该目标损失,对初始第二语言模型进行迭代训练,即采用反向传播算法来更新初始第二语言模型中的相关参数,以使该模型重建后的目标损失越来越小,直至达到损失阈值,从而得到第二语言模型。需要说明的是,反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的模型参数。

进一步地,与反向传播相对应的是前向传播,前向传播通常采用特征聚合(消息传递)的方式进行,其过程是沿着图的方向进行的,即从第二层(输入层的后一层)向源点进行消息传递,具体可以通过如下公式(2)表示:

其中,

由此可知,前向传播就是网络中每一层节点经过权重相乘、偏置求和,再通过激活函数,得到输出,并以此输出作为下一层的输入,由此进行正向传递直至最后输出的过程。

在本实施例中,通过各候选样本解码文本属于各标准语法结构的第二预测结果,以及该各标准语法结构所对应的目标值,可以计算出每个候选样本解码文本与各标准语法结构之间的损失信息。由此,可以进一步得到该候选样本解码文本与各标准语法结构之间对应的目标损失,以便基于该目标损失,对初始第二语言模型进行迭代训练,得到更加准确的第二语言模型,从而提高了语音识别的准确性。

下面对本发明实施例提供的语音识别装置进行描述,下文描述的语音识别装置与上文描述的语音识别方法可相互对应参照。

图7为本发明实施例提供的语音识别装置的结构示意图,如图7所示,该装置包括:

输入模块71,用于将待识别语音输入声学模型中,以得到待识别语音对应的音素序列;

所述输入模块71,还用于将音素序列输入第一语言模型中,得到待识别语音对应的多个候选解码文本;

所述输入模块71,还用于将多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果;

确定模块72,用于基于第一预测结果确定待识别语音的识别结果。

可选地,所述输入模块71,具体用于:

针对多个候选解码文本中的各候选解码文本,将候选解码文本输入第二语言模型的输入层,得到候选解码文本的编码特征;

将编码特征输入第二语言模型的中间层,得到特征子图;

将特征子图输入第二语言模型的输出层,得到候选解码文本属于各标准语法结构的第一预测结果。

可选地,所述输入模块71,具体用于:

将特征子图输入第二语言模型的输出层,确定特征子图与各标准语法结构对应的标准编码特征之间的相似度;

基于相似度,确定各候选解码文本属于各标准语法结构的第一预测结果。

可选地,第二语言模型的输出层中包括多个有向图,有向图用于表征标准语法结构。

可选地,所述装置还包括获取模块、输出模块和训练模块;

所述获取模块,用于获取语音样本对应的多个候选样本解码文本;

输出模块,用于在将多个候选样本解码文本输入初始第二语言模型后,输出各候选样本解码文本属于各标准语法结构的第二预测结果;

训练模块,用于基于第二预测结果,对初始第二语言模型进行训练,得到第二语言模型。

可选地,所述训练模块,具体用于:

针对每个候选样本解码文本,基于候选样本解码文本对应的第二预测结果,以及各标准语法结构对应的标准值,确定候选样本解码文本与各标准语法结构之间的损失信息;

基于候选样本解码文本与各标准语法结构之间的损失信息,确定候选样本解码文本对应的目标损失;

基于各候选样本解码文本对应的目标损失,对初始第二语言模型进行迭代训练,得到第二语言模型。

可选地,第一预测结果包括各候选解码文本属于各标准语法结构的打分值;

所述确定模块72,具体用于将各候选解码文本属于各标准语法结构的打分值中,打分值最高的候选解码文本确定为识别结果。

本发明实施例提供的语音识别装置,通过输入模块71将待识别语音输入声学模型中,得到待识别语音对应的音素序列,将音素序列输入第一语言模型中,得到待识别语音对应的多个候选解码文本,以并将得到的多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果,也即得到各候选解码文本的语法结构合理度打分以此根据该第一预测结果,通过确定模块72确定出待识别语音的识别结果。由于词语的词性不同时,对应的语法结构不同,因此,可以通过将多个候选解码文本输入第二语言模型中,并基于第二语言模型中的标准语法结构,预测每个候选解码文本属于各标准语法结构的第一预测结果,这样,可以将多个候选解码文本中语法结构不合理的候选解码文本筛除,得到更加符合标准语法结构的识别结果,避免了最终的识别结果中出现同音但不同词性的词语而导致的语义错误的现象,从而提高了语音识别结果的准确性。

本实施例的装置,可以用于执行上述语音识别装置侧方法实施例中任一实施例的方法,其具体实现过程与技术效果与上述语音识别装置侧方法实施例中类似,具体可以参见上述语音识别装置侧方法实施例中的详细介绍,此处不再赘述。

图8示例了一种电子设备的实体结构示意图之一,如图8所示,该电子设备可以包括:处理器(processor)81、通信接口(Communications Interface)82、存储器(memory)83和通信总线84,其中,处理器81,通信接口82,存储器83通过通信总线84完成相互间的通信。处理器81可以调用存储器83中的逻辑指令,以执行语音识别方法,该方法包括:将待识别语音输入声学模型中,得到待识别语音对应的音素序列;将音素序列输入第一语言模型中,得到待识别语音对应的多个候选解码文本;将多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果;基于第一预测结果确定待识别语音的识别结果。

此外,上述的存储器83中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

图9示例了一种电子设备的实体结构示意图之二,如图9所示,该电子设备可以包括:处理器(processor)91、通信接口(Communications Interface)92、存储器(memory)93和通信总线94,还包括麦克风95,其中,处理器91、通信接口92、存储器93、麦克风95通过通信总线94完成相互间的通信。麦克风95用于采集音频的待处理数据,处理器91可以调用存储器93中的逻辑指令,以执行所述计算机程序中的声学模型、第一语言模型和第二语言模型,将待识别语音输入声学模型中,得到所述待识别语音对应的音素序列;将所述音素序列输入第一语言模型中,得到所述待识别语音对应的多个候选解码文本;将所述多个候选解码文本输入第二语言模型中,得到各所述候选解码文本属于各标准语法结构的第一预测结果;基于所述第一预测结果确定所述待识别语音的识别结果。

此外,上述的存储器93中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的语音识别方法,该方法包括:将待识别语音输入声学模型中,得到待识别语音对应的音素序列;将音素序列输入第一语言模型中,得到待识别语音对应的多个候选解码文本;将多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果;基于第一预测结果确定待识别语音的识别结果。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的语音识别方法,该方法包括:将待识别语音输入声学模型中,得到待识别语音对应的音素序列;将音素序列输入第一语言模型中,得到待识别语音对应的多个候选解码文本;将多个候选解码文本输入第二语言模型中,得到各候选解码文本属于各标准语法结构的第一预测结果;基于第一预测结果确定待识别语音的识别结果。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术分类

06120115935212