语音识别结果纠错方法及装置、计算机可读存储介质与流程

    专利查询2023-07-01  82



    1.本技术涉及自然语言处理领域,尤其涉及一种语音识别结果纠错方法及装置、计算机可读存储介质。


    背景技术:

    2.随着通信技术的发展,高速、低延迟的5g时代即将到来,社会对人工智能领域各项技能的需求也越来越高,语音识别的应用也越来越广泛,包括机器人、智能音箱、语音助手等。因此,语音识别的准确性也成了影响一个智能系统的重要因素。语音识别结果的准确性不仅影响着对话的自然性、流畅性,也对下游的自然语言处理工作的准确性起着至关重要的作用。
    3.由于语音识别系统一般在语音识别的环节采用通用的语料进行识别,在特定的场景内的一些常用表达方式和专有名词很难被识别。因此,很多系统在进行自然语言处理之前,会结合已知信息对语音识别进行纠错,以提高自然语言处理的效果。目前常见的语音识别纠错方式主要有通过人工建立纠错词库,维护一个常见的语音识别错误词典。遇到词库中的词,符合其人为设定的规则就将该输入修改为其纠错词库中映射的假定其正确的修改结果。
    4.但现有的语音识别纠错方案中,忽略了不同用户或用户群体之间的差异。语音识别的识别对象因地域、教育背景、生理特征等因素导致每个人都有一定的发音习惯,比如有的人不能很好的区分“l”和“n”、有的人不能区分平卷舌、有的人不能区分前后鼻音、有的人儿化音重、有的人分不清“r”和“n”等等。这些个性化的发音习惯也是纠错过程中的重要信息。但是现有的方案中并没有对这些差异进行区分,由此导致语音识别纠错能力较低。


    技术实现要素:

    5.本技术实施例的目的是提供一种语音识别结果纠错方法及装置、计算机可读存储介质,用以解决现有语音识别结果纠错能力低的问题。
    6.为了解决上述技术问题,本说明书是这样实现的:
    7.第一方面,提供了一种语音识别结果纠错方法,包括:将用户输出语音对应的语音识别结果的文本转换为对应的第一拼音序列;根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度;基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错。
    8.可选的,根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度,包括:分别计算所述第一拼音序列与所述多个第二拼音序列之间的编辑距离,所述编辑
    距离为将所述第一拼音序列编辑为每个对应第二拼音序列的操作步骤数量;根据每个第二拼音序列对应的编辑距离减去所述第一拼音序列中各个第一音节对应所述第二拼音序列中第二音节的混淆概率的差值,确定所述第二拼音序列与所述第一拼音序列的相似度;根据最小差值对应的第二拼音序列,确定所述相似度最高的第二拼音序列。
    9.可选的,还包括:记录所述操作步骤编辑的所述第一拼音序列中的各个第一音节与所述多个第二拼音序列中与第一音节对应的第二音节的对应编辑关系;在所述多个第二拼音序列中的最高相似度大于第一预定阈值时,根据所述对应编辑关系获取所述用户将所述第一拼音序列中各个第一音节混淆为所述相似度最高的第二拼音序列中与第一音节对应的第二音节的频次,以用于确定所述第一拼音序列中各个第一音节的混淆概率。
    10.可选的,确定所述第一拼音序列中各个第一音节的混淆概率,包括:为所述用户初始化一个混淆矩阵,所述混淆矩阵为以预定数量k的拼音音节和1个空音节分别为行和列组成的k+1维方阵,其中所述混淆矩阵中元素值m
    ij
    表示所述混淆矩阵中第i个音节被识别为第j个音节的混淆概率,以用于确定所述多个第二拼音序列中的最高相似度;根据所述用户后续将对应第一拼音序列中各个第一音节混淆为相似度最高的第二拼音序列中与第一音节对应的第二音节的频次和对应编辑关系的记录次数,确定所述第一拼音序列中各个第一音节的当前混淆概率;用所述第一拼音序列中各个第一音节的当前混淆概率,迭代更新所述用户的混淆矩阵中对应元素值的混淆概率。
    11.可选的,还包括:判断每次迭代更新后所述用户的混淆矩阵的混淆概率是否收敛;在所述混淆概率收敛的情况下,将所述用户的混淆矩阵与其他用户具有收敛混淆概率的混淆矩阵合并为共用混淆矩阵。
    12.可选的,将所述用户的混淆矩阵与其他用户具有收敛混淆概率的混淆矩阵合并为共用混淆矩阵,包括:计算所述用户的混淆矩阵与所述其他用户具的混淆矩阵之间的相似度;在所述相似度大于第二预定阈值时,对所述用户的混淆矩阵与所述其他用户具的混淆矩阵包括的各个元素进行加权平均计算,以得到所述共用混淆矩阵。
    13.可选的,所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率包括以下至少一种:所述第一拼音序列中的非空音节被混淆为所述第二拼音序列中的空音节的概率;所述第一拼音序列中的空音节被混淆为所述第二拼音序列中非空音节的概率;所述第一拼音序列中的非空音节被混淆为所述第二拼音序列中非空音节的概率。
    14.可选的,基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错,包括:在所述多个第二拼音序列中的最高相似度大于第一预定阈值时,将所述相似度最高的第二拼音序列确定为所述用户输出语音对应的正确拼音序列。
    15.第二方面,提供了一种语音识别结果纠错装置,包括处理器和与所述存储器电连接的处理器,所述存储器存储有可在所述处理器运行的计算机程序,该计算机程序被该处理器执行时实现如第一方面所述的方法的步骤。
    16.第三方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现如第一方面所述的方法的步骤。
    17.在本技术实施例中,通过将用户输出语音对应的语音识别结果的文本转换为对应的第一拼音序列,根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距
    离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度,以及基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错,如此通过设置拼音混淆概率,在区分用户对不同的音节之间的发音近似程度的同时,避免了偶然事件对整个纠错系统的影响,提高了纠错力度和纠错能力。为不同用户设计个性化混淆矩阵区分不同用户的发音习惯,避免少数发音有特点的群体被主流发音习惯同化而产生大量的为纠正错误。
    附图说明
    18.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
    19.图1是本技术实施例的语音识别结果纠错方法的流程示意图。
    20.图2是本技术实施例的拼音序列相似度确定步骤流程示意图。
    21.图3本技术实施例的语音识别结果纠错方法的整体示例示意图。
    22.图4是本技术实施例的语音识别结果纠错装置的结构示意图。
    具体实施方式
    23.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。本技术中附图编号仅用于区分方案中的各个步骤,不用于限定各个步骤的执行顺序,具体执行顺序以说明书中描述为准。
    24.为了解决现有技术中存在的问题,本技术实施例提供一种语音识别结果纠错方法,如图1所示,图1是本技术实施例的语音识别结果纠错方法的流程示意图。该方法包括以下步骤:
    25.步骤102,将用户输出语音对应的语音识别结果的文本转换为对应的第一拼音序列。
    26.用户输出语音识别是以用户语音为研究对象,通过语音信号处理和模式识别将用户的输入转换为相应的文本。语音识别主要包括预处理、特征提取、声学模型、字典、语言模型、解码等主要流程,其中语音识别的基础是提取待识别语音的各种有效特征,形成待识别的语音模式,并与存储在计算机内存中的样本模式相比较,再通过模式分类方法进行识别。本技术实施例可以采用现有传统的语音识别技术,这里不再展开说明。
    27.在得到用户语音对应的识别文本后,基于字典模型将其转换为对应的拼音序列。将语音识别的文本替换为拼音序列,为了纠正语音识别中通用语言模型不能识别个性化表达而产生的错误,需要降低该部分的准确率而提高召回率。排除拼音和音调带来的影响(如果数据量足够大,也可以在计算混淆度的时候以带音调的音节为基本单位)。
    28.步骤104,根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似
    度。
    29.预定语料库可以包括通用的语料库和/或特定场景的专有语料库,对于用户在特定场景下的表达识别,可以在场景式对话系统中对每个场景使用小型的场景相关的专有语料库,用于更有效地正确识别特定的场景内的一些常用表达方式和专有名词。
    30.为了计算语料库中的每个拼音序列和用户输入语音对应的拼音序列的相似度,首先需要通过求两个序列的编辑距离的方式计算两个序列间的绝对差异。
    31.第一拼音序列和各个第二拼音序列的编辑距离,是将可能存在识别错误音节的第一拼音序列编辑为对应的第二拼音序列的操作步骤数量。
    32.例如,包括14个音节的序列a“w o x i h u an h e l i u l ai”和包括16个音节的序列b“w o h en x i h u an h e n i u n ai”通过编辑距离算法,将序列a编辑为序列b需要经过在序列a第2个音节“o”后增加音节“h”,然后再增加“en”,第10个音节“l”修改为“n”,第13个音节“l”修改为“n”4个步骤的操作,即计算出来序列a到序列b的编辑距离是4。
    33.混淆概率表示两个音节之间可能被用户误读的概率。假设由于某个用户发音习惯的问题,导致该用户说的音节“h”有40%的概率被语音识别系统忽略,而该用户说的“n”被语音识别系统识别为“l”的概率高达95%,则如果不能体现出这种个性化口音,引起的误识别会给相似度带来一定的影响。
    34.为了对上述口音误读导致的错误识别进行纠正,本技术引入了混淆概率的概念,即用户将输出语音对应的拼音序列中的某音节混淆为正确表达的语音对应拼音序列中与该音节对应的音节的混淆概率。
    35.用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率包括以下至少一种:所述第一拼音序列中的非空音节被混淆为所述第二拼音序列中的空音节的概率;所述第一拼音序列中的空音节被混淆为所述第二拼音序列中非空音节的概率;所述第一拼音序列中的非空音节被混淆为所述第二拼音序列中非空音节的概率。
    36.每个第一音节都对应具有被混淆为不同第二音节的概率,但是根据用户对第一音节的发音习惯,对应被混淆为不同的第二音节的概率也大小不同。
    37.可选的,在步骤104中,根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度,如图2所述包括以下步骤,图2是本技术实施例的拼音序列相似度确定步骤流程示意图。
    38.步骤202,分别计算所述第一拼音序列与所述多个第二拼音序列之间的编辑距离,所述编辑距离为将所述第一拼音序列编辑为每个对应第二拼音序列的操作步骤数量;
    39.步骤204,根据每个第二拼音序列对应的编辑距离减去所述第一拼音序列中各个第一音节对应所述第二拼音序列中第二音节的混淆概率的差值,确定所述第二拼音序列与所述第一拼音序列的相似度;
    40.步骤206,根据最小差值对应的第二拼音序列,确定所述相似度最高的第二拼音序列。
    41.在本技术实施例中,为了求得两个拼音序列之间的相似度,需要确定两个拼音序
    列之间的编辑距离以及存在误识别的两音节之间对应的混淆概率。
    42.如上文所述,编辑距离为第一拼音序列编辑为每个对应第二拼音序列的操作步骤数量。关于混淆概率的确定,首先以音节为单位,为用户初始化一个混淆矩阵m
    ij
    。这里音节可以是拼音表包括的对应声母、韵母的全部音节,或者为该用户对应的个性化发音确定的部分音节。对于一个具有k个音节的拼音表,可以将该混淆矩阵设置为以k个音节和1个空音节分别为行和列组成的k+1维方阵,即混淆矩阵的横坐标和纵坐标均为所有音节和1个空音节,其中,元素m
    ij
    为混淆矩阵中第i个音节到第j个音节的混淆概率。初始时,将混淆矩阵m
    ij
    的对角元素对应的混淆概率设置为1,其余元素对应的混淆概率都设置为0。对角元素表示对应的音节i和音节j相同,混淆概率为1,即表示语音识别时该音节不存在误读导致的识别错误。其他非对角元素的音节i和音节j表示是不同的音节,初始时设置音节i被误读为音节j的混淆概率为0,即两音节之间被识别错误的概率为100%。需要指出的是,识别的概率与混淆概率是不同的概念,二者负相关。此外,还定义了空音节和所有非空音节的映射关系,即元素m

    表示非空音节p在由于语音识别错误而被误识别为空音节φ的概率,m
    φp
    表示由于语音识别错误,将空音节φ识别为非空音节p,而导致识别为增加了一个音节p。初始设置的混淆矩阵中个元素对应的混淆概率会随着后续对该用户输出语音的识别结果进行纠错的过程中,不断迭代更新得到更新后的混淆概率,然后利用更新后的混淆概率再进行识别结果纠错,直至混淆概率的值不再变化,后面步骤会展开进行详细说明。
    43.在得到初始化的混淆矩阵之后,可以理解在步骤204中,利用编辑距离和初始化设置的混淆概率对用户输出语音对应的第一拼音序列和语料库中的各个第二拼音序列进行相似度计算。得到对应的编辑距离和混淆概率的差值,差值约小,表示两个序列约接近,约相似。则根据所计算差值中的最小差值,可以确定与第一拼音序列相似度最高的第二拼音序列。
    44.步骤106,基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错。
    45.可选的,在步骤106中,基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错,包括:在所述多个第二拼音序列中的最高相似度大于第一预定阈值时,将所述相似度最高的第二拼音序列确定为所述用户输出语音对应的正确拼音序列。
    46.也就是说,如果第二拼音序列与第一拼音序列之间的最高相似度超出预定阈值,则认为该第二拼音序列可以用于对用户输出的语音进行识别纠错,即认为第二拼音序列可以是将第一拼音序列修改为用户输出语音对应的正确拼音序列的序列。若不超出预定阈值,则认为相似度过低,纠错操作不能执行。
    47.在本技术一个实施例中,语音识别结果纠错方法还可以包括:记录所述操作步骤编辑的所述第一拼音序列中的各个第一音节与所述多个第二拼音序列中与第一音节对应的第二音节的对应编辑关系;在所述多个第二拼音序列中的最高相似度大于第一预定阈值时,根据所述对应编辑关系获取所述用户将所述第一拼音序列中各个第一音节混淆为所述相似度最高的第二拼音序列中与第一音节对应的第二音节的频次,以用于确定所述第一拼音序列中各个第一音节的混淆概率。
    48.如上文所述,将第一拼音序列编辑为各个第二拼音序列对应的音节,需要执行对应的编辑操作步骤(增加、删除或修改一个音节),因此可以在每个操作步骤编辑完成时,记录当前操作步骤涉及的第一音节和第二音节对应编辑关系,例如当前操作步骤是将第一音
    节的“l”修改为第二音节“n”,则记录的对应编辑关系。从而可体现了两个序列直接元素的对应关系。
    49.上述记录序列操作步骤中对应编辑关系的目的,是为了得到变化步骤最少,也即相似度最高的两个序列中音节的对应关系,进而在最高相似度大于第一预定阈值时,通过这种对应编辑关系可以获取并更新音节之间对应被混淆的频次。例如,对用户每次输出的语音对应的第一拼音序列编辑为相似度最高的第二拼音序列时,根据编辑距离和混淆概率将其中的音节“l”被修改音节“n”的次数,即为该音节被混淆的频次。获取第二拼音序列中的最高相似度大于第一预定阈值而执行纠错时的每个第一音节对应的混淆频次,可用于计算出音节之间的混淆概率,进而更新混淆矩阵。
    50.例如,用户输出的多条条语音第一拼音序列中的音节“l”被修改为音节“n”的记录次数为100次,例如,但是根据相似度最高的第二拼音序列执行纠错处理的频次为80次,则混淆概率可以是(100-20)/100=20%。
    51.如上文所述,最高相似度不大于预定阈值时认为相似度过低,不纠错操作。因此,此时也不存在确定音节混淆的情况。也就是说,在最高相似度不大于预定阈值时,虽然记录了两拼音序列中第一音节和第二音节的对应编辑关系,但是由于不执行纠错处理,因此不会获取对应的第一音节被纠错的频次。
    52.下面,将对混淆矩阵中混淆概率的更新进行说明。
    53.由于混淆矩阵m中元素对应的混淆概率m
    ij
    表示第i个音节到被混淆为第j个音节的概率,这里,本技术将编辑距离和混淆概率一并以改进的文本编辑距离函数d(i,j)来定义,d(i,j)表示长度为i的拼音序列a被识别为长度为j的拼音序列b这一过程的识别错误程度。
    54.并且,设置动态规划公式如下:
    55.if i=0且j=0,d(i,j)=0
    56.if i≥1且j≥1,d(i,j)=min{d(i-1,j)+(1-m

    ),d(i,j-1)+(1-m
    φj
    ),d(i-1,j-1)+(1-m
    ij
    )}
    57.在这里,混淆矩阵中m

    代表第i个音节被识别为空音节的概率,此概率不为零,因此执行增加一个音节的操作时,两个序列串的距离d(i,j)增加了(1-m

    )。同理,执行删除一个音节操作时,d(i,j)增加了(1-m
    φj
    )。当执行修改一个音节为另一音节操作时,例如将拼音表中第i个拼音变为第j个拼音,d(i,j)增加了(1-m
    ij
    )。特别的,当音节混淆矩阵为未更新的初始状态时,m
    ij
    =0(i不等于j)或1(i等于j)。
    58.如上文所述,循环过程中记录使d(i,j)变化最小,即对应两序列相似度最高的操作步骤中的音节对应编辑关系,对应编辑关系可以记录在操作序列表中。
    59.算法的具体过程如下代码表示:
    60.[0061][0062]
    上述混淆概率位于[0,1]之间,并且通过增加不同的操作对应的标识,可以记录拼音序列的音节对应编辑关系到操作序列表中。
    [0063]
    对于各个音节之间对应的混淆频次可以设置在与混淆矩阵大小对应的变化矩阵中,该变化矩阵中各元素值统计的是音节的混淆频次而非概率。当最高相似度大于预定阈值,从而可以对应的第二拼音序列对第一拼音序列执行纠错行为时,通过上述操作序列表中的记录得到两个序列的音节对应编辑关系,进而更新变化矩阵。例如,将第一拼音序列“n in h ao a”编辑为最高相似度对应的第二拼音序列“n in h ao a”的过程中,操作序列表中记录的操作为将音节“in”修改为音节“i”,并删除音节“a”,表示用户输出语音被识别错误导致“i”被识别成了“in”,一个空音节被识别成了“a”。则,此时可以将m
    s(i)s(in)
    和m
    φs(a)

    频次分别加1,其中s(x)表示x在拼音表中的序号,此时即可得到更新的变化矩阵。
    [0064]
    在得到音节对应的混淆频次之后,可以对混淆概率进行更新。可以设置对变化矩阵的更新达到预定的次数之后,再利用变化矩阵内记录的频次迭代更新混淆矩阵中的后验概率。在计算用户输入和语料库中语料之间的编辑距离的时候,计算不同音节之间混淆的后验概率并更新混淆矩阵,这样纠错处理过程中既在应用混淆矩阵,也在不断的更新混淆矩阵,以达到校正语音识别结果的效果。
    [0065]
    在预定次数的纠错处理后,用户的行为会呈现出一定的规律性,而不再显得随机。这时利用变化矩阵中的混淆频次对混淆矩阵进行更新,可以使得混淆矩阵随着用户的使用更能反映用户发音模式。
    [0066]
    在一个实施例中,还包括:判断每次迭代更新后所述用户的混淆矩阵的混淆概率是否收敛;在所述混淆概率收敛的情况下,将所述用户的混淆矩阵与其他用户具有收敛混淆概率的混淆矩阵合并为共用混淆矩阵。
    [0067]
    将所述用户的混淆矩阵与其他用户具有收敛混淆概率的混淆矩阵合并为共用混淆矩阵,包括:计算所述用户的混淆矩阵与所述其他用户具的混淆矩阵之间的相似度;在所述相似度大于第二预定阈值时,对所述用户的混淆矩阵与所述其他用户具的混淆矩阵包括的各个元素进行加权平均计算,以得到所述共用混淆矩阵。
    [0068]
    混淆矩阵更新次数达到一定数值使得混淆概率收敛不再变化或变化很小后,可标记该混淆矩阵为可合并的混淆矩阵。计算可合并的混淆矩阵之间的相似度,这里相似度使用累加两个矩阵元素之间差的绝对值来计算。当发现n个(n》1)混淆矩阵的相似度超过阈值时,将这n个混淆矩阵对每个元素做加权平均,其中不同用户对应的权重可以不同,例如某个用户参与语音识别结果纠错的次数,对话多,其对应的混淆矩阵对应的混淆概率更能准确反映对应音节的混淆情况。因此,可以设置具有较大的权重,反之设置较小的权重。得到新的混淆矩阵为这n个混淆矩阵原本的用户所共用,合并后的混淆矩阵和用户群成为更大的用户群。如此,通话对用户的个性化混淆矩阵定期执行合并行为,既能降低维护成本,又能作为数据分析的参考,挖掘同一用户群体中用户的共性信息。
    [0069]
    本技术通过将用户输出语音对应的语音识别结果的文本转换为对应的第一拼音序列,根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度,以及基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错,如此通过设置拼音混淆概率,在区分用户对不同的音节之间的发音近似程度的同时,避免了偶然事件对整个纠错系统的影响,提高了纠错力度和纠错能力。为不同用户设计个性化混淆矩阵区分不同用户的发音习惯,避免少数发音有特点的群体被主流发音习惯同化而产生大量的为纠正错误。
    [0070]
    此外,本技术在设置混淆概率的时候引入了空音节,记录了每个音节到空音节、空音节到每个音节之间的混淆矩阵,可以在一定程度上反应出语音识别系统对特定的用户经常会删除、增加哪些音节,进而提高召回率。
    [0071]
    下面参考图3,图3为本技术实施例的语音识别结果纠错方法的整体示例示意图。
    [0072]
    如图3所示,主要分为两个部分:拼音检索和矩阵更新。
    [0073]
    拼音检索包括以下步骤:
    [0074]
    步骤302,对于每次的用户访问,针对用户输出语音的语音识别结果,先将对应的文本转化为拼音,得到对应的拼音序列;
    [0075]
    步骤304:将拼音序列与通用或特定场景语料库中的多个拼音序列,结合音节之间对应的混淆概率计算多个编辑距离,其中最初是利用初始化混淆矩阵对应的混淆矩阵中的混淆概率,后续会根据步骤312中混淆矩阵的修改来更新;
    [0076]
    步骤306:查找编辑距离最小值,并判断该最小值是否大于预定的阈值,若是大于,则得到最相似序列;
    [0077]
    矩阵更新包括以下步骤:
    [0078]
    步骤308:根据步骤306计算编辑距离记录的编辑关系中获取的音节混淆频次,更新混淆矩阵对应的变化矩阵中的混淆频次数值;
    [0079]
    步骤310:判断混淆矩阵变化矩阵更新达到规定条件;
    [0080]
    步骤312:利用变化矩阵中的混淆频次对混淆矩阵进行修改更新,得到的更新混淆矩阵,并用于下次用户访问时对应步骤304的编辑距离计算;
    [0081]
    步骤314:判断混淆矩阵达到合并条件;
    [0082]
    步骤316:将满足合并条件的多个用户对应的混淆矩阵合并为新的混淆矩阵。
    [0083]
    可选的,本技术的实施例还提供一种语音识别结果纠错装置,图4是本技术实施例的语音识别结果纠错装置的结构示意图。如图4所示,该实施例的语音识别结果纠错装置包括存储器2200和与所述存储器2200电连接的处理器2400,所述存储器2200存储有可在所述处理器2400运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任意一种语音识别结果纠错方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
    [0084]
    本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述任意一种语音识别结果纠错方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
    [0085]
    需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
    ……”
    限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
    [0086]
    通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。
    [0087]
    上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体
    实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。

    技术特征:
    1.一种语音识别结果纠错方法,其特征在于,包括:将用户输出语音对应的语音识别结果的文本转换为对应的第一拼音序列;根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度;基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错。2.如权利要求1所述的方法,其特征在于,根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度,包括:分别计算所述第一拼音序列与所述多个第二拼音序列之间的编辑距离,所述编辑距离为将所述第一拼音序列编辑为每个对应第二拼音序列的操作步骤数量;根据每个第二拼音序列对应的编辑距离减去所述第一拼音序列中各个第一音节对应所述第二拼音序列中第二音节的混淆概率的差值,确定所述第二拼音序列与所述第一拼音序列的相似度;根据最小差值对应的第二拼音序列,确定所述相似度最高的第二拼音序列。3.如权利要求2所述的方法,其特征在于,还包括:记录所述操作步骤编辑的所述第一拼音序列中的各个第一音节与所述多个第二拼音序列中与第一音节对应的第二音节的对应编辑关系;在所述多个第二拼音序列中的最高相似度大于第一预定阈值时,根据所述对应编辑关系获取所述用户将所述第一拼音序列中各个第一音节混淆为所述相似度最高的第二拼音序列中与第一音节对应的第二音节的频次,以用于确定所述第一拼音序列中各个第一音节的混淆概率。4.如权利要求3所述的方法,其特征在于,确定所述第一拼音序列中各个第一音节的混淆概率,包括:为所述用户初始化一个混淆矩阵,所述混淆矩阵为以预定数量k的拼音音节和1个空音节分别为行和列组成的k+1维方阵,其中所述混淆矩阵中元素值m
    ij
    表示所述混淆矩阵中第i个音节被识别为第j个音节的混淆概率,以用于确定所述多个第二拼音序列中的最高相似度;根据所述用户后续将对应第一拼音序列中各个第一音节混淆为相似度最高的第二拼音序列中与第一音节对应的第二音节的频次和对应编辑关系的记录次数,确定所述第一拼音序列中各个第一音节的当前混淆概率;用所述第一拼音序列中各个第一音节的当前混淆概率,迭代更新所述用户的混淆矩阵中对应元素值的混淆概率。5.如权利要求4所述的方法,其特征在于,还包括:判断每次迭代更新后所述用户的混淆矩阵的混淆概率是否收敛;在所述混淆概率收敛的情况下,将所述用户的混淆矩阵与其他用户具有收敛混淆概率的混淆矩阵合并为共用混淆矩阵。6.如权利要求5所述的方法,其特征在于,将所述用户的混淆矩阵与其他用户具有收敛
    混淆概率的混淆矩阵合并为共用混淆矩阵,包括:计算所述用户的混淆矩阵与所述其他用户具的混淆矩阵之间的相似度;在所述相似度大于第二预定阈值时,对所述用户的混淆矩阵与所述其他用户具的混淆矩阵包括的各个元素进行加权平均计算,以得到所述共用混淆矩阵。7.如权利要求1所述的方法,其特征在于,所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率包括以下至少一种:所述第一拼音序列中的非空音节被混淆为所述第二拼音序列中的空音节的概率;所述第一拼音序列中的空音节被混淆为所述第二拼音序列中非空音节的概率;所述第一拼音序列中的非空音节被混淆为所述第二拼音序列中非空音节的概率。8.如权利要求1或3所述的方法,其特征在于,基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错,包括:在所述多个第二拼音序列中的最高相似度大于第一预定阈值时,将所述相似度最高的第二拼音序列确定为所述用户输出语音对应的正确拼音序列。9.一种语音识别结果纠错装置,其特征在于,包括:存储器和与所述存储器电连接的处理器,所述存储器存储有可在所述处理器运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。

    技术总结
    本申请实施例公开了一种语音识别结果纠错方法及装置、计算机可读存储介质,该方法包括:将用户输出语音对应的语音识别结果的文本转换为对应的第一拼音序列;根据所述第一拼音序列和预定语料库中的多个第二拼音序列的编辑距离,以及所述用户将所述第一拼音序列中各个第一音节混淆为第二拼音序列中与第一音节对应的第二音节的混淆概率,分别确定所述多个第二拼音序列与所述第一拼音序列的相似度;基于相似度最高的第二拼音序列对所述用户的语音识别结果进行纠错。本申请实施例的方案可以提高语音识别的纠错能力。提高语音识别的纠错能力。提高语音识别的纠错能力。


    技术研发人员:胡洪涛 徐景成 胡珉 朱耀磷 李想 彭成高 黄毅 李赫男
    受保护的技术使用者:中国移动通信集团有限公司
    技术研发日:2020.11.23
    技术公布日:2022/5/25
    转载请注明原文地址:https://tc.8miu.com/read-17281.html

    最新回复(0)