语音识别方法、装置和存储介质与流程
2021-01-28 12:01:17|261|起点商标网
[0001]
本公开涉及语音识别技术领域,特别是一种语音识别方法、装置和存储介质。
背景技术:
[0002]
语音识别是语音质检、人机对话等系统中的关键技术,广泛应用于物流、金融及工业等领域。准确的识别率是所有语音系统的关键,比如在对话机器人中,若语音识别准确率较差,那么将无法准确理解说话人的真实意图,进而下达错误的指令。
技术实现要素:
[0003]
本公开的一个目的在于提高语音识别的准确度。
[0004]
根据本公开的一些实施例的一个方面,提出一种语音识别方法,包括:根据当前语句的语音信号获取候选晶格lattice;根据当前语句对应的上文文本重置神经网络模型,其中,上文文本为当前语句的前一句或多句的识别文本,神经网络模型为基于带上文文本的语料样本训练生成;通过重置后的神经网络模型对候选lattice重打分,获取重打分lattice;根据重打分lattice确定当前语句的识别文本。
[0005]
在一些实施例中,语音识别方法还包括:将当前语句的识别文本存入缓存区,以便作为后续语句的上文文本。
[0006]
在一些实施例中,语音识别方法还包括:从缓存区获取当前语句对应的已识别的上文文本。
[0007]
在一些实施例中,根据将当前语句的语音信号获取候选lattice包括:基于声学模型和语言模型,对语音信号进行一遍解码,获取候选lattice。
[0008]
在一些实施例中,根据重打分lattice确定当前语句的识别文本包括:对重打分lattice做声学权重和语言权重分析,获得得分最高的路径的解码结果,作为当前语句的识别文本。
[0009]
在一些实施例中,神经网络模型包括lstm(long-short term memory,长短期记忆)模型或gru(gate recurrent unit,门控循环单元)模型。
[0010]
在一些实施例中,在语音信号为对话的语音信号的情况下,当前语句对应的已识别的上文文本包括当前语句的前一个发言者的最接近当前语句的发言的语音信号。
[0011]
在一些实施例中,语音识别方法还包括:利用带上文的样本训练神经网络模型,直至损失函数的输出收敛,包括:根据当前样本语句的语音信号获取样本候选lattice;根据当前样本语句对应的上文样本文本重置待训练的神经网络模型,其中,上文样本文本为当前样本语句的前一句或多句的样本文本;通过重置后的待训练的神经网络模型对样本候选lattice重打分,获取重打分样本lattice,确定当前样本语句的识别文本;根据当前样本语句的识别文本和当前样本语句的样本文本确定损失函数的输出。
[0012]
通过这样的方法,对当前语句的语音识别能够考虑到上文一句或多句的信息,从而更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
[0013]
根据本公开的另一些实施例的一个方面,提出一种语音识别装置,包括:解码单元,被配置为根据当前语句的语音信号获取候选lattice;重置单元,被配置为根据当前语句对应的已识别的上文文本重置神经网络模型,其中,上文文本为当前语句的前一句或多句的识别文本,神经网络模型为基于带上文文本的语料样本训练生成;重打分单元,被配置为通过重置后的神经网络模型对候选lattice重打分,获取重打分lattice;识别单元,被配置为根据重打分lattice确定当前语句的识别文本。
[0014]
在一些实施例中,语音识别装置还包括:缓存单元,被配置为将当前语句的识别文本存入缓存区,以便作为后续语句的上文文本。
[0015]
在一些实施例中,重置单元还被配置为从缓存区获取当前语句对应的已识别的上文文本。
[0016]
在一些实施例中,解码单元被配置为基于声学模型和语言模型,对语音信号进行一遍解码,获取候选lattice。
[0017]
在一些实施例中,识别单元被配置为对重打分lattice做声学权重和语言权重分析,获得得分最高的路径的解码结果,作为当前语句的识别文本。
[0018]
在一些实施例中,神经网络模型包括lstm模型或gru模型。
[0019]
在一些实施例中,在语音信号为对话的语音信号的情况下,当前语句对应的已识别的上文文本包括当前语句的前一个发言者的最接近当前语句的发言的语音信号。
[0020]
在一些实施例中,语音识别装置还包括:训练单元,被配置为利用带上文的样本训练神经网络模型,直至损失函数的输出收敛。
[0021]
根据本公开的一些实施例的一个方面,提出一种语音识别装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器的指令执行上文中提到的任意一种语音识别方法。
[0022]
这样的装置在对当前语句的语音识别中,能够考虑到上文一句或多句的信息,从而更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
[0023]
根据本公开的一些实施例的一个方面,提出一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现上文中提到的任意一种语音识别方法的步骤。
[0024]
通过执行这样的计算机可读存储介质上的指令,在对当前语句的语音识别中能够考虑到上文一句或多句的信息,从而更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
附图说明
[0025]
此处所说明的附图用来提供对本公开的进一步理解,构成本公开的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
[0026]
图1为本公开的语音识别方法的一些实施例的流程图。
[0027]
图2为本公开的语音识别方法的另一些实施例的流程图。
[0028]
图3为本公开的语音识别装置的一些实施例的示意图。
[0029]
图4为本公开的语音识别装置的另一些实施例的示意图。
[0030]
图5为本公开的语音识别装置的又一些实施例的示意图。
具体实施方式
[0031]
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
[0032]
语音识别系统首先利用简单的语言模型进行快速解码生成lattice网络,然后利用复杂的语言模型对生成的lattice网络重打分以获取更高的识别精度。采用一遍解码得到的语音识别率往往较低,利用大语料训练得到的复杂语言模型重打分后可以进一步提升准确率。重打分所采用的语言模型最先采用高阶n-gram语言模型,后来,神经网络凭借其优越的建模能力,使得采用n-gram语言模型进行lattice重打分的方案被神经网络模型替代。
[0033]
发明人发现,虽然神经网络性能优越,但相关技术中往往是根据前后词之间的关系进行重打分,并未考虑到前后语句之间的逻辑。
[0034]
本公开的语音识别方法的一些实施例的流程图如图1所示。
[0035]
在步骤101中,根据当前语句的语音信号获取候选lattice。
[0036]
在一些实施例中,可以基于声学模型和语言模型,对语音信号进行一遍解码,获取候选lattice。在一些实施例中,可以采用相关技术中任一方式进行一遍解码,获得原始的lattice网络,即作为候选lattice。
[0037]
在步骤102中,根据当前语句对应的已识别的上文文本重置神经网络模型。上文文本可以为当前语句的前一句或多句的识别文本,例如紧邻当前语句的预定数量的语句,或前一段语句。在一些实施例中,段落可以通过语音间隔时间划分,或通过关键词区分。
[0038]
在一些实施例中,步骤101、102的执行顺序可以不分先后。
[0039]
在步骤103中,通过重置后的神经网络模型对候选lattice重打分,获取重打分lattice。在一些实施例中,可以对重打分lattice做声学权重和语言权重分析,获得得分最高的路径的解码结果,作为当前语句的识别文本。
[0040]
在步骤104中,根据重打分lattice确定当前语句的识别文本。
[0041]
通过这样的方法,对当前语句的语音识别能够考虑到上文一句或多句的信息,从而更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
[0042]
在一些实施例中,在语音信号为对话的语音信号的情况下,当前语句对应的已识别的上文文本包括当前语句的前一个发言者的最接近当前语句的发言的语音信号。在一些实施例中,可以根据音色判断发言者发生变化。
[0043]
通过这样的方法,能够充分利用交流过程中的问答逻辑,进一步提高语音识别的准确度。
[0044]
本公开的语音识别方法的另一些实施例的流程图如图2所示。
[0045]
在步骤201中,基于声学模型和低阶语言模型,对语音信号进行一遍解码,获取候选lattice。
[0046]
在步骤202中,从缓存区获取当前语句对应的已识别的上文文本。在一些实施例中,可以在缓存区中按照预定的策略检索对应的上文文本,预定的策略可以包括确定上一个发言者邻近发言的识别文本,或上一句、上一段的识别文本。
[0047]
在步骤203中,根据从缓存区中得到的上文文本重置神经网络模型。
[0048]
在步骤204中,通过重置后的神经网络模型对候选lattice重打分,获取重打分lattice。在一些实施例中,神经网络模型包括lstm模型或gru模型。
[0049]
在步骤205中,对重打分lattice做声学权重和语言权重分析,获得得分最高的路
径的解码结果,作为当前语句的识别文本。
[0050]
在步骤206中,将当前语句的识别文本存入缓存区,以便作为后续语句的上文文本。
[0051]
通过这样的方法,能够及时缓存和管理已识别的文本,以作为对后续语句进行识别的基础;及时的对神经网络模型进行重置,利用上文信息对当前语句进行分析估计,提升语言模型的预测准确性。
[0052]
在一些实施例中,在通过上文中任意一种方法进行语音识别之前,需要对神经网络模型进行训练。训练语料样本需要具备上文。在一些实施例中,可以根据相应的应用场景获取具有上文的训练文本进行训练,当损失函数的结果收敛至稳定时(例如输出的变化小于预定值),神经网络训练结束。在测试阶段,可以根据当前样本语句的语音信号获取样本候选lattice,并通过当前样本语句对应的上文样本文本重置神经网络模型。在一些实施例中,上文样本文本为当前样本语句的前一句或多句的样本文本。通过重置后的待训练的神经网络模型对样本候选lattice重打分,确定最优的识别文本。
[0053]
通过这样的方法,能够基于带上文的语料样本训练神经网络模型,使得生成的神经网络模型具备利用了前后语句之间的逻辑性进行重打分的能力,进一步提高了语音识别的准确度。
[0054]
在利用语音测试数据集测试后发现。通过本公开实施例中的方法,单层lstm神经语言模型的ppl(perplexity,困惑度)由43.2下降至40.05;同时,lattice重打分使得语音识别的准确率绝对提升了0.7%,提升效果明显。
[0055]
本公开的语音识别装置的一些实施例的示意图如图3所示。
[0056]
解码单元301能够根据当前语句的语音信号获取候选lattice。在一些实施例中,可以基于声学模型和语言模型,对语音信号进行一遍解码,获取候选lattice。
[0057]
重置单元302能够根据当前语句对应的已识别的上文文本重置神经网络模型。上文文本可以为当前语句的前一句或多句的识别文本,例如紧邻当前语句的预定数量的语句,或前一段语句。在一些实施例中,段落可以通过语音间隔时间划分,或通过关键词区分。
[0058]
重打分单元303能够通过重置后的神经网络模型对候选lattice重打分,获取重打分lattice。在一些实施例中,可以对重打分lattice做声学权重和语言权重分析,获得得分最高的路径的解码结果,作为当前语句的识别文本。
[0059]
识别单元304能够根据重打分lattice确定当前语句的识别文本。
[0060]
这样的装置在对当前语句的语音识别中,能够考虑到上文一句或多句的信息,从而更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
[0061]
在一些实施例中,如图3所示,语音识别装置还可以包括缓存单元305,能够将当前语句的识别文本存入缓存区,以便作为后续语句的上文文本。重置单元302能够从缓存区获取当前语句对应的已识别的上文文本,并根据得到的上文文本重置神经网络模型。在一些实施例中,可以在缓存区中按照预定的策略检索对应的上文文本,预定的策略可以包括确定上一个发言者邻近发言的识别文本,或上一句、上一段的识别文本。
[0062]
这样的装置能够及时缓存和管理已识别的文本,以作为对后续语句进行识别的基础;及时的对神经网络模型进行重置,利用上文信息对当前语句进行分析估计,提升语言模型的预测准确性。
[0063]
在一些实施例中,如图3所示,语音识别装置还可以包括训练单元306,能够对神经网络模型进行训练,直至损失函数的输出收敛,生成重打分单元303。训练基于的语料样本需要具备上文。在一些实施例中,可以基于初始的如图3所示的语音识别装置进行训练,训练单元306将语料样本输入解码单元301,根据当前样本语句的语音信号获取样本候选lattice;重置单元通过当前样本语句对应的上文样本文本重置待训练的神经网络模型,重打分单元通过重置后的待训练的神经网络模型对样本候选lattice重打分,获取重打分样本lattice,识别单元确定当前样本语句的识别文本;训练单元306根据当前样本语句的识别文本和当前样本语句的样本文本确定损失函数的输出,训练单元306确定输出的变化小于预定值,则确定输出收敛,神经网络模型的训练完成。
[0064]
这样的装置能够基于带上文的语料样本训练神经网络模型,使得生成的神经网络模型具备利用了前后语句之间的逻辑性进行重打分的能力,进一步提高了语音识别的准确度。
[0065]
本公开语音识别装置的一个实施例的结构示意图如图4所示。语音识别装置包括存储器401和处理器402。其中:存储器401可以是磁盘、闪存或其它任何非易失性存储介质。存储器用于存储上文中语音识别方法的对应实施例中的指令。处理器402耦接至存储器401,可以作为一个或多个集成电路来实施,例如微处理器或微控制器。该处理器402用于执行存储器中存储的指令,能够更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
[0066]
在一个实施例中,还可以如图5所示,语音识别装置500包括存储器501和处理器502。处理器502通过bus总线503耦合至存储器501。该语音识别装置500还可以通过存储接口504连接至外部存储装置505以便调用外部数据,还可以通过网络接口506连接至网络或者另外一台计算机系统(未标出)。此处不再进行详细介绍。
[0067]
在该实施例中,通过存储器存储数据指令,再通过处理器处理上述指令,能够更加充分的利用先验信息,使重打分更加准确,提高语音识别的准确率。
[0068]
在另一个实施例中,一种计算机可读存储介质,其上存储有计算机程序指令,该指令被处理器执行时实现语音识别方法对应实施例中的方法的步骤。本领域内的技术人员应明白,本公开的实施例可提供为方法、装置、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0069]
本公开是参照根据本公开实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0070]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0071]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0072]
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
[0073]
可能以许多方式来实现本公开的方法以及装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法以及装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
[0074]
最后应当说明的是:以上实施例仅用以说明本公开的技术方案而非对其限制;尽管参照较佳实施例对本公开进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本公开的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本公开技术方案的精神,其均应涵盖在本公开请求保护的技术方案范围当中。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除
热门咨询
tips