一种语音识别结果纠错方法

文档序号:2836825阅读:535来源:国知局
专利名称:一种语音识别结果纠错方法
技术领域
本发明涉及语音识别技术领域,特别是一种语音识别结果纠错方法。
背景技术
目前大部分语音识别系统采用N元文法(Ngram)语言模型,由于这种模型存在一种不完善的独立性假设,即假设当前词只依赖该词之前的N-1个词,其局限性表现在它只是前N-1个词的不确定性推理,导致识别结果往往出现毫无意义的句子或片段。

发明内容
本发明提出了一种语音识别结果纠错方法,能够利用可变长纠错模版,根据置信度和声学混淆度对识别结果进行纠错。本发明可用于大词汇量连续语音识别系统。本发明主要有如下特征一是以语料库中的连续语言片段作为纠错模版,利用语料库建立纠错模版库;二是对纠错模版库建立索引,使用快速搜索技术对纠错模版库进行快速查找;三是依据纠错模式,利用置信度将识别结果切分成短的识别片段,并将识别片段中的可信赖部分提交的纠错模版系统进行快速查找,得到与识别片段相关性高的纠错模版候选;四是利用声学混淆度矩阵从纠错模版候选中挑选与识别片段声学特征相近的模版进行替换纠错。
技术方案一种语音识别结果纠错方法,包括以下步骤1)识别系统对输入语音进行识别运算和置信度计算,得到带有置信度的识别结果;
2)依据纠错模式,按照置信度的高低将识别结果切分成小的识别片段;3)将所得到的识别片段输入到纠错模版检索系统,得到与识别片段相关性高的纠错模版候选列表;4)计算识别片段与候选列表中纠错模版的声学混淆度,挑选其中声学相似度最高的模版,当识别片断与该纠错模版的相似程度大于一个可信赖的门限时,使用纠错模版代替该识别结果片段;5)将纠错后的片段合并,得到纠错后的识别结果。
所述的语音识别结果纠错方法,还包括,在对输入语音进行识别运算的同时进行置信度计算,得到带有置信度的识别结果的步骤。
所述的一种语音识别结果纠错方法,还包括,根据置信的高低将识别结果切分成小的识别片段时,首先设置置信度门限CM-threshold和系统纠错模板最长字数max-var-length,置信度高于CM-threshold时认为识别结果是可信赖的,切分后的识别片段中可信赖的字数不得大于max-var-length。
所述的语音识别结果纠错方法,还包括,将识别结果分块,连续的置信度高于或低于CM-threshold的字划为一个模块的步骤,即将识别结果划为一个或多个(A,x,B)模式构成,其中A、B为置信度高于CM-threshold的模块,x为置信度低于CM-threshold的模块,A和B最多一个为空模块。
所述的语音识别结果纠错方法,还包括,对于识别结果中所有的低置信度模块x,若A的长度大于或等于max-var-length,则将A中与x相邻的长为max-var-length的部分,设为sub-A,与x组成片段(sub-A,x),sub-A用来搜索纠错模版库,sub-A的长度不固定的步骤。
所述的语音识别结果纠错方法,还包括,对于识别结果中所有的低置信度模块x,若A长度小于max-var-length,则将B中与x相邻的部分sub-B,与A、x组成片段(A,x,sub-B),A和sub-B用来搜索纠错模版库的步骤,A和sub-B最多一个可以为空模块,其中A和sub-B的长度和不得大于max-var-length,A和sub-B的长度不固定。
所述的语音识别结果纠错方法,还包括,将识别结果切分成片段后,将每个片段的可信赖部分在纠错模版库中进行快速查找,得到一个或多个与识别片段相关性高的纠错模版的步骤。
所述的语音识别结果纠错方法,还包括,纠错模版检索系统包括两个部分,第一部分是纠错模版索引的建立,第二部分是纠错模版的搜索。
所述的语音识别结果纠错方法,还包括,其中第一部分的基本原理是,把语料库中所有连续的字数在6到12之间的语言片段作为纠错模版,首先从语料库中提取出所有的纠错模版,然后采用倒置文件作为索引结构对纠错模版库建立索引,为了减小倒置文件的大小,需要对倒置文件压缩。
所述的语音识别结果纠错方法,还包括,其中第二部分的基本原理是,查询时首先将可信赖部分转换为布尔查询,在索引库中进行快速搜索,针对语音识别结果具有时序性、局部性的特点,在转换为布尔查询的时候,需要加入对可信赖部分的时序性要求和词与词间的局部性要求。
所述的语音识别结果纠错方法,还包括,对于纠错模版搜索返回的所有结果,使用纠错模版与识别片断的声学混淆度挑选最优模版的步骤,对于识别片段A和纠错模版候选列表中每一个模版Ti,计算A与Ti的混淆度C(A,Ti),当其中的最大值maxC(A,Ti)超过一个可信赖的门限时,我们使用该纠错模版替换识别片段,若maxC(A,Ti)小于该门限,则保留识别片段。
所述的语音识别结果纠错方法,还包括,纠错模版与识别片断的声学混淆度的计算包括三个部分构成,第一部分是汉语声韵母识别混淆情况的统计,第二部分是汉语声韵母识别混淆度的后验概率计算,第三部分是识别片断与纠错模版的模糊整体匹配。
所述的语音识别结果纠错方法,还包括,第一部分的基本原理是,对语音数据库进行识别,并通过以下方式得到所有声母之间的混淆情况和所有韵母之间的混淆情况假设声韵母之间不会产生混淆,若其中一个样本其识别结果为拼音串C1′V1′C2′V2′…Cm′Vm′,该识别结果与正确的C1V1C2V2…CnVn进行动态对整,使得其能对上的拼音串最大,这样就能得到大量的拼音串对,即(C1′,C1),(V1′,V1)…(Cm′,Cn)(Vm′,Vn),统计这些拼音串对的出现次数,得到每个声母的样本总数和它被识别为其他每个声母的次数,以及得到每个韵母的样本总数和它被识别为其他每个韵母的次数。
所述的语音识别结果纠错方法,还包括,其中第二部分的基本原理是,根据第一部分的统计结果,首先计算每个声母被识别为其他声母的概率,Ci被混淆成Cj的模糊度,其计算公式为P(Cj|Ci)=Σ(Ci,Cj)|Ci|]]>其中∑(Ci,Cj)为Ci被识别为Cj的总数,|Ci|为Ci样本总数,当识别结果为Ci时,正确结果应为Cj的后验概率P~(Cj|Ci)=P(Ci|Cj)P(Cj)ΣkP(Ci|Ck)P(Ck)]]>其中P(Cj)=|Cj|Σ|Ci|,]]>∑|Ci|表示所有声母的样本总数,韵母的计算方法与声母类似。
所述的语音识别结果纠错方法,还包括,其中第三块的基本原理是,设识别片段A的拼音串为C1′V1′C2′V2′…Cm′Vm′设纠错模版候选列表中的第i个模版Ti的拼音串为C1V1C2V2…CnVn,则定义A与Ti的声学混淆度C(A,Ti)为找到一个对齐(1,i1),(2,i2)…(k,ik)…(m,im),该对齐使得P~(Ti|A)=ΠP~(Ck|Cik)P~(Vk|Vik)]]>取得最大值,定义该最大值为A与Ti的声学混淆度。
所述的语音识别结果纠错方法,还包括,在实际应用时,首先对后验概率取对数后计算,将问题转化为使得LogP~(Ti|A)=ΣLogP~(Ck|Cik)+ΣLogP~(Vk|Vik)]]>取得最大值,此时使用该最大值作为A与Ti的对数声学混淆度。
具体实施例方式
本发明主要有三个模块,一是利用置信度对识别结果的切分,二是纠错模版候选列表的获得,三是识别片断与纠错模版声学混淆度的计算。下面加以详细说明。
利用置信度对识别结果的切分。首先设置置信度门限CM-threshold和系统纠错模板最长字数max-var-length,置信度高于CM-threshold的识别结果认为是可信赖的,然后对识别结果进行切分,步骤如下1.将识别结果分块,连续的置信度高于或低于CM-threshold的字划为一个模块,将识别结果划为一个或多个(A,x,B)结构构成,其中A、B为置信度高于CM-threshold的模块,x为置信度低于CM-threshold的模块,A和B最多一个为空模块。
2.对于识别结果中所有的低置信度模块xa)若A的长度大于或等于max-var-length,则将A中与x相邻的长为max-var-length的部分,设为sub-A,与x组成片段(sub-A,x),sub-A用来搜索纠错模版库,sub-A的长度不固定;b)若A长度小于max-var-length,将B中与x相邻的部分sub-B,与A、x组成片段(A,x,sub-B),A和sub-B用来搜索纠错模版库,A和sub-B最多一个可以为空模块。其中A和sub-B的长度和不得大于max-var-length,A和sub-B的长度不固定。
纠错模版候选列表的获得。将识别结果切分成片段后,将每个片段中的可信赖部分提交到纠错模版检索系统,得到与识别片段相关性高的纠错模版候选。纠错模版检索系统包括两个部分,第一部分是纠错模版索引的建立,第二部分是对纠错模版库的快速搜索。
其中第一部分的基本原理是,把语料库中所有连续的字数在6到12之间的语言片段作为纠错模版,首先从语料库中提取出所有的纠错模版,然后采用倒置文件作为索引结构对纠错模版库建立索引。为了减小倒置文件的大小,需要对倒置文件压缩。
其中第二部分的基本原理是,首先将片段中的可信赖部分转换为布尔查询,在索引库中进行快速检索。针对语音识别结果具有时序性、局部性特点,在转换为布尔查询的时候,需要加入对片段中可信赖部分的时序性要求和词与词间的局部性要求。
声学混淆度的计算。纠错模版往往获得一个或多个候选,这时使用纠错模版与识别片断的声学混淆度挑选最优模版。对于识别片段A和纠错模版候选列表中每一个模版Ti,计算A与Ti的混淆度C(A,Ti),当其中的最大值maxC(A,Ti)超过一个可信赖的门限时,我们使用该纠错模版替换识别片段,若maxC(A,Ti)小于该门限,则保留识别片段。
混淆度的计算包括三个部分构成,第一部分是汉语声韵母识别混淆情况的统计,第二部分是汉语声韵母识别混淆度的后验概率计算,第三部分是识别片断与纠错模版的模糊整体匹配。
其中第一部分的基本原理是,对语音数据库进行识别,并通过以下方式得到所有声母之间的混淆情况和所有韵母之间的混淆情况假设声韵母之间不会产生混淆,若其中一个样本其识别结果为拼音串C1′V1′C2′V2′…Cm′Vm′,该识别结果与正确的C1V1C2V2…CnVn进行动态对整,使得其能对上的拼音串最大,这样就能得到大量的拼音串对,即(C1′,C1),(V1′,V1)…(Cm′,Cn)(Vm′,Vn),统计这些拼音串对的出现次数,得到每个声母的样本总数和它被识别为其他每个声母的次数,以及得到每个韵母的样本总数和它被识别为其他每个韵母的次数。
其中第二部分的基本原理是,根据第一部分的统计结果,首先计算每个声母被识别为其他声母的概率,Ci被混淆成Cj的模糊度,其计算公式为P(Cj|Ci)=Σ(Ci,Cj)|Ci|]]>其中∑(Ci,Cj)表示Ci被识别为Cj的总数,|Ci|表示Ci样本总数,当识别结果为Ci时正确结果应为Cj的后验概率P~(Cj|Ci)=P(Ci|Cj)P(Cj)ΣkP(Ci|Ck)P(Ck)]]>其中P(Cj)=|Cj|Σ|Ci|,]]>∑|Ci|表示所有声母的样本总数。
其中第三块的基本原理是,设识别片段A的拼音串为C1′V1′C2′V2′…Cm′Vm′,设纠错模版候选列表中的第i个模版Ti的拼音串为C1V1C2V2…CnVn,则定义A与Ti的声学混淆度C(A,Ti)为找到一个对齐(1,i1),(2,i2)…(k,ik)…(m,im),该对齐使得P~(Ti|A)=ΠP~(Ck|Cik)P~(Vk|Vik)---(1)]]>取得最大值,定义该最大值为A与Ti的声学混淆度。
在实际应用时,首先对后验概率取对数后计算,将问题转化为使得LogP~(Ti|A)=ΣLogP~(Ck|Cik)+ΣLogP~(Vk|Vik)]]>取得最大值,此时使用该最大值作为A与Ti的对数声学混淆度。
权利要求
1.一种语音识别结果纠错方法,包括以下步骤1)识别系统对输入语音进行识别运算和置信度计算,得到带有置信度的识别结果;2)依据纠错模式,按照置信度的高低将识别结果切分成小的识别片段;3)将所得到的识别片段输入到纠错模版检索系统,得到与识别片段相关性高的纠错模版候选列表;4)计算识别片段与候选列表中纠错模版的声学混淆度,挑选其中声学相似度最高的模版,当识别片断与该纠错模版的相似程度大于一个可信赖的门限时,使用纠错模版代替该识别结果片段;5)将纠错后的片段合并,得到纠错后的识别结果。
2.根据权利要求1所述的语音识别结果纠错方法,其特征在于,还包括,在对输入语音进行识别运算的同时进行置信度计算,得到带有置信度的识别结果的步骤。
3.根据权利要求1所述的一种语音识别结果纠错方法,其特征在于,还包括,根据置信的高低将识别结果切分成小的识别片段时,首先设置置信度门限CM-threshold和系统纠错模板最长字数max-var-length,置信度高于CM-threshold时认为识别结果是可信赖的,切分后的识别片段中可信赖的字数不得大于max-var-length。
4.根据权利要求1或3所述的语音识别结果纠错方法,其特征在于,还包括,将识别结果分块,连续的置信度高于或低于CM-threshold的字划为一个模块的步骤,即将识别结果划为一个或多个(A,x,B)模式构成,其中A、B为置信度高于CM-threshold的模块,x为置信度低于CM-threshold的模块,A和B最多一个为空模块。
5.根据权利要求1或3或4所述的语音识别结果纠错方法,其特征在于,还包括,对于识别结果中所有的低置信度模块x,若A的长度大于或等于max-var-length,则将A中与x相邻的长为max-var-length的部分,设为sub-A,与x组成片段(sub-A,x),sub-A用来搜索纠错模版库,sub-A的长度不固定的步骤。
6.根据权利要求1或3或4所述的语音识别结果纠错方法,其特征在于,还包括,对于识别结果中所有的低置信度模块x,若A长度小于max-var-length,则将B中与x相邻的部分sub-B,与A、x组成片段(A,x,sub-B),A和sub-B用来搜索纠错模版库的步骤,A和sub-B最多一个可以为空模块,其中A和sub-B的长度和不得大于max-var-length,A和sub-B的长度不固定。
7.根据权利要求1或5或6所述的语音识别结果纠错方法,其特征在于,还包括,将识别结果切分成片段后,将每个片段的可信赖部分在纠错模版库中进行快速查找,得到一个或多个与识别片段相关性高的纠错模版的步骤。
8.根据权利要求1或7所述的语音识别结果纠错方法,其特征在于,还包括,纠错模版检索系统包括两个部分,第一部分是纠错模版索引的建立,第二部分是纠错模版的搜索。
9.根据权利要求1或8所述的语音识别结果纠错方法,其特征在于,还包括,其中第一部分的基本原理是,把语料库中所有连续的字数在6到12之间的语言片段作为纠错模版,首先从语料库中提取出所有的纠错模版,然后采用倒置文件作为索引结构对纠错模版库建立索引,为了减小倒置文件的大小,需要对倒置文件压缩。
10.根据权利要求1或8所述的语音识别结果纠错方法,其特征在于,还包括,其中第二部分的基本原理是,查询时首先将可信赖部分转换为布尔查询,在索引库中进行快速搜索,针对语音识别结果具有时序性、局部性的特点,在转换为布尔查询的时候,需要加入对可信赖部分的时序性要求和词与词间的局部性要求。
11.根据权利要求1或7所述的语音识别结果纠错方法,其特征在于,还包括,对于纠错模版搜索返回的所有结果,使用纠错模版与识别片断的声学混淆度挑选最优模版的步骤,对于识别片段A和纠错模版候选列表中每一个模版Ti,计算A与Ti的混淆度C(A,Ti),当其中的最大值maxC(A,Ti)超过一个可信赖的门限时,我们使用该纠错模版替换识别片段,若maxC(A,Ti)小于该门限,则保留识别片段。
12.根据权利要求1或11所述的语音识别结果纠错方法,其特征在于,还包括,纠错模版与识别片断的声学混淆度的计算包括三个部分构成,第一部分是汉语声韵母识别混淆情况的统计,第二部分是汉语声韵母识别混淆度的后验概率计算,第三部分是识别片断与纠错模版的模糊整体匹配。
13.根据权利要求1或12所述的语音识别结果纠错方法,其特征在于,还包括,第一部分的基本原理是,对语音数据库进行识别,并通过以下方式得到所有声母之间的混淆情况和所有韵母之间的混淆情况假设声韵母之间不会产生混淆,若其中一个样本其识别结果为拼音串C1′V1′C2′V2′…Cm′Vm′,该识别结果与正确的C1V1C2V2…CnVn进行动态对整,使得其能对上的拼音串最大,这样就能得到大量的拼音串对,即(C1′,C1),(V1′,V1)…(Cm′,Cn)(Vm′,Vn),统计这些拼音串对的出现次数,得到每个声母的样本总数和它被识别为其他每个声母的次数,以及得到每个韵母的样本总数和它被识别为其他每个韵母的次数。
14.根据权利要求1或12或13所述的语音识别结果纠错方法,其特征在于,还包括,其中第二部分的基本原理是,根据第一部分的统计结果,先计算每个声母被识别为其他声母的概率,Ci被混淆成Cj的模糊度,其计算公式为P(Cj|Ci)=Σ(Ci,Cj)|Ci|]]>其中∑(Ci,Cj)为Ci被识别为Cj的总数,|Ci|为Ci样本总数,当识别结果为Ci时,正确结果应为Cj的后验概率P~(Cj|Ci)=P(Ci|Cj)P(Cj)ΣkP(Ci|Ck)P(Ck)]]>其中P(Cj)=|Cj|Σ|Ci|,]]>∑|Ci|表示所有声母的样本总数,韵母的计算方法与声母类似。
15.根据权利要求1或12所述的语音识别结果纠错方法,其特征在于,还包括,其中第三块的基本原理是,设识别片段A的拼音串为C1′V1′C2′V2′…Cm′Vm′设纠错模版候选列表中的第i个模版Ti的拼音串为C1V1C2V2…CnVn,则定义A与Ti的声学混淆度C(A,Ti)为找到一个对齐(1,i1),(2,i2)…(k,ik)…(m,im),该对齐使得P~(Ti|A)=ΠP~(Ck|Cik)P~(Vk|Vik)]]>取得最大值,定义该最大值为A与Ti的声学混淆度。
16.根据权利要求1或12或15所述的语音识别结果纠错方法,其特征在于,还包括,在实际应用时,首先对后验概率取对数后计算,将问题转化为使得LogP~(Ti|A)=ΣLogP~(Ck|Cik)+ΣLogP~(Vk|Vik)]]>取得最大值,此时使用该最大值作为A与Ti的对数声学混淆度。
全文摘要
本发明涉及语音识别技术领域,特别是一种语音识别结果纠错方法。利用可纠错知识库对识别结果进行纠错的方法,该方法的最基本的特征,一是以语料库中的连续语言片段作为纠错模版,利用语料库建立纠错模版库;二是对纠错模版库建立索引,使用检索技术对纠错模版进行快速查找;三是依据纠错模式,利用置信度将识别结果切分成短的识别片段,并将识别片段中的可信赖部分提交的纠错模版系统进行快速查找,得到与识别片段相关性高的纠错模版候选;四是利用声学混淆度矩阵从纠错模版候选中挑选与识别片段声学特征相近的模版进行替换纠错。
文档编号G10L15/00GK1979638SQ20051012744
公开日2007年6月13日 申请日期2005年12月2日 优先权日2005年12月2日
发明者王晓瑞, 江杰, 王士进, 丁鹏, 徐波 申请人:中国科学院自动化研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1