一种语音识别方法、装置、设备及介质与流程
2021-01-28 17:01:42|305|起点商标网
本发明实施例涉及信息处理领域,尤其涉及一种语音识别方法、装置、设备及介质。
背景技术:
:随着网络技术的不断发展,语音识别的应用也越来越广泛,如在语音智能客服的应答场景下,可以通过语音应答交互,达到语音机器人在应答场景下解决用户问题的目的。实现语音智能客服的应答包括:将用户输入的语音转文字,基于语音转文字结果识别用户意图,基于用户意图获取与文字对应的应答文本,然后将应答文本转语音进行播报应答。目前语音转文字的主要方式为:通过采集语音样本,对语音样本中的特征进行标注,然后基于深度学习的算法(如循环神经网络、卷机神经网络等)训练模型,得到训练好的语音识别模型,通过训练好的语音识别模型进行语音的实时识别,将语音转为文字。在实现本发明的过程中,发明人发现现有技术中至少存在以下技术问题:使用通用语音语料训练,会导致识别结果相对固定,但是由于用户的口音和中文表述的特点以及背景噪音或用户口述的音量变化,造成比如近音词识别错误、识别漏词等问题,导致语音转文字结果有误,进而基于语音转文字结果的用户意图识别与用户实际意图不一致,导致应答不准确,且用户表述千变万化,训练出适用于所有用户的模型不易实现。技术实现要素:本发明实施例提供了一种语音识别方法、装置、设备及介质,以实现提高语音识别的准确率,进而提高语音智能客服的应答准确度。第一方面,本发明实施例提供了一种语音识别方法,包括:获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;对所述原始拼音数据进行校正,得到待匹配拼音数据;将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据。第二方面,本发明实施例还提供了一种语音识别装置,包括:拼音数据获取模块,用于获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;拼音数据校准模块,用于对所述原始拼音数据进行校正,得到待匹配拼音数据;文本数据确定模块,用于将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据。第三方面,本发明实施例还提供了一种计算机设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任意实施例所提供的语音识别方法。第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的语音识别方法。本发明实施例通过获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;对所述原始拼音数据进行校正,得到待匹配拼音数据;将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据,通过对原始拼音数据进行校正,基于校正后的语音数据进行识别,提高了语音识别的准确率,进而提高了语音智能客服的应答准确度。附图说明图1是本发明实施例一所提供的一种语音识别方法的流程图;图2是本发明实施例二所提供的一种语音识别方法的流程图;图3a是本发明实施例三所提供的一种语音识别方法的流程图;图3b是本发明实施例三所提供的一种智能客服系统的结构示意图;图3c是本发明实施例三提供的一种智能客服应答方法的流程示意图;图3d是本发明实施例三所提供的一种语音识别方法中无向检索图的示意图;图3e是本发明实施例三所提供的一种语音识别方法中双向匹配方法的示意图;图4是本发明实施例四所提供的一种语音识别装置的结构示意图;图5是本发明实施例五所提供的计算机设备的结构示意图。具体实施方式下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。实施例一图1是本发明实施例一所提供的一种语音识别方法的流程图。本实施例可适用于识别语音数据时的情形,尤其适用于语音智能客服进行语音应答时的情形。该方法可以由语音识别装置执行,该语音识别装置可以采用软件和/或硬件的方式实现,例如,该语音识别装置可配置于计算机设备中。如图1所示,所述方法包括:s110、获取待识别语音数据,确定待识别语音数据对应的原始拼音数据。在本实施例中,待识别语音数据可以为用户通过语音输入的问题信息。为了使语音识别结果更加准确,本实施例中通过根据拼音数据对初始识别结果进行校正,基于校正后的拼音数据确定最终识别结果。可选的,在获取到语音形式的问题信息(待识别语音数据)后,可以通过现有的将语音数据转化为文字信息的语音识别模型,将待识别语音数据输入至语音识别模型中,获取语音识别模型输出的文字形式的数据,然后通过拼音转换工具将文字形式的数据转化为待识别语音数据对应的原始拼音数据。可选的,还可以训练将待识别语音数据转化为拼音数据的拼音数据识别模型,在获取到语音形式的问题信息后,将待识别语音数据输入至训练好的拼音数据识别模型中,得到待识别语音数据对应的原始拼音数据。一个实施例中,当先将待识别语音数据转化为文字形式的数据,再将文字形式的数据转化为拼音形式的数据时,在将文字形式的数据转化为拼音形式的数据之前,可以对文字形式的数据进行泛化处理,将文字形式的数据中的实体词泛化,将泛化后的文字形式的数据转化为拼音形式的数据,得到待识别语音数据对应的原始拼音数据。示例性的,若待识别语音数据对应的文字形式的数据为“我买的手机什么时候到”,对文字形式的数据进行泛化处理,将其中的实体词“手机”泛化为“prodsort”,得到泛化后的文字形式的数据“我买的prodsort什么时候到”,将泛化后的文字形式的数据转化为拼音形式的数据,得到待识别语音数据对应的原始拼音数据“womaideprodsortshenmeshihoudao”。一个实施例中,若通过训练好的拼音数据识别模型将待识别语音数据转化为原始拼音数据,可以预先获取样本待识别语音数据和样本待识别语音数据对应的原始拼音数据,基于样本待识别语音数据和样本待识别语音数据对应的原始拼音数据形成拼音数据识别样本对,使用拼音数据识别样本对对预先构建的语音识别模型进行训练,得到训练好的语音数据识别模型。s120、对所述原始拼音数据进行校正,得到待匹配拼音数据。考虑到同样的拼音数据可以表示不同的文字数据,为了简化校正过程,在本实施例中,通过语音数据对初始识别结果进行校正。可选的,对原始拼音数据进行校正可以为:将原始拼音数据中的错误拼音校正为标准拼音。可以预先将高频易错近音拼音进行人工整理,梳理出错误拼音与标准拼音之间的映射关系,将梳理出的映射关系作为拼音近音表,基于预先设定的拼音近音表对原始拼音数据进行校正。在本发明的一种实施方式中,所述对所述原始拼音数据进行校正,得到待匹配拼音数据,包括:根据预先设定的拼音近音表,确定所述原始拼音数据中包含的错误拼音作为待校正拼音;其中,所述拼音近音表中存储有至少一个错误拼音与标准拼音之间的对应关系;将所述原始拼音数据中包含的待校正拼音校正为所述待校正拼音对应的标准拼音,得到所述待匹配拼音数据。可选的,遍历原始拼音数据,确定原始拼音数据中包含的与预先设定的拼音近音表中错误拼音相同的待校正拼音,根据拼音近音表确定待校正拼音对应的标准拼音,将原始拼音数据中的待校正拼音校正为与待校正拼音对应的标准拼音。示例性的,若原始拼音数据为“wodeprodsortdaolale”,通过查找预先设定的拼音近音表,确定原始拼音数据中包含的错误拼音为“la”,且该错误拼音对应的标准拼音为“na”,则将原始拼音数据中的“la”作为待校正拼音,并将“la”校正为其对应的标准拼音“na”,得到待匹配拼音数据“wodeprodsortdaonale”。s130、将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据。在本实施例中,通过标准拼音序列进行判断待校正拼音数据的校正是否准确。可选的,可以预先人工梳理出包含有高频易错近音拼音的高频易错句子,将高频易错句子的标准描述进行泛化后,转化为拼音格式的数据,得到高频易错句子的标准拼音数据,基于各高频易错句子的标准拼音数据构建出由拼音节点组成的标准拼音序列。一个实施例中,可以将待匹配拼音数据与预先构建的标准拼音序列进行匹配,若能够匹配到与待匹配拼音数据相匹配的目标标准拼音序列,说明对原始拼音数据的校正准确,将目标标准拼音序列对应的文本数据作为待识别语音数据对应的文本数据。若不能匹配到与待匹配拼音数据相匹配的目标标准拼音序列,则表示对原始拼音数据的校正不准确,将原始拼音数据对应的文本数据作为待识别语音数据对应的文本数据。本发明实施例通过获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;对所述原始拼音数据进行校正,得到待匹配拼音数据;将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据,通过对原始拼音数据进行校正,基于校正后的语音数据进行识别,提高了语音识别的准确率,进而提高了语音智能客服的应答准确度。实施例二图2是本发明实施例二所提供的一种语音识别方法的流程图。本实施例在上述实施例的基础上进行了优化。如图2所示,所述方法包括:s210、获取待识别语音数据,确定待识别语音数据对应的原始拼音数据。s220、对原始拼音数据进行校正,得到待匹配拼音数据。s230、确定待匹配拼音数据中的匹配节点,通过将匹配节点与标准拼音序列中的标准拼音节点进行匹配,确定与待匹配拼音数据相匹配的目标标准拼音序列。在本实施例中,标准拼音序列是由标准拼音节点构成的序列,为了将待匹配拼音数据与标准拼音序列进行匹配,需要确定待匹配拼音数据中的匹配节点,按照节点数据将待匹配拼音数据中的匹配节点与标准拼音序列中的匹配节点依次进行匹配,得到与待匹配拼音数据相匹配的目标标准拼音序列。可选的,可以先确定与待匹配拼音数据中的首位匹配节点相匹配的首位标准拼音节点,然后将首位匹配节点之后的第二匹配节点与和首位标准拼音节点相连接的标准拼音节点进行匹配,得到与第二匹配节点相匹配的第二标准拼音节点,依次匹配,得到与待匹配拼音数据中各匹配节点相匹配的标准拼音节点,将标准拼音节点构成的序列作为与待匹配拼音数据相匹配的目标标准拼音序列。示例性的,可以通过完全匹配的方式得到与待匹配拼音数据相匹配的目标标准拼音序列。假设待匹配拼音数据为“womaideprodsortdaonale”,则确定待匹配拼音数据中的匹配节点,如“wo”、“mai”、“de”、“prodsort”、“dao”、“na”、“le”,顺序将匹配节点与标准拼音节点匹配,确定与匹配节点相匹配的,且与该匹配节点的上一匹配节点相匹配的标准拼音节点相连接的标准拼音节点。确定与匹配节点“wo”相匹配的标准拼音节点“wo”;与匹配节点“mai”相匹配的,且与标准拼音节点“wo”相连接的标准拼音节点“mai”;与匹配节点“de”相匹配的,且与标准拼音节点“mai”相连接的标准拼音节点“de”;与匹配节点“prodsort”相匹配的,且与标准拼音节点“de”相连接的标准拼音节点“prodsort”;与匹配节点“dao”相匹配的,且与标准拼音节点“prodsort”相连接的标准拼音节点“dao”;与匹配节点“na”相匹配的,且与标准拼音节点“dao”相连接的标准拼音节点“na”;与匹配节点“le”相匹配的,且与标准拼音节点“na”相连接的标准拼音节点“le”,将标准拼音节点“wo”、“mai”、“de”、“prodsort”、“dao”、“na”、“le”构成的序列“womaideprodsortdaonale”作为目标标准拼音序列。考虑到用于表达习惯或语音录入时可能会导致丢字的情况,使得待匹配拼音数据相对于标准拼音序列出现丢字的情形,在本实施例中,可以采用双向匹配算法,通过补充匹配的方式,确定与待匹配拼音数据相匹配的目标标准拼音序列。在本发明的一种实施方式中,所述确定所述待匹配拼音数据中的匹配节点,通过将所述匹配节点与所述标准拼音序列中的标准拼音节点进行匹配,确定与所述待匹配拼音数据相匹配的目标标准拼音序列,包括:将所述待匹配拼音数据中的每个拼音作为一个匹配节点;使用双向匹配算法将所述匹配节点与所述标准拼音序列中的标准拼音节点进行匹配,根据匹配结果得到所述目标标准拼音序列。可选的,双向匹配算法可以通过正向和/或反向进行节点的匹配,一般的,先通过正向匹配确定与待匹配拼音数据中匹配节点相匹配的标准拼音节点。假设匹配节点包括第一匹配节点、第二匹配节点和第三匹配节点,且通过正向匹配得到与第一匹配节点相匹配的第一标准拼音节点,与第二匹配节点相匹配的,且与第一标准拼音节点相连接的第二标准拼音节点,但无法匹配到与第三匹配节点相匹配的,且与第二匹配节点相连接的第三匹配节点,则可以查找标准拼音序列中与第二匹配节点相连接的所有第一候选拼音节点,然后查找与标准拼音节点中与第三匹配节点相匹配的第三标准拼音节点,然后判断第一候选拼音节点中是否存在与第三标准拼音节点相连接的第四标准拼音节点,若第一候选拼音节点中存在与第三标准拼音节点相连接的第四标准拼音节点,则将第一标准拼音节点、第二标准拼音节点、第四标准拼音节点、第三标准拼音节点顺序组成的标准拼音序列作为与待匹配拼音数据相匹配的目标标准拼音序列;若第一候选拼音节点中不存在与第三标准拼音节点相连接的第四标准拼音节点,则获取标准拼音序列中与第三标准拼音节点相连接的第二候选拼音节点,判断是否存在与第一候选拼音节点中的标准拼音节点相连接的第二候选拼音节点,若第一候选拼音节点中的第五标准拼音节点与第二候选拼音节点中的第六标准拼音节点相连接,则将第一标准拼音节点、第二标准拼音节点、第五标准拼音节点、第六标准拼音节点和第三标准拼音节点顺序组成的标准拼音序列作为与待匹配拼音数据相匹配的目标标准拼音序列。在本发明的一种实施方式中,所述使用双向匹配算法将所述匹配节点与所述标准拼音序列中的标准拼音节点进行匹配,根据匹配结果得到所述目标标准拼音序列,包括:使用所述双向匹配算法将所述匹配节点与所述标准拼音节点进行匹配,得到至少一个候选标准拼音序列;针对每个所述候选标准拼音序列,根据所述候选标准拼音序列的序列热度值以及所述候选标准拼音序列中每个拼音的拼音热度值确定所述候选标准拼音序列的权值,其中,所述序列热度值用于表征所述标准拼音序列的使用频率,所述拼音热度值用于表征所述拼音的使用频率;将权值最大的候选标准拼音序列作为所述目标标准拼音序列。在本实施例中,得到的与待匹配拼音数据相匹配的标准拼音序列可能为多个,可以通过计算各标准拼音序列的权值,将权值最大的标准拼音序列作为与待匹配拼音数据相匹配的目标标准拼音序列。示例性的,假设与待匹配拼音数据相匹配的标准拼音序列包括候选标准拼音序列1、候选标准拼音序列2和候选标准拼音序列3,候选标准拼音序列1的权值为0.89,候选标准拼音序列2的权值为0.65,候选标准拼音序列3的权值为0.78,则将权值最大的候选标准拼音序列1作为目标标准拼音序列。可选的,得到与待匹配拼音数据相匹配的多个候选标准拼音序列后,针对每个候选标准拼音序列,根据该候选标准拼音序列的序列热度值和候选标准拼音序列中每个拼音的拼音热度值计算该候选标准拼音序列的权值。其中,候选标准拼音序列的序列热度值可以为候选标准拼音序列作为目标标准拼音序列的次数,拼音的拼音热度值可以为该拼音存在于目标标准拼音序列中的次数。由于拼音热度值可以表示拼音的使用频率,序列热度值可以表示标准拼音序列的使用频率,因此基于拼音热度值和序列热度值计算出的候选标准拼音序列的权值能够较准确的筛选出与待匹配拼音数据相匹配的目标标准拼音序列。在本实施例中,可以首先计算候选标准拼音序列中每个拼音的权值,基于候选标准拼音序列中各个拼音的权值计算候选标准拼音序列的权值。示例性的,可以通过f(i)=((hw+1)/h(i)+1)*(1+log10(h(i)+1))计算候选标准拼音序列中每个拼音的权值,通过w=f(1)*f(2)*……f(n)计算候选标准拼音序列的权值。其中,f(i)表示候选标准拼音序列中第i个拼音的权值,hw表示候选标准拼音序列的序列热度值,h(i)表示候选标准拼音序列中第i个拼音的拼音热度值,w表示候选标准拼音序列的权值,n为候选标准拼音序列中拼音的总个数。在本实施例中,在确定目标标准拼音序列之后,还包括:更新所述目标标准拼音序列中每个拼音的拼音热度值以及所述目标标准拼音序列的序列热度值。为了使候选标准拼音序列的权值计算准确,在确定目标标准拼音序列后,需要更新目标标准拼音序列中每个拼音的拼音热度值以及目标标准拼音序列的序列热度值。具体的,将目标标准拼音序列中每个拼音的拼音热度值加1,将目标标准拼音序列的序列热度值加1。s240、将目标标准拼音序列对应的文本数据作为待识别语音数据对应的文本数据。确定目标标准拼音序列后,将目标标准拼音序列对应的文本数据作为待识别语音数据对应的文本数据。示例性的,若目标标准拼音序列为“womaideprodsortdaonale”,则将目标标准拼音序列对应的文本数据“我买的prodsort到哪了”作为待识别语音数据对应的文本数据。在本发明的一种实施方式中,还包括:若所述标准拼音序列中不存在与所述待匹配拼音数据相匹配的目标标准拼音序列,则将所述原始拼音数据对应的文本数据作为所述待识别语音数据对应的文本数据。若通过完全匹配的方式和补充匹配的方式均无法得到与待匹配拼音数据相匹配的目标标准拼音序列,即标准拼音序列中不存在和待匹配拼音数据相匹配的目标标准拼音序列,则说明对原始拼音数据的校正有误,使用原始拼音数据对应的文本数据作为待识别语音数据对应的文本数据。本发明实施例的技术方案,将将待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定待识别语音数据对应的文本数据进行了具体化,通过确定待匹配拼音数据中的匹配节点,通过将匹配节点与标准拼音序列中的标准拼音节点进行匹配,确定与待匹配拼音数据相匹配的目标标准拼音序列;将目标标准拼音序列对应的文本数据作为所述待识别语音数据对应的文本数据,使得匹配结果更加准确,进而提高了语音识别结果。在上述方案的基础上,在得到至少一个候选标准拼音序列之后、针对每个所述候选标准拼音序列确定所述候选标准拼音序列的权值之前,还包括:针对每个所述候选标准拼音序列,将所述候选标准拼音序列与所述待匹配拼音数据进行比对,确定所述候选标准拼音序列与所述待匹配拼音数据之间的差异值;若所述候选标准拼音序列与所述待匹配拼音数据之间的差异值大于预设差异阈值,则将所述候选标准拼音序列进行删除。可选的,通过双向匹配的方式得到的与待匹配拼音数据相匹配的候选标准拼音序列可能与待匹配拼音数据差异较大,在得到与待匹配拼音数据相匹配的候选标准拼音序列后,可以对候选标准拼音序列进行筛选。具体的,可以预先设定差异阈值,在得到候选标准拼音序列后,计算候选标准拼音序列与待匹配拼音序列之间的差异值,将与待匹配拼音序列之间的差异值大于差异阈值的候选标准拼音序列删除。其中,差异阈值可以根据实际需求设定。可选的,差异阈值可以为0.5。示例性的,若候选标准拼音序列包括候选标准拼音序列1、候选标准拼音序列2和候选标准拼音序列3,差异阈值为0.5,候选标准拼音序列1与待匹配拼音序列之间的差异值为0.4,候选标准拼音序列2与待匹配拼音序列之间的差异值为0.5,候选标准拼音序列3与待匹配拼音序列之间的差异值为0.7,则将与待匹配拼音序列之间的差异值大于差异阈值0.5的候选标准拼音序列3删除。可选的,可以通过c=m/n计算候选标准拼音序列与待匹配拼音序列之间的差异值。其中,c为候选标准拼音序列与待匹配拼音序列之间的差异值,m为候选标准拼音序列与待匹配拼音序列之间不同的拼音个数,n为待匹配拼音序列的拼音总个数。实施例三图3a是本发明实施例三所提供的一种语音识别方法的流程图。本实施例在上述实施例的基础上,以语音智能客服为例,提供了一种优选实施例。在本实施例中,基于语音识别结果,利用人工梳理的近音拼音词典和易错句子,生成无向检索图(标准拼音序列),从而动态纠正语音识别结果,达到正确识别用户意图的目的。本发明实施例提供的语音识别方法可以由智能客服系统执行。图3b是本发明实施例三所提供的一种智能客服系统的结构示意图。如图3b所示,智能客服系统包括语音识别模块(automaticspeechrecognition,asr)310、识别纠正模块320、自然语音处理模块(naturallanguageprocessing,nlp)340和语音合成模块(texttospeech,tts),其中语音合成模块图中未示出。语音智能客服的实现主要为:通过语音识别模块310自动语音识别技术将用户语音转文字,然后将文字传入识别纠正模块320得到文字识别结果,将文字识别结果传入自然语言处理模块进行处理应答,最后将应答文本通过语音合成模块将文字转为语音进行播报应答。其中,识别纠正模块320包括近音拼音词典331、无向图匹配模块332、易错句子无向图333和句子及字的热度表334四个部分。近音拼音词典331用于建立近音拼音词典,易错句子无向图333用于建立易错句子无向检索图,句子及字的热度表334用于存储句子及字的热度表,无向图匹配模块332用于将正确拼音和易错句子无向图进行匹配,得到匹配结果。图3c是本发明实施例三提供的一种智能客服应答方法的流程示意图。如图3c所示,配置高频易错句子,将高频易错句子进行泛化、句子转拼音、初始化无向图、初始化热度表后,生成句子及词的热度表,以及无向检索图。当接收到用户口述的语音信息时,通过asr将语音信息转文字,将文字进行泛化处理后,基于预先构建的近音拼音词典将句子转正确拼音,然后在无向图中检索与正确拼音匹配的匹配结果。具体的,在无向图中检索正确拼音中包含的所有拼音是否均存在于无向图中,若正确拼音中包含的所有拼音未均存在于无向图中,则返回原句,以使nlu模块根据原句进行意图识别及文字应答,通过tts将文字应答转为语音应答后反馈给用户。若正确拼音中包含的所有拼音均存在于无向图中,则使用双向匹配算法进行匹配,并得到包含有正确拼音的所有匹配序列,计算各匹配序列与正确拼音的差异值,将差异值大于设定阈值的匹配序列删除,将其余匹配序列作为匹配结果,计算各匹配结果的权值,将权值最高的匹配结果输出至nlu模块,以使nlu模块根据权值最高的匹配结果进行意图识别及文字应答,通过tts将文字应答转为语音应答后反馈给用户。下面将对本实施例提供的语音识别方法进行详细说明。如图3a所示,本实施例提供的语音识别方法包括:s310、建立近音拼音词典。将高频易错近音拼音进行人工整理,梳理出常见错词拼音和正确近音拼音之间的映射关系,存入近音拼音词典,放入数据库。表1中示例性的示出了近音拼音词典中包含的映射关系。如表1所示,常见错词拼音包括“la”和“wang”,“la”对应的正确近音拼音为“na”,“wang”对应的正确近音拼音为“huang”。表1常见错词拼音正确近音拼音lanawanghuangs320、建立易错句子无向检索图。由人工梳理出高频易错句子的标准描述,将其泛化之后,将所有文字转为拼音存入无向图,例如:使用tinypinyin工具将文字转为拼音。表2中示例性的示出了原句、泛化后的文本和拼音之间的对应关系。将原句转化为拼音后,将单个字的拼音作为节点,将拼接的拼音短句,按正向顺序构建无向检索图。图3d是本发明实施例三所提供的一种语音识别方法中无向检索图的示意图。如图3d所示,将拼音短句中相邻的拼音节点相连接,构成了包含连接关系的无向检索图。表2s330、初始化句子及字的热度表。将易错句子的热度和句子中单个字的热度进行初始化。可选的,可以将每个句子的句子热度值以及每个字的字热度值的初始值设置为0。表3中示意性的示出了句子中字的热度值以及句子热度值的表示方式。如表3所示,句子“我买的prodsort什么时候到”的句子热度值为1,该句中字“我”的热度值为3,“买”的热度值为2,“的”的热度值为3,“prodsort”的热度值为3,“什”的热度值为2,“么”的热度值为2,“时”的热度值为2,“候”的热度值为2,“到”的热度值为2。表3s340、将用户问题转换为正确拼音。将用户问题经过泛化之后,转换为拼音,并匹配近音词表,获取正确近音拼音。例如:使用tinypinyin工具将文字转为拼音,并匹配近音拼音表,获取正确拼音。表4示意性的示出了将原句、泛化后的语句、拼音以及正确拼音的对应关系。表4s350、采用双向匹配算法,检索无向检索图,得到至少一个匹配结果。首先确保所有拼音存在于无向检索图中,如果有任何拼音不存在于无向检索图中,则匹配失败,直接返回原字符串;如果都存在,将正确拼音序列,按照双向匹配算法,依次遍历无向检索图,通过完全匹配和补充匹配的方式,将所有匹配结果返回,并将匹配到的拼音替换为无向检索图中的文字序列。一个实施例中,若待匹配正确拼音为“wodeprodsortdaonale”。首先检查待匹配正确拼音中的拼音是否完全存在于无向检索图中,检查结果为待匹配正确拼音中的拼音完全存在于无向检索图中;然后,从头“wo”和尾“le”开始匹配,正反向都完全匹配到无向图拼音序列“wo-de-prodsort-dao-na-le”。此时再次检查,任何包含当前序列的所有组合,将其它的整句可能性结果列出,如“wodeprodsortdaonale”、“womaideprodsortdaonale”,并返回对应的文字序列“我的prodsort到哪了”、“我买的prodsort到哪了”;最后过滤改动大于50%的匹配结果,上述两个结果改动都未大于50%(0/6,1/6),全部返回。一个实施例中,若待匹配正确拼音为“wodeprodsortshenmefa”。首先检查待匹配正确拼音中的拼音是否完全存在于无向检索图中,检查结果为待匹配正确拼音中的拼音完全存在于无向检索图中;然后从头“wo”和尾“fa”开始匹配,找出一个连通的序列,图3e是本发明实施例三所提供的一种语音识别方法中双向匹配方法的示意图。其中实线单向箭头表示正向匹配流程,虚线单向线头表示反向匹配流程,实线双向箭头表示正向匹配和反向匹配尝试匹配成功。如图3e所示,正向匹配wo-de-prodsort-shen-me-fa结束,反向匹配fa-me结束;此时将正向匹配的序列从图中选择下一个节点尝试匹配wo-de-prodsort-shen-me-shi,将反向匹配的序列从图中选择下一节点尝试匹配fa-hou,结果shi和hou之间有路径相连,则完全匹配到连通的无向图序列:wo-de-prodsort-shen-me-shi-hou-fa;如果没有连通的序列直接返回原有源字符串;此时再次判断是否存在任何包含当前序列的所有组合,得到其它的整句:“womaideprodsortshenmeshihoufa”、“womaideprodsortshenmeshihoufahuo”、“wodeprodsortshenmeshihoufa”、“wodeprodsortshenmeshihoufahuo”,并返回拼音序列对应的文字“我买的prodsort什么时候发”、“我买的prodsort什么时候发货”、“我的prodsort什么时候发”、“我的prodsort什么时候发货”。最后过滤改动大于50%的匹配结果,上述结果中最后一个拼音序列改动为4/6,大于50%,将其删除,讲其他序列全部返回。通过正反向匹配寻找连通序列时,尝试的节点正反向各尝试了一层一共两层,且可能每层有多个节点,需要穷举所有组合,多次匹配,找出所有连通序列,若所有组合尝试后均未完全匹配,直接放弃匹配,返回原文。需要说明的是,此处尝试的层级设置了阈值,最多尝试两层,层级太多影响匹配性能;比如上述示例中的“shi”和“hou”之间若无任何连通路径,则不会进一步尝试“shi”和“hou”的下一层级节点。s360、计算匹配结果的整句权值,将权值最大的匹配结果作为输出句。可以通过f(i)=((hw+1)/h(i)+1)*(1+log10(h(i)+1))计算候选标准拼音序列中每个拼音的权值,通过w=f(1)*f(2)*……f(n)计算候选标准拼音序列的权值。其中,f(i)表示候选标准拼音序列中第i个拼音的权值,hw表示候选标准拼音序列的序列热度值,h(i)表示候选标准拼音序列中第i个拼音的拼音热度值,w表示候选标准拼音序列的权值,n为候选标准拼音序列中拼音的总个数。表5表5示意性的示出了原句、匹配句子、整句权值计算以及输出句之间的对应关系。如表5所示,原句“我的prodsort到拉了”对应的匹配句子包括“我的prodsort到哪了”以及“我买的prodsort到哪了”,“我的prodsort到哪了”的权值为0.848,“我买的prodsort到哪了”的权值为0.006,则将“我的prodsort到哪了”作为其对应的输出句,并基于该输出句确定应答方式。s370、更新字热度和句子热度。将输出句中的字热度全部加一,将输出句热度加一。表6示意性的示出了字热度和句子热度更新后的热度表。表6本发明实施例针对语音转文字出现近音词识别错误、识别漏词错误进而导致用户意图识别错误的问题,加入了人工可配置的高频易错句子无向检索图,通过无向图双向匹配以及匹配结果基于权值排序的方式,修复了高频的语音识别错误问题,适应了不断变化的售后场景需求,解决了现有技术中语音识别模型训练周期长的问题,并且本实施例可通过调整高频易错句子配置来达到动态适配的目的,实现了高频易错句子纠错,达到提高用户意图识别准确率和召回率的目的,提升了用户体验。实施例四图4是本发明实施例四所提供的一种语音识别装置的结构示意图。该语音识别装置可以采用软件和/或硬件的方式实现,例如该语音识别装置可以配置于计算机设备中。如图4所示,所述装置包括拼音数据获取模块410、拼音数据校准模块420和文本数据确定模块430,其中:拼音数据获取模块410,用于获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;拼音数据校准模块420,用于对所述原始拼音数据进行校正,得到待匹配拼音数据;文本数据确定模块430,用于将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据。本发明实施例通过拼音数据获取模块获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;拼音数据校准模块对所述原始拼音数据进行校正,得到待匹配拼音数据;文本数据确定模块将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据,通过对原始拼音数据进行校正,基于校正后的语音数据进行识别,提高了语音识别的准确率,进而提高了语音智能客服的应答准确度。在上述方案的基础上,所述拼音数据校准模块420具体用于:根据预先设定的拼音近音表,确定所述原始拼音数据中包含的错误拼音作为待校正拼音;其中,所述拼音近音表中存储有至少一个错误拼音与标准拼音之间的对应关系;将所述原始拼音数据中包含的待校正拼音校正为所述待校正拼音对应的标准拼音,得到所述待匹配拼音数据。在上述方案的基础上,所述文本数据确定模块430包括:目标序列确定单元,用于确定所述待匹配拼音数据中的匹配节点,通过将所述匹配节点与所述标准拼音序列中的标准拼音节点进行匹配,确定与所述待匹配拼音数据相匹配的目标标准拼音序列;文本数据确定单元,用于将所述目标标准拼音序列对应的文本数据作为所述待识别语音数据对应的文本数据。在上述方案的基础上,所述目标序列确定单元包括:匹配节点确定子单元,用于将所述待匹配拼音数据中的每个拼音作为一个匹配节点;双向匹配子单元,用于使用双向匹配算法将所述匹配节点与所述标准拼音序列中的标准拼音节点进行匹配,根据匹配结果得到所述目标标准拼音序列。在上述方案的基础上,所述双向匹配子单元具体用于:使用所述双向匹配算法将所述匹配节点与所述标准拼音节点进行匹配,得到至少一个候选标准拼音序列;针对每个所述候选标准拼音序列,根据所述候选标准拼音序列的序列热度值以及所述候选标准拼音序列中每个拼音的拼音热度值确定所述候选标准拼音序列的权值,其中,所述序列热度值用于表征所述标准拼音序列的使用频率,所述拼音热度值用于表征所述拼音的使用频率;将权值最大的候选标准拼音序列作为所述目标标准拼音序列。在上述方案的基础上,所述双向匹配子单元还用于:在得到至少一个候选标准拼音序列之后、针对每个所述候选标准拼音序列确定所述候选标准拼音序列的权值之前,针对每个所述候选标准拼音序列,将所述候选标准拼音序列与所述待匹配拼音数据进行比对,确定所述候选标准拼音序列与所述待匹配拼音数据之间的差异值;若所述候选标准拼音序列与所述待匹配拼音数据之间的差异值大于预设差异阈值,则将所述候选标准拼音序列进行删除。在上述方案的基础上,所述文本数据确定模块430还用于:若所述标准拼音序列中不存在与所述待匹配拼音数据相匹配的目标标准拼音序列,则将所述原始拼音数据对应的文本数据作为所述待识别语音数据对应的文本数据。在上述方案的基础上,所述装置还包括:热度值更新模块,用于更新所述目标标准拼音序列中每个拼音的拼音热度值以及所述目标标准拼音序列的序列热度值。本发明实施例所提供的语音识别装置可执行任意实施例所提供的语音识别方法,具备执行方法相应的功能模块和有益效果。实施例五图5是本发明实施例五所提供的计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备512的框图。图5显示的计算机设备512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图5所示,计算机设备512以通用计算设备的形式表现。计算机设备512的组件可以包括但不限于:一个或者多个处理器516,系统存储器528,连接不同系统组件(包括系统存储器528和处理器516)的总线518。总线518表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器516或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。计算机设备512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。系统存储器528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)530和/或高速缓存存储器532。计算机设备512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储装置534可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cdrom,dvdrom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储器528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如存储器528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。计算机设备512也可以与一个或多个外部设备514(例如键盘、指向设备、显示器524等)通信,还可与一个或者多个使得用户能与该计算机设备512交互的设备通信,和/或与使得该计算机设备512能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口522进行。并且,计算机设备512还可以通过网络适配器520与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器520通过总线518与计算机设备512的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备512使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。处理器516通过运行存储在系统存储器528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的语音识别方法,该方法包括:获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;对所述原始拼音数据进行校正,得到待匹配拼音数据;将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据。当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的语音识别方法的技术方案。实施例六本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的语音识别方法,该方法包括:获取待识别语音数据,确定待识别语音数据对应的原始拼音数据;对所述原始拼音数据进行校正,得到待匹配拼音数据;将所述待匹配拼音数据与预先构建的标准拼音序列进行匹配,根据匹配结果确定所述待识别语音数据对应的文本数据。当然,本发明实施例所提供的一种计算机可读存储介质,其上存储的计算机程序不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的语音识别方法中的相关操作。本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cdrom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。当前第1页1 2 3 
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除
相关标签: 语音识别技术
热门咨询
tips