CN111862955B - 一种语音识别方法与终端、计算机可读存储介质 - Google Patents
一种语音识别方法与终端、计算机可读存储介质 Download PDFInfo
- Publication number
- CN111862955B CN111862955B CN202010578394.4A CN202010578394A CN111862955B CN 111862955 B CN111862955 B CN 111862955B CN 202010578394 A CN202010578394 A CN 202010578394A CN 111862955 B CN111862955 B CN 111862955B
- Authority
- CN
- China
- Prior art keywords
- character
- distance
- character string
- string
- strings
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000012545 processing Methods 0.000 claims abstract description 53
- 238000012937 correction Methods 0.000 claims abstract description 43
- 239000011159 matrix material Substances 0.000 claims description 34
- 239000013598 vector Substances 0.000 claims description 23
- 230000004044 response Effects 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 230000002457 bidirectional effect Effects 0.000 claims description 7
- 238000003062 neural network model Methods 0.000 claims description 5
- 230000000875 corresponding effect Effects 0.000 description 24
- 238000012217 deletion Methods 0.000 description 11
- 230000037430 deletion Effects 0.000 description 11
- 238000003780 insertion Methods 0.000 description 11
- 230000037431 insertion Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000003993 interaction Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 238000001514 detection method Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 230000011218 segmentation Effects 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000003205 fragrance Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/04—Segmentation; Word boundary detection
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1815—Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
Abstract
本发明提供一种语音识别方法与终端、计算机可读存储介质。该方法包括:获取语音数据,然后,对所述语音数据进行语音识别,得到多个候选字符串,从而,对齐所述多个候选字符串,得到多个对齐字符串,进而,利用训练好的纠错模型处理所述多个对齐字符串,得到所述语音数据对应的目标字符串。本发明所提供的技术方案,能够提高语音识别结果的准确率。
Description
技术领域
本发明涉及计算机技术,尤其涉及一种语音识别方法与终端、计算机可读存储介质。
背景技术
终端可以与用户进行人机交互,例如,终端可以采集用户发出的声音,并对采集到的语音数据进行语音识别,进而,基于识别结果执行相应动作或应答。语音识别作为人机交互的重要功能模块,识别结果的准确率直接影响后续语音交互的效果。
一种快速有效的语音识别方法是通过语音纠错来实现的。首先,对语音数据作语音识别处理,得到候选字符串,然后,对候选字符串进行分词,以分词后的句子是否通畅等标准进行错误位置的检测,针对检测到的错误位置,则通过替换成同音或同形的候选词来实现纠错,进而,将纠错后的候选字符串作为语音数据的目标字符串,实现语音识别。
但是,基于纠错的语音识别方法是通过替换的方式实现纠错,对于候选字符串中存在多字符或少字符的情况,则无法实现纠错,影响语音识别结果的准确率。
发明内容
本发明提供一种语音识别方法与终端、计算机可读存储介质,用以实现对提高语音识别结果的准确率。
第一方面,本发明提供一种语音识别方法,包括:
获取语音数据;
对所述语音数据进行语音识别,得到多个候选字符串;
对齐所述多个候选字符串,得到多个对齐字符串;
利用训练好的纠错模型处理所述多个对齐字符串,得到所述语音数据对应的目标字符串。
第二方面,本发明提供一种终端,处理模块与收发模块;
其中,所述收发模块,用于:获取语音数据;
所述处理模块,用于:
对所述语音数据进行语音识别,得到多个候选字符串;
对齐所述多个候选字符串,得到多个对齐字符串;
利用训练好的纠错模型处理所述多个对齐字符串,得到所述语音数据对应的目标字符串。
第三方面,本发明提供一种终端,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面任一项所述的方法。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现如第一方面所述的方法。
本发明提供一种语音识别方法与终端、计算机可读存储介质。在本方案中,通过对采集到的语音数据进行语义识别,得到多个候选字符串,然后,将多个候选字符串对齐,如此,即便字符串存在替换错误(字符不同)、插入错误(多字符)或者删除错误(少字符)中的至少一种,都能够通过对齐来实现检测,提高了错误位置的检测准确率;并且,本方案利用训练好的纠错模型同时处理多个对齐字符串,得到目标字符串,相较于就单一的候选字符串进行纠错以得到目标字符串的方式,本方案能够基于多个对齐字符串获取到更多的上下文信息,有利于提高纠错准确率,换言之,有利于提高语音识别结果的准确率,进一步的,这也有利于提高人机交互过程的响应准确率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本发明实施例所提供的一种语音识别方法的流程示意图;
图2为本发明实施例所提供的一种对齐效果示意图;
图3为本发明实施例所提供的另一种语音识别方法的流程示意图;
图4为本发明实施例中一种对齐方式的示意图;
图5为本发明实施例中的一种在第一距离矩阵中确定第一回溯序列的方法;
图6为本申请实施例所提供的一种纠错模型的示意图;
图7为本申请实施例所提供的另一种纠错模型的示意图;
图8为本发明实施例所提供的一种终端的功能方块图;
图9为本发明实施例所提供的一种终端的实体结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本发明实施例所提供的语音识别方法,可以应用于任意终端设备(或简称为“终端”)中。其中,本发明实施例所涉及到的终端设备可以是无线终端也可以是有线终端。无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(RadioAccess Network,简称RAN)与一个或多个核心网设备进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。再例如,无线终端还可以是个人通信业务(Personal Communication Service,简称PCS)电话、无绳电话、会话发起协议(Session Initiation Protocol,简称SIP)话机、无线本地环路(Wireless Local Loop,简称WLL)站、个人数字助理(Personal Digital Assistant,简称PDA)等设备。无线终端也可以称为系统、订户单元(Subscriber Unit)、订户站(SubscriberStation),移动站(Mobile Station)、移动台(Mobile)、远程站(Remote Station)、远程终端(Remote Terminal)、接入终端(Access Terminal)、用户终端(User Terminal)、用户代理(User Agent)、用户设备(User Device or User Equipment),在此不作限定。
可选的,上述终端设备还可以是智能穿戴设备、智能家居设备或车载设备等。其中,智能穿戴设备可以包括但不限于:智能耳机、自能手环、智能手表、可佩戴式健康监测设备,等,不作穷举。家居智能设备可以包括但不限于:智能电视、智能音箱、智能电饭煲、智能冰箱、智能空调等,对此不作穷举。车载设备可以包括但不限于:车载音箱、车载夸夸机器人等,对此亦不作穷举。
本发明具体的应用场景为任意语音识别场景,也就是,识别语音数据的含义,以得到语音数据对应的目标字符串的场景。
示例性的,本发明实施例可以为自动应答场景。例如,一种可能的场景中,本发明实施例可以应用于“夸夸机器人”对用户进行夸夸的场景。在该场景中,终端可以采集用户发出的语音数据,并对其进行语音识别,进而,基于识别结果确定夸夸数据,并输出夸夸数据。其中,夸夸机器人是一种灵活有趣的AI应用,能够在接收到用户发出“夸夸我吧”或类似的指令时,输出针对用户的夸奖语音或夸奖文本。夸夸机器人可以应用于任意场景,示例性的,可以应用于打车应用程序(Application,APP)中,用于对司机端用户或乘客端用户进行夸夸,或用于将司机端或乘客端对对端用户的夸奖语音,输出给对端用户。
示例性的,本发明实施例可以应用于车载设备(或者,家居智能设备、智能穿戴设备等)对用户发出的指令进行响应的场景。例如,一种可能的场景中,智能音箱可以获取语音数据,并对其进行语音识别,进而,可以播放该语音数据所指示的歌曲。又例如,另一种可能的场景中,智能手表具备心率检测功能,并且,可以获取语音数据,并对采集到的语音数据进行语音识别,从而,当识别出的目标字符串指示检测用户的心率时,进行心率检测。
示例性的,本发明实施例还可以应用于语音转文字的场景。例如,一种可能的场景中,终端可以采集或接收语音数据,并对语音数据进行自动翻译,以获取语音数据对应的目标字符串(也即文本),实现语音数据到文本数据的转换。
除前述示例说明的各场景之外,还可能涉及其他识别语音数据的场景,这里不作穷举,亦不对本方案作额外限制。
在前述任意一种语音识别场景中,语音识别结果的准确率都直接影响后续步骤的实现。例如,语音识别结果的准确率对人机交互效果有直接影响:识别结果的准确率越高,终端对语音数据的响应也越准确,人机交互效果较好;反之,若识别结果的准确率较低,则终端往往不能准确对语音数据做出准确响应,这可能需要多次语音交互才能实现准确响应,人机交互效果与体验都较差。
针对特定场景来建立满足需求的语音识别系统(或模型,或公式等),往往需要大量的语音数据并消耗大量的时间。面对这种情况,利用基于纠错来实现语音识别则更加便捷高效。基于纠错实现语音识别时,首先,对语音数据作语音识别处理,得到候选字符串,然后,对候选字符串进行分词,以分词后的句子是否通畅等标准进行错误位置的检测,针对检测到的错误位置,则通过替换成同音或同形的候选词来实现纠错,进而,将纠错后的候选字符串作为语音数据的目标字符串,实现语音识别。这种处理方式不仅可以快速提升语音识别的识别准确率,并且,对于识别准确率较高的语音识别系统也能够在一定程度上进一步提高其识别准确率。
但是,前述基于纠错实现的语音识别方法存在较大的局限性。
一方面,前述方法能够在一定程度上纠正候选字符串中存在的替换错误的情况,但对于插入错误和删除错误,则无法识别。也即,若候选字符串存在插入错误或删除错误,前述方法无法检测到这种错误对应的错误位置,从而,也就无法实现对插入错误或删除错误的修正。
另一方面,在语音识别场景中,还可能会由于发音类似而导致的错误,这类错误在语义上没有错误,无法通过前述方法识别。例如,若采集到的语音数据为“夸我一下”,但“夸”和“看”发音类似,经前述语音识别后得到的候选字符串可能为“看我一下”,此时,“看我一下”本身并没有语义或逻辑上的错误,但明显与语音数据的匹配程度较低,语音识别效果较差。
综上,现有的基于纠错的语音识别方法的识别准确率较差。而本发明提供的技术方案,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
本发明实施例提供了一种语音识别方法。请参考图1,该方法包括如下步骤:
S102,获取语音数据。
示例性的一种实施例中,语音数据可以是终端实时采集并获取到的,也即,终端可以实时采集语音数据。
另一种可能的实施例中,终端可以接收语音数据。在该实施例中,语音数据可以来自于其他电子设备,例如,移动存储设备、与终端通信连接的另一个终端等。其中,通信连接可以包括有线连接或无线连接。
S104,对语音数据进行语音识别,得到多个候选字符串。
对语音数据进行语音识别,用于确定与该语音数据对应的多个候选字符串(也即候选文本)。
具体实现该步骤时,可以利用预训练好的语音识别模型处理语音数据,得到多个候选字符串,其中,语音识别模型的输入数据为:语音数据,输出数据为:多个文本数据(也即:多个候选字符串)。
本发明实施例中,语音识别模型可以为任意的神经网络模型,例如,可以为卷积神经网络模型(Convolutional Neural Networks,CNN)、循环神经网络(Recurrent neuralnetworks,RNN)等,不作穷举。
除直接输出多个候选字符串之外,语音识别模型还可以输出每个候选字符串的识别准确概率。其中,识别准确概率用于表征第一特征向量对应的候选字符串为语音数据的目标字符串的可能性。实际场景中,识别准确概率可以有其他名称,例如,还可以称为:分值(Score)、准确率、可能性等,不作穷举。识别准确概率可以由多种表示方式,例如,可以通过百分数表示,也可以通过分数等,本发明实施例对此无特别限制。
可以理解,同一个语音数据识别出来的多个候选数据中,各候选数据对应的识别准确概率可以不同。例如,终端利用前述语音识别模型处理语音数据,得到3个候选字符串,其中,候选字符串1的识别准确概率为70%,候选字符串2的识别准确概率为80%,候选字符串3的识别准确概率为76%,
S106,对齐多个候选字符串,得到多个对齐字符串。
如前,该步骤的目的在于对齐各候选字符串。此时,可以参考图2所示的对齐效果示意图。其中,图2示出了5个候选字符串,分别为:“夸一下我啊”(候选字符串1)、“看一下我啊”(候选字符串2)、“一下我啊”(候选字符串3)、“夸一下我你啊”(候选字符串4)、“夸一下你我”(候选字符串5)。通过该步骤的对齐处理,能够得到图2所示的多个对齐字符串。如图2所示,多个对齐字符串中,任意两个对齐字符串的相同字符在所属对齐字符串中的位置相同。
后续具体说明该步骤的具体实现方式。
通过对齐处理,有利于后续纠错处理能够检测出替换错误、删除错误与插入错误。现对这三种错误方式作举例说明。假设终端获取到的语音数据为“夸一下我啊”,此时,如图2所示,相较于语音数据,候选字符串2中的“看”需要替换为“夸”,才能够与语音数据相匹配,也即,候选字符串2存在替换错误;候选字符串3中缺少字符“夸”,也即,候选字符串3存在删除错误;候选字符串4中则多了一个字符“你”,此时,候选字符串3存在插入错误。
此外,在一个候选字符串(或对齐字符串)中,可以存在一种或多种错误。如图2所示,候选字符串2~候选字符串4存在一种类型的错误,而候选字符串5可以通过2次替换操作(可视作存在一种类型的错误),或者,一次插入操作与一次删除操作(可视作存在2种类型的错误),来得到与语音数据相同的字符串。
S108,利用训练好的纠错模型处理多个对齐字符串,得到语音数据对应的目标字符串。
可以理解,纠错模型的输入数据为多个候选字符串,输出数据为一个目标字符串。
在如图1所示的方法中,通过对采集到的语音数据进行语义识别,得到多个候选字符串,然后,将多个候选字符串对齐,如此,即便字符串存在替换错误(字符不同)、插入错误(多字符)或者删除错误(少字符)中的至少一种,都能够通过对齐来实现检测,提高了错误位置的检测准确率;并且,本方案利用训练好的纠错模型同时处理多个对齐字符串,得到目标字符串,相较于就单一的候选字符串进行纠错以得到目标字符串的方式,本方案能够基于多个对齐字符串获取到更多的上下文信息,有利于提高纠错准确率,换言之,有利于提高语音识别结果的准确率,进一步的,这也有利于提高人机交互过程的响应准确率。
现对对齐多个候选字符串的方式进行说明。语音识别一般使用字错误率(wer)作为评估指标。为了使识别出来的词序列和标准参考答案词序列之间保持一致,需要进行替换、删除或插入某些词,这些操作的总个数除以标准参考答案的词序列中词的总个数,得到的百分比即为字错误率。基于此,本发明实施例通过第一距离与第二距离来确定对齐方式,并进行对齐。
现以多个候选字符串中的第一字符串与第二字符串的对齐为例,对S106的实现方式作具体说明。
其中,第一字符串为多个候选字符串中的一个候选字符串,第二字符串为多个候选字符串中除第一字符串之外的其他候选字符串。例如,在图2所示实施例中,可以将候选字符串1作为第一字符串,将其余的候选字符串2~候选字符串5作为第二字符串,分别以第一字符串为基准,进行后续对齐处理。
换言之,第一字符串可以视作基准字符串。
本发明实施例中,第一字符串可以为多个候选字符串中的任意一个候选字符串。例如,第一字符串可以为多个候选字符串中识别准确概率最高的一个候选字符串。又例如,第一字符串可以为多个候选字符串中字符数目最多的一候选字符串。又例如,第一字符串可以为第一个识别出来的候选字符串。不作穷举,本发明实施例对此亦无特别限制。
此时,可以参考图3,S106可以包括如下步骤:
S1062,获取第一字符串中各第一字符与第二字符串中各第二字符之间的第一距离,第一距离用于指示对第二字符进行编辑处理,以使得编辑后的第二字符与第一字符完全相同的最小次数。
具体而言,第一距离可以具体为编辑距离(Minimum Edit Distance,MED),编辑距离是由俄罗斯科学家Vladimir Levenshtein在1965年提出,用来度量两个序列相似程度的指标。
示例性的,本发明实施例中,第一距离可以满足如下公式:
其中,leva,b(i,j)表示字符串a(也即第一字符串)中的第i个第一字符与字符串b(也即第二字符串)中第j个第二字符之间的第一距离,其中,ai表示字符串a中的第i个第一字符,bj表示字符串b中第j个第二字符。
如上式,当第一编号(i)与第二编号(j)中的一个或多个为零时(也即i与j中的一个或多个为0时),获取第一编号与第二编号的最大值,得到第一字符与第二字符之间的第二距离。
其中,第一编号为第一字符在第一字符串中按照从前到后的顺序的位置编号,第二编号为第二字符在第二字符串中按照从前到后的顺序的位置编号。
当第一编号(i)与第二编号(j)均不为零时,获取第三距离、第四距离、第五距离与第六距离中的最小值,得到第一字符与第二字符之间的第一距离。
其中,第三距离为第一字符前一个字符(第i-1个第一字符)与第二字符(第j个第二字符)之间的第一距离加一。也即,第三距离为:leva,b(i-1,j)+1。
第四距离为第一字符(第i个第一字符)与第二字符的前一个字符(第j-1个第二字符)之间的第一距离加一。也即,第四距离为:leva,b(i,j-1)+1。
第五距离为当第一字符(ai)与第二字符(bj)相同时,第一字符前一个字符(第i-1个第一字符)与第二字符的前一个字符(第j-1个第二字符)之间的第一距离加一。也即,第五距离为:
第六距离为当第一字符(ai)与第二字符(bj)不相同时,第一字符前一个字符(第i-1个第一字符)与第二字符的前一个字符(第j-1个第二字符)之间的第一距离。也即,第六距离为:
基于前述计算,可以得到第一字符串中每个第一字符,分别与第二字符串中的每个第二字符之间的第一距离。
S1064,获取第一字符串中各第一字符与第二字符串中各第二字符之间的第二距离,第二距离用于指示对第二字符进行编辑,以使得编辑后的第二字符与第一字符中的相同字符对齐的最小次数。
第二距离用于衡量第一字符串与第二字符串中的相同字符在所属字符串中的相似程度。
示例性的,本发明实施例中,第二距离可以满足如下公式:
其中,samea,b(i,j)表示字符串a(也即第一字符串)中的第i个第一字符与字符串b(也即第二字符串)中第j个第二字符之间的第二距离,其中,ai表示字符串a中的第i个第一字符,bj表示字符串b中第j个第二字符。
如上式,当第一编号(i)与第二编号(j)中的一个或多个为零时(也即i与j中的一个或多个为0时),将第一字符与第二字符之间的第一距离确定为零。在该公式中,第一编号与第二编号的定义与前文相同,不再重复。
当第一编号(i)与第二编号(j)均不为零时,获取第七距离、第八距离、第九距离与第十距离中的最大值,得到第一字符与第二字符之间的第二距离。
其中,第七距离为第一字符前一个字符(第i-1个第一字符)与第二字符(第j个第二字符)之间的第二距离。也即,第七距离为:samea,b(i-1,j)。
第八距离为第一字符(第i个第一字符)与第二字符的前一个字符(第j-1个第二字符)之间的第二距离。也即,第八距离为:samea,b(i,j-1)。
第九距离为当第一字符(ai)与第二字符(bj)不相同时,第一字符前一个字符(第i-1个第一字符)与第二字符的前一个字符(第j-1个第二字符)之间的第二距离加一。也即,第九距离为:
第十距离为当第一字符(ai)与第二字符(bj)相同时,第一字符前一个字符(第i-1个第一字符)与第二字符的前一个字符(第j-1个第二字符)之间的第二距离。也即,第十距离为:
S1066,基于多个第一距离与多个第二距离,对齐多个互选字符串,得到多个对齐字符串。
在执行该步骤时,可以分别基于第一字符串与第二字符串的第一距离、第二距离,分别构建距离矩阵,从而,动态规划算法,确定对齐方式并进行对齐处理。
此时,可以参考图4。示例性的,图4以图2中的候选字符串1与候选字符串5为例,示出了一种对齐方式的示意图。其中,候选字符串1作为第一字符串,候选字符串5作为第二字符串。
现结合图4说明S1066的实现方式:
一方面,可以基于各字符在第一字符串与第二字符串中的位置,构建第一距离矩阵,第一距离矩阵的元素为第一距离。
如图4所示,第一距离矩阵中的任意一个元素都满足前述leva,b(i,j)的表达式,这里不再重复。
然后,在第一距离矩阵中确定第一回溯序列,第一回溯序列按照第一字符串从尾到头的顺序依次确定,且第一回溯序列中的各第一元素的第一距离小于或等于第一元素的相邻元素的第一距离。
如图4所示,可以将第一距离矩阵中的右下角为起始位置进行动态最小规划,得到图4所示的两条第一回溯序列。第一回溯序列用于表示对齐这两个字符串,所需要的最少的操作次数的操作序列。后续结合图5说明第一回溯序列的确定方式。
在第一回溯序列中,向上对应插入操作,向左对应删除操作,左上对角线对应替换操作。如此,在图4所示的两条第一回溯序列,分别对应两种操作序列。如图4所示,第一回溯序列1对应于2个替换操作,而第一回溯序列2则对应于:一个插入操作与一个删除操作。
另一方面,可以基于各字符在第一字符串与第二字符串中的位置,构建第二距离矩阵,第二距离矩阵的矩阵元素为第二距离。
如图4所示,第一距离矩阵中的任意一个元素都满足前述samea,b(i,j)的表达式,这里不再重复。
之后,在第二距离矩阵中确定第二回溯序列,第二回溯序列按照第一字符串从尾到头的顺序依次确定,且第二回溯序列中的各第二元素的第二距离大于或等于第二元素的相邻元素的第二距离。
如图4所示,可以将第二距离矩阵中的右下角为起始位置进行动态最大规划,得到图4所示的1条第二回溯序列。第二回溯序列用于表示对齐这两个字符串中的相同字符,所需要的最少的操作次数的操作序列。
在第二回溯序列中,向上对应插入操作,向左对应删除操作,左上对角线对应替换操作。如图4所示,第二回溯序列则对应于:一个插入操作与一个删除操作。
从而,获取第一回溯序列与第二回溯序列相同的一个目标回溯序列。如图4处理,第一回溯序列2与第二回溯序列相同,可将第一回溯序列2确定为目标回溯序列。
进而,按照目标回溯序列所指示的对齐方式,对齐第一字符串与第二字符串,得到第二字符串对应且与第一字符串对齐的对齐字符串。对齐后的候选字符串1与候选字符串5的情况可以参考图2,这里不再重复。
可以理解,目标回溯序列所指示的对齐方式包括:插入字符、删除字符或替换字符中的一种或多种。不再重复。
示例性的,图5示出了一种在第一距离矩阵中确定第一回溯序列的方法。如图5所示,在
为了使字符串a和字符串b的字符完全相同,可能涉及表1所示的以下四种方式:
表1
字符串a的子串 | 字符串b的子串 | 操作方式 | 第一距离变化情况 |
ai-1 | bj | 插入 | +1 |
ai | bj-1 | 删除 | +1 |
ai-1 | bj-1 | 无操作 | - |
ai-1 | bj-1 | 替换 | +1 |
如表1所示,确定回溯序列时,需要确定当前的第一距离是由哪个子串+哪个操作得到的。此时,如图5所示,子串a5的第5个字符“啊”和子串b5的第5个字符“我”不相同,因此,子串a5和子串b5之间的第一距离可以包括如下三种方式:
第一种方式:通过插入操作,使得子串a5和子串b5的第一距离为:子串a4和子串b5的第一距离加一。
第二种方式:通过删除操作,使得子串a5和子串b5的第一距离为:子串a5和子串b4的第一距离加一。
第三种方式:通过替换操作,使得子串a5和子串b5的第一距离为:子串a4和子串b4的第一距离加一。
在前述三种方式中,通过对比三种计算方式的大小,可以得知第一种方式与第二种方式对应的子串a5和子串b5的第一距离较小,则可以基于第一种方式或第二种方式获得子串a5和子串b5的第一距离。
在此基础上,进一步按照前述方式,逐个回溯,可以得到图4与图5所示两个回溯序列。
此外,在前述对齐处理过程中,本方案对第一回溯序列中方向所指示的对齐处理方式、第二回溯序列中方向所指示的对齐处理方式无特别限制,二者可以相同或不用。
基于对齐处理后得到的多个对齐字符串,本方案可以利用训练好的纠错模型来同时处理多个对齐字符串,以得到目标字符串。
示例性的,本发明实施例中,纠错模型可以为序列到序列(seq2seq)模型,seq2seq模型也可以称为端到端模型,对此无特别限制。seq2seq模型对字符串的长度无特别限制,这为纠正除替换错误以外的插入错误和删除错误提供了可能。
一种可能的实施例中,纠错模型可以采用现有的seq2seq模型来实现。示例性的,图6示出了本申请实施例所使用的一种纠错模型的示意图。如图6所示,该纠错模型为编码器(encoder)-解码器(decoder)结构,其中,encoder为一种双向编码器,具体可以表现为图6所示的双向循环神经网络;而decoder则可以为一种单向循环神经网络。
具体而言,encoder负责按照从前往后的顺序,对多个对齐字符串中的字符依次进行编码(后续简称为正向编码),以及,负责按照按照从后往前的顺序,对多个对齐字符串中的字符依次进行编码(后续简称为反向编码);在此基础上,encoder还通过第一特征向量来对编码进行加权求和得到语义向量。从而,该语义向量以及前一时刻的解码结果作为解码器的输入,解码生成目标字符串。
其中第一特征向量可以来自于嵌入层(embedding)。Embedding层用于对获取各对齐字符串的特征表示,也即,第一特征向量。
除此之外,本发明实施例还提供了另一种纠错模型。示例性的,图7示出了本申请实施例所提供的另一种纠错模型的示意图。如图7所示,该纠错模型包括:嵌入层、双向编码器(encoder)与解码器(decoder),encoder为一种双向循环神经网络;而decoder则可以为一种单向循环神经网络。
区别于图6示的纠错模型,图7示的纠错模型中,嵌入层具体用于:获取各对齐字符串的第一特征向量;以及,获取各第一特征向量的加权和,得到多个对齐字符串的第二特征向量。从而,双向编码器,用于:根据第二特征向量与多个对齐字符串,按照从头到尾、从尾到头的顺序,分别进行双向编码,以及,解码器,用于:对双向编码结果进行解密,得到目标字符串。这里对encoder和decoder的具体处理方式不再重复,可参考图6相关表述。
在图7,第一特征向量的权重可以与识别准确概率关联。
例如,一种可能的实施例中,可以直接将识别准确概率确定为第一特征向量的权重。
或者,另一种可能的实施例中,可以利用预训练好的神经网络模型处理识别准确概率,得到识别准确概率对应的权重。也就是,在embedding层后对n个候选字符串的特征表示进行加权求和以作为编码器的输入,其中,权重可以作为神经网络模型的输出,该神经网络模型的输入为识别准确概率。
综上,相较于现有技术中基于纠错实现的语音识别方法,本方案可以利用更多的上下文信息;而基于多候选字符串的输入,为纠错模型提供了更多有用信息,从而同时纠正替换、插入和删除多种识别错误,有利于提高语音识别结果的准确率。
本发明实施例中,在确定出目标字符串之后,终端还可以据此获取目标字符串对应的应答文本;进而,输出应答文本,或,输出应答文本对应的应答语音。
例如,若经过本方案的处理,获取到的语音数据对应的目标字符串为:“夸夸我吧”,则可以据此确定的应答文本可以为:“您是最可爱的人”,此时,终端可以直接输出该文本,也可以生成该文本对应的语音数据,并输出该语音数据。
最后,需要说明的是,本发明实施例对于前述各模型的训练过程无特别限制,各墨香可以提前训练好。训练好的模型(例如纠错模型、语音识别模型等)可以存储在终端设备可读的存储位置;或者,也可以部署在线上,终端设备可以直接调用该模型实现风格识别。
可以理解的是,上述实施例中的部分或全部步骤或操作仅是示例,本申请实施例还可以执行其它操作或者各种操作的变形。此外,各个步骤可以按照上述实施例呈现的不同的顺序来执行,并且有可能并非要执行上述实施例中的全部操作。
本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。
基于上述方法实施例所提供的语音识别方法,本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。
本发明实施例提供了一种终端,请参考图8,该终端800,包括:处理模块82与收发模块84;
其中,所述收发模块84,用于:获取语音数据;
所述处理模块82,用于:
对所述语音数据进行语音识别,得到多个候选字符串;
对齐所述多个候选字符串,得到多个对齐字符串;
利用训练好的纠错模型处理所述多个对齐字符串,得到所述语音数据对应的目标字符串。
本发明的一种实施例中,处理模块82,具体用于:
获取所述第一字符串中各第一字符与所述第二字符串中各第二字符之间的第一距离,所述第一距离用于指示对所述第二字符进行编辑处理,以使得编辑后的第二字符与所述第一字符完全相同的最小次数;
获取所述第一字符串中各第一字符与所述第二字符串中各第二字符之间的第二距离,所述第二距离用于指示对所述第二字符进行编辑,以使得编辑后的第二字符与所述第一字符中的相同字符对齐的最小次数;
基于多个所述第一距离与多个所述第二距离,对齐所述多个互选字符串,得到所述多个对齐字符串;其中,所述第一字符串为所述多个候选字符串中的一个候选字符串,所述第二字符串为所述多个候选字符串中除所述第一字符串之外的其他候选字符串。
本发明的另一种实施例中,处理模块82,具体用于:
基于各字符在所述第一字符串与所述第二字符串中的位置,构建第一距离矩阵,所述第一距离矩阵的元素为所述第一距离;
在所述第一距离矩阵中确定第一回溯序列,所述第一回溯序列按照所述第一字符串从尾到头的顺序依次确定,且所述第一回溯序列中的各第一元素的第一距离小于或等于所述第一元素的相邻元素的第一距离;
基于各字符在所述第一字符串与所述第二字符串中的位置,构建第二距离矩阵,所述第二距离矩阵的矩阵元素为所述第二距离;
在所述第二距离矩阵中确定第二回溯序列,所述第二回溯序列按照所述第一字符串从尾到头的顺序依次确定,且所述第二回溯序列中的各第二元素的第二距离大于或等于所述第二元素的相邻元素的第二距离;
获取所述第一回溯序列与所述第二回溯序列相同的一个目标回溯序列;
按照所述目标回溯序列所指示的对齐方式,对齐所述第一字符串与所述第二字符串,得到所述第二字符串对应且与所述第一字符串对齐的对齐字符串。
本发明的另一种实施例中,所述目标回溯序列所指示的对齐方式包括:插入字符、删除字符或替换字符中的一种或多种。
本发明的另一种实施例中,处理模块82,具体用于:
当第一编号与第二编号中的一个或多个为零时,获取所述第一编号与所述第二编号的最大值,得到所述第一字符与所述第二字符之间的所述第二距离;其中,所述第一编号为所述第一字符在所述第一字符串中按照从前到后的顺序的位置编号,所述第二编号为所述第二字符在所述第二字符串中按照从前到后的顺序的位置编号;
当所述第一编号与所述第二编号均不为零时,获取第三距离、第四距离、第五距离与第六距离中的最小值,得到所述第一字符与所述第二字符之间的所述第一距离;其中,所述第三距离为所述第一字符前一个字符与所述第二字符之间的第一距离加一;所述第四距离为所述第一字符与所述第二字符的前一个字符之间的第一距离加一;所述第五距离为当所述第一字符与所述第二字符相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第一距离加一;所述第六距离为当所述第一字符与所述第二字符不相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第一距离。
本发明的另一种实施例中,处理模块82,具体用于:
当第一编号与第二编号中的一个或多个为零时,将所述第一字符与所述第二字符之间的所述第一距离确定为零;其中,所述第一编号为所述第一字符在所述第一字符串中按照从前到后的顺序的位置编号,所述第二编号为所述第二字符在所述第二字符串中按照从前到后的顺序的位置编号;
当所述第一编号与所述第二编号均不为零时,获取第七距离、第八距离、第九距离与第十距离中的最大值,得到所述第一字符与所述第二字符之间的所述第二距离;其中,所述第七距离为所述第一字符前一个字符与所述第二字符之间的第二距离;所述第八距离为所述第一字符与所述第二字符的前一个字符之间的第二距离;所述第九距离为当所述第一字符与所述第二字符不相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第二距离加一;所述第十距离为当所述第一字符与所述第二字符相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第二距离。
本发明的另一种实施例中,所述纠错模型包括嵌入层、双向编码器与解码器,
所述嵌入层,用于:获取各所述对齐字符串的第一特征向量;以及,获取各所述第一特征向量的加权和,得到所述多个对齐字符串的第二特征向量;
所述双向编码器,用于:根据所述第二特征向量与所述多个对齐字符串,按照从头到尾、从尾到头的顺序,分别进行双向编码;
所述解码器,用于:对双向编码结果进行解密,得到所述目标字符串。
本发明的另一种实施例中,所述第一特征向量的权重与识别准确概率关联,所述识别准确概率用于表征所述第一特征向量对应的候选字符串为所述语音数据的目标字符串的可能性。
本发明的另一种实施例中,处理模块82,具体用于:利用预训练好的神经网络模型处理所述识别准确概率,得到所述识别准确概率对应的权重。
本发明的另一种实施例中,处理模块82,具体用于:利用预训练好的语音识别模型处理所述语音数据,得到多个所述候选字符串,以及,每个所述候选字符串的识别准确概率。
本发明的另一种实施例中,处理模块82,还用于:获取所述目标字符串对应的应答文本;收发模块84,还用于:输出所述应答文本,或,输出所述应答文本对应的应答语音。
图8所示实施例的终端800可用于执行上述方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
应理解以上图8所示终端800的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块以软件通过处理元件调用的形式实现,部分模块通过硬件的形式实现。例如,处理模块82可以为单独设立的处理元件,也可以集成在终端800中,例如终端的某一个芯片中实现,此外,也可以以程序的形式存储于终端800的存储器中,由终端800的某一个处理元件调用并执行以上各个模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个微处理器(digital singnal processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)等。再如,当以上某个模块通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central ProcessingUnit,CPU)或其它可以调用程序的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
并且,本发明实施例提供了一种终端,请参考图9,该终端800,包括:
存储器810;
处理器820;以及
计算机程序;
其中,计算机程序存储在存储器810中,并被配置为由处理器820执行以实现如上述实施例的方法。
其中,终端800中处理器820的数目可以为一个或多个,处理器820也可以称为处理单元,可以实现一定的控制功能。处理器820可以是通用处理器或者专用处理器等。在一种可选地设计中,处理器820也可以存有指令,指令可以被处理器820运行,使得终端800执行上述方法实施例中描述的方法。
在又一种可能的设计中,终端800可以包括电路,电路可以实现前述方法实施例中发送或接收或者通信的功能。
可选地,终端800中存储器810的数目可以为一个或多个,存储器810上存有指令或者中间数据,指令可在处理器820上被运行,使得终端800执行上述方法实施例中描述的方法。可选地,存储器810中还可以存储有其他相关数据。可选地处理器820中也可以存储指令和/或数据。处理器820和存储器810可以单独设置,也可以集成在一起。
此外,如图9所示,在该终端800中还设置有收发器830,其中,收发器830可以称为收发单元、收发机、收发电路、或者收发器等,用于与测试设备或其他终端设备进行数据传输或通信,在此不再赘述。
如图9所示,存储器810、处理器820与收发器830通过总线连接并通信。
若该终端800用于实现对应于图1中的方法时,例如,可以由收发器830输出目标应答数据。而处理器820用于完成相应的确定或者控制操作,可选的,还可以在存储器810中存储相应的指令。各个部件的具体的处理方式可以参考前述实施例的相关描述。
此外,本发明实施例提供了一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行以实现如方法实施例所述的方法。
由于本实施例中的各模块能够执行方法实施例所示的方法,本实施例未详细描述的部分,可参考对方法实施例的相关说明。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本发明旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
Claims (12)
1.一种语音识别方法,其特征在于,包括:
获取语音数据;
对所述语音数据进行语音识别,得到多个候选字符串;
对齐所述多个候选字符串,得到多个对齐字符串;
利用训练好的纠错模型处理所述多个对齐字符串,得到所述语音数据对应的目标字符串;
所述对齐所述多个候选字符串,得到多个对齐字符串,包括:
获取第一字符串中各第一字符与第二字符串中各第二字符之间的第一距离,所述第一距离用于指示对所述第二字符进行编辑处理,以使得编辑后的第二字符与所述第一字符具有完全相同的最小次数;所述第一距离为编辑距离MED;
获取所述第一字符串中各第一字符与所述第二字符串中各第二字符之间的第二距离,所述第二距离用于指示对所述第二字符进行编辑,以使得编辑后的第二字符与所述第一字符中的相同字符具有对齐的最小次数;所述第二距离用于衡量所述第一字符串与所述第二字符串中的相同字符在所属字符串中的相似程度;
基于多个所述第一距离与多个所述第二距离,对齐所述多个候选字符串,得到所述多个对齐字符串;其中,所述第一字符串为所述多个候选字符串中的一个候选字符串,所述第二字符串为所述多个候选字符串中除所述第一字符串之外的其他候选字符串;
所述基于多个所述第一距离与多个所述第二距离,对齐所述多个候选字符串,得到所述多个对齐字符串,包括:
基于各字符在所述第一字符串与所述第二字符串中的位置,构建第一距离矩阵,所述第一距离矩阵的元素为所述第一距离;
在所述第一距离矩阵中确定第一回溯序列,所述第一回溯序列按照所述第一字符串从尾到头的顺序依次确定,且所述第一回溯序列中的各第一元素的第一距离小于或等于所述第一元素的相邻元素的第一距离;
基于各字符在所述第一字符串与所述第二字符串中的位置,构建第二距离矩阵,所述第二距离矩阵的矩阵元素为所述第二距离;
在所述第二距离矩阵中确定第二回溯序列,所述第二回溯序列按照所述第一字符串从尾到头的顺序依次确定,且所述第二回溯序列中的各第二元素的第二距离大于或等于所述第二元素的相邻元素的第二距离;
获取所述第一回溯序列与所述第二回溯序列相同的一个目标回溯序列;
按照所述目标回溯序列所指示的对齐方式,对齐所述第一字符串与所述第二字符串,得到所述第二字符串对应且与所述第一字符串对齐的对齐字符串。
2.根据权利要求1所述的方法,其特征在于,所述目标回溯序列所指示的对齐方式包括:插入字符、删除字符或替换字符中的一种或多种。
3.根据权利要求1任一项所述的方法,其特征在于,所述获取所述第一字符串中各第一字符与所述第二字符串中各第二字符之间的第一距离,包括:
当第一编号与第二编号中的一个或多个为零时,获取所述第一编号与所述第二编号的最大值,得到所述第一字符与所述第二字符之间的所述第二距离;其中,所述第一编号为所述第一字符在所述第一字符串中按照从前到后的顺序的位置编号,所述第二编号为所述第二字符在所述第二字符串中按照从前到后的顺序的位置编号;
当所述第一编号与所述第二编号均不为零时,获取第三距离、第四距离、第五距离与第六距离中的最小值,得到所述第一字符与所述第二字符之间的所述第一距离;其中,所述第三距离为所述第一字符前一个字符与所述第二字符之间的第一距离加一;所述第四距离为所述第一字符与所述第二字符的前一个字符之间的第一距离加一;所述第五距离为当所述第一字符与所述第二字符相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第一距离加一;所述第六距离为当所述第一字符与所述第二字符不相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第一距离。
4.根据权利要求1任一项所述的方法,其特征在于,所述获取所述第一字符串中各第一字符与所述第二字符串中各第二字符之间的第二距离,包括:
当第一编号与第二编号中的一个或多个为零时,将所述第一字符与所述第二字符之间的所述第一距离确定为零;其中,所述第一编号为所述第一字符在所述第一字符串中按照从前到后的顺序的位置编号,所述第二编号为所述第二字符在所述第二字符串中按照从前到后的顺序的位置编号;
当所述第一编号与所述第二编号均不为零时,获取第七距离、第八距离、第九距离与第十距离中的最大值,得到所述第一字符与所述第二字符之间的所述第二距离;其中,所述第七距离为所述第一字符前一个字符与所述第二字符之间的第二距离;所述第八距离为所述第一字符与所述第二字符的前一个字符之间的第二距离;所述第九距离为当所述第一字符与所述第二字符不相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第二距离加一;所述第十距离为当所述第一字符与所述第二字符相同时,所述第一字符前一个字符与所述第二字符的前一个字符之间的第二距离。
5.根据权利要求1-2任一项所述的方法,其特征在于,所述纠错模型包括嵌入层、双向编码器与解码器,
所述嵌入层,用于:获取各所述对齐字符串的第一特征向量;以及,获取各所述第一特征向量的加权和,得到所述多个对齐字符串的第二特征向量;
所述双向编码器,用于:根据所述第二特征向量与所述多个对齐字符串,按照从头到尾、从尾到头的顺序,分别进行双向编码;
所述解码器,用于:对双向编码结果进行解密,得到所述目标字符串。
6.根据权利要求5所述的方法,其特征在于,所述第一特征向量的权重与识别准确概率关联,所述识别准确概率用于表征所述第一特征向量对应的候选字符串为所述语音数据的目标字符串的可能性。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
利用预训练好的神经网络模型处理所述识别准确概率,得到所述识别准确概率对应的权重。
8.根据权利要求1-2任一项所述的方法,其特征在于,所述对所述语音数据进行语音识别,得到多个候选字符串,包括:
利用预训练好的语音识别模型处理所述语音数据,得到多个所述候选字符串,以及,每个所述候选字符串的识别准确概率。
9.根据权利要求1-2任一项所述的方法,其特征在于,所述方法还包括:
获取所述目标字符串对应的应答文本;
输出所述应答文本,或,输出所述应答文本对应的应答语音。
10.一种终端,其特征在于,包括:处理模块与收发模块;
其中,所述收发模块,用于:获取语音数据;
所述处理模块,用于:
对所述语音数据进行语音识别,得到多个候选字符串;
对齐所述多个候选字符串,得到多个对齐字符串;
利用训练好的纠错模型处理所述多个对齐字符串,得到所述语音数据对应的目标字符串;
所述处理模块,具体用于:
获取第一字符串中各第一字符与第二字符串中各第二字符之间的第一距离,所述第一距离用于指示对所述第二字符进行编辑处理,以使得编辑后的第二字符与所述第一字符具有完全相同的最小次数;所述第一距离为编辑距离MED;
获取所述第一字符串中各第一字符与所述第二字符串中各第二字符之间的第二距离,所述第二距离用于指示对所述第二字符进行编辑,以使得编辑后的第二字符与所述第一字符中的相同字符具有对齐的最小次数;所述第二距离用于衡量所述第一字符串与所述第二字符串中的相同字符在所属字符串中的相似程度;
基于多个所述第一距离与多个所述第二距离,对齐所述多个候选字符串,得到所述多个对齐字符串;其中,所述第一字符串为所述多个候选字符串中的一个候选字符串,所述第二字符串为所述多个候选字符串中除所述第一字符串之外的其他候选字符串;
所述处理模块,具体用于:
基于各字符在所述第一字符串与所述第二字符串中的位置,构建第一距离矩阵,所述第一距离矩阵的元素为所述第一距离;
在所述第一距离矩阵中确定第一回溯序列,所述第一回溯序列按照所述第一字符串从尾到头的顺序依次确定,且所述第一回溯序列中的各第一元素的第一距离小于或等于所述第一元素的相邻元素的第一距离;
基于各字符在所述第一字符串与所述第二字符串中的位置,构建第二距离矩阵,所述第二距离矩阵的矩阵元素为所述第二距离;
在所述第二距离矩阵中确定第二回溯序列,所述第二回溯序列按照所述第一字符串从尾到头的顺序依次确定,且所述第二回溯序列中的各第二元素的第二距离大于或等于所述第二元素的相邻元素的第二距离;
获取所述第一回溯序列与所述第二回溯序列相同的一个目标回溯序列;
按照所述目标回溯序列所指示的对齐方式,对齐所述第一字符串与所述第二字符串,得到所述第二字符串对应且与所述第一字符串对齐的对齐字符串。
11.一种终端,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1-9任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行以实现如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010578394.4A CN111862955B (zh) | 2020-06-23 | 2020-06-23 | 一种语音识别方法与终端、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010578394.4A CN111862955B (zh) | 2020-06-23 | 2020-06-23 | 一种语音识别方法与终端、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111862955A CN111862955A (zh) | 2020-10-30 |
CN111862955B true CN111862955B (zh) | 2024-04-23 |
Family
ID=72989512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010578394.4A Active CN111862955B (zh) | 2020-06-23 | 2020-06-23 | 一种语音识别方法与终端、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111862955B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112365892A (zh) * | 2020-11-10 | 2021-02-12 | 杭州大搜车汽车服务有限公司 | 人机对话方法、装置、电子装置及存储介质 |
CN116312509B (zh) * | 2023-01-13 | 2024-03-01 | 山东三宏信息科技有限公司 | 一种基于语音识别的终端id文本的校正方法、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0462688A (ja) * | 1990-06-30 | 1992-02-27 | Pentel Kk | 文書認識システム |
CN104464736A (zh) * | 2014-12-15 | 2015-03-25 | 北京百度网讯科技有限公司 | 语音识别文本的纠错方法和装置 |
CN105653517A (zh) * | 2015-11-05 | 2016-06-08 | 乐视致新电子科技(天津)有限公司 | 一种识别率确定方法及装置 |
CN106548778A (zh) * | 2016-10-13 | 2017-03-29 | 北京云知声信息技术有限公司 | 一种字符转换规则的生成方法及装置 |
CN108595431A (zh) * | 2018-04-28 | 2018-09-28 | 海信集团有限公司 | 语音交互文本纠错方法、装置、终端及存储介质 |
CN109918485A (zh) * | 2019-01-07 | 2019-06-21 | 口碑(上海)信息技术有限公司 | 语音识别菜品的方法及装置、存储介质、电子装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7047493B1 (en) * | 2000-03-31 | 2006-05-16 | Brill Eric D | Spell checker with arbitrary length string-to-string transformations to improve noisy channel spelling correction |
-
2020
- 2020-06-23 CN CN202010578394.4A patent/CN111862955B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0462688A (ja) * | 1990-06-30 | 1992-02-27 | Pentel Kk | 文書認識システム |
CN104464736A (zh) * | 2014-12-15 | 2015-03-25 | 北京百度网讯科技有限公司 | 语音识别文本的纠错方法和装置 |
CN105653517A (zh) * | 2015-11-05 | 2016-06-08 | 乐视致新电子科技(天津)有限公司 | 一种识别率确定方法及装置 |
CN106548778A (zh) * | 2016-10-13 | 2017-03-29 | 北京云知声信息技术有限公司 | 一种字符转换规则的生成方法及装置 |
CN108595431A (zh) * | 2018-04-28 | 2018-09-28 | 海信集团有限公司 | 语音交互文本纠错方法、装置、终端及存储介质 |
CN109918485A (zh) * | 2019-01-07 | 2019-06-21 | 口碑(上海)信息技术有限公司 | 语音识别菜品的方法及装置、存储介质、电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111862955A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20220035222A (ko) | 음성 인식 오류 정정 방법, 관련 디바이스들, 및 판독 가능 저장 매체 | |
CN110364142B (zh) | 语音音素识别方法和装置、存储介质及电子装置 | |
CN103430232B (zh) | 利用设备停靠情境的语音识别 | |
CN1667699B (zh) | 为字母-声音转换生成有互信息标准的大文法音素单元 | |
CN111862955B (zh) | 一种语音识别方法与终端、计算机可读存储介质 | |
CN111583909B (zh) | 一种语音识别方法、装置、设备及存储介质 | |
CN110457689B (zh) | 语义处理方法及相关装置 | |
CN107293296A (zh) | 语音识别结果纠正方法、装置、设备及存储介质 | |
CN111739514B (zh) | 一种语音识别方法、装置、设备及介质 | |
CN111292752B (zh) | 一种用户意图识别方法、装置、电子设备及存储介质 | |
CN112599117B (zh) | 模型训练、语音识别方法及装置、电子设备及存储介质 | |
CN110310619A (zh) | 多音字预测方法、装置、设备及计算机可读存储介质 | |
CN111401259B (zh) | 模型训练方法、系统、计算机可读介质和电子设备 | |
CN111539199B (zh) | 文本的纠错方法、装置、终端、及存储介质 | |
CN108959388B (zh) | 信息生成方法及装置 | |
CN102439660A (zh) | 基于置信度得分的语音标签方法和装置 | |
CN111402894A (zh) | 语音识别方法及电子设备 | |
CN111414959B (zh) | 图像识别方法、装置、计算机可读介质和电子设备 | |
CN112488157A (zh) | 一种对话状态追踪方法、装置、电子设备及存储介质 | |
CN110210035B (zh) | 序列标注方法、装置及序列标注模型的训练方法 | |
CN114822519A (zh) | 中文语音识别纠错方法、装置及电子设备 | |
CN112836522B (zh) | 语音识别结果的确定方法及装置、存储介质及电子装置 | |
CN116110059A (zh) | 一种基于深度学习的离线手写数学公式识别的方法 | |
CN112017670B (zh) | 一种目标账户音频的识别方法、装置、设备及介质 | |
CN109582930B (zh) | 一种滑动输入解码方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |